1 Mon Oct 20 20:27:22 2003 Soeren Sandmann <sandmann@daimi.au.dk>
3 Add support for OS X like sliding of toolbar items during drag and
4 drop, (#110919, Dave Bordoley)
6 Make dnd highlighting the responsibility of the
7 application. (Fixes #116298, Owen Taylor)
9 * gtk/gtktoolbar.h: Add prototypes for new API.
12 (physical_to_logical, logical_to_physical): new functions
13 converting between "position including placeholders" and "position
14 excluding placeholders".
15 (gtk_toolbar_class_init): remove drag_leave and drag_motion
17 (struct _ToolbarContent): new struct containing information
18 related to toolbar items.
19 (gtk_toolbar_highlight_drop_location): new public function
20 (gtk_toolbar_unhighlight_drop_location): new public function
23 (toolbar_drag_motion, toolbar_drag_leave): new functions
24 (main): connect to dnd signals. Make the "New" item expand to
25 make drag and drop more exciting.
27 Wed Oct 15 22:39:23 2003 Kristian Rietveld <kris@gtk.org>
29 * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): it's
30 _set_active, not _set_active_item.
32 Wed Oct 15 22:31:09 2003 Kristian Rietveld <kris@gtk.org>
34 * gtk/gtkcombobox.h: add padding to the class structure.
35 * gtk/gtkcomboboxentry.h: ditto.
36 * gtk/gtkentrycompletion.h: ditto.
38 Wed Oct 15 22:04:59 2003 Kristian Rietveld <kris@gtk.org>
40 * gtk/gtkcombobox.c (gtk_combo_box_get_active),
41 (gtk_combo_box_set_active): mention in the docs that -1 is a valid
42 value and what it means.
44 * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): set the active
46 (gtk_combo_box_entry_active_changed): do nothing when the index is
49 Tue Oct 14 16:10:21 2003 Jonathan Blandford <jrb@redhat.com>
51 * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function
52 to set the active row by iter.
54 * gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function
55 to get the active row by iter.
57 2003-10-13 Federico Mena Quintero <federico@ximian.com>
59 * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do
60 operations on windows if the tree view is not mapped.
61 (gtk_tree_view_button_press): Compare equal types of pointers, not
62 GtkWidget* vs. GtkTreeView*.
64 Mon Oct 13 21:01:43 2003 Kristian Rietveld <kris@gtk.org>
66 * gtk/gtkentrycompletion.c (gtk_entry_completion_popup): remove
67 the reset of first_sel_changed, as after the first popup the treeview
68 will always have a row selected and will thus not focus_to_cursor.
70 * gtk/gtkentry.c (keyval_is_cursor_move): new function to determine
71 whether the keyval should move the completion selection cursor (used
72 to avoid ending up with extreme cluttered code), also added
73 all KP_ equivalents of the keys here,
74 (gtk_entry_completion_key_press): Keynav tweaks based on comments
75 from Dave Bordoley and Marco Pesenti Gritti; add the -1 state
76 as possible current selection, implement Home/End keys, modified
77 the down key to stop cycling. Maybe page up/down should be implemented
80 Mon Oct 13 20:58:07 2003 Matthias Clasen <maclas@gmx.de>
82 * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon): Make it work
83 as documented when pixmap or mask is NULL. (#124081)
85 Mon Oct 13 20:21:38 2003 Kristian Rietveld <kris@gtk.org>
87 * gtk/gtkentry.c (gtk_entry_set_text): I overlooked a return when
88 I was adding the signal block/unblock code. Oops. (Noticed by
89 Marco Pesenti Gritti).
91 Mon Oct 13 20:21:55 2003 Kristian Rietveld <kris@gtk.org>
93 * demos/testpixbuf-scale.c: enable GTK_DISABLE_DEPRECATED again,
94 (set_interp_type), (main): port over from option menu to GtkComboBox.
96 Mon Oct 13 19:41:55 2003 Kristian Rietveld <kris@gtk.org>
98 * tests/testmenus.c: Still uses option menus, so turn off
99 GTK_DISABLE_DEPRECATED.
101 Sun Oct 12 01:10:29 2003 Matthias Clasen <maclas@gmx.de>
103 * gtk/gtkalignment.[hc]:
104 * gtk/gtkcombobox.[hc]:
105 * gtk/gtkcomboboxentry.[hc]:
106 * gtk/gtktreemodelfilter.[hc]: Move GET_PRIVATE macros
107 from header to implementation.
109 Sun Oct 12 00:18:02 2003 Matthias Clasen <maclas@gmx.de>
111 * tests/testtreeview.c:
112 * demos/testpixbuf-scale.c:
113 * tests/prop-editor.c: These files still use option menus,
114 so turn off GTK_DISABLE_DEPRECATED to fix the build.
116 Sat Oct 11 23:14:36 2003 Matthias Clasen <maclas@gmx.de>
118 * gtk/gtkactiongroup.h:
120 * gtk/gtkradioaction.h:
121 * gtk/gtkradiotoolbutton.h:
122 * gtk/gtkseparatortoolitem.h:
123 * gtk/gtktoggleaction.h:
125 * gtk/gtkuimanager.h: Add G_BEGIN_DECLS/G_END_DECLS to make
126 these usable in C++. (#124351, Murray Cumming)
128 Sat Oct 11 19:09:05 2003 Kristian Rietveld <kris@gtk.org>
130 * gtk/gtkentry.c (gtk_entry_set_text): Check if completion is
131 non-NULL before accessing it. Oops.
133 Sat Oct 11 15:47:03 2003 Kristian Rietveld <kris@gtk.org>
135 * gtk/gtkentrycompletion.[ch] (gtk_entry_completion_insert_action),
136 (gtk_entry_completion_insert_action_text),
137 (gtk_entry_completion_insert_action_markup): the gchar* parameters
138 should be const (pointed out by both Marco Pesenti Gritti and
139 Murray Cumming (#124356).
141 Sat Oct 11 15:37:19 2003 Kristian Rietveld <kris@gtk.org>
143 * gtk/gtkcombobox.c (gtk_combo_box_size_allocate): for the custom
144 child list mode, allocate the height allocation->height to the
145 button instead of the height requested by the button. (Tiny
146 size allocation screwup noticed by Macro Pesenti Gritti).
148 Sat Oct 11 15:23:27 2003 Kristian Rietveld <kris@gtk.org>
150 Fixes based on comments from Marco Pesenti Gritti.
152 * gtk/gtkentry.c (gtk_entry_set_text): block the completion changed
153 signal handler, avoids the completion popup to popup when text is
154 set programmatically in most cases (we actually have to handle this
155 in the _editable functions as well, but that will break popping up
156 when the user actually typed something :),
157 (gtk_entry_completion_key_press): when handling enter, bail out
158 when nothing has been selected,
159 (gtk_entry_completion_changed): don't popdown when the entry content
162 * gtk/gtkentrycompletion.c (gtk_entry_completion_init),
163 (gtk_entry_completion_selected_changed): unselect_all on the
164 first selected changed signal. Avoids having a default row selected,
165 (_gtk_entry_completion_popup): don't select the first row by default.
167 * gtk/gtkentryprivate.h (struct _GtkEntryCompletionPrivate): add a
168 first_sel_changed field.
170 Fri Oct 10 23:02:58 2003 Matthias Clasen <maclas@gmx.de>
172 * demos/gtk-demo/menus.c: Replace GtkItemFactory by GtkUIManager
173 in the intro (again).
175 Fri Oct 10 22:50:05 2003 Matthias Clasen <maclas@gmx.de>
177 Fixes for (#124212, Marco Pesenti Gritti):
179 * gtk/gtkuimanager.c (update_smart_separators): Don't spit
181 (_gtk_menu_is_empty): Return FALSE for non-menus.
183 Fri Oct 10 19:10:12 2003 Kristian Rietveld <kris@gtk.org>
185 * gtk/gtkcombo.h: Deprecate.
186 * gtk/gtkoptionmenu.h: Ditto.
188 * gtk/gtkcombobox.c (gtk_combo_box_size_request),
189 (gtk_combo_box_size_allocate): Rework, things behave better now. Still
190 needs some work on requesting enough size when taking the items in
191 the list into account.
193 * gtk/gtkfilesel.c: put gtkoptionmenu.h include inside "enable
195 * gtk/gtkinputdialog.c: ditto.
196 * gtk/gtkitemfactory.c: ditto.
197 * gtk/gtkoptionmenu.c: ditto.
199 * demos/gtk-demo/menus.c: remove the option menu.
200 * demos/gtk-demo/sizegroup.c: replace the option menus with
202 * demos/gtk-demo/textview.c: ditto.
203 (A general GtkComboBox demo will be added later on).
205 Wed Oct 8 00:06:17 2003 Matthias Clasen <maclas@gmx.de>
207 * demos/gtk-demo/ui_manager.c (activate_radio_action): New
208 callback to propertly report radio actions.
210 * demos/gtk-demo/ui_manager.c (do_ui_manager): Use it here.
212 Tue Oct 7 23:23:05 2003 Matthias Clasen <maclas@gmx.de>
214 * gtk/gtkplug.c (xembed_set_info): Put the supported protocol
215 version in in the right field of the _XEMBED_INFO property.
216 (#123885, Denis Mikhalkin)
218 Mon Oct 6 14:18:47 2003 Jonathan Blandford <jrb@redhat.com>
220 * gtk/gtkexpander.c (gtk_expander_animation_timeout): only show
221 the child if we have one.
223 (gtk_expander_button_release): use
224 gtk_widget_activate instead.
226 Mon Oct 6 21:05:46 2003 Matthias Clasen <maclas@gmx.de>
228 * gtk/gtktable.c (gtk_table_class_init): Start the blurb for
229 "right_attach" with a capital. (#123945, Christian Rose)
231 Sun Oct 5 23:59:03 2003 Matthias Clasen <maclas@gmx.de>
233 * tests/testsocket.c (child_read_watch): Remove an
234 extraneous unref. (#122336, Frederic Crozat)
236 Sun Oct 5 22:38:22 2003 Matthias Clasen <maclas@gmx.de>
238 * gtk/gtkeventbox.c (gtk_event_box_class_init): Trim
239 whitespace in "visible-window" blurb. (#123910, Christian Rose)
241 Sun Oct 5 00:53:15 2003 Soeren Sandmann <sandmann@daimi.au.dk>
243 * gtk/gtktoolbar.c (gtk_toolbar_list_children_in_focus_order):
244 focus arrow before pack_end items (#123851, Matthias Clasen)
246 Fri Oct 3 20:50:48 2003 Kristian Rietveld <kris@gtk.org>
248 * gtk/gtkcombobox.c (gtk_combo_box_set_model): only set the model
249 on ->priv->cell_view if ->priv->cell_view is non-NULL.
251 * gtk/gtkcomboboxentry.c: include gtkintl.h, add text_renderer
252 field to GtkComboBoxEntryPrivate,
253 (gtk_combo_box_entry_class_init), (gtk_combo_box_entry_init),
254 (gtk_combo_box_entry_set_property), (gtk_combo_box_entry_get_property),
255 (gtk_combo_box_entry_set_text_column), (gtk_combo_box_entry_new): add
256 a construct-only "text_column" property and reorder code to use it
257 and support inheriting this widget.
259 Thu Oct 2 23:28:02 2003 Kristian Rietveld <kris@gtk.org>
261 * gtk/gtkcombobox.c: Added API doc comments.
263 * gtk/gtkcomboboxentry.c: Ditto.
265 2003-10-02 Matthias Clasen <maclas@gmx.de>
267 * gtk/gtktoggleaction.c: Documentation tweaks.
269 Wed Oct 1 22:43:40 2003 Kristian Rietveld <kris@gtk.org>
271 * gtk/gtkcellview.[ch]: implement the GtkCellLayout interface, drop
272 packing/attribute/cell data functions from the header,
273 (gtk_cell_view_set_cell_data): added support for cell data funcs.
275 * gtk/gtkcombobox.[ch]: implement the GtkCellLayout interface, drop
276 packing/attribute/cell data functions from the header, implemented
277 cell data func support.
279 * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_new): updated
280 for the move to GtkCellLayout.
282 * tests/testcombo.c (create_combo_box_grid_demo), (main): ditto.
284 2003-10-01 Matthias Clasen <maclas@gmx.de>
286 * gtk/gtkaction.c (gtk_action_class_init):
287 (gtk_action_[gs]et_property): Introduce a separate
288 "hide_if_empty" property for empty menu handling.
289 (_gtk_action_sync_menu_visible): ...and use it here.
291 * tests/testmerge.c (main): ...and here.
293 * gtk/gtktoolitem.c (gtk_tool_item_class_init): Fix signal doc
294 comments to pacify gtk-doc.
296 * gtk/gtkmain.c: Doc formatting tweaks.
298 * gtk/gtktoolitem.c (gtk_tool_item_set_is_important): Fix a typo.
300 * gtk/gtkcheckmenuitem.h (gtk_check_menu_item_set_draw_as_radio):
301 Use the same parameter names as in .c file, to pacify gtk-doc.
303 * gtk/gtktoggletoolbutton.[hc]:
304 * gtk/gtktoolbutton.[hc]:
305 * gtk/gtktoolitem.[hc]:
306 * gtk/gtktoolbar.[hc]:
307 * gtk/gtkcolorbutton.[hc]:
308 * gtk/gtkfontbutton.[hc]:
309 * gtk/gtkalignment.[hc]: Define GET_PRIVATE macros in the
310 source, not in the header.
312 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_[sg]et_draw_as_radio):
313 Document these as 2.4 API additions.
315 Tue Sep 30 23:42:56 2003 Kristian Rietveld <kris@gtk.org>
317 * gtk/gtkentry.c (gtk_entry_set_completion),
318 (gtk_entry_get_completion): Add API doc comments.
320 * gtk/gtkentrycompletion.c: Fix #includes and add API doc comments.
322 Tue Sep 30 23:12:34 2003 Kristian Rietveld <kris@gtk.org>
324 * gtk/gtktreemodelfilter.c: Add "Since: 2.4" to all API doc comments.
326 Tue Sep 30 22:59:58 2003 Kristian Rietveld <kris@gtk.org>
328 * gtk/gtktreeviewcolumn.c: Some API doc comment fixes.
330 * gtk/gtkcellayout.c: Fix #include and oooooh API doc comments!
332 2003-09-30 Matthias Clasen <maclas@gmx.de>
335 * tests/testmerge.c: Test handling of empty menus.
337 * gtk/gtkuimanager.c (_gtk_menu_is_empty): New function to determine
338 whether a menu is empty. Used in gtkaction.c.
339 (update_smart_separators): Also update the visibility of empty menus.
340 (update_node): When creating a new menu proxy, insert an "Empty" menu
341 item which only gets shown if the menu is empty.
343 * gtk/gtkaction.c (gtk_action_class_init): Document the meaning of
344 "is_important" for menu proxies.
345 (_gtk_action_sync_menu_visible): New function to sync the visibility
346 of menu proxies. Used in gtkuimanager.c.
347 (gtk_action_sync_visible): New function to sync the visibility of
350 Tue Sep 30 21:43:34 2003 Kristian Rietveld <kris@gtk.org>
352 * gtk/gtkcombobox.c (gtk_combo_box_menu_button_press): set
353 popup_in_progress to TRUE,
354 (gtk_combo_box_menu_show): and back to FALSE here; the menu now
355 won't disappear on the first button release. (Reported by Matthias
358 Tue Sep 30 21:08:43 2003 Kristian Rietveld <kris@gtk.org>
360 * gtk/gtkcombobox.c (gtk_combo_box_init): actually show the child.
362 * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): ditto. (#123543,
363 Marco Pesenti Gritti).
365 2003-09-30 Murray Cumming <murrayc@usa.net>
367 * gtk/gtkcellrenderer.h: The render vfunc takes a GdkDrawable*
368 instead of a GdkWindow*, because that what it is given. The
369 documentation was already correct. This should cause no API/ABI
370 breakage with C compilers.
371 * gtk/gtkcellrenderertext.c, gtkcellrendererpixbuf.c,
372 gtkcellrenderertogger.c: Updated the declarations of the render vfunc
373 implementation accordingly.
375 2003-09-30 Matthias Clasen <maclas@gmx.de>
377 * gdk/gdkkeys.c (gdk_keymap_class_init): Document the
378 "direction-changed" and "keys-changed" signals.
380 * gdk/gdkscreen.c (gdk_screen_class_init): Document the
381 "size-changed" signal.
383 * gdk/gdkdisplaymanager.c (gdk_display_manager_class_init):
384 Document the "display-opened" signal.
386 * gdk/gdkdisplay.c (gdk_display_close): Doc tweak.
387 (gdk_display_class_init): Document the "closed" signal.
389 Sat Sep 27 16:02:40 2003 Soeren Sandmann <sandmann@daimi.au.dk>
391 * gtk/gtktextview.[ch]: rename property tab_moves_focus to
392 accepts_tab. (#122709 again).
394 2003-09-27 Matthias Clasen <maclas@gmx.de>
396 * gtk/gtkwindow.c (gtk_window_new):
397 * gtk/gtkitemfactory.c (gtk_item_factory_new): Document
398 the fact that the newly created object does not come with
399 a floating reference. (#103068, patch by Frederic Lespez)
401 * gtk/gtkitemfactory.h: Deprecate GtkItemFactory in favor
402 of GtkUIManager. Just leave GtkTranslateFunc undeprecated,
403 since GtkActionGroup uses it.
405 * tests/testtext.c: Turn off GTK_DISABLE_DEPRECATED, since
406 this test uses the soon-to-be-deprecated GtkItemFactory.
408 * demos/gtk-demo/Makefile.am (demos): Add ui_manager.c,
409 remove item_factory.c
411 * demos/gtk-demo/ui_manager.c: Duplicate of item_factory.c
412 using GtkUIManager instead of GtkItemFactory.
414 * tests/testmerge.c: Demonstrate the use of the
415 connect-proxy signal.
417 * gtk/gtkaction.c (connect_proxy): Add connect-proxy and
418 disconnect-proxy signals to do small customizations
419 like displaying tooltips in the statusbar without
420 custom actions. (#122894, Philip Langdale)
422 * gtk/gtkuimanager.c (update_node): Don't leak tooltip.
424 Fri Sep 26 23:49:44 2003 Kristian Rietveld <kris@gtk.org>
426 Landing the new ComboBox. Note that only gtkcombobox.h and
427 gtkcomboboxentry.h are public.
429 * gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
430 gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch]: new files.
432 * gtk/Makefile.am, gtk/gtk.h: adding the new files.
434 * tests/testcombo.c: and a new test.
436 * tests/Makefile.am: adding the new test.
438 2003-09-25 Tor Lillqvist <tml@iki.fi>
440 * demos/gtk-demo/main.c: Don't use hardcoded DEMOCODEDIR on Windows.
442 2003-09-21 Tor Lillqvist <tml@iki.fi>
444 * gdk/win32/gdkevents-win32.c (handle_wm_paint): New
445 function. Code split out from gdk_event_translate(). Needed
446 because gdk_event_get_graphics_expose() couldn't do anything
447 sensible otherwise. (Not that I think graphics exposes work anyway
448 in gdk/win32, but at least now the code could work.)
450 (gdk_event_get_graphics_expose): Call handle_wm_paint() instead of
451 gdk_event_translate(), which couldn't have worked as it doesn't
452 take any pre-allocated GdkEvent parameter any longer.
454 (gdk_event_translate): Handle WM_MOUSEACTIVATE: Don't let
455 GDK_WINDOW_TEMP windows be activated. (#122578, John Ehresman)
457 2003-09-24 Matthias Clasen <maclas@gmx.de>
459 * demos/gtk-demo/appwindow.c (do_appwindow): Demonstrate tooltips
462 * gtk/gtkaction.c (connect_proxy): Sync tooltips on toolitems.
464 * gtk/gtkuimanager.c (update_node): Don't complain about missing
465 actions on popups. Re-set "tooltip" property on toolitems after
466 adding them to parent to trigger proxy update.
468 2003-09-22 Matthias Clasen <maclas@gmx.de>
470 * tests/testmerge.c (main): Initially activate the JUSTIFY_RIGHT
471 group member to test the fix for #122904.
473 * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
474 Add the action to the group before activating it, otherwise we
475 may end up with multiple active group members. (#122904, Marco
478 2003-09-21 Matthias Clasen <maclas@gmx.de>
480 Changes to make cross-process merging feasible:
482 * gtk/gtkuimanager.[hc]: Add a readonly "ui" property which holds the
483 merged UI definition. Remove the "changed" signal, since its role
484 is now filled by "notify::ui". Instead add a "actions-changed" signal
485 which gets emitted when the set of actions changes.
487 * gtk/gtktoggleactionprivate.h:
488 * gtk/gtktoggleaction.[hc] (gtk_toggle_action_[sg]et_draw_as_radio):
489 Add a "draw_as_radio" property to toggle actions so that they can be
490 used as proxies for radio actions much like the "draw_as_radio"
491 property on check menu items enables them to operate as proxies for
494 Prevent the "show_all" trap for action-based menus (see
495 http://mail.gnome.org/archives/gtk-devel-list/2003-September/
498 * gtk/gtkmenu.c (gtk_menu_{hide,show}_all): Remove g_return_if_fail()
499 calls from static functions.
501 * gtk/gtkuimanager.c (update_node):
502 * gtk/gtkaction.c (connect_proxy): Set "no_show_all" on constructed
503 widgets whose visibility is externally controlled.
505 * gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean
506 "no_show_all" property with setter and getter. When TRUE, it keeps
507 gtk_widget_{hide,show}_all() from modifying the visibility of the
508 widget and its children.
510 Sun Sep 21 23:13:37 2003 Soeren Sandmann <sandmann@daimi.au.dk>
512 * gtk/gtktextview.[ch]: Add new "tab moves focus" property (#122709)
514 2003-09-20 Tor Lillqvist <tml@iki.fi>
516 * gtk-zip.sh.in: Don't use zip -r on the etc directory, to avoid
517 including editor backup files. List files we want explicitly.
519 * gtk/gtkmain.c (_gtk_get_lc_ctype): New function. On Unix, just
520 calls setlocale (LC_CTYPE, NULL). On Windows, looks for the
521 LC_ALL, LC_CTYPE and LANG environment variables, than calls
524 (gtk_get_default_language): Code snippet moved to above function,
527 * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave)
528 * gtk/gtkrc.c (gtk_rc_context_parse_file): Call
529 _gtk_get_lc_ctype() instead of setlocale().
531 Fri Sep 19 18:15:31 2003 Soeren Sandmann <sandmann@daimi.au.dk>
533 * gtk/gtkpaned.c, gtk/gtkhpaned.c: implement RTL flipping
536 Fri Sep 19 13:24:54 2003 Soeren Sandmann <sandmann@daimi.au.dk>
538 * gtk/gtktreeview.c (gtk_tree_view_get_cursor): Improve
539 documentation. (#117306, Steve Chaplin)
541 2003-09-19 Tor Lillqvist <tml@iki.fi>
543 * gdk/win32/gdkkeys-win32.c (update_keymap): Handle dead keysyms
544 present on the US-International keyboard. For clarity, order
545 keysyms in case statement according to numeric value.
547 (gdk_keymap_translate_keyboard_state): Handle Caps Lock
548 correctly. (#120176, Ken Rastatter and Owen Taylor)
550 2003-09-18 Matthias Clasen <maclas@gmx.de>
552 * gtk/gtkaction.c (gtk_action_finalize): Call g_closure_unref() to
553 unref a closure, not g_object_unref(). (#122637, Marco Pesenti Gritti)
555 Install accelerators on actions, not on proxies, support
556 accelerator-only actions:
558 * gtk/gtkmenu.c (get_accel_path): New function to get the accel path
559 and its lock status either via _gtk_widget_get_accel_path() or by
560 looking at the accel_path stored in the menu item itself and determining
561 its lock status by peeking into the contained accel label. This was
562 already (accidentally) committed a week ago.
564 * gtk/gtkaction.h (gtk_action_set_accel_group):
565 (gtk_action_[dis]connect_accelerator): New functions.
567 * gtk/gtkaction.c (struct _GtkActionPrivate): Add accel_group,
568 accel_closure and accel_count. We must have a reference to the
569 accel_group, since we need it in connect_proxy. The count is necessary
570 to ensure that the accelerator isn't removed before the last proxy
571 requesting it has been unmerged.
572 (connect_proxy): Connect the accelerator to the
573 action now, only set the accel_path on the menuitem.
574 (remove_proxy): Disconnect the accelerator from the action, not from
576 (gtk_action_set_accel_group): Set the accel group.
577 (gtk_action_[dis]connect_accelerator): Count the number of times
578 this functions have been called and install/remove the accelerator if
579 the count leaves/reaches zero.
581 * gtk/gtkuimanager.h (GtkUIManagerItemType): Add
582 GTK_UI_MANAGER_ACCELERATOR.
584 * gtk/gtkuimanager.c (NodeType): Add NODE_TYPE_ACCELERATOR.
585 (start_element_handler): Create NODE_TYPE_ACCELERATOR nodes from
586 <accelerator> elements.
587 (gtk_ui_manager_add_ui): Create NODE_TYPE_ACCELERATOR nodes when
588 type is GTK_UI_MANAGER_ACCELERATOR.
589 (update_node): Set the accel group on actions before creating their
590 proxies. Don't set the accel group on created menus. For
591 NODE_TYPE_ACCELERATOR nodes, [dis]connect the actions' accelerator.
592 (print_node): Also emit <accelerator> elements.
594 * tests/testmerge.c (dump_accels): Add a "Dump Accels" button.
596 * gtk/gtkuimanager.c (update_node): Robustness improvements.
598 2003-09-17 Matthias Clasen <maclas@gmx.de>
600 * gtk/gtkuimanager.c (text_handler): Report unexpected character
601 data as error from the GMarkup parser, otherwise things like
602 gtk_ui_manager_add_ui_from_string (ui, "Hi there!", -1, &error)
605 Wed Sep 17 02:38:53 2003 Soeren Sandmann <sandmann@daimi.au.dk>
607 * gtk/gtktoolbar.c (gtk_toolbar_class_init): revert accidentally
608 committed redraw_on_allocate change.
610 Tue Sep 16 10:42:00 2003 Eric Warmenhoven <eric@warmenhoven.org>
612 * gdk/linux-fb/gdkwindow-fb.c: Add gdk_window_set_keep_{above,below}
613 stubs to fix compilation
615 * gdk/linux-fb/gdkrender-fb.c: Add gdk_shadow_fb_stop_updates stub for
616 when shadowfb is disabled. Patch from pjm@cctechnol.com (#120847).
618 * gdk/linux-fb/gdkmouse-fb.c: Add GDK_MOUSE_DEVICE environment
619 variable. Patch from Marc Welz (#121347).
621 2003-09-16 Matthias Clasen <maclas@gmx.de>
623 * gtk/gtkaction.h: Apply egtk-format-protos.
625 2003-09-15 Matthias Clasen <maclas@gmx.de>
627 * gtk/gtkuimanager.c: Doc tweaks.
629 Smart separators; see
630 http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00133.html:
632 * gtk/gtkuimanager.c (update_smart_separators): New function which
633 implements "smart" separators by iterating once over the entries of a
634 menu, hiding and showing separators as necessary.
635 (update_node): Mark separators used as fences of placeholders as
636 hidden. Explicitly added separators are marked as smart. Call
637 update_smart_separators after updating a menu or toolbar node.
638 Connect update_smart_separators to "notify::visible" signal on menu
641 * tests/merge-[12].ui: Test smart separators.
643 Changes to allow setting action state before connecting signal; see
644 the thread starting at
645 http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00140.html:
647 * gtk/gtkactiongroup.[hc]: (gtk_action_group_add_radio_actions):
648 (gtk_action_group_add_radio_actions_full): Add value parameter to allow
649 setting the currently selected group member before connecting signals.
650 (GtkToggleActionEntry): Separate struct for constructing toggle actions,
651 including a boolean to initialize the action state before connecting
653 (gtk_action_group_add_toggle_actions):
654 (gtk_action_group_add_toggle_actions_full): New functions to construct
655 toggle actions from an array of GtkToggleActionEntries.
657 * demos/gtk-demo/appwindow.c:
658 * tests/testactions.c:
659 * tests/testmerge.c: Adjust to new action group API.
661 Sun Sep 14 16:59:52 2003 Soeren Sandmann <sandmann@daimi.au.dk>
663 * gtk/gtktoolbar.c (gtk_toolbar_init): Name the arrow
664 "gtk-toolbar-arrow" so themes can special-case it.
666 Sun Sep 14 16:07:49 2003 Soeren Sandmann <sandmann@daimi.au.dk>
668 * gtk/Makefile.am (gtk_c_sources): sort the list of files.
670 Sun Sep 14 15:49:00 2003 Soeren Sandmann <sandmann@daimi.au.dk>
672 * gtk/gtktoolbar.c (toolbar_item_is_homogeneous): Unref the
673 PangoFontMetrics. Patch from Steve Chaplin (#122257).
675 2003-09-14 Tor Lillqvist <tml@iki.fi>
677 * gdk/win32/gdkwindow-win32.c (show_window_internal): Remove
678 special-case code for WS_EX_TRANSPARENT (GDK_INPUT_ONLY) windows,
679 the usefulness of which was already in doubt. Removing it fixes
680 bugs #118575 and #121851.
682 Fri Sep 12 16:32:53 2003 Jonathan Blandford <jrb@redhat.com>
686 * gtk/gtktreeview.c (gtk_tree_view_button_press): only save the
687 pressed button (used to determine if we want to initiate a drag later
688 on) if the current grab widget is either NULL or tree_view (Reported
689 by Jeroen Zwartepoorte).
691 2003-09-12 Matthias Clasen <maclas@gmx.de>
693 * gdk/gdkdraw.c (gdk_draw_string, gdk_draw_text)
694 (gdk_draw_text_wc): Add deprecation notes. (#121955, Martin Pool)
696 2003-09-11 Matthias Clasen <maclas@gmx.de>
698 * gdk/gdkpango.c: Doc tweaks.
700 * tests/testgtk.c: Add table menu tests.
702 * gtk/gtkmenu.c (gtk_menu_free_private): Don't forget to free the
703 GtkMenuPrivate struct itself. Pointed out by valgrind.
705 * gtk/gtkuimanager.c (gtk_ui_manager_finalize): Clean up
708 Wed Sep 10 22:25:04 2003 Kristian Rietveld <kris@gtk.org>
710 The table menu patch! Turns GtkMenu into a table, so you can attach
711 menu items in numerous new ways! Be creative!
713 Contains some bug fixes and RTL adaptions from Matthias Clasen.
715 * gtk/gtkmenu.c [toplevel]: introduce ATTACH_INFO_KEY, extend
716 GtkMenuPrivate, introduce AttachInfo, add child properties enum,
717 (gtk_menu_free_private), (gtk_menu_get_private): we have to free
718 the heights array in the private struct,
719 (gtk_menu_class_init): reorder code a bit, install child properties,
720 (get_attach_info), (get_child_attach): new utility functions,
721 (gtk_menu_set_child_property), (gtk_menu_get_child_property): introduce
722 child properties, for the attach info,
723 (gtk_menu_remove): remove AttachInfo from menu item,
724 (gtk_menu_real_insert): implemented algorithm to automagically place
725 inserted menu items at the correct place in the table,
726 (gtk_menu_size_request), (gtk_menu_size_allocate),
727 (compute_child_offset): reworked/rewritten to support table menus,
728 (gtk_menu_attach): new function,
729 (find_child_containing), (gtk_menu_move_current): new functions to
730 get table menu keynav right.
732 * gtk/gtkmenu.h: add gtk_menu_attach() prototype.
734 2003-09-10 Matthias Clasen <maclas@gmx.de>
736 * gtk/gtksocket.c (gtk_socket_filter_func): Only remove
737 PropertyNotify events from the stream if they have been handled,
738 in order to enable extending the plug<->socket communication via
741 Wed Sep 10 01:06:44 2003 Kristian Rietveld <kris@gtk.org>
743 Big TreeView DnD fixage, makes drops on empty models work, makes
744 TreeStore DnD work and gets rid of gtk-tree-model-drop-append.
745 Related bugs #95362 and #113314. I don't want to touch this code
748 * gtk/gtktreeprivate.h (GtkTreePrivate): add empty_view_drop field.
750 * gtk/gtktreednd.c (gtk_tree_get_row_drag_data): add check
751 for selection_data->length.
753 * gtk/gtktreeview.c (struct DestRow), (dest_row_free),
754 (set_dest_row), (get_dest_row): we don't store just the row ref
755 anymore, but a struct with the row ref and additional info,
756 (set_destination_row): handle drops on empty space and some
758 (get_logical_dest_row): also return path_down_mode/drop_append_mode
759 flags, handle dropping childs on their new parents, rewrite
760 drop append handling into something saner,
761 (gtk_tree_view_drag_motion): show a "drop possible arrow" on empty
763 (gtk_tree_view_drag_drop): updates for updated backend,
764 (gtk_tree_view_drag_data_received): updates for updated backend,
765 path down mode (treestore DnD) handling,
766 (gtk_tree_view_set_drag_dest_row): set empty_view_drop flag,
767 when we are trying to drop a row on an empty model,
768 (gtk_tree_view_get_drag_dest_row): handle empty_view_drop flag.
770 * gtk/gtkliststore.c (gtk_list_store_drag_data_received),
771 (gtk_list_store_row_drop_possible): style and drop-append fixes.
773 * gtk/gtktreestore.c (gtk_tree_store_drag_data_received): ditto.
775 2003-09-08 Alexander Larsson <alexl@redhat.com>
777 * gtk/gtkeventbox.[hc]:
778 Implement gtk_event_box_get/set_input_only()
781 Tests for the new input only event boxes
783 Mon Sep 8 21:44:20 2003 Kristian Rietveld <kris@gtk.org>
785 Fixes from David Hampton <hampton@employees.org> via gtk-devel-list.
787 * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_elt_get_path): fix
788 the call to gtk_tree_model_filter_add_root,
789 (gtk_tree_model_filter_row_changed): bail out if c_path is not above
790 the virtual root, allow building levels on the second try to convert
791 the child path to a filter path,
792 (gtk_tree_model_filter_convert_iter_to_child_iter): pass the virtual
793 root when calling gtk_tree_model_filter_elt_get_path.
795 2003-09-07 Matthias Clasen <maclas@gmx.de>
797 * gtk/gtkuimanager.c (update_node): Fix a C99ism. (#121640,
800 Fixes for accelerator handling during (un)merging:
802 * gtk/gtkuimanager.c (update_node): Move setting info-action
803 after the switch, since the old action is needed in some cases.
804 In cases of proxy type mismatch, disconnect the old proxy from
807 * gtk/gtkaction.c (remove_proxy): Renamed from
808 gtk_action_remove_proxy(). Move unsetting of the accelerator
809 here from disconnect_proxy() in order to catch all cases of
811 (gtk_action_disconnect_proxy): Fix logic in g_return_if_fail()
812 to fail if proxy isn't a proxy of action.
814 2003-09-07 Pablo Saratxaga <pablo@mandrakesoft.com>
816 * configure.in: Added Uzbek latin (uz) and cyrillic (uz@Cyrl) to
819 2003-09-07 Matthias Clasen <maclas@gmx.de>
821 * gtk/gtkaction.c (disconnect_proxy): Make disconnect work
824 2003-09-06 Matthias Clasen <maclas@gmx.de>
826 * gtk/gtkaction.c (gtk_action_connect_proxy): Disconnect from
827 prev_action, not from action. (Fix by David Hampton)
829 Fri Sep 5 14:15:10 2003 Owen Taylor <otaylor@redhat.com>
831 * Back out locale-dependent interpretation of
832 KP_Decimal, the official XFree86 interpretation
833 is that KP_Decimal => . KP_Separator => ,
834 always, independent of locale.
835 (#105161, Frederic Crozat,
836 http://bugs.xfree86.org/show_bug.cgi?id=534)
838 2003-09-04 Matthias Clasen <maclas@gmx.de>
840 * tests/testmerge.c: Test buttons and toggle buttons as proxies.
842 * gtk/gtktoggleaction.c (connect_proxy):
843 (gtk_toggle_action_real_toggled): Support toggle buttons as proxies. Note
844 that a "draw_as_radio" property is needed for check buttons similar to
845 check menu items, in order to fully support button proxies for radio actions.
847 * gtk/gtkaction.c (connect_proxy): Allow buttons as proxies.
849 * tests/testmerge.c (toggle_dynamic): Test gtk_ui_manager_add_ui().
851 * gtk/gtkuimanager.h: Add GtkUIManagerItemType enum which is needed for the
852 'type' argument of gtk_ui_manager_add_ui().
854 * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui): Add 'type' and 'top' arguments
855 to make this function as powerful as the XML methods of adding UI. (#120647)
857 Thu Sep 4 19:11:23 2003 Kristian Rietveld <kris@gtk.org>
861 * docs/RELEASE-HOWTO: updates.
863 2003-09-04 Matthias Clasen <maclas@gmx.de>
865 * tests/merge-2.ui: Use "position" instead of "pos".
867 * gtk/gtkuimanager.c (start_element_handler): No need
868 to be terse: Change the name of the "pos" attribute
871 2003-09-04 Matthias Clasen <maclas@gmx.de>
873 * gtk/gtkuimanager.c: Un-prefix GtkUIManagerNodeType and
874 GtkUIManagerNode to shorten the names and to make the
875 GTK_UI_MANAGER_<TYPE> names available for a public enum.
877 * gtk/gtkactiongroup.c:
878 * gtk/gtkuimanager.c: Various doc tweaks.
880 * gtk/gtkuimanager.c (start_element_handler):
881 (end_element_handler): Improve error reporting.
883 Wed Sep 3 23:18:17 2003 Kristian Rietveld <kris@gtk.org>
887 * gtk/gtkmenu.c (gtk_menu_real_move_scroll): for the END case,
888 use end_position - page_size instead of G_MAXINT, since
889 gtk_menu_scroll_to doesn't CLAMP anymore internally. (Fixes #121237,
890 reported by Havoc Pennington).
892 Wed Sep 3 21:58:03 2003 Kristian Rietveld <kris@gtk.org>
896 * gtk/gtkiconfactory.c (cached_icon_free): if icon->style != NULL,
897 unref it. (Fixes memleak, patch from Kjartan Maraas).
899 Wed Sep 3 21:38:26 2003 Kristian Rietveld <kris@gtk.org>
901 * gdk/Makefile.am, gdk/linux-fb/gdkfbmanager.c, gdk/x11/gdkcolor-x11.c,
902 gdk-pixbuf/io-gif.c, gtk/Makefile.am, gtk/gtkcalendar.c,
903 gtk/gtkclist.c, gtk/gtkctree.c, gtk/gtkdnd.c, gtk/gtkentry.c,
904 gtk/gtkhandlebox.c, gtk/gtkitemfactory.c, gtk/gtkmenu.c,
905 gtk/gtknotebook.c, gtk/gtkrange.c, gtk/gtkrc.h, gtk/gtktree.c,
906 gtk/gtktypeutils.h: big patch from Kjartan Maraas
907 to fix numerous typos.
909 Wed Sep 3 17:38:01 BST 2003 Tony Gale <gale@gtk.org>
911 * docs/faq/gtk-faq.sgml: Correct compile line for threads example.
913 2003-09-02 Tor Lillqvist <tml@iki.fi>
915 * gdk/win32/gdkdisplay-win32.c (gdk_display_open): Don't call
916 CloseHandle() on the HMODULE returned from GetModuleHandle().
917 Didn't cause any harm, but didn't do anything useful either. When
918 running a GTK+ program under MS's debugger, the CloseHandle() call
919 would cause a "first-chance exception" in ntdll.dll to show up.
920 (The exception is caught appropriately if you let it proceed, but
921 it confuses the person using the debugger). Thanks to Bruce
922 Hochstetler for noticing.
924 Tue Sep 2 21:01:19 2003 Kristian Rietveld <kris@gtk.org>
928 * gtk/gtktreeview.c (gtk_tree_view_button_press): revert the change
929 to only select when button 1 is pressed introduced in the fix of
932 2003-09-02 Matthias Clasen <maclas@gmx.de>
934 * gtk/gtkactiongroup.c (gtk_action_group_new): Doc addition.
936 * gtk/gtkuimanager.c: Shorten the names of some static
939 Support adding and removing merge nodes dynamically (#120647,
942 * gtk/gtkuimanager.[ch] (gtk_ui_manager_new_merge_id): Renamed
943 gtk_ui_manager_next_merge_id to gtk_ui_manager_new_merge_id
945 (gtk_ui_manager_add_ui): New function to add UI elements
946 without juggling XML fragments, currently restricted to menuitems,
947 toolitems and separators. Actions still come from registered
950 Mon Sep 1 19:39:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
952 * gdk/gdkwindow.c (gdk_window_get_bg_gc): Fix bug where the
953 background pixmap was being offset twice, once by the ts_origin in
954 gdk_window_get_bg_gc(), and once by gdk_draw_rectangle().
956 2003-09-01 Matthias Clasen <maclas@gmx.de>
958 * gtk/gtkuimanager.[ch] (gtk_ui_manager_ensure_update): Make
959 this public again, since it's occasionally useful. (#121128,
960 Marco Pesenti Gritti)
962 * gtk/gtkaction.c: Add an "is_important" property and propagate
963 it to toolitem proxies. (#121058, Marco Pesenti Gritti)
965 Mon Sep 1 00:32:30 2003 Soeren Sandmann <sandmann@daimi.au.dk>
967 * tests/testtoolbar.c (main): connect to "delete_event" so the
968 application will actually quit when you close the window
970 2003-09-01 Matthias Clasen <maclas@gmx.de>
972 * gtk/gtkuimanager.c (gtk_ui_manager_get_widget)
973 (gtk_ui_manager_get_action): g_return_if_fail() if
975 (gtk_ui_manager_get_node): Avoid a segfault if path is empty.
976 (gtk_ui_manager_finalize): Remove the idle on finalize. (#121125,
977 Marco Pesenti Gritti)
979 2003-08-31 Matthias Clasen <maclas@gmx.de>
981 * gtk/gtktoolitem.c: Fix some typos in docs.
983 * gtk/gtkuimanager.[ch] (gtk_ui_manager_get_action): New function,
984 replaces gtk_ui_manager_activate(). (#120658)
986 * tests/testmerge.c: Use gtk_ui_manager_get_action() instead of
987 gtk_ui_manager_activate().
990 * gtk/gtkactiongroup.c: Some doc tweaks.
992 * gtk/gtkuimanager.[hc]: Get rid of the remove_widget signal. It
993 wasn't emitted anyway. Some doc tweaks.
995 2003-08-30 Matthias Clasen <maclas@gmx.de>
997 * tests/testmerge.c (add_widget): Connect to "destroy" on toolbar,
998 rather than to "remove" on handlebox.
1000 * gtk/gtkuimanager.[hc] (gtk_ui_manager_activate): New method to
1001 activate an action found by following a path. (#120658)
1003 * tests/testmerge.c: Add a button to test gtk_ui_manager_activate().
1005 * tests/testmerge.c (add_widget): Put toolbars in handleboxes.
1007 * gtk/gtkuimanager.[hc]: Add a boolean property, "add_tearoffs" with
1008 setter and getter. If it is set, add tearoff menu items to regular
1009 menus, but not to popups. Add a signal "changed", which gets emitted
1010 when the merged ui has changed. (#120649, #120656)
1012 * tests/testmerge.c: Add button to test the generation of tearoff
1015 2003-08-29 Matthias Clasen <maclas@gmx.de>
1017 * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
1018 Actually group the actions together rather than putting each in its
1021 * gtk/gtkradioaction.c (create_menu_item): Set "draw_as_radio" on
1022 proxy menu items for radio actions.
1024 * gtk/gtkgamma.c (gamma_ok_callback): Use g_strtod instead of strtod.
1026 Fri Aug 29 21:40:01 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1028 * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
1029 Fix use of uninitialized variable.
1032 (_gtk_text_util_append_special_char_menuitems): add const cast to
1035 2003-08-29 Matthias Clasen <maclas@gmx.de>
1037 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Install
1038 "draw_as_radio" as a separate property, not as an alias of
1040 (gtk_check_menu_item_get_property):
1041 (gtk_check_menu_item_set_property): Also support "draw_as_radio".
1043 Fri Aug 29 20:32:07 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1045 * gtk/gtktoolbar.c: Only treat buttons as homogeneous when they
1046 are narrower than 13 time the estimated character width of the
1047 font. (#107781, David Bordoley)
1049 * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): Check
1050 here if the GtkToggleButton is active. This may be the case if it
1053 * gtk/gtktoolbar.c: Clarify documentation wrt. GtkSignalFunc
1054 vs. void (*) (GtkWidget, gpointer). (#107495, Mariano
1057 * gtk/gtkcheckmenuitem.[ch]: new "draw_as_radio"
1058 property. (#111207, David Bordoley).
1060 * gtk/gtktoggletoolbutton.c
1061 (gtk_toggle_tool_button_create_menu_proxy): use new
1062 "draw_as_radio" property on the menu item when the item is a radio
1065 * gtk/gtktoolbutton.c (gtk_tool_button_create_menu_proxy): Fixes
1066 to only pay attention to the "use_underline" property when the
1067 button label comes from the "label" property.
1069 2003-08-29 Laurent Dhima <laurenti@alblinux.net>
1071 * configure.in: Added "sq" to ALL_LINGUAS.
1073 2003-08-28 Matthias Clasen <maclas@gmx.de>
1075 * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Markup
1078 * gtk/gtkuimanager.c: Change the XML format:
1079 <Root> element is replaced by <ui>,
1080 <menu> element is replaced by <menubar>,
1081 <submenu> element is replaced by <menu>,
1082 <dockitem> element is replaced by <toolbar>,
1083 <popups> element is gone,
1084 verb attribute is replaced by action,
1085 name defaults to action or the element name.
1087 * gtk/gtkactiongroup.[hc]: Replace GtkActionGroupEntry by
1088 GtkActionEntry and GtkRadioActionEntry. GtkActionEntry is simplified
1089 by removing the user_data, entry_type and extra_data fields,
1090 GtkRadioActionEntry is further simplified by removing the callback.
1091 The user_data can now be specified as an argument to
1092 gtk_action_group_add_actions(). There is a new method
1093 gtk_action_group_add_radio_actions(), which is similar to
1094 gtk_action_group_add_actions(), but takes GtkRadioActionEntrys
1095 and a callback parameter in addition to the user_data. The callback
1096 is connected to the ::changed signal of the first group member.
1097 There are _full() variants taking a GDestroyNotify of
1098 gtk_action_group_add_[radio_]actions().
1100 * gtk/gtkradioaction.[hc]: Add a ::changed signal which gets emitted
1101 on every member of the radio group when the active member is changed.
1102 Add an integer property "value", and a getter for the value of "value"
1103 on the currently active group member.
1105 * tests/testactions.c:
1106 * tests/testmerge.c:
1107 * tests/merge-[123].ui:
1108 * demos/gtk-demo/appwindow.c: Adjust to these changes.
1110 * gtk/gtktoolbar.c (gtk_toolbar_append_element): Trivial doc fix.
1112 2003-08-27 Anders Carlsson <andersca@gnome.org>
1114 * demos/gtk-demo/appwindow.c (do_appwindow): Focus the
1115 text view, so the tool bar won't have focus.
1117 Tue Aug 26 09:57:38 2003 Owen Taylor <otaylor@redhat.com>
1119 * gdk/x11/gdkkeys-x11.c (update_keymaps): Fix variable
1120 declaration not at start of block. (#120371, Damien Carbery)
1122 2003-08-26 Matthias Clasen <maclas@gmx.de>
1124 * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui_from_string): Use gssize
1125 for length, not gsize.
1127 * gtk/gtkuimanager.c: Refactor the XML format a bit: rename <Root> to
1128 <ui> and make it optional in strings. Rename verb to action, <dockitem>
1129 to <toolbar>, <menu> to <menubar>, <submenu> to <menu>.
1131 * demos/gtk-demo/appwindow.c:
1132 * tests/testactions.c:
1133 * tests/testmerge.c:
1136 * tests/merge-3.ui: Adjust to the new XML format.
1138 Mon Aug 25 19:55:55 2003 Owen Taylor <otaylor@redhat.com>
1140 * gtk/gtktextview.c (gtk_text_view_update_layout_width):
1141 Since we add one to the layout's reported width to
1142 account for the cursor, we need to subtract one when
1143 setting the wrap width for the layout. (Fixes infinite
1144 loop (#120325, Frederic Crozat)
1146 * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
1147 Be a bit more careful about rounding when converting
1148 wrapped width from Pango units to pixels.
1150 2003-08-26 Matthias Clasen <maclas@gmx.de>
1152 Rename GtkMenuMerge to GtkUIManager.
1154 * gtk/gtkuimanager.[hc]: New files.
1155 * gtk/gtkmenumerge.[hc]: Removed.
1159 * tests/testmerge.c:
1160 * tests/testactions.c:
1161 * demos/gtk-demo/appwindow.c: Replace all uses of GtkMenuMerge by
1164 * demos/gtk-demo/appwindow.c: Make GtkMenuMerge demo less intimidating:
1165 add comments to entries array, remove newlines from ui definition. Don't
1166 use the ::add_widget signal.
1168 Mon Aug 25 17:28:04 2003 Owen Taylor <otaylor@redhat.com>
1170 * gtk/gtknotebook.c (gtk_notebook_forall): Don't
1171 include page->menu_label - causes various problems,
1174 Mon Aug 25 23:21:43 2003 Kristian Rietveld <kris@gtk.org>
1178 Fixes #115871, reported by Michael Natterer.
1180 * gtk/gtktreeprivate.h: added GtkTreeSelectMode enum,
1181 added ctrl_pressed and shift_pressed bitfields,
1182 (_gtk_tree_selection_internal_select_node): replace GdkModifierType
1183 arg with GtkTreeSelectMode.
1185 * gtk/gtktreeselection.c (gtk_tree_selection_set_mode),
1186 (gtk_tree_selection_select_path), (gtk_tree_selection_unselect_path),
1187 (_gtk_tree_selection_internal_select_node): all updated for
1188 GdkModifierType -> GtkTreeSelectMode move.
1190 * gtk/gtktreeview.c (gtk_tree_view_button_press): set ctrl_pressed
1191 and shift_pressed around selection handling block,
1192 (gtk_tree_view_real_select_cursor_row),
1193 (gtk_tree_view_real_toggle_cursor_row),
1194 (gtk_tree_view_real_selection_cursor_parent),
1195 (gtk_tree_view_real_set_cursor): use ctrl_pressed and shift_pressed,
1196 instead of checking the event state. And also updates for the
1197 GdkModifierType -> GtkTreeSelectMode move.
1199 Wed Aug 20 21:26:49 2003 Owen Taylor <otaylor@redhat.com>
1201 * gtk/gtkplug.c (gtk_plug_focus): Send the focus on
1202 to the parent when there was no focus widget before
1203 and no focus widget after - that is, when there are
1204 no focusable widgets. (#108678, help tracking it
1205 down from Padraig O'Briain, Federico Mena Quintero, )
1207 * gtk/gtkxembed.[ch]: Move various shared utilities
1208 for the XEMBED protocol eused by GtkPlug and GtkSocket
1211 * gtk/gtkxembed.[ch] gtkplug.c gtksocket.c: Implement
1212 a flag bit that is sent with focus mesages to indicate
1213 that the focus has wrapped around on the toplevel;
1214 use this bit to catch infinite loops when there is no
1215 focusable widget at ll in the entire toplevel.
1217 * tests/testsocket.c (child_read_watch): Remove an
1220 * gtk/gtkplug.c gtk/gtksocket.c gtk/gtkxembed.h:
1221 Up XEMBED protocol version to 1, add logic for
1222 sending the right version in XEMBED_EMBEDDED_NOTIFY.
1224 * gtk/gtksocket.c (gtk_socket_add_window): Send
1225 the embedder window in the XEMBED_EMBEDDED_NOTIFY
1226 as the spec requires.
1228 Mon Aug 25 16:15:41 2003 Owen Taylor <otaylor@redhat.com>
1230 * gdk/x11/gdkkeys-x11.c: Fix up CapsLock and
1231 NumLock handling for non-XKB. Add a special case
1232 hack for NumLock on Sun servers. (Patch from
1233 Robert Basch, #115819)
1235 2003-08-25 Matthias Clasen <maclas@gmx.de>
1237 * gtk/gtkactiongroup.c (gtk_action_group_add_actions): Remove C99isms. (Morten
1240 * gtk/gtkactiongroup.[hc] (gtk_action_group_set_translate_func,
1241 gtk_action_group_set_translation_domain): Hooks for translation of
1242 label and tooltip in GtkActionGroupEntries. (#120620)
1244 2003-08-25 Matthias Clasen <maclas@gmx.de>
1246 * gtk/gtkactiongroup.h (GtkActionGroupEntryType): Namespace the enum
1247 values properly. Sorry about the resize grip trouble, Owen. (#120621)
1249 * gtk/gtkactiongroup.c:
1250 * demos/gtk-demo/appwindow.c:
1251 * tests/testmerge.c:
1252 * tests/testactions.c: Use new GtkActionGroupEntryType enum.
1254 Sun Aug 24 17:14:44 2003 Owen Taylor <otaylor@redhat.com>
1256 * gtk/gtk.h: Remove reference to gtkresizegrip.h.
1258 Sun Aug 24 17:03:44 2003 Owen Taylor <otaylor@redhat.com>
1260 * gtk/Makefile.am: Fix accidental commit of references
1261 to gtkresizegrip.[ch]
1263 Sun Aug 24 17:00:03 2003 Owen Taylor <otaylor@redhat.com>
1265 * gtk/gtkrc.c: Fix some missing initializations of
1268 2003-08-24 Matthias Clasen <maclas@gmx.de>
1270 * gtk/gtkaction.[ch]:
1271 * gtk/gtktoggleaction.[ch]:
1272 * gtk/gtktoggleactionprivate.h:
1273 * gtk/gtkradioaction.[ch]:
1274 * gtk/gtkactiongroup.[ch]:
1275 * gtk/gtkmenumerge.[ch]: A model-view separation for menus and
1276 toolbars, using the EggMenu code by James Henstridge.
1278 * gtk/gtk.h: Include new headers.
1279 * gtk/Makefile.am: Add new files.
1281 * tests/testactions.c: Test for actions.
1282 * tests/testmerge.c: Test for menu merging.
1283 * tests/merge-[123].ui: Test data for testmerge.
1284 * tests/Makefile.am: Add testactions and testmerge.
1286 * demos/gtk-demo/appwindow.c: Use GtkMenuMerge to construct the
1287 menubar and toolbar.
1289 Sat Aug 23 21:40:18 2003 Owen Taylor <otaylor@redhat.com>
1291 * gtk/gtkrc.c (gtk_rc_context_parse_one_file): Fix
1292 problem where rc_file->directory wasn't always getting
1293 set. (#120549, Luis Villa)
1295 2003-08-22 Christian Rose <menthos@menthos.com>
1297 * configure.in: Added "ne" to ALL_LINGUAS.
1299 Thu Aug 21 16:00:36 2003 Owen Taylor <otaylor@redhat.com>
1301 * gtk/gtkrc.c: Keep a list of current GtkRcFiles
1302 being parsed, not just the directories for those
1303 files. Use that to catch recursion. (Part of
1306 Thu Aug 21 21:27:45 2003 Kristian Rietveld <kris@gtk.org>
1310 Fix option menu scrolling (#119821, Owen Taylor).
1312 * gtk/gtkmenu.c (gtk_menu_scroll_to): remove logic introduced
1313 by #80484 and the CLAMP,
1314 (get_menu_height): new function,
1315 (gtk_menu_real_move_scroll): sort of moved the CLAMP here to correct
1316 new_offset to handle page up/down right.
1318 Thu Aug 21 15:17:42 2003 Owen Taylor <otaylor@redhat.com>
1320 * gdk/x11/gdkkeys-x11.c: Change the interpretation
1321 of consumed_modifiers so that it contains:
1322 - Modifiers combinations actually found in
1324 - Single modifier modifier combinations.
1325 But not multi-modifier combinations that aren't
1326 in event->state. Document. (#100439)
1328 Thu Aug 21 20:53:46 2003 Kristian Rietveld <kris@gtk.org>
1330 Slightly modified patch from Yann Rouillard to improve selection
1331 behavior with the mouse. Fixes #120187.
1333 * gtk/gtktreeview.c (gtk_tree_view_button_press): only
1334 select/deselect items on the first button press of button 1,
1335 expand checks for row_activated to include triple clicks.
1337 Thu Aug 21 01:33:51 2003 Kristian Rietveld <kris@gtk.org>
1341 * gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
1342 approximate digit widths up, to avoid truncation, convert to
1343 pango pixels when we have the full string width instead of converting
1344 the approx digit width to pango pixels, take inner border and
1345 interior focus into account correctly. (Fixes #116368, patch from
1348 2003-08-20 Noah Levitt <nlevitt@columbia.edu>
1350 * gtk/queryimmodules.c: Don't look at the same directory twice (in
1351 simple cases). (#120342)
1353 Wed Aug 20 22:04:47 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1355 * gdk/gdkwindow.c: Make the layers in the paint stack have their
1356 own pixmap instead of sharing one. (#118317)
1358 * tests/testgtk.c (create_get_image): Fixes to make the window fit
1359 on an 800x600 screen
1361 Wed Aug 20 22:03:25 2003 Kristian Rietveld <kris@gtk.org>
1365 * gtk/gtkspinbutton.c (start_spinning): change the type of step
1366 to gdouble, since it gets it's data from a gdouble (Fixes #113547).
1368 Mon Aug 18 17:19:12 2003 Owen Taylor <otaylor@redhat.com>
1370 * modules/input/gtkimcontextxim.[ch]: Substantially
1371 rework the handling of status windows:
1373 - Store the current StatusWindow in the
1374 GtkIMContextXIM structure and vice-versa, so we
1375 don't have to hunt the window hierarchy on
1377 - Use the Gtkidget hierarchy instead of/or as well
1378 as the GdkWindow hierarchy when finding the toplevel;
1379 this helps for things like GtkHandlebox
1380 - Watch GtkWidget::hierarchy_changed to catch
1381 changes in the toplevel without changes in the
1382 GdkWindow (reparenting)
1383 - Never create the GtkWindow for the status window
1384 unless we have text to display.
1385 - Various cleanups, add lots of comments.
1387 (#115077, much help from Takuro Ashie and Hidetoshi
1388 Tajima in tracking this down and figuring out a fix.)
1390 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_focus_in):
1392 * modules/input/gtkimcontextxim.c: Track the current
1393 screen for each toplevel so that we show the status
1394 window on the right screen. (#116340, James Su)
1396 * modules/input/gtkimcontextxim.c: If create a new IC
1397 when we currently have the focus, call XSetICFocus()
1400 * modules/input/gtkimcontextxim.c (get_im): Fix bug
1401 with multiple open screens.
1403 Tue Aug 19 14:37:46 2003 Owen Taylor <otaylor@redhat.com>
1405 * gtk/gtkimmulticontext.[ch] (struct _GtkIMMulticontext):
1406 Replace client_window field with 'priv' pointer,
1407 retaining binary compatibility.
1409 * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave):
1410 save use_preedit/cursor_location/focus status and set
1411 up the new slave appropriately. (#118651, Botond Botyanszki)
1413 Tue Aug 19 13:58:50 2003 Owen Taylor <otaylor@redhat.com>
1415 * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
1416 Don't use impl->position_info.clip_rect for toplevels.
1417 (#107068, reported by Thomas Mirlacher)
1419 Mon Aug 18 11:48:51 2003 Owen Taylor <otaylor@redhat.com>
1421 * gdk/x11/gdkdrawable-x11.c (convert_to_format):
1422 Add a fallback for unaligned source data for
1423 FORMAT_ARGB_MASK. (#117217)
1425 Mon Aug 18 10:51:57 2003 Owen Taylor <otaylor@redhat.com>
1427 * configure.in: Rework handling of REBUILD_PNGS,
1428 so that we also don't try to REBUILD_PNGS when
1429 cross-compiling and there is no gdk-pixbuf-csource.
1430 But give an error if gtk/stock-icons/gtkstockpixbufs.h
1431 is not in the source tree. (Note that REBUILDS_PNG
1432 was set backwards before, which is why you always
1433 had to manually recreate gtkstockpixbufs.h!)
1435 Mon Aug 18 10:19:55 2003 Owen Taylor <otaylor@redhat.com>
1437 * gtk+-2.0-uninstalled.pc.in: Add a missing gtk/ in the
1438 path to libgtk.la. (#120080, Benedikt Spranger)
1440 Sat Aug 16 10:34:49 2003 Owen Taylor <otaylor@redhat.com>
1442 * modules/input/imcedilla.c: Make the list of default
1443 languages more comprehensive. (Suggestion of
1444 Fco. Javier F. Serrador)
1446 Sat Aug 9 12:47:11 2003 Owen Taylor <otaylor@redhat.com>
1448 * gdk/gdk.c (gdk_arg_context_parse): Fix broken
1449 parentheses when skipping args.
1451 Sat Aug 16 16:22:23 2003 Kristian Rietveld <kris@gtk.org>
1453 Fix major bug in row ref handling, so the new combo box
1454 will actually work right (:. Bug #107748. Patch written
1455 with help from Tim Janik.
1457 The basic idea is to update the row refs in a closure,
1458 before the actual signal is emitted (rather than having
1459 the model connect signal handlers).
1461 * gtk/gtktreemodel.c (gtk_tree_model_base_init): change
1462 g_signal_new calls for row_inserted, row_deleted and
1463 rows_reordered to use the new marshallers,
1464 (row_inserted_marshall), (row_deleted_marshall),
1465 (rows_reordered_marshall): the new marshallers,
1466 (gtk_tree_row_ref_inserted_callback): renamed to
1467 gtk_tree_row_ref_inserted since it isn't a callback
1468 anymore and gets called by the marshaller now,
1469 (gtk_tree_row_ref_deleted_callback): likewise,
1470 (gtk_tree_row_ref_reordered_callback): likewise,
1471 (connect_ref_callbacks), (disconnect_ref_callbacks):
1473 (gtk_tree_row_reference_new_proxy),
1474 (gtk_tree_row_reference_free),
1475 (gtk_tree_row_reference_inserted),
1476 (gtk_tree_row_reference_deleted),
1477 (gtk_tree_row_reference_reordered): updated.
1479 Fri Aug 15 16:54:39 2003 Owen Taylor <otaylor@redhat.com>
1481 Improve Cedilla handling - based on a patch from Gustavo
1484 * modules/input/imcedilla.c po/POTFILES.in: Input method that
1485 produces C_WITH_CEDILLA rather than C_WITH_ACUTE for
1486 dead_acute+c combinations. Make this the default for
1489 * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave):
1490 Use LC_CTYPE instead of LC_MESSAGES to pick the default
1493 Fri Aug 15 17:00:19 2003 Owen Taylor <otaylor@redhat.com>
1495 * gtk/gtkimcontextsimple.c: Fix missing compose sequence
1496 for Multi_key+c+apostrophe.
1498 Fri Aug 15 21:57:34 2003 Kristian Rietveld <kris@gtk.org>
1502 * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): stop editing
1503 on vertical scrolling. (#108035, reported by Tim Janik).
1505 Fri Aug 15 20:06:42 2003 Kristian Rietveld <kris@gtk.org>
1509 * gtk/gtktreeview.c (gtk_tree_model_sort_row_changed),
1510 (gtk_tree_model_sort_level_find_insert),
1511 (gtk_tree_model_sort_insert_value): fix off-by-one error.
1512 (#109292 continued, patch from Yann Rouillard).
1514 Fri Aug 15 19:43:14 2003 Kristian Rietveld <kris@gtk.org>
1516 (Note: This is not exactly the same as the patch which went in
1519 * gtk/gtktreeview.c (gtk_tree_view_class_init),
1520 (gtk_tree_view_key_press), (gtk_tree_view_search_key_press_event):
1521 Also support the up, down, left, right, home, end, page up and
1522 page down keys on the numpad. (#119419, reported by Alex Larsson).
1524 Fri Aug 15 12:34:04 2003 Owen Taylor <otaylor@redhat.com>
1526 Fixes for X/Cygwin builds of GTK+ (#107623, Masahiro Sakai):
1528 * configure.in (GDK_DEP_LIBS_FOR_X): Make sure that
1529 we link libgtk against X explicitely, since we
1530 make GTK+ calls for plug/socket.
1532 * gtk/queryimmodules.c: Use USE_LA_MODULES and
1533 G_MODULE_SUFFIX here.
1535 * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_image): Protect
1536 XShmPutImage with #ifdef USE_SHM.
1538 Thu Aug 14 18:25:39 2003 Owen Taylor <otaylor@redhat.com>
1540 * gtk/gtkfilesel.c (gtk_file_selection_populate):
1541 Don't reposition the cursor when we aren't trying
1542 to complete. (Fixes problems with selection on
1543 startup, #108433, reported by Mark Finlay.)
1545 * gtk/gtkfilesel.c (gtk_file_selection_populate): Remove
1546 code that tried to position the cursor after the common
1547 prefix when there was one, it wasn't working, and
1548 would be hard to fix. Just always put the cursor
1549 at the end when completing.
1551 Thu Aug 14 17:58:23 2003 Owen Taylor <otaylor@redhat.com>
1553 * gtk/gtkfilesel.c (get_current_dir_utf8): If getting
1554 the current directory fails because of encoding
1555 conversion problems, walk up textually to parent
1556 directories until we can convert. (#113627)
1558 Wed Aug 13 17:01:49 2003 Owen Taylor <otaylor@redhat.com>
1560 * gtk/gtkmenushell.[ch] (gtk_menu_shell_enter_notify):
1561 Remove usage of menu_shell->ignore leave which was
1562 to deal with stray events we no longer get because
1563 we do grabbing differently. Comment it as unused in
1564 the header. (#115837, Keith Bissett)
1566 Wed Aug 13 16:32:43 2003 Owen Taylor <otaylor@redhat.com>
1568 * gtk/gtkmenu.c (gtk_menu_position, gtk_menu_window_size_request):
1569 Fix some places that weren't properly Xinerama-ified.
1571 * gtk/gtkmenu.c: Fix problem with windows that scroll
1572 at the top of the screen.
1574 Wed Aug 13 11:34:53 2003 Owen Taylor <otaylor@redhat.com>
1576 * gtk/gtkcombo.c (gtk_combo_init): connect_after() to
1577 key-press-event on the entry, so input methods get access to
1578 key presses before GtkCombo customization.
1579 (#115451, Botond Botyanszki)
1581 2003-08-13 Anders Carlsson <andersca@gnome.org>
1583 * tests/testtoolbar.c: (set_important_func), (important_toggled),
1584 (create_items_list):
1585 Add an important column.
1587 Tue Aug 12 15:00:15 2003 Owen Taylor <otaylor@redhat.com>
1589 * gtk/gtkwindow.c (gtk_window_real_set_focus): Protect
1590 against reentrancy from ::focus-out handlers.
1591 (#118129, Felipe Heidrich)
1593 Tue Aug 12 14:27:42 2003 Owen Taylor <otaylor@redhat.com>
1595 * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Remove
1596 GDK_LOCK_MASK before calling
1597 gdk_keymap_translate_keyboard_state so bindings
1598 and accelerators are independent of the Caps-lock
1599 key. (#115384, reported by Toni Willberg)
1601 Mon Aug 11 12:07:14 2003 Owen Taylor <otaylor@redhat.com>
1603 * gdk/x11/gdkevents-x11.c (get_real_window): Add missing
1604 break statements (#119494, Soeren Sandmann)
1606 Mon Aug 11 11:10:07 2003 Owen Taylor <otaylor@redhat.com>
1608 * gtk/gtkwidget.h: Mark parent public as well; it's
1609 extensively accessed in existing code, so there is
1610 no advantage in making people use get_parent().
1611 (Tweak to #119463 fix)
1613 2003-08-11 Matthias Clasen <maclas@gmx.de>
1615 Add support for EWMH "Above" and "Below" window states. (105100,
1618 * tests/testgtk.c: Add "Above" and "Below" to the the "Window
1621 * gtk/gtkwindow.h: Add gtk_window_set_keep_above and
1622 gtk_window_set_keep_below.
1624 * gtk/gtk.def: Add gtk_window_set_keep_above and
1625 gtk_window_set_keep_below.
1627 * gtk/gtkwindow.c (gtk_window_set_keep_below):
1628 (gtk_window_set_keep_above): New functions, call the corresponding
1631 * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below): New
1632 function, sets _NET_WM_STATE_BELOW.
1633 (gdk_window_set_keep_above): New function, sets
1634 _NET_WM_STATE_ABOVE.
1636 * gdk/gdkwindow.h: Add gdk_window_set_keep_above and
1637 gdk_window_set_keep_below.
1639 * gdk/gdkevents.h (GdkWindowState): Add GDK_WINDOW_STATE_ABOVE and
1640 GDK_WINDOW_STATE_BELOW.
1642 * gdk/gdk.def: Add gdk_window_set_keep_above and
1643 gdk_window_set_keep_below.
1645 * acinclude.m4: Copy newer versions of JH_CHECK_XML_CATALOG and
1646 JH_PATH_XML_CATALOG from gtk-doc to enable configuring without
1647 xmlcatalog in PATH. (#119115)
1649 2003-08-10 Matthias Clasen <maclas@gmx.de>
1651 * gtk/gtkwidget.h (struct _GtkWidget): Mark some members as
1654 2003-08-09 Noah Levitt <nlevitt@columbia.edu>
1657 * docs/reference/gdk/tmpl/windows.sgml: Elaborate a bit more in the
1658 docs on GdkFilterFunc and GdkFilterReturn.
1660 2003-08-09 Matthias Clasen <maclas@gmx.de>
1662 * gtk/gtkcalendar.c: Add and hook in gtk_calendar_scroll,
1663 to let the mouse wheels select the month. Scrolling down
1664 moves forward in time. (#53134, Abigail Brady)
1666 * gtk/gtkcalendar.c: Complete the RTL flipping support for
1667 GtkCalendar, make it possible to flip the headings using the
1668 "magic translated string" technique. Translators, note the
1669 comment in gtk_calendar_init() explaining this. (#102416)
1671 * gtk/gtkcalendar.c: Get the information about the first day of
1672 the week from the locale using another instance of the "magic
1673 translated string" technique. Ignore the display option
1674 GTK_CALENDAR_WEEK_START_MONDAY with a warning. (#87977)
1676 * gtk/gtkcalendar.c: Add DND support to GtkCalendar. The selected
1677 date is dragged as text, formatted via strftime %x. Text drops are
1678 accepted if g_date_set_parse() can make sense of the text. A
1679 dedicated data format for date DND has not been introduced yet,
1680 since there didn't seem to be sufficient consensus on such a
1681 format on xdg-list. (#117297)
1683 2003-08-08 Matthias Clasen <maclas@gmx.de>
1685 * gdk/gdkregion-generic.c (gdk_region_spans_intersect_foreach):
1686 Fix a segfault. (#115284, Jan Kratochvil)
1688 2003-08-08 Tor Lillqvist <tml@iki.fi>
1690 * gdk/win32/gdkevents-win32.c (print_event): Print also the root
1691 coordinates for events that have such. Print coordinates for enter
1694 (gdk_event_translate): Don't use event uninitialixed in the
1695 return_exposes branch of the WM_PAINT handler.
1697 * gdk/win32/gdkwindow-win32.c (gdk_window_new,
1698 _gdk_windowing_window_get_pointer, _gdk_windowing_window_at_pointer):
1699 Must offset top-level window coordinates here, too.
1701 2003-08-08 Matthias Clasen <maclas@gmx.de>
1703 * demos/gtk-demo/appwindow.c (do_appwindow): Hide the resize grip
1704 when maximized or fullscreen.
1706 2003-08-07 Tor Lillqvist <tml@iki.fi>
1708 * gdk/win32/gdkinput-win32.h
1709 * gdk/win32/gdkinput-win32.c (_gdk_input_configure_event,
1710 _gdk_input_enter_event): Drop the GdkEvent* parameter, it wasn't
1713 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Adapt caller
1714 accordingly, in fact an uninitialised variable was dereferenced.
1717 [Win32] Add support for multiple monitors.
1719 * gdk/win32/gdkprivate-win32.h
1720 * gdk/win32/gdkglobals-win32.c: New global variables for
1721 multiple-monitor info: _gdk_num_monitors, _gdk_monitors, and
1722 _gdk_offset_x and _gdk_offset_y.
1724 * gdk/win32/gdkdisplay-win32.c (count_monitor, enum_monitor): New
1725 functions, enumeration functions passed to EnumDisplayMonitors().
1727 (gdk_display_open): If the EnumDisplayMonitors() and
1728 GetMonitorInfo() API is present (on Win98, Win2000 and newer), use
1729 if to find out monitor info.
1731 Calculate the offset between Win32 coordinates (relative to the
1732 primary monitor's origin (and thus negative on monitors to the
1733 left of or above it), and GDK's (visible coordinates should be
1736 * gdk/win32/gdkscreen-win32 (gdk_screen_get_n_monitors,
1737 gdk_screen_get_monitor_geometry): Use information collected above.
1739 (gdk_window_move, gdk_window_move_resize_window_get_geometry):
1740 Subtract _gdk_offset_{x,y} from GDK root window coordinates.
1742 (gdk_window_get_geometry, gdk_window_get_origin,
1743 gdk_window_get_frame_extents): For top-level windows, add
1744 _gdk_offset_{x,y} to GDK root window coordinates
1746 Still need to handle multiple monitors in
1747 gdk_window_fullscreen(). Probably should make the window
1748 fullscreen on the monitor where the cursor is?
1750 * gdk/win32/gdkevents-win32.c: Add _gdk_offset_{x,y} to all GDK
1751 root window coordinates in GdkEvents.
1754 [Win32] Fix geometry hint handling. Add support for resize
1755 increment and base size, and aspect ratio geometry hints. The
1756 "gridded geometry" test in testgtk now works beautifully.
1758 * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
1759 Turns out this function shouldn't actually ever modify the
1760 window's size, just store the hints. (Old code kept for a while
1763 (gdk_window_set_hints): Remove presumably broken code that handles
1764 the position hints, this function is obsolete anyway.
1766 * gdk/win32/gdkevents-win32.c: Drop the current_{x,y}_root
1767 variables, not used.
1769 (adjust_drag): New function, used to implement resize increment
1772 (gdk_event_translate): Handle WM_SIZING, implement resize
1773 increment and base size, and aspect ratio geometry hints here. The
1774 WM_GETMINMAXINFO handler takes care of the minimum and maximum
1775 size hints as before. Fix the WM_GETMINMAXINFO handler to take
1776 into account window decorations. No need to modify the
1777 ptMaxPosition and ptMaxSize fields in the MINMAXINFO struct,
1778 the defaults are fine.
1780 * gdk/win32/gdkprivate-win32.h
1781 * gdk/win32/gdkwindow-win32.c (_gdk_win32_adjust_client_rect,
1782 _gdk_win32_get_adjusted_client_rect): New helper functions.
1784 2003-08-07 Matthias Clasen <maclas@gmx.de>
1786 * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): Reset the
1787 toplevel->have_* flags before iterating over the _NET_WM_STATE
1790 Thu Aug 7 16:49:29 2003 Owen Taylor <otaylor@redhat.com>
1792 * gtk/gtkwidget.c (gtk_widget_set_style_internal):
1793 Fix a bug where on theme change, resize/redraw wasn't
1794 properly getting queued on toplevel windows. (#116346,
1797 * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows):
1798 Fix bug where wrong coordinates were used for toplevel
1801 Thu Aug 7 16:40:21 2003 Owen Taylor <otaylor@redhat.com>
1803 * gtk/gtknotebook.c (gtk_notebook_remove): Remove leftover
1804 page_num variable (Archit Baweja)
1806 2003-08-07 Matthias Clasen <maclas@gmx.de>
1808 * gtk/gtkspinbutton.c (gtk_spin_button_default_input): Use g_strtod() to
1809 cope with C libraries with crippled locale support. (#115293)
1811 2003-08-07 Hans Breuer <hans@breuer.org>
1813 * gdk/win32/gdkevents-win32.c : finally use TrackMouseEvent
1814 (only if the new window not known to Gdk) to get proper
1815 leave notification, and get rid of the wrong placed
1816 tooltips, bug #102283
1818 (gdk_event_translate) : small code reordering to not get
1819 GDK_MOTION_NOTIFY for still mouse and get back tooltips on
1822 2003-08-07 Tor Lillqvist <tml@iki.fi>
1825 * gdk/win32/gdkfont-win32.c (gdk_fontset_load_for_display): Add
1826 missing function, trivially implement.
1828 2003-08-07 Matthias Clasen <maclas@gmx.de>
1830 * gtk/gtkctree.c (draw_row): Don't cut descenders when
1831 rendering. (#118646, Charles Kerr)
1833 2003-08-06 Hans Breuer <hans@breuer.org>
1835 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) :
1836 initialize bits to 0 (probably default on NT)
1838 * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
1839 now it works as intended ;-)
1841 2003-08-04 Hans Breuer <hans@breuer.org>
1843 * gdk/win32/gdkwindow-win32.c(gdk_window_set_modal_hint) :
1844 set HWND_NOTOPMOST for modal==FALSE, fixes bug #118435
1846 * gdk/win32/gdkwindow-win32.c : implement gdk_window_[un]fullscreen
1847 (gdk_window_{move,resize,move_rezize})) : noop if FULLSCREEN
1849 * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
1850 against all expectations it is basically ony a call with WM_SETICON
1851 needed (the visual effect is there, though colors or mask are
1852 still somewhat wrong).
1853 * gdk/win32/gdkwindow-win32.h : place to store the HICON
1855 * gdk/win32/gdkdrawabke.win32.c : readded the conditional end
1856 pixel drawing as it was fixed at 1999-08-23
1858 gtk/gtk.def : updated
1860 Tue Aug 5 10:07:08 2003 Owen Taylor <otaylor@redhat.com>
1862 * gtk/gtkmessagedialog.c (gtk_message_dialog_get_property):
1863 Add a missing break. (#119156, Callum McKenzie)
1865 Tue Aug 5 00:24:13 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1867 * gtk/gtkmenu.c (gtk_menu_position): New positioning
1870 Fri Aug 1 15:26:46 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1872 * gtk/gtktoolbar.c, gtk/toolitem.c: add new "is_important"
1875 * gtk/gtkradiotoolbutton.c
1876 (gtk_radio_tool_button_new_from_widget): Don't take a stock id
1878 * gtk/gtkradiotoolbutton.c
1879 (gtk_radio_tool_button_new_with_stock_from_widget): make this
1880 function take a stock_id.
1882 * gtk/toolbar: documentation
1884 Mon Aug 4 14:53:46 2003 Owen Taylor <otaylor@redhat.com>
1886 * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init):
1887 Fix problem where use_xshm was getting set wrong if
1888 MIT_SHM wasn't found. (George Lebel)
1890 2003-08-04 Tor Lillqvist <tml@iki.fi
1892 * gdk/win32/gdkevents-win32.c (apply_filters): Fix braino:
1893 actually use the passed-in filter list. The function also needs a
1894 GdkWindow parameter, as filter functions expect
1895 GdkEvent::any.window to be valid. (#119034, Hans Breuer)
1897 2003-08-03 Matthias Clasen <maclas@gmx.de>
1899 * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors):
1900 (gdk_screen_get_monitor_geometry): Improve wording of the docs, avoid
1901 the term "virtual screen". (#119030, Tor Lillquist)
1903 2003-08-02 Matthias Clasen <maclas@gmx.de>
1905 * tests/testtext.c (test_init):
1906 * tests/testgtk.c (test_init):
1907 * tests/testdnd.c (test_init):
1908 * demos/pixbuf-init.c (pixbuf_init):
1909 * demos/gtk-demo/main.c (main): Use g_setenv().
1911 * gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display): Use
1914 Sat Aug 2 12:53:16 2003 Owen Taylor <otaylor@redhat.com>
1916 * configure.in: Requires glib-2.3.0, pango-1.2.0.
1918 * configure.in: Require Xft version 2,
1919 remove code for handling older versions of pango and Xft.
1920 Many miscellaneous improvements to X checks
1922 * acinclude.m4: Add GTK_ADD_LIB() macro for adding
1923 a library to a variable, avoiding dups.
1925 * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display):
1928 * gdk/x11/gdk*-x11.[ch]: Remove support for Xft1 and
1931 2003-08-02 Matthias Clasen <maclas@gmx.de>
1933 * gtk/gtkcolorsel.c (color_sample_drop_handle)
1934 (palette_drop_handle):
1935 * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received): Accept
1936 drops with the wrong format, since the KDE color chooser incorrectly
1937 drops application/x-color with format 8. (#118810)
1939 * gtk/gtkcolorsel.c (color_sample_drop_handle) (palette_drop_handle):
1940 * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):
1941 Accept drops with the wrong format, since the KDE color chooser
1942 incorrectly drops application/x-color with format 8. (#118810)
1944 2003-08-02 Tor Lillqvist <tml@iki.fi>
1946 Fix gdk/win32 window geometry handling again. The window position
1947 in a GDK_CONFIGURE event should be that of the client area, not of
1948 the window decorations. (I was confused by the term "window
1949 border" in X11. It does *not* mean the window manager
1950 decorations. There are no X11-style window borders in Win32.)
1951 Also, this time do take the geometry hints into account
1952 appropriately when moving windows. Now testgtk's gravity test's
1953 move buttons work OK. There are stil problems with taking gravity
1954 into account when showing a hidden window.
1956 * gdk/win32/gdkwindow-win32.h: Keep a whole GdkGeometry as hints
1957 instead of separate fields.
1959 * gdk/win32/gdkevents-win32.c (handle_configure_event): Don't
1960 adjust for decorations.
1962 * gdk/win32/gdkwindow-win32.c (get_outer_rect,
1963 adjust_for_gravity_hints): New functions.
1964 (gdk_window_move, gdk_window_resize, gdk_window_move_resize): Use
1965 above functions, take geometry hints into account.
1966 (gdk_window_set_geometry_hints): Size hints specicy client area,
1967 not including decorations.
1969 Fri Aug 1 17:10:22 2003 Owen Taylor <otaylor@redhat.com>
1971 * gtk/gtkfilesel.c (cmpl_completion_fullname): Always
1972 return an absolute path (#115590), fix a problem where
1973 you could crash the file selector with a looong name
1974 by returning a newly allocated buffer.
1976 Fri Aug 1 16:44:51 2003 Owen Taylor <otaylor@redhat.com>
1978 * gtk/gtkfilesel.c (update_cmpl): Fix obvious reallocation
1979 bug in rarely or never hit code path (#118071,
1982 Fri Aug 1 16:30:13 2003 Owen Taylor <otaylor@redhat.com>
1984 * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render):
1985 If the check for missing depths, try actually creating pixmaps
1986 of the depths to deal with Xinerama not reporting
1987 all the depths it should. (#115822)
1989 Fri Aug 1 15:33:59 2003 Owen Taylor <otaylor@redhat.com>
1991 * gtk/gtksocket.c: Patch from Denis Mikhalkin to
1992 forward KeyRelease events as well as KeyPress events.
1995 Fri Aug 1 15:06:25 2003 Owen Taylor <otaylor@redhat.com>
1997 * gdk/gdk.c (gdk_parse_args): g_set_prgname("<unknown>")
1998 if argc is 0 as well, instead of leaving it unset.
1999 (#116023, Michael Meeks)
2001 Thu Jul 31 23:09:02 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2003 * gtk/gtktoolbar.c (gtk_toolbar_class_init): make show_arrow
2004 default to TRUE; ignore the property when api_mode != NEW_API
2006 2003-07-31 Matthias Clasen <maclas@gmx.de>
2008 * gtk/gtkwindow.c (gtk_window_set_default_icon): Rename parameter pixbuf
2009 to icon, to pacify gtk-doc.
2011 * gtk/gtkwidget.c (gtk_widget_class_init): Fix formatting of drag-motion
2014 Thu Jul 31 15:33:33 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2016 * gtk/gtk*tool*.h: add padding to subclasses of GtkToolItem
2018 Thu Jul 31 15:29:28 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2020 * gtk/gtktoolitem.c (struct _GtkToolItemPrivate): remove unused
2021 overflow_item field.
2023 Wed Jul 30 21:11:13 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2025 * gtk/gtktoolitem.h: make _gtk_tool_item_toolbar_reconfigured()
2026 an internal function
2028 * gtk/gtktoolitem.h: remove unused declaration of
2029 _gtk_tool_item_get_drag_window().
2031 Wed Jul 30 17:03:58 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2033 * gtk/gtktoolbutton.[ch]:
2034 (gtk_tool_button_new): swap icon_widget and label arguments to
2035 match BonoboUIToolbarButton.
2037 * gtk/gtktoolbar.h: un-deprecate gtk_toolbar_{set|unset}_style().
2039 2003-07-30 Matthias Clasen <maclas@gmx.de>
2041 * gtk/gtkwidget.c (gtk_widget_class_init): Some updates to the DND
2044 2003-07-29 Tor Lillqvist <tml@iki.fi>
2046 Fix for #108007, #112402, #117042: There was confusion in
2047 gdk/win32 at various places whether a window position refers to
2048 the decoration position or the client area position. Also whether
2049 window size includes decorations or not.
2051 The correct interpretation apparently is that in GDK (like in
2052 X11), a top-level window position means the decoration's position,
2053 but size means the window's inner size (client area size). In the
2054 Win32 API, the window size usually includes the decorations,
2057 * gdk/win32/gdkevents-win32.c (decode_key_lparam): Move inside
2058 #ifdef G_ENABLE_DEBUG.
2059 (handle_configure_event): New function, generates GDK_CONFIGURE
2060 events from WM_SIZE and WM_MOVE messages. Even if no event is
2061 generated because of the event mask, still set the private
2062 position and size fields. Calculate position and size correctly.
2063 (gdk_event_translate): Call handle_configure_event().
2065 * gdk/win32/gdkgeometry-win32.c: Cosmetics.
2067 * gdk/win32/gdkwindow-win32.c: Use GDI_CALL() and API_CALL()
2068 macros. Cosmetic debugging output changes.
2069 (SafeAdjustWindowRectEx): Remove. If an application wants to
2070 locate a window outside of the screen, it's not GDK's business to
2071 prevent it. And anyway, with multiple monitors, negative
2072 coordinates are perfectly normal.
2073 (gdk_window_new): Adjust the window size for decorations after
2074 _gdk_window_init_position() has done its job. (But the big window
2075 code currently is presumably broken on Win32 anyway.)
2076 (gdk_window_move): The position passed in is supposed to be that
2077 of the window border, so don't need to adjust for decorations.
2078 (gdk_window_resize, gdk_window_move_resize): Simplify somewhat.
2080 Tue Jul 29 13:55:44 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2082 * gtk/gtktoolbar.c (gtk_toolbar_set_style,
2083 gtk_toolbar_prepend_element, gtk_toolbar_append_element,
2084 gtk_toolbar_insert_space, gtk_toolbar_prepend_space,
2085 gtk_toolbar_append_space, gtk_toolbar_insert_item,
2086 gtk_toolbar_prepend_item, gtk_toolbar_append_item,
2087 gtk_toolbar_set_tooltips, gtk_toolbar_set_orientation,
2088 gtk_toolbar_new, gtk_toolbar_prepend_item):
2090 Move documentation inline from template files.
2092 * gtk/gtktoolbar.c (gtk_toolbar_insert_element,
2093 gtk_toolbar_insert_widget, gtk_toolbar_prepend_widget,
2094 gtk_toolbar_append_widget, gtk_toolbar_remove_space,
2095 gtk_toolbar_insert_stock, gtk_toolbar_unset_icon_size,
2096 gtk_toolbar_get_icon_size, gtk_toolbar_set_icon_size,
2097 gtk_toolbar_get_tooltips, gtk_toolbar_unset_style,
2098 gtk_toolbar_get_style, gtk_toolbar_get_orientation)
2100 Copy documentation from stable that was added after the EggToolbar
2103 * gtk/gtktoolbar.h: deprecate gtk_toolbar_unset_icon_size()
2105 Mon Jul 28 18:21:34 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2107 * gtk+/docs/: Commit autogenerated changes, so patches will make
2110 2003-07-27 Tor Lillqvist <tml@iki.fi>
2112 * gdk/win32/gdkevents-win32.c (build_key_event_state): On Win9x,
2113 the keyboard state returned by GetKeyboardState() doesn't
2114 distinguish between the left and right Control and Alt keys. Thus
2115 we cannot detect AltGr (which is supposed to be left Control +
2116 right Alt) the same way as on NT-based systems, but have to accept
2117 either Control + either Alt as AltGr.
2119 2003-07-27 Matthias Clasen <maclas@gmx.de>
2121 * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2122 Fix function name in warning message. (#118156, Tim-Philipp
2125 * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property):
2126 is-expander and is-expanded are boolean properties, not ints.
2127 (#118359, Josh Parsons)
2129 Sat Jul 26 15:21:27 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2131 * gtk/gtkimagemenuitem.c
2132 (gtk_image_menu_item_toggle_size_request): don't request
2133 toggle_space when the image width is 0.
2135 2003-07-25 Tor Lillqvist <tml@iki.fi>
2137 * gdk/win32/gdkprivate-win32.h
2138 * gdk/win32/gdkglobals-win32.c: New flags _gdk_input_locale_is_ime
2139 and _gdk_keyboard_has_altgr.
2141 * gdk/win32/gdkevents-win32.c: Lots of changes. Most important
2142 ones detailled here.
2144 Code that has been ifdeffed out for a long time removed. Remove
2145 some really old doc comments that were left behind for some public
2146 functions, the official ones are in the X11 backend anyway. Change
2147 GDK_WINDOW_OBJECT() calls to GdkWindowObject casts. Reformat
2148 multi-line boolean expressions to have the operators at ends of
2151 As mouse capture with SetCapture() indeed seems to work OK, no
2152 need to have the correspoinding macro USE_SETCAPTURE and ifdefs.
2154 Ifdef out the gdk-ping-msg stuff. I don't remember why it was
2155 needed at some time, and things seem to work fine now without
2158 Ifdef out the search for some Latin locale keyboard layout being
2159 loaded. Not used currently, but might be needed after all, if we
2160 decide that we want to be able to generate ASCII control character
2161 events with a non-Latin keyboard.
2163 (assign_object): New helper function, handles the g_object_ref()
2164 and unref() calls when assigning GObject pointers.
2166 (generate_crossing_events): Also generate the GDK_NOTIFY_INTERIOR
2167 enter event when the pointer has moved to an ancestor window. Was
2168 left out by mistake.
2170 (gdk_window_is_ancestor): Renamed from gdk_window_is_child().
2172 (gdk_pointer_grab, gdk_pointer_ungrab): Implement the confine_to
2173 functionality, using ClipCursor().
2175 (find_window_for_mouse_event): Splice part of code into new
2176 function find_real_window_for_grabbed_mouse_event().
2178 (fixup_event, append_event, apply_filters): New functions, code
2179 refactored out from elsewhere.
2181 (synthesize_enter_or_leave_event, synthesize_leave_event,
2182 synthesize_enter_event,
2183 synthesize_leave_events,synthesize_enter_events): Also take a
2184 GdkCrossingMode parameter, in preparation to generating
2185 GDK_CROSSING_GRAB and GDK_CROSSING_UNGRAB events.
2187 (fixup_event, append_event, fill_key_event_string): New functions,
2190 (vk_from_char, build_keypress_event, build_keyrelease_event):
2191 Removed as part of dropping WM_CHAR handling.
2193 (build_key_event_state,gdk_event_translate): Call
2194 GetKeyboardState(), once, for each keyboard message, instead of
2195 several calls to GetKeyState() here and there.
2197 (gdk_event_translate): Fix bugs #104516, #104662, #115902. While
2198 at it, do some major refactoring, and some fixes for potential
2199 problems noticed while going through the code.
2201 Don't handle WM_CHAR at all. Only handle WM_KEYDOWN and
2202 WM_KEYUP. Don't need the state variables related to whether to
2203 wait for WM_CHAR or not, and whether the current key is
2204 AltGr. Remove lots of complexity. Thus don't need the
2205 use_ime_composition flag.
2207 Not handling WM_CHAR means dead key handling will have to be taken
2208 care of by GTK, but that seems to work fine, so no worry.
2210 Another side-effect is that Alt+keypad digits don't work any
2211 longer, but it's better to learn to use GTK's ISO14755 support is
2214 Be more careful in checking whether AltGr is involved. Only
2215 attempt to handle it if the keyboard actually has it. And
2216 explicitly check for *left* Control plus *right* Alt being
2217 pressed. Still, allow (left) Alt and/or (right) Control with AltGr
2220 Handle keys using similar code as in the X11 backend. As we have
2221 built a keymap in gdkkeys-win32.c anyway, use it by calling
2222 gdk_keymap_translate_keyboard_state() to look up the keysym from
2223 the virtual key code and keyboard state. Build the key event
2224 string in exactly the same way as the X11 backend.
2226 If an IME is being used, don't generate GDK events for keys
2227 between receiving WM_IME_STARTCOMPOSITION and
2228 WM_IME_ENDCOMPOSITION, as those keys are for the IME.
2230 For WM_IME_COMPOSITION, handle all the Unicode chars returned from
2231 the IME, not just the first one.
2233 gdk_event_translate() is still quite complex, could split the
2234 message handler cases out into separate functions.
2236 On mouse events, when the mouse is grabbed, use
2237 find_real_window_for_grabbed_mouse_event() in order to be able to
2238 generate correct crossing events.
2240 No longer take a pre-allocated GdkEvent as parameter. Instead,
2241 allocate events as needed and append them to the queue. (This is
2242 different from how gdk_event_translate() in the X11 backend
2243 works.) This change made the code much clearer, especially in the
2244 cases where we have to generate several GDK events for one Windows
2245 message. Return FALSE if DefWindowProc() should be called, TRUE
2246 if not. If DefWindowProc() should not be called, also return the
2247 value to be returned from the window procedure.
2249 (Previously, the interaction with gdk_event_translate()'s caller
2250 was much more complex, when we had to indicate whether the
2251 already-queued event should be left in the queue or removed, and
2252 in addition also had to indicate whether to call DefWindowProc()
2253 or not, and what value to return from the window procedure if
2256 Don't use a separate "private" variable required to be pointing to
2257 the GdkWindowObject of the "window" variable at all times. Just
2258 use casts, even if looks a bit uglier.
2260 Notice destroyed windows as early as possible, and break out of
2261 the messsage switch.
2263 Use _gdk_pointer_root as current_window when the pointer is
2264 outside GDK's top-level windows.
2266 On WM_INPUTLANGCHANGE, set _gdk_input_locale_is_ime as
2267 appropriate, based on ImmIsIME().
2269 (gdk_event_translate, gdk_event_send_client_message_for_display,
2270 gdk_screen_broadcast_client_message): Implement client messages.
2271 Use a registered Windows message to pass GDK client messages. Note
2272 that the amount of user data is restricted to four bytes, as it is
2273 carried in the LPARAM. (The WPARAM is used for the message type
2276 (real_window_procedure): Adapt for new gdk_event_translate()
2279 * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Set
2280 _gdk_input_locale_is_ime initially.
2282 * gdk/win32/gdkwindow-win32.c: Use g_object_ref()/unref() instead
2283 of g_colormap_ref()/unref().
2285 (gdk_window_new): Made code a bit more like the X11 one, pretend
2286 to handle screens (although we just have one for now).
2288 * gdk/x11/gdkevents-x11.c
2289 (gdk_event_send_client_message_for_display,
2290 gdk_screen_broadcast_client_message): Document the user data
2291 limitation on Win32.
2293 * gdk/win32/gdkevents-win32.c (print_event): More complete enter
2294 and leave notify detail output.
2296 * gdk/win32/gdkkeys-win32.c (update_keymap): Make dead keys
2297 visible to GDK and GTK. Store the corresponding GDK_dead_* keysym
2298 for those, so that the GtkIMContextCimple compose tables will
2299 work. Deduce if the keyboard layout has the AltGr key, and set the
2300 above flag accordingly.
2302 2003-07-26 Matthias Clasen <maclas@gmx.de>
2304 * gtk/gtkwidget.c: Document DND signals.
2306 2003-07-24 Matthias Clasen <maclas@gmx.de>
2308 * gtk/gtktextview.c (popup_targets_received): Make the "Input Methods"
2309 insensitive when editing isn't possible. (#118150)
2311 2003-07-23 Matthias Clasen <maclas@gmx.de>
2313 * gtk/gtkcolorsel.c (gtk_color_selection_init): Make the hue
2314 spinbutton wrap. (#118097, John Darrington)
2316 * docs/faq/gtk-faq.sgml: Mention Xnest as a way to debug GTK+ apps.
2318 2003-07-20 Hans Breuer <hans@breuer.org>
2320 * makefile.msc : new file to build it all
2321 * Makefile.am : ... added to EXTRA_DIST
2323 * gdk/makefile.msc gtk/stock-icons/makefile.msc
2324 gtk/makefile.msc.in tests/makefile.msc : updated
2326 * gdk/gdk.def gtk/gtk.def : export a bunch of new
2329 * gtk/gtkbbox.c : use g_return_val_if_fail() if
2330 there is a value to return
2332 * gtk/gtkfontsel.c gtk/gtkiconfactory.c :
2335 * gtk/gtkicontheme.c : ported to use GTimeVal instead of
2336 struct timeval and GTK_DATA_PREFIX instead of GTK_DATADIR
2338 * gtk/gtkicontheme.c : use HAVE_LC_MESSAGES
2340 * gtk/gtkimmulticontext.c : use gtkprivate.h
2342 * gtk/stock-icons/stock_color_picker_25.png
2343 gtk/stock-icons/stock_jump_to_rtl_16.png
2344 gtk/stock-icons/stock_jump_to_rtl_24.png
2345 gtk/stock-icons/stock_redo_rtl_16.png
2346 gtk/stock-icons/stock_redo_rtl_24.png
2347 gtk/stock-icons/stock_undelete_rtl_16.png
2348 gtk/stock-icons/stock_undelete_rtl_24.png
2349 gtk/stock-icons/stock_undo_rtl_16.png :
2350 gtk/stock-icons/stock_undo_rtl_24.png :
2353 Sat Jul 19 22:39:24 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2355 * gtk/gtktoolitem.c (gtk_tool_item_size_request): remove
2356 leftover request of {xy}thickness
2358 Sat Jul 19 16:26:02 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2360 * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): don't
2361 attempt to add a NULL icon to the box.
2363 Sat Jul 19 12:13:20 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2365 * gtk/gtknotebook.c (gtk_notebook_focus_in|out): only redraw tabs
2368 2003-07-19 Matthias Clasen <maclas@gmx.de>
2370 * gtk/gtkstock.h (GTK_STOCK_DIALOG_AUTHENTICATION): New stock id.
2371 * gtk/gtkiconfactory.c (get_default_icons): Add
2372 stock_dialog_authentication_48. (#65765)
2373 * gtk/stock-icons/Makefile.am (VARIABLES2, IMAGES): Here too.
2374 * gtk/stock-icons/stock_dialog_authentication_48.png: New image.
2377 * gtk/gtkbbox.c (gtk_button_box_get_child_secondary): New
2380 Sat Jul 19 00:18:40 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2382 * gtk/gtkwindow.c (gtk_window_set_default_icon): Fix C99
2385 * gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): new function
2386 (gtk_widget_real_focus_{in|out}_event): queue shallow draws
2387 instead of full draws.
2389 2003-07-18 Matthias Clasen <maclas@gmx.de>
2391 * gtk/gtkwindow.c: Add properties decorated and gravity. (#80234)
2393 * gtk/gtktextview.c (gtk_text_view_class_init): Add a new keybinding
2394 signal, move_viewport.
2395 (gtk_text_view_move_viewport): New function which implements the
2396 move_viewport functionality.
2397 (gtk_text_view_move_cursor_internal): If the cursor is not visible, move
2398 the viewport. (#78669)
2400 * gtk/gtkenums.h (GtkScrollStep): New enumeration, used for
2401 move_viewport argument.
2403 * gtk/gtkstatusbar.c (gtk_statusbar_class_init): Add a has_resize_grip
2407 * gtk/gtkwindow.c (gtk_window_set_default_icon): New method. (#95816)
2409 * gtk/gtkmessagedialog.h:
2410 * gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): New method.
2411 (#65501, Sebastian Rittau)
2413 Fri Jul 18 20:06:57 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2415 * gtk/gtktextview.c (changed_handler): use
2416 gtk_widget_queue_resize_noredraw().
2418 2003-07-16 Jody Goldberg <jody@gnome.org>
2420 * gdk/x11/gdkwindow-x11.c (gdk_window_focus) : fix cut-n-paste-o
2422 Fri Jul 18 19:55:50 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2424 * gtk/gtkwidget.c (gtk_widget_queue_resize_no_redraw): Add this
2427 Fri Jul 18 18:43:01 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2429 By popular request give toolbuttons a border.
2432 (gtk_tool_item_size_allocate):
2433 (gtk_tool_item_size_request): don't request and allocate a border
2436 * gtk/gtktoolbutton.c
2437 (gtk_tool_button_size_allocate):
2438 (gtk_tool_button_size_request): remove these functions
2441 (gtk_toolbar_size_request):
2442 (gtk_toolbar_size_allocate): request and allocate a border if we
2445 Thu Jul 17 19:24:51 2003 Kristian Rietveld <kris@gtk.org>
2449 Fixes issues pointed out by Morten Welinder in #115140.
2451 * gtk/gtktreeview.c (gtk_tree_view_size_request): fix comment,
2452 (do_validate_rows): update validated_area with a logic OR instead
2454 (validate_rows_handler): make the if statement match the one in
2455 validate_rows(), so we don't leak the timeout.
2457 Thu Jul 17 19:12:02 2003 Kristian Rietveld <kris@gtk.org>
2461 * gtk/gtktreeview.c (gtk_tree_view_remove_widget): the treeview
2462 should only grab focus back if the "cell_editable" widget still
2463 has focus. (Fixes #110104, testcase provided by Marco Pesenti
2466 Thu Jul 17 19:06:34 2003 Kristian Rietveld <kris@gtk.org>
2470 * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2471 Don't set attr.event_mask twice, those things were meant to be
2472 ORred. (#115139, pointed out by Morten Welinder).
2474 Thu Jul 17 16:11:21 2003 Kristian Rietveld <kris@gtk.org>
2478 * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): stop editing
2479 if needed. (Fixes #115869, reported by Michael Natterer).
2481 2003-07-15 Matthias Clasen <maclas@gmx.de>
2483 * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
2484 Fight against gtk-doc stupidity.
2486 2003-07-13 Matthias Clasen <maclas@gmx.de>
2488 * gtk/gtkdnd.c (gtk_drag_begin): Rename parameter target_list back to
2489 targets, to pacify gtk-doc.
2491 Sun Jul 13 15:57:57 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2493 * gtk/gtktoolbutton.c (gtk_tool_button_finalize): Fix leaks of
2494 label_text, label_widget and icon_widget. (#117312,
2497 Sun Jul 13 01:37:51 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2499 * gtk/gtkmenu.c (gtk_menu_class_init): new properties
2500 "horizontal-offset" and "vertical-offset" that determines the
2501 position of the menu when it is a submenu.
2503 * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): position
2504 submenus according to new vertical- and horizontal-offset
2507 Sat Jul 12 16:16:04 2003 Kristian Rietveld <kris@gtk.org>
2511 * gtk/gtktreeview.c (gtk_tree_view_drag_data_received): special
2512 case drags to "0", scroll to the top after dropping. (Fixes #94968,
2513 reported by Alp Toker).
2515 Sat Jul 12 16:08:32 2003 Kristian Rietveld <kris@gtk.org>
2519 * demos/gtk-demo/editable_cells.c (cell_edited): fixup bad
2520 code (#115784, Owen Taylor).
2522 Sat Jul 12 16:01:03 2003 Kristian Rietveld <kris@gtk.org>
2526 * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
2527 free the old text and extra_attrs *after* we parsed the new
2528 markup string. (Fixes #114485, reported by Owen Taylor).
2530 Sat Jul 12 15:51:33 2003 Kristian Rietveld <kris@gtk.org>
2534 Fixes #113904, testcase provided by Rene Seindal.
2536 * gtk/gtktreeview.c (gtk_tree_view_button_press): set
2537 pressed_button to -1 when a row has been activated,
2538 (gtk_tree_view_motion_bin_window): only start a drag if there's
2539 a button being pressed.
2541 Sat Jul 12 15:51:18 2003 Kristian Rietveld <kris@gtk.org>
2545 * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): use
2546 gdk_window_get_pointer instead of gdk_display_get_window_at_pointer
2547 to avoid a roundtrip (#110272, Owen Taylor).
2549 Sat Jul 12 15:28:26 2003 Kristian Rietveld <kris@gtk.org>
2553 This patch really really fixes scrolling. Related bugs: #81627,
2554 testcase provided by Timo Sirainen, #111500, testcase provided by
2555 manu, #113241, reported by Pedro Gimeno/Michael Natterer.
2557 * gtk/gtktreeview.c (validate_visible_area): scrolling to a dy
2558 which is equal to the lower border of the window means scrolling
2559 to an invisible row, always update the dy when scrolling to an
2560 invisible row, corrected area_above/below calculations for
2561 invisible rows, when walking the tree correct the size
2562 subtracted for invalidated rows, fix wrong logic in comment.
2564 2003-07-11 Matthias Clasen <maclas@gmx.de>
2566 * gtk/gtkicontheme.c (pixbuf_supports_svg): Use g_strfreev() to free
2567 mime_types. (#117219, Steve Chaplin)
2569 Tue Jul 8 20:11:04 2003 Owen Taylor <otaylor@redhat.com>
2571 * gdk/x11/gdkevents-x11.c (get_real_window)
2572 gdk/x11/gdkinput-x11.c (_gdk_input_common_init)
2573 gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init)
2574 gdk/x11/gdkprivate-x11.h (_gdk_windowing_image_init)
2575 Don't assume that all events start with XEventAny - Xkb events
2576 don't! (#105745). So, only do that for core events, and for
2577 non-core events, add a system for registering event types
2578 that start with XEventAny.
2580 * gdk/x11/gdkevents-x11.c (gdk_event_translate):
2581 Check to see if the result of gdk_window_lookup_for_display()
2582 is actually a window.
2584 Fri Jul 11 20:48:14 2003 Kristian Rietveld <kris@gtk.org>
2586 * gtk/gtktreemodel.c (gtk_tree_path_free): make the path != NULL
2587 check a silent assert, so it follows the g_free() behaviour.
2589 2003-07-11 Matthias Clasen <maclas@gmx.de>
2591 * gtk/gtkstatusbar.c (gtk_statusbar_init): Center statusbar contents
2592 vertically. (#109823, Joe Shaw)
2594 2003-07-11 Morten Welinder <terra@gnome.org>
2596 * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixbuf): Fix memory
2597 access error. (#69436)
2599 Fri Jul 11 14:32:43 2003 Kristian Rietveld <kris@gtk.org>
2601 Landing GtkTreeModelFilter and the completion code. (Test program
2602 and documentation will follow next week).
2604 * gtk/gtkcellayout.[ch], gtk/gtkentrycompletion.[ch],
2605 gtk/gtktreemodelfilter.[ch], gtk/gtkentryprivate.h: new files.
2607 * gtkentry.[ch]: added gtk_entry_{get,set}_completion, wrote
2608 necessary code to hook up completion.
2610 * gtktreeviewcolumn.c: made GtkTreeViewColumn implement the new
2611 GtkCellLayout interface.
2613 * gtkmarshalers.list: added BOOLEAN:OBJECT,BOXED.
2615 * gtk/gtk.h, gtk/Makefile.am, po/POTFILES.in: all updated for the new
2618 Wed Jul 9 19:48:26 2003 Kristian Rietveld <kris@gtk.org>
2622 * gdk/gdkdisplay.c (gdk_display_get_window_at_pointer): don't
2623 directly return from ->window_at_pointer, but set win_x and win_y
2624 first if needed. (Fixes #110166, reported by Arno Charlet).
2626 * gdk/gdkwindow.c (gdk_window_get_composite_drawable): change
2627 function to accept GdkDrawables and not just GdkWindows. This was
2628 already done in some other functions a while back, but this patch
2629 got lost for some reason.
2631 2003-07-09 Matthias Clasen <maclas@gmx.de>
2633 * gtk/gtkcontainer.c (gtk_container_focus_sort_tab): Consider the text
2634 direction when sorting children. (#116540, Soeren Sandmann)
2636 Tue Jul 8 17:36:21 2003 Owen Taylor <otaylor@redhat.com>
2638 * gdk/x11/gdkasync.[ch] gdk/gdkdnd-x11.c:
2639 Change _gdk_x11_send_xevent_async() to
2640 _gdk_x11_send_client_message_async() avoid using Xlib
2641 internals that are different on Solaris.
2642 (#116917, Morten Welinder)
2644 2003-07-08 Matthias Clasen <maclas@gmx.de>
2646 * gtk/gtkcontainer.c (gtk_container_remove): Doc addition.
2647 (#116501, Doug Quale)
2649 Tue Jul 8 21:35:22 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2651 * gtk/gtktoggletoolbutton.h: remove strange #define
2652 * gtk/gtktoolbutton.h: fix cut'n'paste error
2653 * gtk/gtktoolbutton.c (gtk_tool_button_init): use instance
2655 * gtk/gtktoolitem.c (gtk_tool_item_class_init): use instance
2656 private data instead of g_new0()
2657 * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): use
2658 instance private data
2660 Tue Jul 8 21:10:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2662 * gtk/gtkbutton.c (gtk_button_realize): remove GDK_EXPOSURE_MASK
2663 for INPUT_ONLY window
2664 * gtk/gtkmenuitem.c (gtk_menu_item_realize): same
2665 * gtk/gtknotebook.c (gtk_notebook_realize): same
2666 * gtk/gtkexpander.c (gtk_expander_realize): same
2667 * gtk/gtkrange.c (gtk_range_realize): same
2671 Tue Jul 8 19:57:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2673 * gtk/gtkstyle.c (gtk_default_draw_arrow): remove correction on x
2674 when detail is "menuitem". With the new menu look is isn't needed
2677 * gtk/gtktoolitem.c (gtk_tool_item_toolbar_reconfigured): queue a
2678 resize here, so that tool items will get a chance to relayout
2679 themselves based on the toolbar configuration.
2681 change DEFAULT_SPACE_SIZE to 4 instead of 5
2684 Get rid of "!GTK_BIN (item)->child means separator". Separators
2685 are widgets in their own right
2687 change DEFAULT_SPACE_SIZE to 4 instead of 5
2689 (get_space_size): remove this function
2690 (toolbar_item_is_homogeneous): new function
2692 * gtk/gtkseparatortoolitem.c
2693 (gtk_separator_tool_item_size_request): new function.
2695 Tue Jul 8 14:10:35 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2697 * gtk/gtktoggletoolbutton.h: use private data, add new
2698 internal function _gtk_toggle_tool_button_get_button()
2700 * gtk/gtktoolbutton.h: move to private data
2702 * gtk/gtkradiotoolbutton.c, gtk/gtktoolbutton.c: updates for new
2705 Tue Jul 8 12:50:20 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2707 * gtk/gtktoolbutton.c (gtk_tool_button_get_icon_widget): fix a
2708 type check, (#116947, Krasimir Angelov)
2710 * gtk/gtktoolbar.c: Use new GtkToolItem accessors.
2712 * gtk/gtktoolitem.[ch]: Use a private struct to hold the instance
2713 data. Not instance private data yet, because of bug 116921.
2715 * gtk/gtktoolitem.h: new accessors:
2716 gtk_tool_item_get_homogeneous ()
2717 gtk_tool_item_get_expand ()
2718 gtk_tool_item_get_pack_end ()
2719 gtk_tool_item_get_use_drag_window ()
2721 Mon Jul 7 16:50:32 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2723 * gtk/gtkcellrenderertext.c
2724 (gtk_cell_renderer_text_class_init): remove accidentally committed
2728 (gtk_toolbar_paint_space_line): remove this function
2729 (gtk_toolbar_expose): always propagate expose, even if the item is
2732 * gtk/gtkseparatortoolitem.c
2733 (gtk_separator_tool_item_expose): moved here from gtktoolbar.c
2734 (get_space_size): new function.
2735 (get_space_style): new function
2737 Sun Jul 6 13:00:20 2003 Owen Taylor <otaylor@redhat.com>
2739 * gtk/gtkdnd.c (_gtk_drag_source_handle_event)
2740 * gtk/gtkdnd.c (gtk_drag_begin_internal): Remove use
2741 of GDK_POINTER_MOTION_HINT_MASK.
2743 * gtk/gtkdnd.c (gtk_drag_update_idle): Move updating
2744 of the drag into an idle as a superior form of
2747 * gtk/gtkdnd.c (gtk_drag_begin_internal): Move default icon
2748 creation here, so that we have an icon at the start
2749 of the drag (e.g., when retrieving the window cache
2752 Sun Jul 6 17:21:23 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2754 * docs/widget_geometry.txt: better drawing of GtkMenuItem
2755 * docs/widget_geometry.txt: add notes about GtkMenu
2756 * gtk/gtkstyle.c: remove leftover "#include "gtkhandlebox.h""
2758 Sat Jul 5 10:34:00 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2760 * gtk/gtkmenu.c: add vertical_padding style property.
2762 * gtk/gtkmenuitem.c: add style properties toggle_spacing,
2763 arrow_spacing and horizontal_padding. Also center separators and
2764 make them a bit taller.
2766 * gtk/*menuitem.c: use new style properties.
2768 * docs/widget_geometry.txt: Add note about GtkMenuItem
2771 (gtk_default_draw_vline, gtk_default_draw_hline):
2774 (gtk_default_draw_shadow): draw a black border around menus.
2776 * gtk/gtkvseparator, gtk/gtkhseparator.c, gtk/gtkmenuitem.c: fix
2777 calls to gtk_paint_hline() and gtk_paint_vline() (they take x1,
2778 x2 and y1, y2 respectively, not x, width and y, height).
2780 Sat Jul 5 09:55:38 2003 Owen Taylor <otaylor@redhat.com>
2782 * gdk/x11/gdkdnd-x11.c (precache_target_list): Lookup
2783 all the atoms in the target list at once.
2785 * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
2786 Local drag short-circuit.
2788 * gdk/x11/gdkdnd-x11.c (gdk_drag_motion): For the
2789 local case, poke the actions in directly instead of
2790 going through xdnd_set_actions.
2792 * gdk/x11/gdkdnd-x11.c (xdnd_read_actions): Short-circuit
2795 * gdk/x11/gdkdnd-x11.c (xdnd_manage_source_filter): Don't
2796 XSelectInput()/add a filter if the drag is local.
2798 * gdk/x11/gdkdnd-x11.c (gdk_drag_get_selection):
2799 Simplify handling of "XdndSelection".
2801 * gdk/x11/gdkevents-x11.c
2802 (gdk_event_send_client_message_to_all_recurse): Somehow,
2803 a WM_STATE => _NET_WM_STATE change hand been made here.
2805 * gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Free
2806 xatom_names, not atom_names.
2808 * tests/testdnd.c (target_drag_motion): Make the trashcan
2809 open again. (Got lost in deprecation cleanup.)
2811 Sat Jul 5 00:49:32 2003 Owen Taylor <otaylor@redhat.com>
2813 * gtk/gtkdnd.c (gtk_drag_begin): Move the grabs up
2814 earlier, so we don't get a big pile of uncompressed
2815 motion events before the grab takes effect.
2817 * gtk/gtkdnd.c (gtk_drag_update_icon): Call
2818 gdk_window_process_all_updates() so that the area
2819 we are dragging over gets a change to redraw.
2821 * gtk/gtkdnd.c (_gtk_drag_dest_handle_event): Use
2822 gdk_window_get_position(), not gdk_window_get_origin().
2824 * gdk/x11/gdkwindow-x11.[ch] (gdk_window_have_shape_ext)
2825 gdkdisplay-x11.h: use XShapeQueryExtension to
2826 avoid duplicate XQueryExtension when we actually
2827 use it. Remove unnecessary caching in GdkDisplayX11.
2829 Fri Jul 4 23:49:22 2003 Owen Taylor <otaylor@redhat.com>
2831 * gdk/x11/gdkasync.[ch] (_gdk_x11_get_window_child_info):
2832 Function to get a range of information about all the
2833 children of a window in a single pass.
2835 * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse)
2836 gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Use
2837 _gdk_x11_get_window_child_info() to greatly reduce
2838 the number of roundtrips.
2840 Fri Jul 4 22:57:18 2003 Owen Taylor <otaylor@redhat.com>
2842 * gdk/x11/gdkasync.[ch] (_gdk_send_xevent_async): Add
2843 a function to XSendEvent() and call a calback on
2846 * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Short-circuit
2847 messages to the same process, use _gdk_send_xevent_async().
2849 Fri Jul 4 22:26:27 2003 Owen Taylor <otaylor@redhat.com>
2851 * gdk/x11/gdkwindow-x11.[ch] gdkevents-x11.c: Split
2852 toplevel-specific pieces of GdkWindowImplX11 into
2853 a separate GdkToplevelX11 structure.
2855 Fri Jul 4 22:05:09 2003 Owen Taylor <otaylor@redhat.com>
2857 * gdk/x11/gdkasync.c (struct _SetInputFocusState): Fix
2858 some leftover fields.
2860 Fri Jul 4 15:57:52 2003 Owen Taylor <otaylor@redhat.com>
2862 * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
2863 Use asynchronously _gdk_x11_set_input_focus_safe
2864 to avoid having to trap errors and XSync().
2866 * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use
2867 _gdk_x11_set_input_focus_safe() here as well.
2869 * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed):
2870 Rework handling of property notifies on _NET_WM_STATE
2871 so that we ignore _NET_WM_DESKTOP notifies unless we
2874 * gdk/x11/gdkimage-x11.c (gdk_image_check_xshm): Use
2875 XShmQueryExtension() rather than XQueryExtension() to
2876 avoid extra rountrip.
2878 * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
2879 Remove unused call to XGetWindowAttributes()
2881 * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Remove
2882 unused call to XGetKeyboardControl().
2884 * gdk/x11/gdkdisplay-x11.c gdk/gdk.def (gdk_display_flush):
2887 * gdk/win32/gdkevents-win32.c gdk/linux-fb/gdkevents-fb.c
2888 No-op implementations of gdk_display_flush().
2890 * gdk/gdkwindow.c (gdk_window_process_all_updates): Use
2891 gdk_display_flush() rather than gdk_flush() to avoid
2894 * gdk/x11/gdkwindow-x11.c (update_wm_hints)
2895 gdk/x11/gdkwindow-x11.h: Centralize all handling of WM_HINTS here
2896 so that we don't have to get the property back from the server.
2898 * gdk/x11/gdkwindow-x11.c (show_window_internal): Store
2899 the serial of when we map a toplevel to allow optimizing
2900 out notifies on _NET_WM_STATE/_NET_WM_DESKTOP.
2902 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Don't
2903 XTranslateCoordinates() for override-redirect windows.
2905 Fri Jul 4 15:59:27 2003 Owen Taylor <otaylor@redhat.com>
2907 * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Remove comment
2908 about setting window group after the window is mapped from docs
2909 - nothing the ICCCM forbids that.
2911 * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
2912 Fix g_return_val_if_fail() in void return function.
2914 * configure.in: Fix misplaced comma that was resulting
2915 in XShm always being disabled.
2917 Fri Jul 4 19:55:49 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2919 * tests/stresstest-toolbar: remove this accidentally committed
2922 * tests/stresstest-toolbar.c: really add this new test
2924 Fri Jul 4 19:06:31 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2926 * tests/stresstest-toolbar.c: new test for removing items
2928 * tests/testtoolbar.c: add a popup menu
2930 * gtk/gtkcontainer.c (gtk_container_remove): add hack to avoid
2931 assert widget->parent == container when the container is a
2934 * gtk/gtktoolbar.c (gtk_toolbar_remove_tool_item): Make much
2935 simpler. Also make correct.
2937 * gtk/gtktoolbar.c (gtk_toolbar_button_press): make
2938 popup_context_menu a boolean handled signal.
2940 2003-07-04 Tor Lillqvist <tml@iki.fi>
2942 * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_polygon,
2943 gdk_win32_draw_segments, gdk_win32_draw_lines): We can calculate
2944 the width and height of the bounding rectangle only after the
2945 minumum x and y have been found, and need a separate loop for
2946 it. Thanks to Bruce Hochstetler for providing a sample program
2949 2003-07-03 Tor Lillqvist <tml@iki.fi>
2951 * gdk/gdk.def: Add gdk_string_to_compound_text_for_display.
2952 (#116537, Peter Zelezny)
2954 Thu Jul 3 03:13:20 2003 Soeren Sandmann <sandmann@daimi.au.dk>
2956 * gtk/gtkpaned.c (gtk_paned_set_child_property): Insert cast to
2957 fix warning. Assign something to old_value to quiet gcc
2960 (start_spinning): gtk_timeout_add->g_timeout_add
2962 * gtk/gtkicontheme.c
2963 (theme_lookup_icon): Make it compile (remove double semicolon)
2965 * gtk/gtktoolbutton.c
2966 (gtk_tool_button_class_init): Long comment about properties.
2967 (gtk_tool_button_class_init): Improve text for "use_underline"
2969 (gtk_tool_button_create_menu_proxy): Fix up to use_mnemonic based
2970 on whether the passed-in label has use_mnemonic set
2971 (gtk_tool_button_create_menu_proxy): Split image cloning out in
2972 new function. Make that function also handle image with pixbuf
2974 (gtk_tool_button_construct_contents): Use gtk_widget_destroy()
2975 instead of gtk_container_remove().
2976 (gtk_tool_button_construct_contents): Fix eliding bug
2979 (gtk_toolbar_finalize): New function. Unref tooltips, pointed out
2981 (gtk_toolbar_button_press): Make popup_context_menu signal provide
2982 coordinates and button number
2984 * tests/testtoolbar.c (main): Add new pixbuf toolbutton
2986 * tests/apple-red.png: new file
2988 Wed Jul 2 18:00:56 2003 Owen Taylor <otaylor@redhat.com>
2990 * gtk/gtkicontheme.[ch]: Implement a loader for
2991 named themed icon based on from gnome-desktop library
2994 * gtk/gtkiconthemeparser.[ch]: .ini file parsing code
2997 * gtk/gtkiconfactory.[ch]: Add
2998 gtk_icon_source_set/get_icon_name() to allow stock icons
2999 to be based off of named theme icons.
3001 * gtk/gtkiconfactory.c: Rework sources so that the source
3002 is *either* a pixbuf, or a filename, or an icon name,
3003 instead of the pixbuf/filename mix it was before. Put a
3004 workaround for get_pixbuf() so that it can return the
3005 filename pixbuf, e.g, for render_icon().
3007 * gtk/gtkiconfactory.c: Make the default setup use
3008 themed icons, and add builtin icons to the default
3009 icon theme for all the standard pixbufs, so we
3010 don't rely on actually having an icon theme on disk.
3012 * gtk/gtkrc.c: Add support for @"icon-name" to specify
3013 a themed icon for a stock icon source.
3015 * tests/Makefile.am test/testicontheme.c: Add a test
3016 program from gnome-desktop.
3018 * gdk/x11/gdkevents-x11.c gtk/gtksettings.c: Add
3019 Net/IconThemeName / gtk-icon-theme-name setting.
3021 * gtk/gtkiconfactory.c (ensure_cache_up_to_date): Actually
3022 update the icon cache serial so we don't continually
3023 think we are out-of-date.
3025 * gtk/gtkwidget.c: Fix a couple of references in doc comments
3026 to ::direction_set that should have been to ::direction-changed
3028 Wed Jul 2 14:45:41 2003 Owen Taylor <otaylor@redhat.com>
3030 * gtk/gtktoolbar.c (gtk_toolbar_realize): Attach the
3031 style to the widget.
3033 Wed Jul 2 15:42:26 2003 Soeren Sandmann <sandmann@daimi.au.dk>
3035 * gtk/gtk.h: Add new toolbar headers
3037 * tests/testtoolbar.c: new file
3039 * tests/Makefile.am (noinst_PROGRAMS): Add testtoolbar.c
3041 * gtk/gtkexpander.c (gtk_expander_class_init): Make it compile
3043 Tue Jul 1 22:49:25 2003 Soeren Sandmann <sandmann@daimi.au.dk>
3046 (gtk_toolbar_remove_tool_item): Fix bug where list is changed
3047 inside a for loop (pointed out by Morten Welinder).
3048 (gtk_toolbar_focus_home_or_end): Minor formatting change
3052 * gtk/gtktoolbutton.c: remove copy of elide_underscores(). Use
3053 gtk_toolbar_elide_underscores instead.
3055 * gtk/gtktoolbar.c: rename signal from focus_ends to
3057 (_gtk_toolbar_elide_underscores): export this as an internal
3059 (gtk_toolbar_move_focus): add comment explaining difference to
3060 gtk_toolbar_focus();
3061 (gtk_toolbar_list_children_in_focus_order): Make TAB_FORWARD and
3062 TAB_BACKWARD focus the right widgets in RTL mode
3064 * gtk/gtktoolbutton.c (gtk_tool_button_new): Change to take
3065 "label" and "icon" parameters
3067 * gtk/gtktoolbutton.[ch]: remove icon_set property.
3069 2003-07-01 Matthias Clasen <maclas@gmx.de>
3071 * gtk/gtkspinbutton.c (gtk_spin_button_set_digits): Improve docs.
3072 (116364, Morten Welinder)
3074 * tests/testgtk.c: Use GtkFontButton and GtkColorButton to bring up the
3075 corresponding dialogs.
3077 * gtk/Makefile.am (gtk_public_h_sources): Add gtkfontbutton.h,
3079 (gtk_c_sources): Add gtkfontbutton.c, gtkcolorbutton.c.
3081 * gtk/gtkfontbutton.[hc]: New files containing a font picker widget.
3083 * gtk/gtkcolorbutton.[hc]: New files containing a color picker widget.
3085 * gtk/gtk.h: Include gtkexpander.h, gtkfontbutton.h, gtkcolorbutton.h.
3087 * gtk/gtkexpander.c: Small additions to the docs.
3089 2003-07-01 Tor Lillqvist <tml@iki.fi>
3091 * gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_get_pointer):
3092 WindowFromPoint() wants screen coordinates (#115422, Tim Evans).
3094 2003-07-01 Matthias Clasen <maclas@gmx.de>
3096 * configure.in: Check for Xcursor.
3098 * gdk/x11/gdkcursor-x11.c:
3100 * gdk/gdkcursor.h: RGBA cursor support based on Xcursor. New functions:
3101 gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(),
3102 gdk_display_supports_cursor_color(),
3103 gdk_display_get_default_cursor_size() and
3104 gdk_display_get_maximal_cursor_size(). (#69436)
3106 2003-06-30 Tor Lillqvist <tml@iki.fi>
3108 * gdk/win32/gdkdnd-win32.c (find_window_enum_proc): New function,
3109 callback proc for EnumWindows().
3110 (gdk_drag_find_window_for_screen): Actually take the drag_window
3111 argument into account: Instead of using WindowFromPoint(), use
3112 EnumWindows(), to be able to skip the drag_window. (#116320, Tony
3113 M Brown, Herman Bloggs)
3115 * gdk/win32/*.c: Replace gdk_drawable_ref()/unref() and
3116 gdk_window_ref()/unref() calls with g_object_ref()/unref().
3117 Consistently use %p format in debugging output of pointers and
3120 2003-06-30 Mark McLoughlin <mark@skynet.ie>
3122 * gtk/gtkexpander.h: kill some stray characters
3125 2003-06-30 Mark McLoughlin <mark@skynet.ie>
3127 Add GtkExpander. See discussion in bug #60553.
3129 * gtk/gtkexpander.[ch]: add.
3131 * gtk/Makefile.am: build gtk-expander.[ch].
3133 * docs/widget_geometry.txt: add info on the layout
3136 Mon Jun 30 01:20:19 2003 Soeren Sandmann <sandmann@daimi.au.dk>
3138 * gtkradiotoolbutton.c: new file
3139 * gtkradiotoolbutton.h: "
3140 * gtktoggletoolbutton.c: "
3141 * gtktoggletoolbutton.h: "
3142 * gtktoolbutton.c: "
3143 * gtktoolbutton.h: "
3146 * gtktoolbar.c: many changes
3147 * gtktoolbar.h: many changes
3148 * gtkseparatortoolitem.c: new file
3149 * gtkseparatortoolitem.h "
3153 - Items on a toolbar are now separate widgets, instances of a
3154 subclass of GtkToolItem.
3156 - Items there aren't room for on the toolbar are unmapped, and an
3157 overflow menu with a proxy menu item is added instead.
3159 - The toolbar is keyboard navigatable. Press TAB to focus the
3160 first item, then use arrow keys and Ctrl TAB to move around the
3161 toolbar. TAB moves focus out of the toolbar.
3163 - Bascially all of the old toolbar API is deprecated in favor of
3164 new API in gtktoolbar.h, gtktoolitem.h, gtktoolbutton.h
3166 - The toolbar is backwards compatible with the old toolbar.
3168 2003-06-29 Matthias Clasen <maclas@gmx.de>
3170 * gtk/gtkwidget.c (gtk_widget_class_init): Remove a duplicate parameter
3171 from docs, some more formatting fixes.
3173 2003-06-28 Tor Lillqvist <tml@iki.fi>
3175 Fix for #111028, thanks to J. Ali Harlow, who writes:
3176 I found that the GdkPixmap->GdkImage reference really isn't
3177 important. It's only really there to have somewhere convenient to
3178 store the location of the pixel data in the pixmap and as an easy
3179 way of accessing the dimensions of that data. I have therefore put
3180 together a fix which removes this reference entirely which seems
3181 to solve the problem.
3183 * gdk/win32/gdkpixmap-win32.h (struct _GdkPixmapImplWin32):
3184 Instead of a pointer to a GdkImage, keep a pointer to the pixels
3187 * gdk/win32/gdkimage-win32.c (_gdk_win32_setup_pixmap_image): Remove.
3188 (_gdk_win32_new_image): New function, replacing the above. Creates
3189 a GdkImage without any associated GdkPixmap.
3190 (gdk_image_new_bitmap, _gdk_image_new_for_depth): Use it instead.
3192 * gdk/win32/gdkprivate-win32.h: Remove from here, too.
3194 * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap)
3195 * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap)
3196 * gdk/win32/gdkgc-win32.c (_gdk_win32_bitmap_to_hrgn)
3197 * gdk/win32/gdkmain-win32.c (_gdk_win32_drawable_description):
3198 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize,
3199 gdk_pixmap_new, gdk_bitmap_create_from_data, gdk_pixmap_foreign_new)
3200 Corresponding changes.
3202 Thu Jun 26 21:41:16 2003 Soeren Sandmann <sandmann@daimi.au.dk>
3204 * gtk/gtktreeviewcolumn.c
3205 (gtk_tree_view_column_cell_set_cell_data): only set "is_expander"
3206 and "is_expanded" if the new value is different fromt he old one.
3208 Wed Jun 25 18:59:15 BST 2003 Tony Gale <gale@gtk.org>
3210 * docs/faq/gtk-faq.sgml: Fix typos. Update
3211 thread example I missed yesterday.
3213 2003-06-24 Matthias Clasen <maclas@gmx.de>
3215 * gtk/gtkspinbutton.c (gtk_spin_button_class_init): Add a blurb for
3218 * gtk/gtkwidget.c (gtk_widget_class_install_style_property_parser):
3219 (gtk_widget_class_list_style_properties): Use same parameter names as in
3220 header (to silence gtk-doc).
3222 * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Fix doc comments.
3224 Tue Jun 24 20:00:45 BST 2003 Tony Gale <gale@gtk.org>
3226 * docs/faq/gtk-faq.sgml: Thread support updates
3227 from Owen. Various suggestions from Steve Chaplin.
3229 2003-03-24 Mohammad DAMT <mdamt@bisnisweb.com>
3231 * po/id.po: Updated Indonesian translation
3233 2003-06-21 Tor Lillqvist <tml@iki.fi>
3235 * gdk/win32/gdkevents-win32.c (gdk_event_translate): When
3236 emulating X11's automatic grab on button down, pass owner_events
3237 as FALSE. According to the XLib spec, automatic grabs use True for
3238 owner_events when OwnerGrabButtonMask is selected, and I don't see
3239 the X11 backend doing that. (#82497, #91619, #92835, #107322, #110271)
3240 (find_window_for_pointer_event): Improve debugging output.
3242 2003-06-17 Tor Lillqvist <tml@iki.fi>
3244 * gtk-zip.sh.in (DLLDIR): Look for DLLs also in the bin
3245 subdirectory, where libtool 1.5 installs them.
3247 * README.win32: Point to FSF's binary Win32 distribution of
3250 2003-06-17 Matthias Clasen <maclas@gmx.de>
3252 * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
3253 macros to check for XML catalog contents and path, borrowed from
3255 * configure.in: New option --enable-man to enable regeneration of
3256 man pages from Docbook, if the necessary tools are found.
3258 2003-06-15 Matthias Clasen <maclas@gmx.de>
3260 * gtk/gtkcalendar.c (gtk_calendar_class_init):
3261 * gtk/gtknotebook.c (gtk_notebook_class_init):
3262 * gtk/gtkalignment.c (gtk_alignment_class_init):
3263 * gtk/gtkpaned.c (gtk_paned_class_init): Document new properties
3266 * gtk/gtkwidget.c (gtk_widget_class_init): Move inline signal docs
3267 to the proper place, immediately before the g_signal_new() call.
3269 * gtk/gtktextiter.h: Make the flags-nature of GtkTextSearchFlags
3270 more obvious. (#115122, Jeff Franks)
3272 2003-06-12 Anders Carlsson <andersca@codefactory.se>
3274 * gtk/gtkwidget.c: (event_window_is_still_viewable):
3275 Special case pixmaps. (#114880)
3277 2003-06-12 Matthias Clasen <maclas@gmx.de>
3279 * gtk/gtkwidget.c: Document child-notify and drag-data-received
3280 signals. Owen, we need to figure out where the best place for
3281 these comments in the source is. I currently put them in front of
3284 2003-06-11 Matthias Clasen <maclas@gmx.de>
3286 * gtk/gtkdnd.c (gtk_drag_check_threshold): s/threshhold/threshold/.
3288 Thu Jan 12 01:01:19 2003 Kristian Rietveld <kris@gtk.org>
3290 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
3291 silly typo fix. s/seperator/separator/. This gets rid of the
3292 assert spam when using TreeView.
3294 Tue Jun 10 11:23:48 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3296 * modules/input/gtkimcontextxim.c (xim_instantiate_callback): New
3297 function for XIM instantiate callback.
3298 * modules/input/gtkimcontextxim.c (xim_info_try_im): New function
3299 where call to XOpenIM() or XRegisterIMInstantiateCallback() is
3301 * modules/input/gtkimcontextxim.c (xim_destroy_callback): New function
3302 for XIM's destroy callback.
3303 * modules/input/gtkimcontextxim.c (get_im): add a check if info->im
3304 is set or not - if it's not set, call xim_info_try_im() to try to
3306 * modules/input/gtkimcontextxim.c (reinitialize_ic): reset
3307 filter_key_release flag of the context.
3308 * modules/input/gtkimcontextxim.c (get_ic_real): removed
3309 * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): move
3310 code from the removed get_ic_real().
3312 For XIM instantiation, destruction and re-instantiation. With
3313 this, Gtk+ apps will be able to connect or reconnect to the XIM,
3314 when it starts after the apps, or when the XIM gets lost and recover.
3317 Mon Jun 10 01:12:31 2003 Kristian Rietveld <kris@gtk.org>
3321 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_size):
3322 check if width is !null, not *width. Doh.
3324 Tue Jun 10 01:09:33 2003 Kristian Rietveld <kris@gtk.org>
3328 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
3329 Remove the weird dx logic, get all cell_area and background_area
3330 calculations right. Not sure what was up with it before. (Fixes
3331 #110989, testcase from Vasco Alexandre da Silva Costa).
3333 Tue Jun 10 00:58:23 2003 Soeren Sandmann <sandmann@daimi.au.dk>
3335 * tests/testgtk.c: Make it compile with C89 compilers
3337 2003-06-10 Matthias Clasen <maclas@gmx.de>
3339 * gtk/gtktextview.c (gtk_text_view_class_init): Install boolean
3340 property "overwrite".
3341 (gtk_text_view_[gs]et_property): Handle "overwrite".
3342 * gtk/gtktextview.[hc] (gtk_text_view_[gs]et_overwrite): Getter
3343 and setter for "overwrite" property. (#110241, Jeroen Zwartepoorte)
3345 2003-06-09 Matthias Clasen <maclas@gmx.de>
3347 * gtk/gtkpaned.c (gtk_paned_class_init): Install boolean child
3348 properties "resize" and "shrink".
3349 (gtk_paned_[gs]et_child_property): Implementations of
3350 GtkContainer::[gs]et_child_property.
3351 * tests/testgtk.c (toggle_resize, toggle_shrink): Use the new
3352 paned child properties instead of remove/add hacks. (#114667,
3355 Mon Jun 9 16:18:11 2003 Owen Taylor <otaylor@redhat.com>
3357 * gtk/gtknotebook.c (gtk_notebook_button_press): Back
3358 out event->window test - it wasn't needed because
3359 of the call to get_widget_coordinates().
3361 * gtk/gtknotebook.c (gtk_notebook_button_press): Remove
3362 call to gtk_widget_grab_focus() when not clicking on
3363 any tabs. (Real fix for #114534)
3365 Sun Jun 8 22:03:09 2003 Owen Taylor <otaylor@redhat.com>
3367 * tests/testdnd.c: Use application/x-rootwindow-drop for
3368 root window drops. (#108670, Alex Larsson)
3370 * gdk/x11/gdkdnd-x11.c (gdk_drag_motion) gtk/gtkdnd.c (gtk_drag_drop):
3371 Accept either application/x-rootwin-drop (what GTK+ has always used)
3372 or application/x-rootwindow-drop (what the XDND standard specifies).
3374 Fri Jun 6 11:07:33 2003 Owen Taylor <otaylor@redhat.com>
3376 * gtk/gtkwidget.c (event_window_still_viewable):
3377 Before delivering an event to a widget, check that
3378 (if relevant), the event's window is still viewable.
3379 (#105642, Dennis Björklund)
3381 * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy):
3382 NULL out private->parent, since after destruction
3383 it might not be valid any more.
3385 * gdk/gdkwindow.c (gdk_window_is_viewable): Fix some
3386 accesses before g_return_val_if_fail(). Treat
3387 DESTROYED windows as unmapped.
3389 Thu Jun 5 09:28:03 2003 Owen Taylor <otaylor@redhat.com>
3391 * gtk/gtkentry.c: Recompute unconditionally in
3392 gtk_entry_style_set, and in a new gtk_label_screen_changed().
3393 Protect the guts of recompute_idle_func() with
3394 gtk_widget_has_screen(). (#114040, Morten Welinder)
3395 Fix FALSE/0 confusion.
3397 Sun Jun 8 18:27:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
3399 * gdk/gdkpixbuf-drawable.c (G8fromRGB565): swap G and B.
3402 Sun Jun 8 11:27:29 2003 Owen Taylor <otaylor@redhat.com>
3404 * gtk/gtkviewport.c (viewport_set_adjustment): Fix bug with
3405 set_adjustment (viewport, NULL);
3407 2003-06-07 Matthias Clasen <maclas@gmx.de>
3409 * gtk/gtkiconfactory.c (get_default_icons):
3410 * gtk/stock-icons/stock_{undo,redo,undelete,revert}_rtl_{16,24}.png:
3411 * gtk/stock-icons/Makefile.am: Add rtl variants of undo, redo,
3412 undelete and revert. (#96633)
3414 Fri Jun 6 16:25:44 2003 Owen Taylor <otaylor@redhat.com>
3416 * gtk/gtkviewport.c: Many fixes, along with extensive cleanups and
3417 refactoring of code to reduce duplication; fixes include:
3419 - gtk_viewport_realize(): Position the window correct from adjustment
3420 values. (#110737, Michael Natterer)
3422 - Remove some division-by-zero checks in places where there is no
3423 longer division. (#110737)
3425 - gtk_viewport_class_init: Make the hadjustment/vadjustment properties
3426 G_PARAM_CONSTRUCT, so that there will always be adjustments, even
3427 if gtk_viewport_new isn't used (#101135, Thomas Leonard).
3429 - Switch over to encapsulated lazy-creation for hadjustment/
3430 vadjustment; even with the CONSTRUCT property, we need this after
3433 - When updating the adjustment, immediate set their values to
3434 match the the current range of the viewport, and update the
3435 viewport position to match the value of the new adjustments.
3438 2003-06-06 Tor Lillqvist <tml@iki.fi>
3440 * gdk/win32/gdkprivate-win32.h: Fix typo.
3442 * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Set
3443 graphics_exposures and subwindow_mode, too, even if they aren't
3446 Fri Jun 6 23:38:23 2003 Kristian Rietveld <kris@gtk.org>
3450 * gtk/gtktreeview.c (do_expand_collapse),
3451 (expand_collapse_timeout), (cancel_arrow_animation): made
3452 expand_collapse_timeout a wrapper with locks around
3453 do_expand_collapse, made cancel_arrow_animation use
3454 do_expand_collapse. Fixes threadlock. (Fixes #111286, patch from
3457 Fri Jun 6 11:05:45 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3459 * modules/input/gtkimcontextxim.h (struct _GtkIMContextXIM):
3460 * modules/input/gtkimcontextxim.c (preedit_start_callback,
3461 preedit_draw_callback, preedit_done_callback): Add a 'finalizing' flag
3462 to keep preedit-[start,changed,end] signals from being called during
3463 finalization (#111861).
3465 2003-06-05 Noah Levitt <nlevitt@columbia.edu>
3467 * gtk/gtknotebook.c (gtk_notebook_button_press): Ignore button
3468 presses that are not on the tab (#114534).
3470 Thu Jun 5 20:35:40 2003 Owen Taylor <otaylor@redhat.com>
3472 * demos/Makefile.am: Conditionalize dependencies for
3473 gdk-pixbuf-csource on cross-compilation (#112391, J. Ali Harlowe).
3474 Buildtest-inline-pixbufs.h in srcdir. Don't try to build
3475 test-inline-pixbufs.h if we don't have libpng.
3477 * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h):
3478 Add a dependency on gdk-pixbuf.loaders when not
3479 cross-compiling, remove the dependency on gdk-pixbuf-csource
3480 when not cross compiling.
3482 Thu Jun 5 20:12:51 2003 Owen Taylor <otaylor@redhat.com>
3484 * gtk/gtkwindow.c (gtk_window_get_default_size): Handle
3485 gtk_window_get_geometry_info() returning NULL.
3486 (#107311, John Finlay)
3488 Thu Jun 5 19:24:33 2003 Owen Taylor <otaylor@redhat.com>
3490 * gtk/gtktoolbar.c (gtk_toolbar_expose): Subtract off
3491 twice the border width from the width/height, not
3492 1x the border width. (#106336, Rodney Dawes)
3494 Thu Jun 5 15:33:38 2003 Owen Taylor <otaylor@redhat.com>
3496 * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
3497 If at the end of the buffer, move to the end iter -
3498 parallels behavior of move_iter_to_previous_line.
3499 (#81960, Padraig O'Briain)
3501 Thu Jun 5 16:12:54 2003 Owen Taylor <otaylor@redhat.com>
3503 #80023, Yao Zhang, TOKUNAGA Hiroyuki
3505 * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations):
3506 Account for the preedit cursor offset if the iter passed
3507 in is at the same place as the insertion cursor.
3509 * gtk/gtktextview.c (gtk_text_view_get_cursor_location):
3510 Encapsulate getting the insertion cursor location.
3512 * gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
3513 Pass the real y/height to the IM context. Take
3514 text_view->x/yoffset into account.
3516 Thu Jun 5 16:52:54 2003 Owen Taylor <otaylor@redhat.com>
3518 * gtk/gtktextview.[ch]: Never scroll on focus in
3519 (#81893, Patch from Paolo Maggi)
3521 * gtk/gtktextview.c (gtk_text_view_scroll_[h]pages):
3522 Scroll to the current cursor location before handling
3523 the action, in case the user just tabbed in
3524 and the cursor is offscreen.
3526 Thu Jun 5 17:20:40 2003 Owen Taylor <otaylor@redhat.com>
3528 #107883, Gustavo Giráldez
3530 * gtk/gtktextlayout.c (gtk_text_layout_emit_changed):
3531 Split out the case where we know we changed, and
3532 already dealt with our cached line being invalidated
3533 from external calls to gtk_text_layout_changed.
3535 * gtk/gtktextlayout.c (gtk_text_layout_changed):
3536 Check if the invalidate yrange intersects our
3537 cached line, and clear it if necessary.
3539 2003-06-05 Tor Lillqvist <tml@iki.fi>
3541 * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle global
3544 2003-06-05 Matthias Clasen <maclas@gmx.de>
3546 * gtk/gtktextview.c: Fix for #84668, reported by Torbjrn Andersson:
3547 (gtk_text_view_grab_notify):
3548 (gtk_text_view_state_changed): Implement these
3549 to unobscure cursor when grab shadowed or insensitised.
3550 (gtk_text_view_unobscure_mouse_cursor): New function to undo the
3551 effect of gtk_text_view_obscure_mouse_cursor(). Code lifted from
3552 gtk_text_view_motion_event().
3553 (gtk_text_view_motion_event): Use gtk_text_view_obscure_mouse_cursor().
3555 * gtk/gtktextview.c (select_all): New keybinding signal for
3556 (un)selecting the whole buffer. Bound to C-a/C-\. (see #107889)
3558 * gtk/gtkcalendar.c (calendar_timer):
3559 (stop_spinning): Replace deprecated gtk_timeout_* functions by
3560 their GLib counterparts. (#114429)
3562 * gtk/gtktreestore.c (gtk_tree_store_new):
3563 * gtk/gtkliststore.c (gtk_list_store_new): Document restriction on
3566 Wed Jun 4 19:42:17 2003 Owen Taylor <otaylor@redhat.com>
3568 * gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
3569 When drawing underlines, join up adjacent runs
3570 where possible, so we don't get changes in
3571 shaper/font/etc. breaking underlines. (#103662,
3574 Wed Jun 4 19:22:58 2003 Jonathan Blandford <jrb@redhat.com>
3576 * gtk/gtktreemodelsort.c (gtk_tree_model_sort_level_find_insert):
3577 Slightly modified patch from Owen Taylor <otaylor@redhat.com> to
3578 improve the speed of inserting rows into an already sorted list,
3581 Wed Jun 4 19:24:28 2003 Owen Taylor <otaylor@redhat.com>
3583 * gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Keep
3584 track of when we have a clip mask set for the GC,
3585 and when we unset it, or switch to a clip region,
3586 immediately call XSetClipMask (..., None) to avoid
3587 Xlib caching stale data. (#111806)
3589 * gtk/gtktextdisplay.c: Don't set a clip mask
3590 when drawing alpha pixmaps; it isn't necessary any more.
3593 Wed Jun 4 18:27:44 2003 Owen Taylor <otaylor@redhat.com>
3595 * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
3596 gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator):
3597 Use GTK_WIDGET_IS_SENSITIVE(), not GTK_WIDGET_SENSITIVE
3600 * gtk/gtkcheckmenuitem.c (gtk_real_check_menu_item_draw_indicator)
3601 gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator): If
3602 Use state_type = STATE_INSENSITIVE for insensitive menu items.
3604 Wed Jun 4 21:25:35 2003 Kristian Rietveld <kris@gtk.org>
3608 * gtk/gtktreeview.c (gtk_tree_view_drag_begin): use a silent
3609 assert for get_info. (reported by Michael Natterer),
3610 (gtk_tree_view_expand_all_emission_helper),
3611 (gtk_tree_view_expand_all_helper): emit row_expanded for all
3612 expanded rows during an _expand_all operation. (Fixes #111280,
3613 reported by Benjamin Bayart).
3615 Tue Jun 3 18:32:30 2003 Owen Taylor <otaylor@redhat.com>
3617 * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't
3618 respond to pings on a root window; prevents infinite
3619 loops if we are selecting for SubstructureNotify on the
3620 root window. (#111945, Sergey V. Udaltsov)
3622 Tue Jun 3 17:39:16 2003 Owen Taylor <otaylor@redhat.com>
3624 #71597, reported by Morten Welinder
3626 * gdk/gdkpixbuf-drawable.c (rgb888amsb): Fix and simplify
3627 (Patch from Christian Petig)
3629 * gdk/gdkpixbuf-drawable.c (rgb{555,565}{a,}{msb,lsb}):
3630 Major rewrite of 555 and 565 conversion routines:
3632 - Move all the bit shifting into a small block of macros,
3633 eliminating much duplication of complicated arithmetic.
3634 - Get rid of 2-pixels at a time code, which was buggy,
3635 hard to maintain, caused unaligned accesses, and
3636 probably didn't actually perform any better.
3637 - Simplify cases where different data types were
3638 used for the little and big endian cases, use
3639 GUINT16_SWAP_LE_BE() where appropriate.
3641 Tue Jun 3 15:05:47 2003 Owen Taylor <otaylor@redhat.com>
3643 * gdk/x11/gdkdrawable-x11.c (convert_to_format): Remove
3644 bad optimization for src_rowstride == dest_stride.
3645 (Didn't consider the case where we were copying only
3646 partial widths of a wider source buffer)
3647 (#113034, reported by Hans Petter Jansson)
3649 2003-06-03 Michael Natterer <mitch@gimp.org>
3651 * gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
3652 reenabled button_release events for xinput devices. (#113948)
3654 2003-06-03 Christian Rose <menthos@menthos.com>
3656 * configure.in: Added "li" to ALL_LINGUAS.
3658 Mon Jun 2 18:58:54 2003 Owen Taylor <otaylor@redhat.com>
3660 * gtk/gtknotebook.c (gtk_notebook_size_allocate): Don't
3661 map the event window if the notebook isn't mapped. (#113980,
3664 2003-06-02 Sven Neumann <sven@gimp.org>
3666 * gtk/gtkprogress.c (gtk_progress_changed): added a missing cast.
3668 * gdk/gdkrgb.c (gdk_rgb_try_colormap): removed an unused variable.
3670 2003-06-01 Matthias Clasen <maclas@gmx.de>
3672 * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Add
3673 Since: 2.4 to the docs.
3675 * gtk/gtkwindow.c (gtk_window_parse_geometry): Add some hints and
3676 an example to the docs. (#98427)
3678 2003-05-30 Murray Cumming <murrayc@usa.net>
3680 * gtk/gtkalignment.[h|c]: Added 4-sided padding as properties with
3681 gtk_alignment_get_padding() and gtk_aligment_set_padding(). This
3682 uses the new private data system - see g_type_class_add_private() in
3683 gtk_alignment_class_init() and the use of GTK_ALIGNMENT_GET_PRIVATE().
3685 2003-05-30 Matthias Clasen <maclas@gmx.de>
3687 * gtk/gtknotebook.c: Changed guint to GtkNotebookArrow in the
3688 signature of gtk_notebook_draw_arrow() for Solaris builds to go
3689 through. (#114043, Anand Subramanian)
3691 Thu May 29 18:30:35 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3693 * modules/input/imipa.c:
3694 use GETTEXT_PACKAGE to get a translation for "ipa"(#113850).
3696 Thu May 29 18:08:01 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3698 * gtk/gtkimmodule.c (_gtk_im_module_list):
3699 use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
3701 Thu May 29 09:34:05 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3703 * gtk/gtkimmodule.c (_gtk_im_module_list): make "Default"
3704 label of default input method localizable.
3705 * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3706 use translations of input method context names
3707 * modules/input/imam-et.c, modules/input/imcyrillic-translit.c,
3708 modules/input/iminuktitut.c, modules/input/imthai-broken.c,
3709 modules/input/imti-er.c, modules/input/imti-et.c
3710 modules/input/imviqr.c, modules/input/imxim.c
3711 use GETTEXT_PACKAGE instead of "gtk+" for domain name.
3714 Thu May 29 18:23:01 2003 Kristian Rietveld <kris@gtk.org>
3718 * gtk/gtktreeview.c (gtk_tree_view_button_press): put the focus
3719 grab separate, the user might clear the tree in the focus-in
3720 callback. (Fixes #113086, testcase from Felipe Heidrich).
3722 Thu May 29 18:06:26 2003 Kristian Rietveld <kris@gtk.org>
3726 * gtk/gtktreeview.c (gtk_tree_model_set_model): reset a bunch
3727 of row reference when we unset the model. Also reset
3728 dy and top_row_dy. (Fixes #109289, patch from Owen Taylor).
3730 Thu May 29 17:12:19 2003 Kristian Rietveld <kris@gtk.org>
3734 * gtk/gtktreeview.c (gtk_tree_view_set_cursor_on_cell): cancel
3735 the current editing, if it exists. (Fixes #108956, reported by
3738 Thu May 29 17:06:09 2003 Kristian Rietveld <kris@gtk.org>
3742 * gtk/gtktreeview.c (check_selection_helper): new function,
3743 (gtk_tree_view_row_deleted): traverse the tree from the
3744 deleted node to see whether the selection changed, instead of
3745 just checking this node. (Fixes #107400, reported by 'Duncan').
3747 Thu May 29 16:31:34 2003 Kristian Rietveld <kris@gtk.org>
3751 * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
3752 (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
3753 instead of _maybe_begin_dragging_row, so the icon can be
3754 overridden by apps. (Fixes #104374, patch from Daniel Elstner).
3756 Thu May 29 16:14:04 2003 Kristian Rietveld <kris@gtk.org>
3760 * gtk/gtktreeview.c (gtk_tree_view_start_editing): correct
3761 cell_area x/width for the expander if needed. (Fixes #101748,
3762 reported by Dave Cook and Mariano Suarez-Alvarez).
3764 Thu May 29 16:01:38 2003 Kristian Rietveld <kris@gtk.org>
3768 * gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): check
3769 if tree/node are still the same after _internal_select_node.
3770 (Fixes #92256, reported by edscott).
3772 Thu May 29 15:38:30 2003 Kristian Rietveld <kris@gtk.org>
3774 Fixes #75745, reported by Richard Hult. Merged from stable.
3776 * gtk/gtktreeview.c (gtk_tree_view_bin_expose): set/unset
3777 GTK_CELL_RENDERER_FOCUSED flag whether the current node is the
3780 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
3781 if we are rendering a cursor row, and the cell the be
3782 processed has focus, then set the GTK_CELL_RENDERER_FOCUSED
3783 flag (else we unset it).
3785 2003-05-27 Matthias Clasen <maclas@gmx.de>
3787 * gtk/gtkwindow-decorate.c:
3788 * gtk/gtktreeprivate.h:
3790 * gdk/win32/gdkwindow-win32.h:
3791 * gdk/linux-fb/gdkprivate-fb.h:
3792 * gdk/linux-fb/gdkkeyboard-fb.c: Remove dubious bitfields of
3793 unspecified signedness. (#112919, Morten Welinder)
3795 * gtk/queryimmodules.c (escape_string):
3796 * gtk/gtktextbtree.c (_gtk_text_btree_get_text):
3797 * gtk/gtksettings.c (_gtk_settings_parse_convert):
3798 * gtk/gtkrc.c (gtk_rc_parse_assignment):
3799 * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
3800 * gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Replace all
3801 occurances of g_string_new ("") by g_string_new (NULL). (#106975,
3804 2003-05-27 Tor Lillqvist <tml@iki.fi>
3806 * gtk-zip.sh.in: Only include the Default and Emacs themes' gtkrc
3807 files. Include share/gtk-doc/{gdk-pixbuf,gdk,gtk}.
3809 * gdk/Makefile.am: libgdk-win32-2.0.la depends on
3810 win32/libgdk-win32.la.
3812 * gtk/gtk.def: Add gtk_tree_view_column_cell_get_position.
3814 Sat May 24 22:19:13 2003 Soeren Sandmann <sandmann@daimi.au.dk>
3816 * gtk/gtkscrollbar.c (gtk_scrollbar_class_init): Make the minimum
3817 scrollbar slider length 21 instead of 7.
3819 2003-05-23 Matthias Clasen <maclas@gmx.de>
3821 * gtk/gtknotebook.c: Add support for up to four scroll
3822 arrows. Control their display by new style properties
3823 "has_forward_stepper", "has_backward_stepper",
3824 "has_secondary_forward_stepper" and
3825 has_secondary_backward_stepper". (#110540)
3827 * gtk/gtknotebook.h (struct _GtkNotebook): Make in_child and
3828 click_child three bits wide, add
3829 has_{before,after}_{previous,next} fields.
3831 * gtk/gtkcolorsel.c (gtk_color_selection_init): Update color on
3832 focus out of hex_entry. (#112665)
3833 (hex_focus_out): New signal handler for focus out of hex entry.
3835 Wed May 21 19:01:06 2003 Owen Taylor <otaylor@redhat.com>
3837 * gtk/gtkwidget.c (gtk_widget_realize):
3838 g_return_if_fail() if
3839 GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget).
3840 (#107872, Christian Reis)
3842 2003-05-22 Matthias Clasen <maclas@gmx.de>
3844 * gtk/gtkfilesel.c (gtk_file_selection_create_dir):
3845 (gtk_file_selection_rename_file): Some keynav improvements for the
3846 "Rename File" and "Create Directory" subdialogs: Enter in entry
3847 activates default, default is "Create"/"Rename", Escape cancels
3849 (gtk_file_selection_set_filename): Add a hint about opening
3850 directories. (#113175)
3852 2003-05-22 Matthias Clasen <maclas@gmx.de>
3854 * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_update_xft_clip):
3855 Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2
3858 Wed May 21 15:53:14 2003 Owen Taylor <otaylor@redhat.com>
3860 * gtk/gtkprogress.c (gtk_progress_set_format_string,
3861 gtk_progress_set_show_text): Always queue a resize ...
3862 we rely on the size-allocate to do the update, plus a
3863 different format can actually change our size requisition.
3864 (#111052, Vasco Alexandre da Silva Costa)
3866 * gtk/gtkprogress.c (gtk_progress_changed): Track
3867 ::changed as well as ::value_changed, and queue a
3868 resize on ::changed when necessary.
3870 * gtk/gtkprogress.c (gtk_progress_set_adjustment):
3871 Call gtk_progress_changed() here to update or
3872 queue a resize as necessary.
3874 Wed May 21 14:06:13 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3876 * gtk/gtkimcontextsimple.c: added composing rules of
3877 Greek accented letters, patch by Vasilis Vasaitis (#107507)
3879 Wed May 21 13:19:05 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3881 * gtk/gtkenums.h (enum GtkIMPreeditStyle, GtkIMStatusStyle):
3882 * modules/input/gtkimcontextxim.c (preedit_style_change, status_style_change):
3883 gtk settings for XIMPreeditNone and XIMStatusNone. (#105909)
3885 Wed May 21 12:10:25 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3887 * gtk/gtkimcontextsimple.c:
3888 code that can check the compose table for ascending order,
3889 by Vasilis Vasaitis (#104862).
3891 Wed May 21 12:52:01 2003 Owen Taylor <otaylor@redhat.com>
3893 * gtk/gtkkeyhash.[ch] (_gtk_key_hash_looku): We need
3894 to pass the unmasked state to gdk_keymap_translate_keyboard_state()
3895 to handle the case where a modifier not in the mask
3896 (like Num_Lock) changes the key value, so replace
3897 the masked state with a state/mask pair. (#106913,
3900 * gtk/gtkwindow.c gtk/gtkbinding.c: Update to pass
3901 in state/mask pair to _gtk_key_hash_lookup()
3903 Tue May 20 21:58:00 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3905 * modules/input/gtkimcontextxim.c (xim_info_display_closed):
3906 fix a memory leak, free input context list (#113259).
3908 2003-05-21 Matthias Clasen <maclas@gmx.de>
3910 * configure.in (all_loaders): Add pcx.
3912 * gtk/gtkcalendar.c: Make calendar controls spin. (#112540)
3914 Tue May 20 17:27:24 2003 Owen Taylor <otaylor@redhat.com>
3916 * gtk/gtkimmodule.c (gtk_im_module_init): Silently
3917 accept a missing gtk.immodules file, some people
3918 want to run without one. (#112406, patch from
3921 Tue May 20 17:05:31 2003 Owen Taylor <otaylor@redhat.com>
3923 * gtk/gtkwindow.c (gtk_window_compute_hints): Fix
3924 height/width confusion (#113370, Xan Lopez)
3926 Tue May 20 15:48:45 2003 Owen Taylor <otaylor@redhat.com>
3928 * gdk/x11/gdkdnd-x11.c gdk/x11/gdkwindow-x11.c: Comprehensively
3929 zero all unused parts of client messages (Mainly Motif DND
3930 and EWMH). Also, fix a couple places where we were putting
3931 contents into Motif DND messages that didn't belong.
3932 (#113361, EWMH problem reported by Lubos Lunak)
3934 * gtk/gtkselection.c (_gtk_selection_request): Handle the
3935 case where the property type for the multiple atoms is
3936 ATOM_PAIR by doing the conversions ourselve. This is
3937 needed for Xt inter-operation.
3939 2003-05-19 Arafat Medini <lumina@silverpen.de>
3941 * configure.in: Added ar to ALL_LINGUAS
3943 2003-05-19 Matthias Clasen <maclas@gmx.de>
3945 * gtk/gtksettings.c (gtk_rc_property_parse_border,
3946 gtk_rc_property_parse_color, gtk_rc_property_parse_enum,
3947 gtk_rc_property_parse_flags, gtk_rc_property_parse_requisition):
3950 * gtk/gtkwidget.c (gtk_widget_class_install_style_property,
3951 gtk_widget_class_install_style_property_parser): Add docs.
3953 2003-05-17 Matthias Clasen <maclas@gmx.de>
3955 * tests/prop-editor.c: Add navigation for object properties, so
3956 that you can easily edit the properties of the parent of a widget.
3959 Wed May 14 17:45:32 2003 Owen Taylor <otaylor@redhat.com>
3961 * gdk/gdkkeysyms.h gdk/gdkkeynames.c gdk/gdkkeyuni.c:
3962 Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis
3963 inconsistency and leave the old name as an aliass (#104873)
3965 Wed May 14 16:40:09 2003 Owen Taylor <otaylor@redhat.com>
3967 * gtk/gtkframe.c (gtk_frame_set_label_widget): Patch
3968 from Charles Schmidt to add missing notify (#108305)
3970 Wed May 14 16:00:51 2003 Owen Taylor <otaylor@redhat.com>
3972 * gdk/x11/gdkgc-x11.c: Remove unecessary g_return_if_fail().
3973 (#105500, Morten Welinder.)
3975 Wed May 14 09:05:11 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3977 * modules/input/gtkimcontextxim.c (get_ic_real): use type of guint32
3978 instead of gumake for XNFilterEvents event mask(#110493).
3980 2003-05-11 Anders Carlsson <andersca@codefactory.se>
3982 * gtk/gtkdnd.c (gtk_drag_source_unset_icon): Don't cast a gchar to
3983 a GObject. (#112762)
3985 2003-05-08 Sven Neumann <sven@gimp.org>
3987 * configure.in: set the HAVE_X11R6 automake conditional to false
3988 if not compiling for X11.
3990 2003-05-08 Matthias Clasen <maclas@gmx.de>
3992 * gtk/gtkcalendar.[ch] (gtk_calendar_set_display_options):
3993 (gtk_calendar_get_display_options): New functions.
3994 (gtk_calendar_display_options): Depreate. (#64567)
3995 (gtk_calendar_class_init): Add boolean properties for the display
3998 Tue May 6 16:50:52 2003 Owen Taylor <otaylor@redhat.com>
4000 Patch from James Henstridge to update to automake-1.7
4003 * autogen.sh: update to call newer tools.
4005 * configure.in: various updates, to use M4 macros to put
4006 variables that change each release at the top.
4007 Use AC_HELP_STRING to format help strings.
4008 Use AC_CONFIG_COMMANDS to generate gdkconfig.h.
4010 * Makefile.am: require Automake 1.7. Remove gdk-2.0.pc and
4011 gtk+-2.0.pc on uninstall. Pass --enable-gtk-doc to configure
4014 * docs/reference/*/Makefile.am: simplify to use the gtk-doc.make
4017 * */Makefile.am: don't use STRIP_BEGIN/STRIP_END.
4018 Use BUILT_SOURCES where appropriate.
4019 Build generated files in builddir rather than srcdir.
4020 Fix uninstall and distclean targets to satisfy distcheck.
4024 * gdk/*/Makefile.am: Remove the hacks to get gdkenumtypes.h
4025 built first, since we are now using BUILT_SOURCES.
4027 * gdk/Makefile.am: Remove an outdated comment about gdk_headers.
4029 * demos/gtk-demo/Makefile.am: Fix srcdir != buildd problem
4032 * configure.in: Update versions to 2.3.0.
4034 2003-05-06 Tor Lillqvist <tml@iki.fi>
4036 Fix for #110165 (thanks to Arnaud Charlet):
4038 * gdk/win32/gdkevents-win32.c (build_keypress_event,
4039 build_keyrelease_event): For unshifted control char, use
4040 lowercase ASCII keyval.
4041 (gdk_event_translate): Similarily, when handling WM_SYSKEYDOWN and
4042 UP (i.e. Alt-something), if it's an unshifted ASCII letter, use
4043 lowercase keyval. Use build_key_event_state() here, too, instead
4044 of minor code duplication.
4046 2003-05-06 Matthias Clasen <maclas@gmx.de>
4048 * tests/testmultidisplay.c: Don't include strings.h, it's not
4049 needed anymore. (#112388)
4051 * examples/menu/itemfactory.c:
4052 * docs/tutorial/gtk-tut.sgml: Remove an unneeded include from the
4053 itemfactory example.
4055 2003-05-05 Matthias Clasen <maclas@gmx.de>
4057 * gtk/gtkdnd.c (gtk_drag_source_set_icon_stock): Actually set the
4058 icon type to the stock icon type. (#111735, Dave Bordoley)
4060 2003-05-05 Christian Rose <menthos@menthos.com>
4062 * configure.in: Added sr and sr@Latn to ALL_LINGUAS.
4063 Removed sp, it's replaced by sr@Latn.
4065 Wed Apr 30 22:09:11 BST 2003 Tony Gale <gale@gtk.org>
4067 * docs/faq/gtk-faq.sgml: GTK+ 2.x updates, mainly from
4070 Mon Apr 28 17:54:39 2003 Jonathan Blandford <jrb@redhat.com>
4072 * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy the search
4073 data iff the destroy func isn't NULL.
4075 Thu Apr 24 19:12:05 2003 Owen Taylor <otaylor@redhat.com>
4077 * autogen.sh (have_libtool): Accept libtool-1.5. (#111480)
4079 2003-04-23 Abel Cheung <maddog@linux.org.hk>
4081 * configure.in: Added "am" "mk" "ta" to ALL_LINGUAS.
4083 Tue Apr 22 15:33:51 2003 Owen Taylor <otaylor@redhat.com>
4085 * gtk/gtkfilesel.c (open_new_dir): Fix capitalization
4086 of UTF-8. (#106419, Roozbeh Pournader)
4088 Tue Apr 22 15:17:25 2003 Owen Taylor <otaylor@redhat.com>
4090 * configure.in: Only check for XFT2 if we found pango-xft
4093 Tue Apr 22 15:12:19 2003 Owen Taylor <otaylor@redhat.com>
4095 * gtk/gtkwidget.c (gtk_widget_class_init): Fix PROP_HAS_FOCUS/
4096 PROP_IS_FOCUS confusion. (#111333, Jody Goldberg)
4098 Tue Apr 22 19:43:01 BST 2003 Tony Gale <gale@gtk.org>
4100 * docs/faq/gtk-faq.sgml: add note about version converage.
4102 Mon Apr 21 19:02:16 2003 Owen Taylor <otaylor@redhat.com>
4104 * gtk/gtksocket.c (activate_key): Fix prototype for
4105 activate_key. (#108927, Jason D. Hildebrand)
4107 Mon Apr 21 18:42:51 2003 Owen Taylor <otaylor@redhat.com>
4109 * demos/gtk-demo/Makefile.am demos/gtk-demo/geninclude.pl:
4110 Remove geninclude.pl from CVS and don't dist it either,
4111 it is generated. (#108970, Rich Kinder)
4113 Mon Apr 21 18:35:48 2003 Owen Taylor <otaylor@redhat.com>
4115 * gtk/gtkobject.h: Remove a couple of obsolete comments,
4116 fix another comment. (#109737, Britton Kerin)
4118 Mon Apr 21 18:29:03 2003 Owen Taylor <otaylor@redhat.com>
4120 * gtk/gtkiconfactory.c (gtk_icon_set_unref): Free
4121 the source list, not just it's contents (Patch
4122 from Charles Kerr, #108243)
4124 Mon Apr 21 18:13:46 2003 Owen Taylor <otaylor@redhat.com>
4126 * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Patch
4127 from Alex Larsson fixing problem with restacking during
4130 Mon Apr 21 15:07:29 2003 Owen Taylor <otaylor@redhat.com>
4132 * gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard/pointer_ungrab):
4133 Calling XFlush() after ungrabbing, to avoid problems if
4134 the app subsequently blocks on a long-running operation.
4135 (#106520, reported by Rajkumar Siva)
4137 Fri Apr 18 17:42:45 2003 Owen Taylor <otaylor@redhat.com>
4139 * gdk/x11/gdkwindow-x11.c (set_initial_hints): Add
4140 SKIP_TASKBAR/SKIP_PAGER to set of properties we
4141 might set on map. (#110019, problem reported
4144 Fri Apr 18 17:14:33 2003 Owen Taylor <otaylor@redhat.com>
4146 * gdk/gdkevents.c (gdk_event_copy): Fix for the
4147 case when gdk_event_copy() is called on a non-allocated
4148 event. (#109716, reported by Rich Burridge)
4150 Fri Apr 18 16:57:44 2003 Owen Taylor <otaylor@redhat.com>
4152 * gdk/x11/gdkdrawable-x11.c (draw_with_images/pixmaps):
4153 Fix pointer arithmetic on 'void *'. (#108322)
4155 Fri Apr 18 16:31:49 2003 Owen Taylor <otaylor@redhat.com>
4157 * configure.in gdk/x11/gdkdisplay-x11.c modules/input/Makefile.am:
4158 Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and
4159 use of XAddConnectionWatch. Remove --enable-xim config option.
4160 Should fix building on X11R6 (#110523, Albert Chin)
4162 Fri Apr 18 15:56:46 2003 Owen Taylor <otaylor@redhat.com>
4164 * gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkdrawable-x11.[ch]:
4165 Patch from Morten Welinder to catch Sun servers with a
4166 broken implementation of the RENDER extension. (#108309)
4168 Fri Apr 18 15:30:38 2003 Owen Taylor <otaylor@redhat.com>
4170 * gdk/x11/gdkwindow-x11.c (set_text_property): Use
4171 gdk_free_compound_text(), not g_free(). (#107643,
4174 Fri Apr 18 15:11:50 2003 Owen Taylor <otaylor@redhat.com>
4176 * gdk/x11/gdkdisplay-x11.c (_gdk_display_x11_get_type)
4177 gdk/x11/gdkscreen-x11.c (_gdk_screen_x11_get_type): Fix
4178 wrong use of base_finalize. (#105126, Sven Neumann)
4180 Fri Apr 18 15:06:00 2003 Owen Taylor <otaylor@redhat.com>
4182 * gdk/gdkwindow.c (gdk_window_constrain_size): Fix
4183 '/' vs. '*' problem in aspect ration computations. (#108237)
4185 Fri Apr 18 14:15:09 2003 Owen Taylor <otaylor@redhat.com>
4187 * gdk/x11/gdkdisplay-x11.c (gdk_display_open):
4188 * gdk/x11/gdkevents-x11.c (gdk_event_translate): You
4189 don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify
4190 event, so select for both. (#108406, Egmont Koblinger)
4192 Thu Apr 17 09:57:44 2003 Jonathan Blandford <jrb@gnome.org>
4194 * gtk/gtktreeview.c (validate_visible_area): remove infinite loop
4195 caused by not clearing the scroll_to_path.
4197 2003-04-16 Matthias Clasen <maclas@gmx.de>
4199 * gtk/gtkstyle.c: Doc additions and fixes.
4201 * gtk/gtktreeviewcolumn.c
4202 (_gtk_tree_view_column_get_neighbor_sizes): Doc fixes.
4204 2003-04-14 Michael Natterer <mitch@gimp.org>
4206 * gtk/gtkliststore.c (gtk_list_store_move): added checks to ensure
4207 that the iter is not reordered to its own position. Prevents model
4208 corruption for the case that the store contains only a single item
4209 (fixes bug #108387).
4213 * gtk/gtkliststore.c (gtk_list_store_insert): g_list_alloc() the
4214 new list element later so we don't leak it if we decide to return
4217 * gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
4218 set selection->tree_view->priv->anchor to NULL after freeing it.
4220 2003-04-13 Matthias Clasen <maclas@gmx.de>
4222 * gtk/gtktreeviewcolumn.c
4223 (gtk_tree_view_column_cell_get_position): Document.
4225 * gtk/gtktextbuffer.c (gtk_text_buffer_select_range):
4226 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_[sg]et_expand):
4227 * gtk/gtkbutton.c (gtk_button_[sg]et_focus_on_click): Document
4228 these as 2.4 additions.
4230 2003-04-09 Matthias Clasen <maclas@gmx.de>
4232 * INSTALL.in: Fix the real thing.
4234 * INSTALL: Typo fix.
4236 Mon Apr 7 19:43:15 2003 Owen Taylor <otaylor@redhat.com>
4238 * gdk/x11/gdkdisplay-x11.c (gdk_x11_display_ungrab): Flush
4239 after ungrabbing the server.
4241 * gdk/x11/gdkimage-x11.c: Remove some no-longer-needed
4244 * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer):
4245 Use gdk_x11_display_grab/ungrab.
4247 * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize
4248 use_xshm to TRUE so SHM gets used when present.
4250 2003-04-07 Matthias Clasen <maclas@gmx.de>
4252 * gtk/gtktextlayout.c (set_para_values):
4253 * gtk/gtkenums.h (GtkWrapMode): Add GTK_WRAP_WORD_CHAR. (#110086,
4256 * gtk/gtkcelleditable.c, gtk/gtkfixed.c, gtk/gtktreemodel.c,
4257 gtk/gtktreeselection.c, gtk/gtktreeview.c: Fix numerous
4258 misspellings of possessive "its". (#110027, Doug Quale)
4260 2003-04-03 Matthias Clasen <maclas@gmx.de>
4262 * demos/gtk-demo/main.c (demo_find_file): Only use files from the
4263 current directory if it looks like the srcdir. (#109357)
4265 Wed Apr 2 23:02:26 2003 Soeren Sandmann <sandmann@daimi.au.dk>
4267 * gtk/gtkbutton.[ch] (gtk_button_class_init): add property
4270 * gtk/gtkwindow.c (gtk_window_focus): make arrow keyboard
4271 navigation not wrap around.
4273 2003-04-02 Matthias Clasen <maclas@gmx.de>
4275 * gtk/gtkprogress.c (gtk_progress_get_percentage_from_value):
4276 Return 0 if lower == upper. (#109155)
4277 (gtk_progress_get_current_percentage): Use
4278 gtk_progress_get_percentage_from_value().
4280 2003-04-01 Matthias Clasen <maclas@gmx.de>
4282 * gtk/gtkimcontext.c (gtk_im_context_focus_in): Fix docs.
4283 (#109510, Noah Levitt)
4285 Mon Mar 31 13:52:13 2003 Jonathan Blandford <jrb@redhat.com>
4287 * gtk/gtkrbtree.c (_gtk_rbtree_reorder): null initialize reorder's
4288 members so Purify won't complain.
4290 * gtk/gtkliststore.c (gtk_list_store_sort): ditto.
4292 2003-03-31 Matthias Clasen <maclas@gmx.de>
4294 * gtk/gtkwindow.c: Add a new property, role, corresponding to
4295 gtk_window_[gs]et_role(). (#93904)
4297 Sun Mar 30 03:57:42 2003 Jonathan Blandford <jrb@gnome.org>
4299 * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
4300 fix crash. Patch from Markus Lausser <sgop@users.sourceforge.net>
4302 2003-03-29 Matthias Clasen <maclas@gmx.de>
4304 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Set state
4305 of labels back to normal before reparenting back. (#102387)
4307 * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): Set
4308 a default window title to match the GtkFontSelectionDialog behavior.
4310 (gtk_color_selection_dialog_new): Don't call
4311 gtk_window_set_title() if title is NULL. (bug #101975, Daniel Elstner)
4313 2003-03-29 Matthias Clasen <maclas@gmx.de>
4317 * gtk/gtkentry.h (struct _GtkEntry): Add flags select_words and
4320 * gtk/gtkentry.c (gtk_entry_button_press): Set select_words and
4321 select_lines on double/triple click.
4323 * gtk/gtkentry.c (gtk_entry_motion_notify): Implement
4324 select-by-words and select-by-lines behaviour.
4326 Fixes for bug #56248:
4328 * gtk/gtknotebook.c (stop_scrolling): New function to remove the
4329 timer and queue a redraw.
4330 (gtk_notebook_grab_notify):
4331 (gtk_notebook_state_changed): New functions to call stop_scrolling()
4333 (gtk_notebook_button_release): Use stop_scrolling().
4334 (gtk_notebook_draw_arrow): Fix drawing of insensitive arrows.
4336 * gtk/gtkrange.c (stop_scrolling): New function to remove the
4337 grab, remove the timer and queue a redraw.
4338 (gtk_range_grab_notify):
4339 (gtk_range_state_changed): New functions to call stop_scrolling()
4341 (gtk_range_button_release): Use stop_scrolling().
4343 * gtk/gtkspinbutton.c (gtk_spin_button_grab_notify):
4344 (gtk_spin_button_state_changed): Redraw after stop_spinning.
4345 (gtk_spin_button_stop_spinning): Reset click_child to correct the
4346 drawing of the arrows.
4347 (gtk_spin_button_button_release): Use a local copy of click_child,
4348 since stop_spinning() resets it.
4350 * gtk/gtknotebook.c (gtk_notebook_class_init): Add C-A-PgUp and
4351 C-A-PgDown as alternatives to the A-less variants. (This slipped
4352 in accidentally some time ago). (#97860)
4354 2003-03-26 Sven Neumann <sven@gimp.org>
4356 * gtk/gtktreeview.c: rewrote the function that does node and arrow
4357 prelighting, queue all redraws from here (Fixes bug #108792).
4359 2003-03-20 Richard Kinder <r_kinder@yahoo.com>
4361 * demos/testpixbuf.c (update_timeout): set error to NULL, not FALSE.
4364 2003-03-20 Guntupalli Karunakar <karunakar@freedomink.org>
4366 * configure.in: Added "ml" in ALL_LINGUAS
4368 Sat Mar 15 18:49:27 2003 Manish Singh <yosh@gimp.org>
4370 * gtk/gtkradiomenuitem.h: use GTK_DISABLE_DEPRECATED instead of
4371 G_DISABLE_DEPRECATED.
4373 2003-03-14 Tor Lillqvist <tml@iki.fi>
4375 * gdk/win32/gdkevents-win32.c: Use the signed GET_X_LPARAM() and
4376 GET_Y_LPARAM() to extract x and y coordinates from an LPARAM or
4377 DWORD, and not the unsigned HIWORD() and LOWORD(). Systems with
4378 multiple monitors can have negative coordinates on some of the
4379 monitors. (partial fix for #99496, Arnaud Charlet)
4381 2003-03-15 Matthias Clasen <maclas@gmx.de>
4383 * gtk/gtktextview.c: Add a "buffer" property. (#108353)
4385 2003-03-13 Sven Neumann <sven@gimp.org>
4387 * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
4388 removed redundant calls to g_object_notify().
4389 (gtk_cell_renderer_pixbuf_get_size): removed redundant casts, see
4392 * gtk/gtktextiter.c (_gtk_text_iter_get_segment_char)
4393 (_gtk_text_iter_get_segment_byte): return 0, not NULL (these
4394 functions return an integer value).
4396 2003-03-13 Tor Lillqvist <tml@iki.fi>
4398 * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
4399 WM_MOUSEMOVE, the test whether we have actually moved (and thus
4400 shouldn't generate an GDK event) moved after the call to
4401 propagate() and translate_mouse_coords(). Otherwise we were
4402 testing wrong values. (#108115, Allin Cottrell)
4403 (gdk_event_translate): On WM_?BUTTONUP, set current_{x,y} the same
4404 way as in WM_?BUTTONDOWN and WM_MOUSEMOVE.
4406 * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
4407 is used, must copy the HCURSOR with CopyCursor(), as it is OK to
4408 destroy the GdkCursor after calling gdk_pointer_grab(). Set the
4409 cursor right away with SetCursor(), as we won't get any
4410 WM_SETCURSOR messages while the mouse is captured.
4411 (gdk_display_pointer_ungrab): Correspondingly, destroy the copy
4412 with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
4414 * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
4415 WM_SYSCHAR, return FALSE from the window procedure to prevent the
4416 DefWindowProc from being called. Otherwise Windows would beep,
4417 thinking you are tring to access a (nonexistent) menu when you
4418 press Alt-something. Don't do this for Alt-Space,
4419 though. (#107454, Martyn Russell)
4421 * gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
4423 Tue Mar 11 12:01:07 2003 Jonathan Blandford <jrb@gnome.org>
4425 * gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
4426 [left/right] expands/collapses the tree, #108092
4428 2003-03-09 Tor Lillqvist <tml@iki.fi>
4430 * gdk/win32/gdkdrawable-win32.c (draw_segments): Don't try to
4431 compensate for LineTo() not drawing the end pixel. It causes more
4432 harm than benefits, see bug #81895.
4434 2003-03-08 Matthias Clasen <maclas@gmx.de>
4436 Bug #107664 continued:
4438 * gdk/x11/gdkinputprivate.h:
4439 * gdk/x11/gdkinput-none.c (_gdk_input_window_none_event): Remove.
4440 (_gdk_input_other_event): Return gboolean.
4441 * gdk/x11/gdkinput-xfree.c (_gdk_input_window_none_event): Remove.
4442 (_gdk_input_other_event): Return gboolean.
4443 * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): Return gboolean.
4445 * gdk/x11/gdkevents-x11.c (gdk_event_translate): Make return_val
4446 gboolean, remove pointless call to _gdk_input_window_none_event.
4448 * gdk/win32/gdkinput-win32.[hc] (_gdk_input_other_event): Return gboolean.
4449 (_gdk_input_window_none_event): Remove.
4451 * gtk/gtktextiter.c (_gtk_text_iter_get_indexable_segment):
4452 (_gtk_text_iter_get_any_segment):
4453 (_gtk_text_iter_get_segment_byte):
4454 (_gtk_text_iter_get_segment_char):
4455 (_gtk_text_iter_get_text_line):
4456 (_gtk_text_iter_get_btree): Fix 0/NULL confusion.
4457 * gdk/x11/gdkdnd-x11.c (motif_target_table_check): Return gint.
4458 * gdk/win32/gdkfont-win32.c (gdk_font_equal):
4459 * gdk/linux-fb/gdkwindow-fb.c (gdk_window_get_deskrelative_origin):
4460 (gdk_window_get_origin):
4461 * gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Fix 0/FALSE confusion.
4463 2003-03-06 Matthias Clasen <maclas@gmx.de>
4465 * gdk/gdkrgb.c (gdk_rgb_try_colormap): Return gboolean, not gint.
4466 (#107664, Morten Welinder)
4468 * gdk/x11/gdkwindow-x11.c (gdk_window_get_deskrelative_origin):
4469 * gdk/x11/gdkfont-x11.c (gdk_font_equal):
4470 * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
4471 Fix TRUE/1 and FALSE/0 confusion. (#107664, Morten Welinder)
4473 * gtk/gtktextmark.c (gtk_text_mark_get_buffer):
4474 * gtk/gtkeditable.c (gtk_editable_get_chars):
4475 * gtk/gtkctree.c (gtk_ctree_find_node_ptr):
4476 * demos/gtk-demo/main.c (demo_find_file): Fix NULL/FALSE confusion
4477 (#107648, Morten Welinder)Fix NULL/FALSE confusion
4478 (#107648, Morten Welinder)
4480 2003-03-04 Matthias Clasen <maclas@gmx.de>
4482 * gtk/gtkobject.h: Add deprecation guards for gtk_object_new ().
4484 Sun Mar 2 23:35:57 2003 Jonathan Blandford <jrb@gnome.org>
4486 * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
4487 handle rtl code. Thanks to Matthias Clasen for an initial patch
4488 to handle the RTL code.
4490 * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_get_size): ditto
4492 * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): ditto
4494 * gtk/gtktreeview.c: (invalidate_column),
4495 (invalidate_last_column),
4496 (gtk_tree_view_get_real_requested_width_from_column),
4497 (gtk_tree_view_size_allocate_columns),
4498 (gtk_tree_view_size_allocate), (gtk_tree_view_button_press),
4499 (gtk_tree_view_button_release_drag_column),
4500 (gtk_tree_view_update_current_reorder),
4501 (gtk_tree_view_motion_drag_column), (gtk_tree_view_bin_expose),
4502 (gtk_tree_view_key_press), (gtk_tree_view_header_focus),
4503 (gtk_tree_view_get_background_xrange),
4504 (gtk_tree_view_get_arrow_xrange),
4505 (gtk_tree_view_is_expander_column),
4506 (gtk_tree_view_set_column_drag_info),
4507 (gtk_tree_view_move_cursor_left_right):
4510 * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): add an
4513 * gtk/gtktreeviewcolumn.c:
4514 (gtk_tree_view_column_class_init),
4515 (gtk_tree_view_column_set_property),
4516 (gtk_tree_view_column_get_property),
4517 (gtk_tree_view_column_set_expand),
4518 (gtk_tree_view_column_get_expand),
4519 (gtk_tree_view_column_cell_process_action):
4520 Add support for expand flag. Thanks to Kristian Rietveld for an
4521 initial patch for this.
4523 Fri Feb 28 02:06:17 2003 Jonathan Blandford <jrb@gnome.org>
4526 2003-03-02 Tor Lillqvist <tml@iki.fi>
4529 * gtk/gtk.def: Add a bunch of missing entries. Noticed by Cedric
4532 2003-03-01 Matthias Clasen <maclas@gmx.de>
4534 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
4535 (gtk_scrolled_window_set_hadjustment): Replace uses of
4536 gtk_object_new by g_object_new.
4538 Thu Feb 27 17:44:24 2003 Manish Singh <yosh@gimp.org>
4540 * demos/gtk-demo/main.c
4541 * demos/gtk-demo/tree_store.c
4542 * gdk/x11/gdkscreen-x11.c
4543 * gtk/gtkcellrenderertoggle.c
4551 * gtk/gtkmenushell.c
4555 * gtk/gtktextbuffer.c
4557 * gtk/gtktreeviewcolumn.c
4560 * tests/testtreeedit.c
4561 * tests/testtreefocus.c
4562 * tests/testtreeview.c: remove unnecessary G_OBJECT() casts.
4564 Tue Feb 25 21:55:17 2003 Jonathan Blandford <jrb@redhat.com>
4566 * gtk/gtkoptionmenu.c (gtk_option_menu_position): account for RTL
4569 2003-02-24 Sven Neumann <sven@gimp.org>
4571 * gtk/gtkmain.c (gtk_get_default_language): fixed documentation.
4573 2003-02-21 Tomas Ogren <stric@ing.umu.se>
4575 * docs/reference/gtk/tmpl/gtktreemodel.sgml: Fix typos in an example
4577 2003-02-20 Matthias Clasen <maclas@gmx.de>
4579 * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag):
4580 Check if line_ancestor_parent is NULL. (#102711, Manuel Clos)
4582 * gtk/gtktextview.c (gtk_text_view_scroll_to_iter):
4583 (gtk_text_view_update_adjustments): Make sure cursor stays visible
4584 during horizontal scrolling. (#75270)
4586 2003-02-19 Matthias Clasen <maclas@gmx.de>
4588 * tests/testdnd.c: Replace gtk_timeout_* by their GLib
4589 counterparts. (#106532)
4591 * gdk/gdkkeys.c (gdk_keymap_class_init): Associate the
4592 keys_changed virtual function with the keys_changed signal.
4593 (#106512, Jeff Franks)
4595 2003-02-15 Larry Ewing <lewing@ximian.com>
4597 * gdk/gdkevents.c (gdk_event_copy): copy the event axes as well.
4599 2003-02-17 Mohammad DAMT <mdamt@bisnisweb.com>
4601 * po/id.po: Added Indonesian translation
4602 * configure.in: Added "id" to ALL_LINGUAS
4604 2003-02-14 Matthias Clasen <maclas@gmx.de>
4606 * gtk/gtktextview.c (popup_targets_received): Remove bogus casts.
4608 2003-02-12 Christian Rose <menthos@menthos.com>
4610 * configure.in: Added "yi" to ALL_LINGUAS.
4612 2003-02-12 Matthias Clasen <maclas@gmx.de>
4614 Fix for #82734 and #78216:
4616 * gtk/gtktextview.c (delete_cb):
4617 (select_all_cb): New callbacks for context menu items.
4618 (popup_targets_received): Add "Delete" and "Select All" to context
4619 menu, mnemonics and title caps for all items.
4621 * gtk/gtkentry.c (gtk_entry_delete_cb): New callback for "Delete"
4623 (popup_targets_received): Add "Delete" to context menu, mnemonics
4624 and title caps for all items.
4626 2003-02-09 Tor Lillqvist <tml@iki.fi>
4628 * gtk/gtkfilesel.c (win32_gtk_add_drives_to_dir_list): Use
4629 GetDriveType() to recognize removable drives (in order to avoid
4630 hanging if trying to access an empty floppy drive), instead of
4631 hardcoding A: and B: (#105654).
4633 2003-02-09 Matthias Clasen <maclas@gmx.de>
4635 * gtk/gtkwidget.c (gtk_widget_set_name): Add note about periods in
4638 2003-02-09 Christian Rose <menthos@menthos.com>
4640 * configure.in: Removed "en@IPA.po" from ALL_LINGUAS.
4642 Fri Feb 7 04:49:46 2003 Tim Janik <timj@gtk.org>
4644 * gtk/gtkobject.c: remove quark_user_data usage in
4645 gtk_object_{g|s}et_user_data(). fixes get_user_data()
4646 returning NULL for user_data set through property interface.
4648 * gtk/gtkitemfactory.c (gtk_item_factory_create_item): don't put out
4649 warnings if a pixbuf couldn't be retrieved, since (a) this doesn't
4650 need to be a programming error (in case of loaded data), (b) it breaks
4651 with 2.0 behaviour where extra magic could be used to create empty
4652 images. don't attempt to retrieve pixbufs from NULL extra_data.
4654 2003-02-06 Matthias Clasen <maclas@gmx.de>
4656 * gdk/x11/gdkvisual-x11.c (gdk_visual_get_best_with_depth): Return
4657 a GdkVisual *, not a GdkVisual **. (#105243)
4661 * gtk/gtkcontainer.c:
4666 * gtk/gtkmenuitem.c:
4667 * gtk/gtknotebook.c:
4668 * gtk/gtkselection.c:
4669 * gtk/gtkspinbutton.c:
4671 * gtk/gtktextview.c:
4672 * gtk/gtktooltips.c:
4673 * gtk/gtktreeview.c:
4674 * gtk/gtkwindow.c: Replace uses of gtk_timeout_* and gtk_idle_* by
4675 their non-deprecated GLib counterparts.
4677 * gtk/gtkmain.h: Fully deprecate gtk_timeout_* and gtk_idle_*.
4679 Sun Feb 2 16:45:57 GMT 2003 Tony Gale <gale@gtk.org>
4681 * docs/tutorial/gtk-tut.sgml: cleanups from
4682 Sebastian Rittau (#104832)
4684 2003-02-01 Tor Lillqvist <tml@iki.fi>
4688 * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_foreign_new_for_display,
4689 gdk_pixmap_lookup, gdk_pixmap_lookup_for_display): Implement.
4690 (#104108, Naofumi Yasufuku)
4692 * gdk/gdk.def: Export the above. Export
4693 gdk_screen_get_system_visual, noticed by Ed Woods.
4695 Fri Jan 31 17:45:22 2003 Manish Singh <yosh@gimp.org>
4697 * demos/pixbuf-demo.c
4698 * demos/testpixbuf.c
4699 * demos/gtk-demo/pixbufs.c: remove deprecated gtk_timeout_* usage.
4701 Fri Jan 31 17:33:00 2003 Manish Singh <yosh@gimp.org>
4703 * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): set_state
4704 on the tab_label before unparenting it, in case the unparent
4705 drops the refcount to 0.
4707 2003-02-01 Matthias Clasen <maclas@gmx.de>
4709 * gtk/gtkiconfactory.h: Use GDK_MULTIHEAD_SAFE like all other gtk
4710 headers. Sorry about gtk_selection_clear, Yosh.
4712 Thu Jan 30 17:16:05 2003 Manish Singh <yosh@gimp.org>
4714 * gtk/gtkselection.h: declare gtk_selection_clear in GTK_COMPILATION
4715 too, for gtkwidget.c. Remember people, when introducing new
4716 deprecations, make sure internal code isn't using it, or if so,
4717 reorganize appropriately like I've done in other places.
4719 * tests/testtext.c: don't use deprecated gtk_timeout_* stuff.
4721 2003-01-31 Matthias Clasen <maclas@gmx.de>
4723 * gtk/gtkselection.h:
4724 * gtk/gtkselection.c (gtk_selection_clear): Deprecate. (#85683)
4727 * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable):
4728 (gdk_pixbuf_render_to_drawable_alpha): Deprecate. (#60582)
4730 * gtk/gtkcolorsel.h:
4731 * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
4734 * gtk/gtkpaned.h: Deprecate gtk_paned_computed_position(). (#97077)
4736 * gtk/gtkmain.h: Deprecate the gtk_timeout_*, gtk_idle_*
4737 and gtk_input_* functions. (#71596)
4739 * gtk/gtkentry.c (gtk_entry_move_cursor):
4740 * gtk/gtklabel.c (gtk_label_move_cursor): Handle
4741 GTK_MOVEMENT_HORIZONTAL_PAGES in switches.
4743 * gdk/gdk.h: Deprecate gdk_wcstombs() and gdk_mbstowcs(). (#79803)
4745 * gtk/gtkitemfactory.h:
4746 * gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Deprecate.
4749 Thu Jan 30 23:48:30 2003 Kristian Rietveld <kris@gtk.org>
4751 * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_count_special_cell):
4752 only count the special cell if it is also visible,
4753 (_gtk_tree_view_column_get_neighbor_sizes): only take the width into
4754 account from visible cells,
4755 (gtk_tree_view_column_cell_get_position): likewise, (Reported and
4756 testcase provided by Vasco Alexandre da Silva Costa, via IRC,
4757 tracking bug was #104563).
4759 Thu Jan 30 23:46:15 2003 Kristian Rietveld <kris@gtk.org>
4761 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
4762 subtract expander space and focus line space from the extra space
4763 we are about the allocate. (Fixes #104635).
4765 Thu Jan 30 23:42:03 2003 Kristian Rietveld <kris@gtk.org>
4767 * gtk/gtkstyle.c (apply_affine_on_point): fix rouding error
4768 (Fixes #96242, patch from Soeren Sandmann).
4770 Thu Jan 30 16:54:29 2003 Owen Taylor <otaylor@redhat.com>
4772 * gtk/gtknotebook.c: Patch from Soeren Sandmann
4773 to update the states of the tab label child
4774 widgets to match the state of the tabs.
4775 (#93389, Reported by Tommi Komulainen)
4777 Thu Jan 30 16:30:54 2003 Owen Taylor <otaylor@redhat.com>
4779 * Makefile.am (EXTRA_DIST): Remove gtk+.spec.in from
4780 EXTRA_DIST, and from dist rules. (#102231)
4782 2003-01-30 Daniel Elstner <daniel.elstner@gmx.net>
4784 * gtk/gtktoolbar.c (set_child_packing_and_visibility): New helper
4785 function that sets the icon's and label's packing options and
4786 visibility based on toolbar->style.
4788 (gtk_toolbar_internal_insert_element):
4789 (gtk_real_toolbar_style_changed): Make use of
4790 set_child_packing_and_visibility() to clean up the code and get
4791 the packing right for icon-only/text-only toolbars. (#104679)
4793 (get_first_child): Remove, and use gtk_bin_get_child() instead.
4795 2003-01-30 Matthias Clasen <maclas@gmx.de>
4797 * gtk/gtktextview.c: Replace PAGE_HORIZONTALLY_HACK_VALUE by
4798 GTK_MOVEMENT_HORIZONTAL_PAGES. (#68947)
4800 * gtk/gtkenums.h: Add GTK_MOVEMENT_HORIZONTAL_PAGES to GtkMovementStep.
4802 Thu Jan 30 16:01:29 2003 Owen Taylor <otaylor@redhat.com>
4804 * gdk/gdkrgb.c (gdk_rgb_try_colormap): Remove the
4805 attempt-to-allocate then free code. To handle multiple
4806 people allocating colors at the same time, we need
4807 to just go ahead and try. (#102213, Shivram U)
4809 2003-01-30 Daniel Elstner <daniel.elstner@gmx.net>
4811 * gtk/gtkcolorsel.c (palette_paint): Explicitely draw an opaque
4812 rectangle using the background color rather than relying on
4813 gdk_window_clear_area(), so that the palette works properly with
4814 pixmap themes. (#101732)
4816 * demos/gtk-demo/colorsel.c: Install an "expose_event" handler
4817 to fill the drawing area in the background color.
4819 Wed Jan 29 14:11:21 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
4821 * modules/input/gtkimcontextxim.c (choose_better_style): fix a memory
4822 initialization error for selecting input style (#103549).
4824 Wed Jan 29 17:02:41 2003 Owen Taylor <otaylor@redhat.com>
4826 * gdk/gdkkeyuni.c (get_decimal_char): Make the
4827 translation of GDK_KP_Decimal dependent on LC_NUMERIC.
4830 Wed Jan 29 15:43:56 2003 Owen Taylor <otaylor@redhat.com>
4832 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
4833 Make up from the menu bar go to the end of the submenu.
4834 (#96114, Ian Peters.)
4836 * gtk/gtkmenuitem.c (gtk_menu_item_mnemonic_activate):
4837 Only do the select-but-not-activate stuff if the
4838 menu is already active. Otherwise, just activate.
4839 (#101690, Arvind Samptur)
4841 Tue Jan 28 15:18:24 2003 Owen Taylor <otaylor@redhat.com>
4843 * autogen.sh (have_automake): Fix version in complaint
4844 message about automake. (#104366, Rich Burridge)
4846 Mon Jan 27 16:38:13 2003 Owen Taylor <otaylor@redhat.com>
4848 * configure.in: Remove SOEXT stuff; it doesn't work portably.
4850 Mon Jan 27 22:45:15 2003 Kristian Rietveld <kris@gtk.org>
4852 * gtk/gtktreestore.c (gtk_tree_store_move): don't handle b if
4853 we appended/prepended, send the rows_reordered signal to the
4854 correct level ... (Reported by Matthew Tuck).
4856 Mon Jan 27 22:43:11 2003 Kristian Rietveld <kris@gtk.org>
4858 * gtk/gtktreestore.c (gtk_tree_store_sort_helper): don't just bail
4859 out if the level only has one item, recurse over the child if there
4860 is one. (Fixes #100458, reported by Gaël Le Mignot).
4862 Mon Jan 27 22:41:26 2003 Kristian Rietveld <kris@gtk.org>
4864 * gtk/gtktreeview.c (gtk_tree_view_set_model),
4865 (gtk_tree_view_search_equal_func): make TreeView search handle
4866 all types which are transformable by GValue. (Fixes #99803, reported
4869 Mon Jan 27 22:39:25 2003 Kristian Rietveld <kris@gtk.org>
4871 * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_sort_column_id):
4872 *really* handle unsetting the ID. Slightly modified patch from
4873 Soeren Sandmann. Fixes #87556, reported by Jarek Dukat.
4875 Mon Jan 27 22:33:43 2003 Kristian Rietveld <kris@gtk.org>
4877 Fixes the total GtkTreeSortable mess, and #83195, reported by
4880 * gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id),
4881 (gtk_tree_store_set_sort_column_id), (gtk_tree_store_set_sort_func),
4882 (gtk_tree_store_set_default_sort_func): use the constant
4883 GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID instead of -1, make functions
4884 work as advertised by the documentation.
4886 * gtk/gtklistore.c (gtk_list_store_get_sort_column_id),
4887 (gtk_list_store_set_sort_column_id), (gtk_list_store_set_sort_func),
4888 (gtk_list_store_set_default_sort_func): likewise.
4890 * gtk/gtktreemodelsort.c (gtk_tree_model_set_sort_column_id),
4891 (gtk_tree_model_set_sort_func),
4892 (gtk_tree_model_sort_set_default_sort_func): make functions work
4893 as advertised by the documentation.
4895 Mon Jan 27 22:31:56 2003 Kristian Rietveld <kris@gtk.org>
4897 * gtk/gtktreeview.c (gtk_tree_view_button_press): update focus_column
4898 before we decide if we edit. (fixes #100973, reported by Dave Cook).
4900 Mon Jan 27 22:29:30 2003 Kristian Rietveld <kris@gtk.org>
4902 Bug report and test case from Paolo Maggi via IRC.
4904 * gtk/gtkliststore.c (gtk_list_store_swap): update tail if needed,
4905 (gtk_list_store_move): update tail if needed.
4907 Mon Jan 27 16:19:59 2003 Owen Taylor <otaylor@redhat.com>
4909 * gtk/gtksocket.c (gtk_socket_filter_func): event->any.window
4910 might be NULL. Use gtk_widget_get_display (widget)
4911 (#102860, Thomas Leonard)
4913 Mon Jan 27 15:58:31 2003 Owen Taylor <otaylor@redhat.com>
4915 * configure.in: Fix --without-modules/--disable-modules
4916 confusion that was causing --disable-modules not to work.
4917 (#102865, Akira Tagoh)
4919 * configure.in: Fix problem with plain --with-xinput
4920 (#104266, Akira Tagoh)
4922 2003-01-24 Sebastian Rittau <srittau@jroger.in-berlin.de>
4924 * docs/tutorial/gtk-tut.sgml: Fix a few typos, introduced by my last
4927 Fri Jan 24 17:06:41 GMT 2003 Tony Gale <gale@gtk.org>
4929 * docs/tutorial/gtk-tut.sgml: Remove duplicate copy of tictactoe.h
4931 Thu Jan 23 21:15:29 GMT 2003 Tony Gale <gale@gtk.org>
4933 * docs/faq/gtk-faq.sgml: Learn to spell Library
4935 Thu Jan 23 20:56:56 GMT 2003 Tony Gale <gale@gtk.org>
4936 * Sebastian Rittau <srittau@jroger.in-berlin.de>:
4938 docs/tutorial/gtk-tut.sgml: Adopted chapter 21.3 "Creating a
4939 Composite widget" to modern standards. (I.e. use gobject instead of
4940 glib, derive from GtkTable instead of GtkVBox.) Bugzilla #103869.
4942 * docs/tutorial/gtk-tut.sgml, examples/tictactoe: Fixup tic-tac-toe
4943 code in Appendix C to reflect above changes.
4945 * examples/rangewidgets/rangewidgets.c: From Roger Leigh
4946 auto resize on page size change
4948 2003-01-23 Daniel Elstner <daniel.elstner@gmx.net>
4950 * gtk/gtktoolbar.c (gtk_toolbar_hide_all): Override hide_all
4951 in addition to show_all in order to keep them symmetric. (#102201)
4953 Wed Jan 22 14:18:46 2003 Manish Singh <yosh@gimp.org>
4955 * gdk/x11/gdkevents-x11.c (translate_key_event): add a "return" at
4956 the end of the function, so there is a statement following the "out"
4957 label in all cases (fixes #101961)
4959 2003-01-22 Christian Rose <menthos@menthos.com>
4961 * configure.in: Added "mn" to ALL_LINGUAS.
4963 Wed Jan 15 17:02:18 2003 Owen Taylor <otaylor@redhat.com>
4965 * gtk/gtktextlayout.c (gtk_text_layout_validate_yrange):
4966 Fix off-by-one error on the backward iteration loop,
4967 that was causing the wrong range to be redrawn.
4968 (at least part of #72734)
4970 2003-01-21 Matthias Clasen <maclas@gmx.de>
4972 * gtk/gtktextview.c (gtk_text_view_size_allocate): Adjust the
4973 vadjustment value after changing its bounds. (fixes #101963 and
4976 * gtk/gtkcolorsel.c (hex_changed): Fix clamping to [0,1] to avoid
4977 unnecessary roundtrip failures. (#93500)
4979 2003-01-19 Tor Lillqvist <tml@iki.fi>
4983 Fix for #103614 and some other problems with GtkFileSelection on
4986 * gtk/fnmatch.c (get_char): Need to use g_unichar_tolower(), not
4987 g_ascii_tolower(). Windows file names are case-insensitive for all
4990 * gtk/gtkfilesel.c: Instead of checking for G_OS_WIN32 or
4991 G_WITH_CYGWIN, check G_PLATFORM_WIN32. Move inclusion of gtkintl.h
4992 earlier, as it includes config.h unconditionally, and gtkprivate.h
4993 redefines GTK_LOCALEDIR.
4994 (struct _CompletionDirSent): Ifdef out the fields not used on
4996 (compare_utf8_filenames, compare_sys_filenames): Need different
4997 comparison implementation for UTF-8 file names and system locale
4998 file names on Win32. Cannot simply use g_ascii_strcasecmp(), but
4999 need to casefold all Unicode letters.
5000 (cmpl_completion_matches, open_dir, correct_parent): Ifdef out
5001 variables not used on Win32 to avoid warnings about unused
5003 (open_ref_dir): Use g_path_skip_root() to skip past potential
5004 drive letter in front of the leading (back)slash.
5005 (open_new_dir): Ifdef out use of CompletionDirSent fields not
5007 (correct_parent): Bypass inode check also on Cygwin.
5009 Fix bug noticed by Alex Shaduri: Tooltips and other
5010 GDK_WINDOW_TEMP windows were activated. This looked very odd, and
5011 was a regression from earlier versions.
5013 * gdk/win32/gdkwindow-win32.c (show_window_internal): Fine-tune
5014 behaviour. Don't ever activate GDK_WINDOW_TEMP windows.
5015 (gdk_window_move, gdk_window_resize): Add debug logging.
5017 * gdk/win32/gdkevents-win32.c (gdk_event_translate): When we get a
5018 WM_SIZE message for a non-visible (withdrawn) window, don't clear
5019 the GDK_WINDOW_STATE_WITHDRAWN bit. The window is still withdrawn
5020 even if its size changes.
5022 2003-01-16 Matthias Clasen <maclas@gmx.de>
5024 * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations): Typo fixes.
5025 (totally_invisible_line): Fix an incorrect optimization which
5026 caused invisible paragraphs to be occasionally misrendered.
5028 Wed Jan 15 15:55:47 2003 Owen Taylor <otaylor@redhat.com>
5030 * gtk/gtksettings.c: Set the double click speed from
5031 XSETTINGS when creating a new GtkSettings object
5032 as well as when getting a notify. (#103601, reported
5035 Wed Jan 15 14:56:09 2003 Owen Taylor <otaylor@redhat.com>
5037 * gtk/gtknotebook.c (gtk_notebook_size_allocate):
5038 Show/hide the notebook event window as necessary,
5039 we weren't previously keeping the visibility updated
5042 2003-01-15 Matthias Clasen <maclas@gmx.de>
5044 * examples/menu/itemfactory.c:
5045 * docs/tutorial/gtk-tut.sgml: Add a <StockItem> to the itemfactory
5048 2002-12-29 Murray Cumming <murrayc@usa.net>
5052 * gtk/gtkliststore.c, gtktreednd.c, gtktreestore.c:
5053 Actually implement the GtkTreeDragSource::row_draggable virtual
5054 function in GtkListStore and GtkTreeStore instead of just checking
5055 whether it's implemented at all. This means that DnD isn't broken by
5056 gtkmm's virtual function wrappers. The alternative would be to
5057 hard-code the TRUE return value into gtkmm's wrappers, but that's
5058 part of GTK+'s implementation, not it's API.
5060 Tue Jan 14 23:42:29 2003 Kristian Rietveld <kris@gtk.org>
5062 * gtk/gtktreeview.c: fix compiler warning.
5064 Tue Jan 14 23:29:00 2003 Kristian Rietveld <kris@gtk.org>
5066 * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
5067 make sure exposed pixbufs are clipped to the exposed area before
5068 drawing, which is a slight speedup. (#102379, patch from Soeren
5071 Tue Jan 14 23:26:41 2003 Kristian Rietveld <kris@gtk.org>
5073 * gtk/gtktreeview.c (validate_visible_area): silly typo fix,
5074 only free scroll_to_path when the complete tree has been validated.
5075 This makes sure that we scrolled to the correct path.
5077 Tue Jan 14 23:25:32 2003 Kristian Rietveld <kris@gtk.org>
5079 * gtk/gtktreeview.c (gtk_tree_view_style_set): update the
5080 background of widget->window and bin->window. (Fixes #96650, reported
5083 Tue Jan 14 23:24:02 2003 Kristian Rietveld <kris@gtk.org>
5085 * gtk/gtktreeview.c (gtk_tree_view_clamp_node_visible): process
5086 updates before scrolling, avoiding a "selection streak". (Fixes
5087 #101235, patch from Soeren Sandmann).
5089 Tue Jan 14 23:22:13 2003 Kristian Rietveld <kris@gtk.org>
5091 * gtk/gtktreeview.c (validate_visible_area): actually put values
5092 in the requisition using gtk_widget_size_request. (Fixes #100172,
5093 reported by Kjartan Maraas).
5095 Tue Jan 14 23:19:45 2003 Kristian Rietveld <kris@gtk.org>
5097 * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): cancel the
5098 arrow animation timeout before we actually reorder the rbtree. If
5099 we don't do this we can get stuck arrows,
5100 (cancel_arrow_animation): new function. (Fixes #93629, part 2,
5101 reported and testcase provided by Hans Petter Jansson).
5103 Tue Jan 14 23:18:21 2003 Kristian Rietveld <kris@gtk.org>
5105 * gtk/gtktreeselection.c (gtk_tree_selection_real_modify_range):
5106 anchor_path should be start_path, not end_path. (Fixes #102618,
5107 patch from Carlos Garnacho Parro).
5109 Tue Jan 14 23:16:15 2003 Kristian Rietveld <kris@gtk.org>
5111 * gtk/gtkliststore.c (gtk_list_store_move): also update the tail,
5112 only correct new_pos if we don't move to the head/tail.
5114 Tue Jan 14 23:11:55 2003 Kristian Rietveld <kris@gtk.org>
5116 * gtk/gtktreestore.c (gtk_tree_store_swap): take the path from
5117 the parent_iter if depth >= 1, so we send the reordered signal to
5118 the correct level, remove debugging printfs which I forgot the remove
5119 earlier (2.2.0 shipped with this, oops). (Fixes #103198, Reported and
5120 testcase provided by Matthew Tuck).
5122 Tue Jan 14 20:58:44 2003 Kristian Rietveld <kris@gtk.org>
5124 * gtk/gtktreeview.c (invalite_last_column): split out actual column
5125 invalidation into invalidate_column(),
5126 (gtk_tree_view_size_allocate_columns): invalidate column if the
5127 new width is larger than the old width.
5128 (fixes #102890, reported by Alex Duggan).
5130 2003-01-14 Matthias Clasen <maclas@gmx.de>
5132 * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Skip
5133 invisible chars for GTK_MOVEMENT_LOGICAL_POSITIONS and
5136 * gtk/gtktextiter.c,
5137 gtk/gtktextiter.h: Add some variant movement functions which
5138 skip invisible chars, and do some cleanups.
5140 2003-01-12 Tor Lillqvist <tml@iki.fi>
5144 * gtk/gtkmain.c: Move inclusion of config.h and gtkintl.h earlier,
5145 as gtkprivate.h redefines GTK_LOCALEDIR on Win32, for run-time
5148 * gdk/Makefile.am (libgdk_win32_2_0_la_DEPENDENCIES): Depend on
5152 * gtk/gtk.def: Add some missing entries. Thanks to Kenichi SUTO.
5154 * gtk-zip.sh.in (DEVZIP): Add bin/{gtk-query-immodules-2.0,
5155 gtk-demo}.exe and share/gtk-2.0.
5157 * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
5158 Implement by setting or clearing the WS_EX_TOOLWINDOW extended
5160 (gdk_window_set_type_hint): Add all cases to the switch (not all
5161 do anything, though). Handle GDK_WINDOW_TYPE_HINT_TOOLBAR by
5162 calling gdk_window_set_skip_taskbar_hint(). This means that GTK
5163 won't know that the skip_taskbar hint is on for the window, is
5166 Wed Jan 8 18:43:03 2003 Manish Singh <yosh@gimp.org>
5168 * gdk/x11/gdkdisplay-x11.c: #include <stdlib.h> for putenv,
5169 <string.h> for strlen.
5171 * gdk/x11/gdkscreen-x11.c: #include <stdlib.h> for getenv,
5172 <string.h> for strrchr.
5174 * tests/testgtk.c (create_saved_position): "x" and "y" properties
5175 for widgets no longer exist, use gtk_window_move instead.
5177 * test/testtextbuffer.c (check_get_set_text): cast strlen to
5180 2003-01-08 Matthias Clasen <maclas@gmx.de>
5182 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix display of
5183 the selection in the presence of invisible segments.
5185 2003-01-07 Matthias Clasen <maclas@gmx.de>
5187 * gtk/gtktextview.c (gtk_text_view_class_init): Bind C-/ and C-\
5188 to "select all" and "unselect all". (#102065)
5190 * gtk/gtktextview.h (struct _GtkTextView): Add a comment that
5191 the just_selected_element is unused.
5193 * gtk/gtktextview.c (extend_selection): New helper function to
5194 find the range that should be added to the selection.
5195 (selection_motion_event_handler):
5196 (gtk_text_view_start_selection_drag):
5197 (gtk_text_view_end_selection_drag):
5198 (selection_motion_event_handler):
5199 (selection_scan_timeout): Support select-by-words/lines.
5200 (gtk_text_view_button_press_event): Start a selection drag on
5201 double/triple clicks. (#78499)
5203 2003-01-06 Matthias Clasen <maclas@gmx.de>
5205 Implement a utility function proposed in #102534:
5207 * gtk/gtktextbtree.h:
5208 * gtk/gtktextbtree.c (_gtk_text_btree_select_range): New function.
5209 (_gtk_text_btree_place_cursor): Now a simple wrapper around
5210 _gtk_text_btree_select_range().
5212 * gtk/gtktextbuffer.h:
5213 * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): New function.
5214 (gtk_text_buffer_place_cursor): Now a simple wrapper around
5215 gtk_text_buffer_select_range().
5217 2003-01-05 Havoc Pennington <hp@pobox.com>
5219 * configure.in: fix a stray bracket that was breaking the build
5221 2003-01-05 Tor Lillqvist <tml@iki.fi>
5223 * gtk-zip.sh.in: Use correct DLL and import library names, with
5224 GTK_API_VERSION in name, not GTK_MAJOR_VERSION.GTK_MINOR_VERSION.
5225 (DEVZIP): Add gdk-pixbuf-query-loaders.exe.
5227 * configure.in: Improve check for dimm.h.
5229 * configure.in: Set SOEXT to 'so' on Unix, 'dll' on Win32. Used in
5230 gdk-pixbuf/Makefile.am.
5232 * gdk-pixbuf/makefile.mingw.in
5233 * gdk-pixbuf/pixops/makefile.mingw.in
5234 * gdk/makefile.mingw.in
5235 * gdk/win32/makefile.mingw.in
5236 * gtk/makefile.mingw.in: Remove. Not maintained anyway.
5238 * gdk-pixbuf/Makefile.am
5239 * gdk-pixbuf/pixops/Makefile.am
5241 * gdk/win32/Makefile.am
5243 * configure.in: Remove makefile.mingw{,.in} from here, too.
5245 * README.win32: Updates. Don't mention the now removed
5246 makefile.mingw files.
5249 * gtk/gtk.def: Add a couple of missing entries.
5251 * gdk/gdkkeynames.c: Include <string.h> for strcmp() and memcpy().
5253 * gdk/win32/gdkevents-win32.c: Move dimm.h header clash workaround
5256 * gdk/win32/rc/Makefile.am: Add hack to help
5257 build/win32/lt-compile-resource decide which kind of libtool
5258 object file to produce.
5260 2003-01-05 Matthias Clasen <maclas@gmx.de>
5262 * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Make
5263 C-Down step through the sequence of paragraph ends (old behaviour
5264 included paragraph starts). (#80340, patch by Narayana Pattipati)
5266 * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_first_toggle):
5267 Check for a tag toggle at the start iterator before calling
5268 gtk_text_iter_forward_to_tag_toggle(). (#102090, patch by Daniel
5271 2003-01-04 Matthias Clasen <maclas@gmx.de>
5273 * gtk/gtkfilesel.h (struct _GtkFileSelection): Add /*< public >*/
5274 and /*< private >*/ as appropriate. (#97211)
5276 2003-01-04 Tor Lillqvist <tml@iki.fi>
5278 * Makefile.am (EXTRA_DIST): Don't distribute gtk-zip.sh, but do
5279 distribute gtk-zip.sh.in.
5281 * gtk-zip.sh.in (DEVZIP): Add gdk-pixbuf-csource.exe and .1.
5283 2003-01-03 Havoc Pennington <hp@pobox.com>
5285 * docs/Makefile.am (EXTRA_DIST): put it in EXTRA_DIST
5287 * docs/text_widget_internals.txt: add a file documenting some of
5288 the text widget internals
5290 2003-01-02 Matthias Clasen <maclas@gmx.de>
5292 * gtk/gtkwindow.c (gtk_window_get_focus): Document that it may
5293 return NULL. (#102069)
5295 2003-01-01 Matthias Clasen <maclas@gmx.de>
5297 * gtk/fnmatch.c (FNMATCH_TEST_CASES): #undef, since having
5298 a main() in the library is obviously bad.
5300 2002-12-27 Matthias Clasen <maclas@gmx.de>
5302 * gtk/gtktextview.c (gtk_text_view_drag_data_received): Place the
5303 cursor at drop point. (#72384)
5304 (gtk_text_view_size_allocate): Update the horizontal adjustment
5307 2002-12-25 Matthias Clasen <maclas@gmx.de>
5309 * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix highlighting of
5310 selection wrt. to empty lines. (#90435, #90582, #91619)
5312 * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler):
5313 Keep the cursor on screen. (#96929)
5315 2002-12-24 Matthias Clasen <maclas@gmx.de>
5317 * gtk/gtktextbuffer.c (paste_from_buffer):
5318 (clipboard_text_received): Let the user action span the insertion
5319 and the deletion of the old selection. (#82844)
5321 2002-12-23 Matthias Clasen <maclas@gmx.de>
5323 * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_starts):
5324 Don't call gtk_text_iter_backward_sentence_start() if
5325 count is zero. (#99115)
5327 * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Call
5328 move_cursor() even if the cursor hasn't moved, since it has the
5329 side effect of canceling the selection. (#81395, #98537, #98333)
5331 2002-12-22 Matthias Clasen <maclas@gmx.de>
5333 * gtk/gtktextlayout.c (add_preedit_attrs): Don't add attributes
5334 with empty ranges. (fixes #101564 and #80637)
5336 2002-12-21 Tor Lillqvist <tml@iki.fi>
5338 * gdk/win32/gdkwindow-win32.c (gdk_window_new): Move the code that
5339 sets the window style and extended window style, and adjusts the
5340 width and height to take the window decorations into account
5341 earlier. The adjusted width and height used to be ignored. Remove
5342 the local x, y, width and height variables, no need to further
5343 confuse the code by having local copies. (Partial fix, I hope, for
5346 (gdk_window_move): When moving top-level windows, take title bar
5347 and border width into account, offsetting the coordinates before
5348 calling SetWindowPos().
5350 (gdk_window_set_decorations, gdk_window_set_functions):
5351 Reimplement, taking into account the peculiar semantics of
5352 GDK_DECOR_ALL and GDK_FUNC_ALL. (#79036)
5354 (gdk_window_get_decorations): Implement. (#98981)
5356 (gdk_window_set_type_hint): When setting
5357 GDK_WINDOW_TYPE_HINT_MENU, call gdk_window_set_decorations().
5360 * gdk/gdk.def: Add gdk_window_get_decorations. (#98981)
5362 2002-12-21 Matthias Clasen <maclas@gmx.de>
5364 * gtk/gtktextview.c (gtk_text_view_set_background): New static
5365 function to set the background of all windows.
5366 (gtk_text_view_style_set): Use gtk_text_view_set_background().
5367 (gtk_text_view_state_changed): New function; change background
5368 according to state. (#88126)
5370 2002-12-21 Havoc Pennington <hp@pobox.com>
5372 * gtk/gtktextview.c (gtk_text_view_move_visually): fix the documentation