ChangeLog.pre-2-6 260 KB
Newer Older
1 2
2005-01-03  Matthias Clasen  <mclasen@redhat.com>

3 4 5
	* docs/tutorial/gtk-tut.sgml: Some updates for the drawing
	section.  (#161414, Robert Ancell)

Matthias Clasen's avatar
Matthias Clasen committed
6 7
	* docs/tutorial/gtk-tut.sgml: Make it build.

8 9 10
	* gtk/gtkdialog.c (gtk_dialog_run): Some clarification
	regarding modality.  (#112903, Dave Bordoley)

11 12 13
	* gtk/gtkfixed.c (gtk_fixed_set_has_window): 
	Add a little motivation.  (#145556, Tommi Komulainen)

14 15 16
	* docs/tutorial/gtk-tut.sgml: Clarify section on 
	g_signal_connect_swapped.   (#120543, David Bourguignon)

17 18 19 20 21 22 23 24
	Make gtk_icon_theme_load_icon() work independent of
	icon factory initialization.  (#162791, Tristan Van Berkom)
	
	* gtk/gtkiconfactory.[hc]: Rename ensure_default_icons to
	_gtk_icon_factory_ensure_default_icons, and make it non-static.

	* gtk/gtkicontheme.c (find_builtin_icon): ..and call it here.

25 26 27 28 29
2005-01-02  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_remove_shortcut_folder): 
	Don't add a shortcut here.  (#162752, Tor Lillqvist)

30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
2005-01-02  Tor Lillqvist  <tml@iki.fi>

	* gtk/Makefile.am (libgtk_target_ldflags): Add -lole32, needed for
	CoTaskMemFree in get_special_folder() below.

	* gtk/gtkfilesystem.h: Implement case-insensitive path compare on
	Win32 using _gtk_file_system_win32_path_compare().

	* gtk/gtk.symbols: Add _gtk_file_system_win32_path_compare.

	* gtk/gtkfilechooserbutton.c (model_add_special)
	* gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Use
	_gtk_file_system_win32_get_desktop() to get correct Desktop folder
	on Win32. (#144003)

	* gtk/gtkfilesystemwin32.c: Remove unnecessary includes. Do
	consider all drives "mounted", including floppies. Trying to
	inspect the contents of a nonexistent floppy will cause errors
	later that are handled normally, no need to avoid them
	completely. Keep the drive type in the GtkFileSystemVolume.
50 51
	Support UNC paths. (#161797, #137874) Fix error message
	capitalizations as in gtkfilesystemunix.c.
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113

	(gtk_file_system_win32_init): Start one timeout per
	GtkFileSystemWin32.

	(gtk_file_system_win32_finalize): Remove the timeout.

	(get_special_folder): Copied from GLib.

	(_gtk_file_system_win32_get_desktop): New function, uses
	get_special_folder().

	(gtk_file_system_win32_list_volumes): Don't start a timeout at
	each call to this function. Don't assume A: and B: are floppies.

	(gtk_file_system_win32_get_volume_for_path): Don't assume all
	volumes are drive roots, i.e. support share roots of UNC paths
	(\\server\share).

	(gtk_file_system_win32_get_folder): Don't assume errno is set
	after g_file_test() returns FALSE. It isn't on Win32 (and even on
	Unix I don't think one should assume anything about errno after
	g_file_test()).

	(gtk_file_system_win32_volume_get_is_mounted): Always return TRUE.

	(gtk_file_system_win32_volume_get_display_name): Don't call
	GetVolumeInformation() on drives A: or B: if they are removable,
	as they might then be floppies, causing an unnecessary
	delay. (#157820)

	(gtk_file_system_win32_volume_render_icon): Use network icon for
	unrecognized drive types.

	(canonicalize_filename, gtk_file_system_win32_parse): Don't get
	confused by UNC paths.

	(bookmarks_serialize): Use _gtk_file_system_win32_path_compare()
	for case-insensitive UTF-8 path comparison.

	(extract_icon): Use SHGetFileInfo() which is faster than
	ExtractAssociatedIcon(). Icon extraction is still slow, though,
	needs work.

	(win32_pseudo_mime_lookup): Don't use the same icon for all
	shortcuts or executables. Cache only other file type icons.

	(gtk_file_system_win32_render_icon): Use network stock icon for
	remote drives and UNC server share roots. Compare home directory
	case-insensitively. Do lookup icons also for executable files,
	after all, it's these files that can have individual icons in the
	first place. Yes, it can be slow. Needs work.

	(filename_is_drive_root): Require also the slash after the colon.

	(filename_is_server_share): New function.

	(_gtk_file_system_win32_path_compare): New function, does
	case-folded UTF-8 comparison.

	* gtk/gtkfilesystemwin32.h: Declare
	_gtk_file_system_win32_path_compare().

114 115 116 117 118 119 120 121
2005-01-01  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkbutton.c (gtk_button_set_image): Allow unsetting the
	custom image by passing NULL.
	(gtk_button_init): Initialize image_is_stock to TRUE, fixing
	a problem with changing stock labels.  (#162273, Marcin 
	Krzyzanowski)

122 123 124 125 126 127 128 129
2005-01-01  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkmodules.c (get_module_path)
	* gtk/gtkrc.c (gtk_rc_make_default_dir, gtk_rc_get_im_module_file,
	gtk_rc_get_theme_dir, gtk_rc_add_initial_default_files): With
	g_getenv() now returning UTF-8 on Win32, no need to call
	g_locale_to_utf8().

130 131 132 133 134 135 136 137
2004-12-31  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkkeyhash.c (_gtk_key_hash_lookup_keyval) 
	(_gtk_key_hash_lookup): Don't sort a list of values as if
	it was a list of entries. This fixes crashes during mnemonic
	activation in the presence of multiple keymaps. (#162488, 
	Christian Persch)

138 139
2004-12-30  Matthias Clasen  <mclasen@redhat.com>

140 141 142 143
	* gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Fix
	state propagation when making an insensitive combo box sensitive
	again.  (#162524, Carlos Garnacho Parro)

144 145 146
	* gtk/gtkfilechooserdefault.c: Use secondary text for error 
	dialogs.

147 148
	* gtk/gtkfilesystemunix.c: Clean up some cases of errno handling
	(#162496, noted by Tor Lillqvist), and use g_filename_display_name()
149 150
	for error messages. Also mark some error messages for translation,
	fix capitalization of error messages.
151

152 153 154 155
	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property): 
	Use g_value_get_boolean() for ellipsize_set.  (#162447, 
	Brian Tarricone)

156 157 158 159 160
2004-12-30  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkicontheme.c (gtk_icon_theme_init): Use /usr/share/pixmaps
	only on Unix.

161 162
2004-12-28  Matthias Clasen  <mclasen@redhat.com>

163 164 165
	* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Inherit
	submenu direction from the parent menu.

166 167 168 169 170 171 172
	* gtk/gtkmenushell.c (gtk_menu_shell_select_submenu_first): 
	Return a boolean indicating whether an item in the submenu
	was selected.
	(gtk_real_menu_shell_move_current): When going in child 
	direction, don't get stuck at completely insensitive 
	submenus.  (#162055, Billy Biggs)	

173 174 175 176 177 178 179 180 181 182 183 184 185 186
2004-12-27  Matthias Clasen  <mclasen@redhat.com>

	Make the clipboard image API more robust (#162357, 
	Torsten Schoenfeld):
	
	* gtk/gtkclipboard.c (clipboard_image_received_func): Don't
	ref the pixbuf if it is NULL.

	* gtk/gtkselection.c (gtk_selection_data_set_pixbuf): 
	NULL-terminate the varargs in the call to 
	gdk_pixbuf_save_to_buffer(). 
	(gtk_selection_data_get_pixbuf): Only use a pixbuf loader 
	if there is data to load.

187 188
2004-12-27  Matthias Clasen  <mclasen@redhat.com>

189 190 191 192
	* gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): 
	Set x_root and y_root in button and motion events from 
	extended input devices.  (#148715, Robert Ögren)

193 194 195
	* gtk/gtktreeview.c (gtk_tree_view_class_init): Fix a 
	typo.  (#162339, Alessio Dessi)

196 197 198
	* gtk/gtkadjustment.c (gtk_adjustment_class_init): Document
	properties as new since 2.4.  (#156101, Billy Biggs)

199 200 201
	* configure.in: Add a warning about the linux-fb 
	target.  (#155488, Zeeshan Ali)

202 203 204
	* gtk/gtkmain.c (gtk_init_with_args): Typo fix.  (#162278,
	Torsten Schoenfeld)

205 206 207 208
2004-12-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilechooser.c (gtk_file_chooser_set_action): 
	Typo fix.  (#162219, Masao Mutoh)
209 210
	(gtk_file_chooser_set_preview_widget_active): 
	Another typo.  (#162218, Masao Mutoh)
211

212 213
2004-12-23  Matthias Clasen  <mclasen@redhat.com>

214 215 216 217
	* gtk/gtkliststore.c (gtk_list_store_iter_children): 
	Return TRUE if there are children.  (#162134, Iñigo Serna,
	patch by John Finlay)

218 219 220 221
	* gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): 
	Transfer state from the button to the cell view to get
	prelighting right.  (#156327, Ricardo Veguilla)

222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247
Wed Dec 22 14:22:19 2004  Søren Sandmann  <sandmann@redhat.com>

	* tests/testtoolbar.c (timeout_cb): Add sensitivity-changing
	timeout. Written by Christian Persch.

Wed Dec 22 14:14:02 2004  Søren Sandmann  <sandmann@redhat.com>

	Bug #161561
	
	* gdk/x11/gdkwindow-x11.c (tmp_{re,un}set_bg): Only set/reset the
	background for windows that get expose events. 

	* gdk/gdkwindow.c (gdk_window_process_updates_internal): Remove
	hack to repaint !expose windows.

Wed Dec 22 11:35:41 2004  Søren Sandmann  <sandmann@redhat.com>

	Bug #147497, make menu items activate immediately when you release
	the button.
	
	* gtk/gtkmenu.c (gtk_menu_enter_notify, menu_motion_notify): Make
	items activate immediately.

	* gtk/gtkmenu.c (definitely_within_item): New function
	* gtk/gtkmenu.c (check_threshold): New function

248 249 250 251 252 253 254 255 256 257 258 259
2004-12-22  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtklabel.c (gtk_label_setup_mnemonic): Don't forget to
	null the mnemonic_menu when unsetting a mnemonic, reported
	by Owen Taylor.

2004-12-21  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkliststore.c (generate_order): Generate the order the
	way it is supposed to be, order[new_pos] == old_pos.
	(gtk_list_store_reorder): Invert the order before using it.

260 261 262 263 264 265 266 267 268 269 270
2004-12-22  Matthias Clasen  <mclasen@redhat.com>

	Fix sorting of list stores.  (#161886, Marcin Krzyzanowski)

	* gtk/gtkliststore.c (generate_order): Generate the order the
	way it is supposed to be, order[new_pos] == old_pos.
	(gtk_list_store_reorder): Invert the order before using it.

	* gtk/gtkiconview.c (gtk_icon_view_rows_reordered): Adapt to the
	list store fix.

271 272 273 274 275
Wed Dec 22 01:24:01 2004  Jonathan Blandford  <jrb@redhat.com>

	* gtk/queryimmodules.c (main): print out the version and binary
	name in the header comment.  Problem reported by Seth Nickell.

276 277
2004-12-20  Matthias Clasen  <mclasen@redhat.com>

278 279 280 281
	* gtk/gtkliststore.c (gtk_list_store_sort_iter_changed): Pass a
	root path to gtk_tree_model_rows_reordered().  (#161720,
	Marcin Krzyzanowski)

282 283 284
	* gtk/gtkactiongroup.c (gtk_action_group_translate_string): Don't 
	translate NULL messages.  (#161789, Morten Welinder)

285 286 287
	* gtk/gtkmessagedialog.c (setup_primary_label_font): Don't show
	the secondary label on show_all().  (#161707, Christian Persch)

288 289 290 291 292 293 294 295 296
2004-12-19  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdnd-win32.c (resolve_link, gdk_dropfiles_filter):
	Use wide character API when available. Use UTF-8 for filenames.

	* gdk/win32/gdkselection-win32.c (_gdk_dropfiles_store): Include
	the string's trailing zero byte in the property's length, just for
	safety.

297 298
2004-12-18  Matthias Clasen  <mclasen@redhat.com>

299 300 301 302 303 304 305 306 307 308 309
	* gtk/gtkfilechooserentry.c (check_completion_callback) 
	(load_directory_callback): Add missing GDK_THREADS_ENTER/LEAVE.

	* gtk/gtkfilechooserdefault.c (edited_idle_cb) 
	(shortcuts_drag_outside_idle_cb): Add missing 
	GDK_THREADS_ENTER/LEAVE.  (#161604)
	
	* gtk/gtkfilechooserdefault.c (selection_check_foreach_cb): 
	(list_select_func): Don't call gtk_file_info_get_is_folder()
	on NULL. 

310 311 312 313
	* gtk/gtkaboutdialog.c (gtk_about_dialog_get_logo_icon_name): 
	(gtk_about_dialog_init): Add missing initializations.  (#161646,
	Torsten Schoenfeld)

Matthias Clasen's avatar
Matthias Clasen committed
314 315
2004-12-16  Matthias Clasen  <mclasen@redhat.com>

Matthias Clasen's avatar
Matthias Clasen committed
316 317
	* configure.in: Bump version

Matthias Clasen's avatar
Matthias Clasen committed
318 319
	* === Released 2.6.0 ===

Matthias Clasen's avatar
Matthias Clasen committed
320 321 322 323 324
	* gtk/gtkmenuitem.c: Add a forgotten cast.  (Morten Welinder) 

	* gtk/gtkfilechooserbutton.c: Add another forgotten include. (Morten
	Welinder)

325 326
2004-12-16  Matthias Clasen  <mclasen@redhat.com>

327 328 329
	* gtk/gtkfilechooserbutton.c (dialog_response_cb): Only unblock the handlers
	if they are blocked.

330 331 332 333 334 335
	* gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): Don't
	crash if enable_search is FALSE.  (#161267, Jorn Baayen)

	* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_mnemonic_activate): 
	Re-fix #152925, reported by Dennis Cranston.

336 337
2004-12-15  Matthias Clasen  <mclasen@redhat.com>

Matthias Clasen's avatar
Matthias Clasen committed
338 339
	* gtk/gtkfilechooserbutton.c: Add missing includes.

340 341 342 343 344 345 346 347
	* configure.in: Require glib 2.6.0 for 
	g_filename_display_basename.

	* gtk/gtkentrycompletion.[hc]: Make the prefix parameter 
	to the insert-prefix signal a const gchar* instead of a 
	gchar*.  (#161415, Murray Cumming)
	Also remove an unused static function.

348 349 350 351 352
2004-12-15  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkfilesystemunix.c (gtk_file_folder_unix_get_info):
	Use g_filename_display_basename to calculate display name.

353 354
2004-12-15  Matthias Clasen  <mclasen@redhat.com>

355 356
	* gtk/abicheck.sh: Strip out PRIVATE

Matthias Clasen's avatar
Matthias Clasen committed
357 358
	* NEWS: Updates

359 360 361 362 363 364 365 366 367 368
	* gtk/gtkmenushell.c (gtk_menu_shell_select_submenu_first) 
	(gtk_real_menu_shell_activate_current): Use 
	_gtk_menu_item_popup_submenu() to make keynav into submenus work
	instantaneously, independent of the popup delay.  (#161140)

	* gtk/gtkmenuitem.[hc]: _-prefix gtk_menu_item_popup_submenu() and
	make it non-static.

	* gtk/gtkmenuitem.c (gtk_menu_item_paint): Remove unused variables.

369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409
2004-12-15  James M. Cape  <jcape@ignore-your.tv>

	* gtk/gtkfilechooserbutton.c (struct _GtkFileChooserButtonPrivate)
	(gtk_file_chooser_button_init)
	(gtk_file_chooser_button_file_chooser_iface_init)
	(gtk_file_chooser_button_add_shortcut_folder)
	(gtk_file_chooser_button_remove_shortcut_folder) 
	(gtk_file_chooser_button_constructor)
	(gtk_file_chooser_button_set_property)
	(gtk_file_chooser_button_destroy)
	(gtk_file_chooser_button_finalize)
	(get_icon_theme) (get_display_name_for_path) (model_get_type_position)
	(model_free_row_data) (model_add_special) (model_add_other)
	(model_add_volumes) (model_add_bookmarks)
	(model_update_current_folder) (model_remove_rows)
	(filter_model_visible_func) (combo_box_row_separator_func)
	(name_cell_data_func) (update_combo_box) (fs_volumes_changed_cb)
	(fs_bookmarks_changed_cb) (combo_box_changed_cb)
	(change_icon_size): Use a GtkComboBox in SELECT_FOLDER mode (#157726).

	* gtk/gtkfilechooserbutton.c:
	* gtk/gtkfilechooserbutton.h (gtk_file_chooser_button_new)
	(gtk_file_chooser_button_new_with_backend): Add @action to constructors
	to match other GtkFileChooser impls. API CHANGE.

	* docs/tools/widgets.c (create_file_button):
	* tests/testfilechooserbutton.c (main): Update callers.

	* docs/reference/gtk/tmpl/gtkfilechooserbutton.sgml: Reflect API
	change.

	* tests/testfilechooserbutton.c: Add LGPL license.
	(main): Added GOption parser for --backend and --right-to-left cmd line
	args.
	(add_pwds_parent_as_shortcut_clicked_cb)
	(del_pwds_parent_as_shortcut_clicked_cb) (tests_button_clicked_cb):
	Add shortcut_folders test.
	(chooser_current_folder_changed_cb) (chooser_selection_changed_cb)
	(chooser_file_activated_cb) (chooser_update_preview_cb): Print URIS,
	not filenames.

410 411 412 413 414 415
2004-12-15  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilechooserdefault.c (get_is_file_filtered): Don't 
	try to filter if impl->current_filter is NULL.  (#161329, 
	R. McFarland) 

416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439
2004-12-14  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	Fix #145470:

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_initial_focus): Queue a pending
	operation to select the first row if we are not finished loading
	yet.
	(gtk_file_chooser_default_class_init): Override GtkWidget::map().
	(gtk_file_chooser_default_map): New ::map() handler; refresh the
	file and bookmark lists.

	* gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_class_init):
	Override GtkWidget::map() and GtkWidget::unmap().
	(gtk_file_chooser_dialog_constructor): Don't call initial_focus()
	here.
	(gtk_file_chooser_dialog_map): Map the file chooser widget if
	needed.  Call initial_focus() here.
	(gtk_file_chooser_dialog_unmap): Unmap the file chooser widget.
	When we are re-mapped, the widget will get mapped as well and it
	will have a chance to refresh.

Matthias Clasen's avatar
Matthias Clasen committed
440 441
2004-12-14  Matthias Clasen  <mclasen@redhat.com>

Matthias Clasen's avatar
Matthias Clasen committed
442 443 444 445
	* README.win32: Fix a typo

	* README.in: Updates

446 447 448 449 450 451
	* tests/testcombo.c (main): Don't use gtk_cell_renderer_set_values().

	* gtk/gtk.symbols: 
	* gtk/gtkcellview.[hc]: Remove gtk_cell_renderer_set_value[s]
	for now.

Matthias Clasen's avatar
Matthias Clasen committed
452 453 454 455
	* configure.in: Bump version to 2.6.0

	* NEWS: Updates

Matthias Clasen's avatar
Matthias Clasen committed
456 457
	* tests/testiconview.c: Test oversized items.

Matthias Clasen's avatar
Matthias Clasen committed
458 459 460 461 462 463 464
	* gtk/gtk.symbols: Add new symbols.

	* gtk/gtkiconview.[hc]: Make the icon view lay out its
	items in a grid, allocating multiple grid cells to oversized
	items. Also convert hardwired spacing constants into 
	properties.  (#152483)

465 466
2004-12-13  Matthias Clasen  <mclasen@redhat.com>

467 468
	* gtk/gtklabel.c: s/maximal/maximum/g  (#161195, David Lodge)

469 470 471 472
	* gtk/gtkmenuitem.c (gtk_real_menu_item_select): Reintroduce
	the reverted change, since it is necessary to prevent lost
	submenus. But make it work for torn-off menus as well.

473 474 475
	* gtk/gtktearoffmenuitem.c (tearoff_state_changed): Fix the signature
	to avoid overwriting a pspec.  

476 477 478
	* gtk/gtkmenuitem.c (gtk_real_menu_item_select): Revert a change
	which prevented torn-off menus from being shown normally.

479 480 481
	* gtk/gtkmenu.c (gtk_menu_scroll): Implement scroll wheel scrolling
	for menus. (#88532)

482 483 484
	* gtk/gtkwindow.c (gtk_window_real_set_focus): Compare only
	the HAS_DEFAULT flags.  (#160711, Tommi Komulainen)

485 486 487
	* gtk/gtkimage.c (gtk_image_set_property): Add a missing break
	statement.  (#161172, Damon Chaplin)

488 489 490
	* gtk/gtkcellrenderertext.c: Add a width-chars property like
	GtkLabel has.  (#160496, James M. Cape)

Matthias Clasen's avatar
Matthias Clasen committed
491 492
	* NEWS: Updates

493 494 495 496
	* gtk/gtkwidget.c (gtk_widget_class_init): Add some docs for
	GtkWidget::delete-event and GtkWidget::destroy-event.  (#161142,
	Paolo Borelli)

497 498
2004-12-13  Matthias Clasen  <mclasen@redhat.com>

499 500 501 502 503 504 505
	* gtk/gtklabel.[hc]: Add a max-width-chars property, which can
	be used to specify the width of the label in characters, while
	still allowing it to fall short of this length if the text
	is shorter.  (#155944, Christian Persch)

	* gtk/gtk.symbols: Add new symbols.

506 507 508 509
	* gtk/gtkuimanager.c (update_smart_separators): Don't let the
	empty menu filler affect visibility of separators.  (#160500,
	Christian Persch)

510 511
2004-12-12  Matthias Clasen  <mclasen@redhat.com>

512 513 514
	* gtk/gtkcombobox.c (gtk_combo_box_menu_row_changed): Pass a 
	last item to gtk_combo_box_relayout_item.  (#161050, John Finlay)

515 516 517
	* tests/testfilechooserbutton.c (tests_button_clicked_cb): Rename
	a local variable to avoid a conflict.  (#161109, Robert Ögren)

Tor Lillqvist's avatar
Tor Lillqvist committed
518
2004-12-12  Tor Lillqvist  <tml@iki.fi>
519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552

	* gtk/gtkaccelmap.[ch]
	* gtk/gtkfilechooser.[ch]
	* gtk/gtkfilesel.c
	* gtk/gtkfilesystemwin32.c
	* gtk/gtkiconfactory.[ch]
	* gtk/gtkicontheme.[ch]
	* gtk/gtkimage.[ch]
	* gtk/gtkimmodule.c
	* gtk/gtkmodules.c
	* gtk/gtkrc.[ch]
	* gtk/gtkuimanager.[ch]
	* gtk/gtkwindow.[ch]	
	* gtk/updateiconcache.c
	* gtk/gtk.symbols: Use gstdio wrappers. On Windows, convert
	environment variables referring to pathnames from locale encoding
	to UTF-8. As in GLib, in order to preserve Windows DLL ABI
	stability, add binary compatibility versions of functions that
	take file names as arguments, or return file names. Add a _utf8
	suffix to the "real" such functions on Windows. The ABI
	compatibility versions keep the old name.

	* gtk/Makefile.am: Strip PRIVATE symbols from the GNU import
	library.

	* gtk/gtkiconcache.c (_gtk_icon_cache_new_for_path): Implement
	file mapping on Win32.

	* gtk/updateiconcache.c: Don't crash if invoked without
	argument. Use binary mode when opening file.

	* modules/engines/ms-windows/Theme/gtk-2.0/Makefile.am: Install
	gtkrc in correct place, in <datadir>/themes/MS-Windows/gtk-2.0.

553 554 555 556 557
2004-12-12  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtklabel.c (gtk_label_setup_mnemonic): Fix a 
	copy-and-paste error, noticed by Robert Ögren.

558 559 560 561 562 563
2004-12-11  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_fill_level) 
	(gtk_combo_box_menu_row_changed): Only wrap if we are in the
	topmost menu.  (#160936, John Finlay)

564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583
2004-12-10  Matthias Clasen  <mclasen@redhat.com>

	Support no-Alt mnemnonics in menu bars  (#101309, Owen Taylor)
	
	* gtk/gtkwindow.c: Factor out mnemonic hash code into
	a separate file.

	* gtk/gtkmnemonichash.[hc]: Factored out mnemonic hash
	code from gtkwindow.c.

	* gtk/Makefile.am (gtk_c_sources): Add gtkmnemonichash.[hc].

	* gtk/gtkmenushell.c (struct _GtkMenuShellPrivate): Give 
	menu shells their own mnemonic hash.

	* gtk/gtkmenushell.h: Add private api to support mnemonics.

	* gtk/gtklabel.c (gtk_label_setup_mnemonic): Add mnemonic to
	the menushell mnemonic hash when inside a menu.
	
Manish Singh's avatar
Manish Singh committed
584 585 586 587
Fri Dec 10 13:59:32 2004  Manish Singh  <yosh@gimp.org>

	* gtk/gtk.symbols: add recent new functions.

588 589 590 591 592 593
2004-12-10  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkwindow.c: Revert the patch which added no-alt 
	mnemonics, since it interfers badly with menus.  (#160911,
	Jonathan Blandford)

594 595
2004-12-09  Matthias Clasen  <mclasen@redhat.com>

596 597 598
	* gtk/gtklabel.c (gtk_label_class_init): Fix a property
	nick typo. 

599 600 601 602
	* gtk/gtkfilechooserdefault.c: Apply a patch to reset the 
	filter if an otherwise invisible file is selected via the 
	location popup.  (#159896, Carlos Garnacho Parro)

603 604 605 606 607 608 609 610 611 612 613 614 615 616 617
	Fix #145463, reported by Michael Natterer.
	
	* gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add an
	editing flag to keep track of when editing is done.
	
	* gtk/gtkcellrenderer.h:
	* gtk/gtkcellrenderer.c (gtk_cell_renderer_stop_editing): New
	function to replace gtk_cell_renderer_editing_canceled(). 
	Deprecate gtk_cell_renderer_editing_canceled(). 

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done): 
	* gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_editing_done): 
	* gtk/gtktreeview.c (gtk_tree_view_stop_editing):
	Use gtk_cell_renderer_stop_editing().
	
618 619 620 621 622 623 624
2004-12-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkliststore.h: 
	* gtk/gtkliststore.c (gtk_list_store_insert_with_values): 
	(gtk_list_store_insert_with_valuesv): Add functions which allow
	faster insertion of rows in sorted list stores.  (#160063)

625 626 627 628 629
2004-12-08  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Fix a typo
	in the docs.  (#160826, Jay Camp)

630 631 632 633 634 635 636
2004-12-08  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	* gtk/gtkfilechooserdefault.c (pending_op_process): Center the
	selected row so that it's easily visible.

637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652
2004-12-08  Matthias Clasen  <mclasen@redhat.com>

	Fix #111031, reported by Padraig O'Briain:
	
	* gtk/gtktextlayout.h: 
	* gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_position): 
	Add a variant of gtk_text_layout_get_iter_at_pixel() which
	returns the character at the position, not the closest
	cursor position.

	* gtk/gtktextview.h: 
	* gtk/gtktextview.c (gtk_text_view_get_iter_at_position): 
	Add a variant of gtk_text_view_get_iter_at_location() which
	returns the character at the position, not the closest
	cursor position.

653 654 655 656 657 658
2004-12-08  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkaccelmap.c (internal_change_entry): Remove all 
	entries for the same key, not just the first one.  (#159498, 
	Christian Persch)

659 660 661 662 663 664
2004-12-08  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): Use
	button->event_window for the fake leave event, otherwise
	the button ignores it.  

665 666
2004-12-07  Matthias Clasen  <mclasen@redhat.com>

667 668 669 670 671 672
	* gtk/gtkiconview.c (gtk_icon_view_rows_reordered): Make this
	work, no need to invert the array. 

	* gtk/gtkliststore.c (gtk_list_store_sort_iter_changed): Emit
	rows_reordered if the row has been moved.  (#160063)

673 674 675 676
	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
	Don't mess up the column header state if the button release
	event is missed.  (#159640)

677 678
2004-12-07  Marco Pesenti Gritti  <marco@gnome.org>

Matthias Clasen's avatar
Matthias Clasen committed
679
	* gtk/gtkcellview.c (gtk_cell_view_set_background_color):
680 681
	Fix a typo in last commit

682 683 684 685 686
2004-12-07  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcellview.c (gtk_cell_view_set_background_color): Queue
	a redraw.  (#160679, Damon Chaplin)

687 688
2004-12-07  Matthias Clasen  <mclasen@redhat.com>

689 690 691 692
	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
	Don't mess up the column header state if the button release
	event is missed.  (#159640)

693 694 695 696 697
	* docs/tools/widgets.h (enum): Add an ASIS widget size.

	* docs/tools/widgets.c (get_all_widgets): Add file chooser,
	font selection and color selection dialogs.

698 699 700 701 702
2004-12-06  Matthias Clasen  <mclasen@redhat.com>

	* modules/input/gtkimcontextime.c: Prevent double commits,
	don't commit when Ctrl is present.  (#160376, Kazuki IWAMOTO)

703 704 705 706 707
2004-12-06  Hans Breuer  <hans@breuer.org>

	* gtk/gtkcolorsel.c (key_press): Implement keynav for the color
	picker - win32 too. Fixes bug #160437.

Tor Lillqvist's avatar
Tor Lillqvist committed
708 709 710 711 712 713 714
2004-12-05  Tor Lillqvist  <tml@iki.fi>

	* demos/gtk-demo/main.c (load_file): Use g_fopen().

	* demos/gtk-demo/images.c (progressive_timeout): Use
	g_fopen(). Open png file in binary mode.

Matthias Clasen's avatar
Matthias Clasen committed
715
2004-12-02  Matthias Clasen  <mclasen@redhat.com>
Matthias Clasen's avatar
Matthias Clasen committed
716 717
	
	* configure.in: Bump version
Matthias Clasen's avatar
Matthias Clasen committed
718 719 720 721 722

	* === Released 2.5.6 ===

	* NEWS: Updates

723 724 725 726 727 728 729 730
2004-12-03  Tor Lillqvist  <tml@iki.fi>

	* gdk-pixbuf/Makefile.am (gdk_pixbuf.def)
	* gdk/Makefile.am (gdk.def)
	* gtk/Makefile.am (gtk.def): Work around gcc misfeature. At least
	gcc 3.3.1 doesn't like to do -E on files that it thinks aren't
	source files. Use redirection and '-' instead.

731 732 733 734 735 736
2004-12-02  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_should_respond): 	Reinstate the previous behavior for clicking Ok after
	activating a bookmark or path bar button in folder 
	modes.  (#160044, Dennis Cranston)

737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761
2004-12-02  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	Fix #159656:

	* gtk/gtkfilechooserdefault.c (PendingOp): New enumeration for the
	pending operation to perform when finishing loading a folder.
	(struct _GtkFileChooserDefault): New fields 'pending_op' and
	'pending_select_path'.
	(pending_op_queue): New utility function.
	(pending_op_process): New utility function.
	(gtk_file_chooser_default_select_path): Don't select the path
	immediately; delay it until the folder is finished loading.
	(browse_files_model_finished_loading_cb): Process the pending
	operation.
	(browse_files_select_first_row): New utility function.
	(gtk_file_chooser_default_initial_focus): Use
	browse_files_select_first_row().
	(gtk_file_chooser_default_should_respond): Queue an operation to
	select the first row once we load the child folder.
	(up_folder_handler): Queue an operation to select the current
	folder once we load the parent folder.
	(gtk_file_chooser_default_finalize): Free the pending_select_path.

762 763 764 765 766
Thu Dec  2 13:18:34 2004  Manish Singh  <yosh@gimp.org>

	* gdk/x11/gdkgc-x11.c (make_fg_tile_picture): Make sure we always
	return a value. Return None in the fallthrough case.

767 768 769 770 771
2004-12-02  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkmessagedialog.c: (setup_primary_label_font):
	Don't leak pango_font_description object (#160214, Frederic Crozat).

772 773 774 775 776 777
2004-12-01  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkiconview.c (gtk_icon_view_row_changed): Handle the
	fact the the changed row may also be moved.  (#159387, Olivier 
	Andrieu)

778 779 780 781 782
2004-12-01  Tor Lillqvist  <tml@iki.fi>

	* modules/input/imime.c (im_module_create): Use the module's
	correct name in test. (#160122)

783 784 785 786 787 788 789 790 791 792
2004-12-01  Michael Natterer  <mitch@gimp.org>

	* gtk/gtkuimanager.[ch]: added virtual functions
	GtkUIManager::get_widget() and ::get_action(). Moved the code from
	gtk_ui_manager_get_widget() and get_action() to the default
	implementations. Fixes bug #160096.

	(gtk_ui_manager_get_toplevels): added missing precondition check
	for GTK_IS_UI_MANAGER(self).

793 794 795
2004-12-01  Dom Lachowicz <cinamod@hotmail.com>

	* modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: use MS Windows button order, not Gnome HIG order
796 797
	* modules/engines/ms-windows/msw_style.c (draw_handle): Draw XP toolbar grippie handle properly
	(draw_resize_grip): Draw XP status bar grippie handle properly
798
	(draw_arrow): XP theme combo box arrows on toolbars
799

800 801 802 803
2004-11-30  Dom Lachowicz <cinamod@hotmail.com>

	* modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: MS Windows menus should not have tearoffs

804 805 806 807 808 809 810
Tue Nov 30 17:53:37 2004  Søren Sandmann  <sandmann@redhat.com>

	* gtk/gtksequence.c (node_compare): Assign an arbitrary, but
	consistent, order to nodes that the user function compares as
	equal. Better fix for bug #157670 and a better way to make sorting
	stable.

811 812 813 814 815 816 817 818 819
2004-11-30  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkpixmap-win32.c : remove the disputable memset at 
	the end of gdk_pixmap_new() - on X11 the bits are not initialized 
	either - fixes bug #145107

	* gtk/gtkfilesystemwin32.c : add an idle handler to emit "volumes-changed"
	when drives are plugged in or removed. Fixes bug #137815

820 821 822 823 824 825 826 827 828 829 830 831
2004-11-30  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktreesortable.c (gtk_tree_sortable_get_sort_column_id): Update 
	the documentation to specify a more useful behaviour, which can be
	implemented with the multiple special values we have now.  (#159984,
	Nicholas Rahn)

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_sort_column_id): 
	* gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id): 
	* gtk/gtkliststore.c (gtk_list_store_get_sort_column_id): Update the
	implementations.

832 833 834 835
Tue Nov 30 16:25:29 2004  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextdisplay.c (render_para): Don't paint in the
	trailing end of a wrapped line when the selection 
836
	starts after the line. (#160000, Matthias Clasen)
837 838 839 840 841 842

	* gtk/gtktextdisplay.c (gtk_text_layout_draw): pass in byte_count + 1 
	for selection_end index when the selection end is past the end of the 
	line so that render_para() can distinguish it from selection-end
	*at* the end of the line. Fixes newlines not being selected.

843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889
2004-11-30  James M. Cape  <jcape@ignore-your.tv>

	* gtk/gtkfilechooserbutton.h (gtk_file_chooser_button_get_active)
	(gtk_file_chooser_button_set_active):
	* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_class_init)
	(gtk_file_chooser_button_get_active)
	(gtk_file_chooser_button_set_active):
	* docs/reference/gtk/gtk-sections.txt:
	* docs/reference/gtk/tmpl/gtkfilechooserbutton.sgml:
	* gtk/gtk.symbols: removed "GtkFileChooserButton:active" property and
	getter/setter.

	* gtk/gtkfilechooserbutton.c (struct _GtkFileChooserButtonPrivate)
	(button_toggled_cb) (dialog_response_cb) (button_notify_active_cb)
	(gtk_file_chooser_button_init) (button_clicked_cb)
	(gtk_file_chooser_button_show): Use a GtkButton instead of a
	GtkToggleButton.
	(struct _GtkFileChooserButtonPrivate)
	(gtk_file_chooser_button_destroy) (gtk_file_chooser_button_style_set)
	(gtk_file_chooser_button_screen_changed): Don't bother with the
	(remove_settings_signal) (settings_notify_cb) (check_icon_theme):
	Don't use GtkSettings at all, just call change_icon_theme() directly.
	(struct _GtkFileChooserButtonPrivate)
	(gtk_file_chooser_button_init)
	(gtk_file_chooser_button_drag_data_received)
	(gtk_file_chooser_button_mnemonic_activate)
	(gtk_file_chooser_button_set_width_chars)
	(gtk_file_chooser_button_get_width_chars)
	(entry_changed_cb) (update_idler) (update_entry) (update_dialog)
	(dialog_selection_changed_cb) (dialog_response_cb)
	(entry_size_allocate_cb): Remove all references to the now-defunct
	entry, store the old path (to support "Cancel") in an instance member.
	(update_label_and_image) (update_label) (update_image)
	(gtk_file_chooser_button_init) (dialog_response_cb)
	(dialog_selection_changed_cb): Merge label/image updates, only display
	the filename (not the whole path, fixes #157725).
	(struct _GtkFileChooserButtonPrivate)
	(dialog_selection_changed_cb)
	(dialog_selection_changed_proxy_cb): Merge "selection-changed"
	handlers, block while dialog is visible (fixes #158482).

	* tests/testfilechooserbutton.c (delete_event_cb)
	(properties_button_clicked_cb) (print_selected_path_clicked_cb)
	(tests_button_clicked_cb) (main): Add per-chooser "tests" window,
	don't delete on WM close, update properties_button_clicked_cb()
	"delete-event" callback.

890 891 892 893
2004-11-30  Dwayne Bailey  <dwayne@translate.org.za>

	* configure.in: Added "nso" to ALL_LINGUAS.

894 895 896 897 898 899 900 901 902 903
Tue Nov 30 09:46:49 2004  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkdrawable-x11.c (_gdk_x11_drawable_draw_xtrapezoids)
	* gdk/x11/gdkdrawable-x11.c (_gdk_x11_drawable_draw_xft_glyphs):
	Call gdk_x11_drawable_update_xft_clip (part of #159929,
	James Henstridge)

	* gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs_transformed): 
	Remove unused variables.

904 905 906 907 908
Tue Nov 23 19:37:34 2004  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): A little bit
	of microoptimization of repeated GDK_GC_XDISPLAY()/XGC().

Matthias Clasen's avatar
Matthias Clasen committed
909 910
2004-11-30  Matthias Clasen  <mclasen@redhat.com>

911 912 913 914 915
	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_sort_column_id): 
	* gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id): 
	* gtk/gtktreesortable.c (gtk_tree_sortable_get_sort_column_id): 
	* gtk/gtkliststore.c (gtk_list_store_get_sort_column_id): 

Matthias Clasen's avatar
Matthias Clasen committed
916 917
	* NEWS: Updates.

918 919 920 921 922 923 924 925 926
2004-11-29  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkmenushell.c (gtk_menu_shell_button_release): Don't
	do the popup-on-click handling for menubars.  (#159931, 
	Søren Sandmann)
	
	* gtk/gtkmenuitem.c (gtk_real_menu_item_select): Don't 
	handle popup delay if the submenu is already mapped.	

927 928 929 930
Mon Nov 29 16:56:33 2004  Manish Singh  <yosh@gimp.org>

	* gtk/gtkcellview.h: remove gtk_cell_view_set_cell_data() declaration.

931 932 933 934 935 936
2004-11-29  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	* gtk/gtkfilechooserdefault.c (trap_activate_cb): Don't handle
	Enter if we are in SELECT_FOLDER or CREATE_FOLDER actions.  This
937
	lets us navigate the file system more easily.
938 939 940 941
	(gtk_file_chooser_default_should_respond): If we are in
	SELECT_FOLDER or CREATE_FOLDER modes, return TRUE if something is
	selected.

942 943 944 945 946 947 948
Mon Nov 29 17:51:51 2004  Søren Sandmann  <sandmann@redhat.com>

	* gtk/gtksequence.c (_gtk_sequence_sort_changed): If the item is
	already in the right place, don't move it. Bug #157670.
	
	* gtk/gtksequence.c (already_in_place): New function

949 950 951 952 953
Mon Nov 29 17:28:53 2004  Søren Sandmann  <sandmann@redhat.com>

	* gtk/gtksequence.c (_gtk_sequence_sort): Take nodes in reverse
	order to make sure sort is stable.

954 955
2004-11-29  Matthias Clasen  <mclasen@redhat.com>

956 957 958 959 960 961 962 963 964 965 966 967
	* gtk/gtkcombobox.c (cell_view_is_sensitive): Don't call
	gtk_cell_view_set_cell_data() from here.

	* gtk/gtk.symbols: Remove gtk_cell_view_set_cell_data()

	* gtk/gtkcellview.c (gtk_cell_view_get_cell_renderers): Call 
	gtk_cell_view_set_cell_data() from here.
	(gtk_cell_view_set_cell_data): Make static.

	* gtk/gtkcombobox.c (gtk_combo_box_menu_popup): Make menu mode
	work better when resizing the combo box.

968 969 970 971 972 973 974 975 976 977 978
	Determine the direction of XKB groups from their content, 
	not by looking for hardcoded keymap names.  (#116626, patch by 
	Behdad Esfahbod, based on an earlier patch by Ilya Konstantinov)
	
	* gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Cache directions
	for XKB groups.
	(get_direction): Determine direction of group by looking at 
	directions of keysyms.
	(update_direction): Maintain the cache of group directions.
	(gdk_keymap_get_direction): Use update_direction().

979 980 981 982 983
	* gdk/gdkkeynames.c: Add dead_hook and dead_horn.

	* gdk/gdkkeysyms.h (GDK_dead_hook, GDK_dead_horn): Define
	these keysyms.  (#159739, Samuel Thibault)

984 985 986 987 988 989
2004-11-29  Matthias Clasen  <mclasen@redhat.com>

	* gtk/Makefile.am (gtkalias.h): 
	* gdk/Makefile.am (gdkalias.h): Use the perl found by 
	configure.  (#149826, Morten Welinder)

990 991
2004-11-28  Matthias Clasen  <mclasen@redhat.com>

Matthias Clasen's avatar
Matthias Clasen committed
992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005
	* gtk/gtkwidget.h (gtk_requisition_get_type): 
	* gtk/gtktypeutils.h (gtk_identifier_get_type): 
	* gtk/gtktexttag.h (gtk_text_attributes_get_type): 
	* gtk/gtkstyle.h (gtk_border_get_type): 
	* gtk/gtkfilesystemmodel.h (_gtk_file_system_model_get_type): 
	* gtk/gtkfilechooserentry.h (_gtk_file_chooser_entry_get_type): 
	* gtk/gtkfilechooserembed.h (_gtk_file_chooser_embed_get_type):
	* gtk/gtkfilechooserdefault.h (_gtk_file_chooser_default_get_type): 
	* gtk/gtkaccelmap.h (gtk_accel_map_get_type): Mark as const.

	* gtk/gtk.symbols: 
	* gtk/Makefile.am: Mark get_type() functions
	generated by glib-mkenums as const.

Matthias Clasen's avatar
Matthias Clasen committed
1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020
	* gdk/gdkvisual.h (gdk_visual_get_type): 
	* gdk/gdkscreen.h (gdk_screen_get_type): 
	* gdk/gdkinput.h (gdk_device_get_type): 
	* gdk/gdk.h (gdk_rectangle_get_type): 
	* gdk/gdkfont.h (gdk_font_get_type): 
	* gdk/gdkevents.h (gdk_event_get_type): 
	* gdk/gdkdrawable.h (gdk_drawable_get_type): 
	* gdk/gdkdisplay.h (gdk_display_get_type): 
	* gdk/gdkcursor.h (gdk_cursor_get_type): 
	* gdk/gdkcolor.h (gdk_color_get_type): Mark as const.

	* gdk/gdk.symbols: 
	* gdk/Makefile.am (stamp-gdkenumtypes.h): Mark get_type() functions
	generated by glib-mkenums as const.

1021 1022 1023 1024 1025 1026 1027 1028 1029 1030
	* gtk/gtktextview.c (gtk_text_view_move_iter_by_lines): Return
	a boolean indicating whether we could do the requested move.
	(gtk_text_view_move_cursor_internal): For GTK_MOVEMENT_DISPLAY_LINES,
	move to the beginning/end of the line if we're on the first/last
	line.  (#155891, Paolo Borelli)

	* gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
	Don't move the iter and return FALSE if trying to move up from
	the first line.

Matthias Clasen's avatar
Matthias Clasen committed
1031 1032
2004-11-28  Matthias Clasen  <mclasen@redhat.com>

1033 1034 1035 1036
	* gtk/gtkaction.c (closure_accel_activate): Don't claim to have
	handled the accelerator if the action is insensitive.  (#151541,
	Jody Goldberg)

Matthias Clasen's avatar
Matthias Clasen committed
1037 1038
	* docs/tools/widgets.c: Add a combo box.

1039 1040 1041 1042 1043 1044 1045 1046
2004-11-27  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcolorsel.c (key_press): Implement keynav for the color
	picker (only on X11 currently, since GDK doesn't support pointer 
	warping). Space and Return pick a color, Esc cancels the picking, 
	arrow keys move the pointer by single pixels, Alt-arrow combinations 
	move the pointer by 20 pixels.  (#135385, Frances Keenan)

1047 1048 1049 1050 1051
Sat Nov 27 15:18:14 2004  Manish Singh  <yosh@gimp.org>

	* contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-drawable.c
	(rgb565amsb, rgb555msb): make proper casts in big endian cases.

1052 1053
2004-11-26  Matthias Clasen  <mclasen@redhat.com>

1054 1055
	* gtk/gtkiconview.c (gtk_icon_view_set_model): Check column types on the
	new model, and check them all.  (#159389, Olivier Andrieu)
1056
	(gtk_icon_view_set_model): Queue a layout. (#159436, Olivier Andrieu)
1057

1058 1059 1060
	* gdk/x11/gdkselection-x11.c (gdk_text_property_to_utf8_list_for_display): 
	Don't crash if Xlib fails to return UTF-8. (#159373, Kristian Høgsberg) 

1061 1062 1063 1064 1065 1066 1067 1068
Thu Nov 25 14:32:35 2004  Manish Singh  <yosh@gimp.org>

	* gdk/abicheck.sh
	* gtk/abicheck.sh: filter out G_GNUC stuff when doing the compare.

	* gtk/gtkmenuitem.c (gtk_menu_shell_button_release): add
	GTK_MENU_ITEM() cast.

1069 1070 1071 1072 1073 1074
2004-11-25  Kjartan Maraas  <kmaraas@gnome.org>

	* configure.in: Add forgotten «nb» to ALL_LINGUAS.
	* po-properties/nb.po: Update
	* po/nb.po: Update

1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086
2004-11-24  Matthias Clasen  <mclasen@redhat.com>

	Open submenus on click.  (#128968, Martin Jeppesen)
	
	* gtk/gtkmenushell.c (gtk_menu_shell_button_release): Don't
	activate items with submenus after the timeout, just select 
	them.

	* gtk/gtkmenuitem.c (gtk_real_menu_item_select): Make
	submenus popup immediately on click, regardless of popup 
	delay.

1087 1088 1089 1090 1091
2004-11-23  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Rework confusing error message.  (#151742,
	Stepan Kasal)

Matthias Clasen's avatar
Matthias Clasen committed
1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161
2004-11-23  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkuimanager.h (gtk_ui_manager_get_type): 
	* gtk/gtktreeview.h (gtk_tree_view_get_type): 
	* gtk/gtktreeviewcolumn.h (gtk_tree_view_column_get_type): 
	* gtk/gtktreestore.h (gtk_tree_store_get_type): 
	* gtk/gtktreeselection.h (gtk_tree_selection_get_type): 
	* gtk/gtktreemodelfilter.h (gtk_tree_model_filter_get_type): 
	* gtk/gtktreemodel.h (gtk_tree_iter_get_type): 
	(gtk_tree_path_get_type):
	(gtk_tree_row_reference_get_type):
	* gtk/gtktoolitem.h (gtk_tool_item_get_type): 
	* gtk/gtktoolbutton.h (gtk_tool_button_get_type): 
	* gtk/gtktoggleaction.h (gtk_toggle_action_get_type): 
	* gtk/gtkthemes.h (gtk_theme_engine_get_type): 
	* gtk/gtktextiter.h (gtk_text_iter_get_type): 
	* gtk/gtksettings.h (gtk_settings_get_type): 
	* gtk/gtkselection.h (gtk_selection_data_get_type): 
	* gtk/gtkradioaction.h (gtk_radio_action_get_type): 
	* gtk/gtkmenutoolbutton.h (gtk_menu_tool_button_get_type): 
	* gtk/gtkliststore.h (gtk_list_store_get_type): 
	* gtk/gtkiconview.h (gtk_icon_view_get_type): 
	* gtk/gtkicontheme.h (gtk_icon_info_get_type): 
	* gtk/gtkiconfactory.h (gtk_icon_factory_get_type): 
	(gtk_icon_set_get_type):
	(gtk_icon_source_get_type):
	* gtk/gtkfilesystemwin32.h (gtk_file_system_win32_get_type): 
	* gtk/gtkfilesystemunix.h (gtk_file_system_unix_get_type): 
	* gtk/gtkfilesystem.h (gtk_file_folder_get_type):
	(gtk_file_info_get_type, gtk_file_path_get_type):
	(gtk_file_system_get_type):
	* gtk/gtkfilefilter.h (gtk_file_filter_get_type): 
	* gtk/gtkfilechooserwidget.h (gtk_file_chooser_widget_get_type): 
	* gtk/gtkfilechooser.h (gtk_file_chooser_get_type): 
	* gtk/gtkfilechooserdialog.h (gtk_file_chooser_dialog_get_type): 
	* gtk/gtkexpander.h (gtk_expander_get_type): 
	* gtk/gtkentrycompletion.h (gtk_entry_completion_get_type): 
	* gtk/gtkcombobox.h (gtk_combo_box_get_type): 
	* gtk/gtkcomboboxentry.h (gtk_combo_box_entry_get_type): 
	* gtk/gtkclipboard.h (gtk_clipboard_get_type): 
	* gtk/gtkcellview.h (gtk_cell_view_get_type): 
	* gtk/gtkcellrenderertoggle.h (gtk_cell_renderer_toggle_get_type): 
	* gtk/gtkcellrenderertext.h (gtk_cell_renderer_text_get_type): 
	* gtk/gtkcellrendererprogress.h (gtk_cell_renderer_progress_get_type): 
	* gtk/gtkcellrendererpixbuf.h (gtk_cell_renderer_pixbuf_get_type): 
	* gtk/gtkcellrenderercombo.h (gtk_cell_renderer_combo_get_type): 
	* gtk/gtkcelllayout.h (gtk_cell_layout_get_type):
	* gtk/gtkactiongroup.h (gtk_action_group_get_type): 
	* gtk/gtkaction.h (gtk_action_get_type): 
	* gtk/gtkaccessible.h (gtk_accessible_get_type): 
	* gtk/gtkaccelmap.h (gtk_accel_map_get_type): 
	* gtk/gtkaccelgroup.h (gtk_accel_group_get_type): 
	* gtk/gtkmessagedialog.h (gtk_message_dialog_get_type): Mark as const.  

	* gtk/gtkicontheme.h:  Don't mark gtk_icon_theme_error_quark() 
	as const, to be consistent with all the other error_quark 
	functions. (technically they are const, but since these are 
	called only in error paths, giving the compiler better 
	optimization opportunities doesn't matter much)

	* gtk/gtk.symbols:
	* gdk/gdk.symbols: Add attribute annotations.

	* gtk/makegtkalias.pl: 
	* gdk/makegdkalias.pl: Keep attribute annotations, but strip PRIVATE.
	
	* gtk/Makefile.am (gtk.def): 
	* gdk/Makefile.am (gdk.def): Strip attribute annotations, but keep 
	PRIVATE.

1162 1163
2004-11-22  Matthias Clasen  <mclasen@redhat.com>

1164 1165 1166
	* gtk/gtktoolbar.c (gtk_toolbar_set_icon_size): Add a deprecation
	note.

1167 1168 1169
	* gdk/gdkevents.c (gdk_event_get_root_coords): Handle scroll
	events.  (#159098, Felipe Heidrich)

1170 1171
2004-11-22  Matthias Clasen  <mclasen@redhat.com>

1172 1173 1174 1175
	* gtk/gtkmenuitem.c (gtk_menu_item_paint): Make the size of 
	the arrow depend only on the font size, not on the child 
	allocation.  (#131345, Morten Welinder)

Matthias Clasen's avatar
Matthias Clasen committed
1176 1177 1178
	* configure.in: Require Pango 1.7.0 for PangoRenderer (#159061,
	Crispin Flowerday)
	
1179 1180 1181 1182 1183
2004-11-21  Sven Neumann  <sven@gimp.org>

	* gtk/gtkwidget.c (gtk_widget_create_pango_context): removed call
	to gdk_pango_context_set_colormap() which isn't needed any longer.

Hans Breuer's avatar
Hans Breuer committed
1184 1185 1186 1187 1188 1189 1190 1191 1192 1193
2004-11-21  Hans Breuer  <hans@breuer.org>

	* gdk/makefile.msc.in gtk/stock-icons/makefile.msc 
	  gtk/makefile.msc.in demos/gtk-demo/makefile.msc.in : updated

	* gdk/win32/gdkdrawable-win32.c : implement gdk_win32_draw_glyphs_transformed()
	* gdk/win32/gdkgc-win32.c : implement _gdk_windowing_gc_get_foreground()

	* demos/gtk-demo/rotated_text.c : use G_PI

Owen Taylor's avatar
Owen Taylor committed
1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255
Sat Nov 20 15:13:51 2004  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpango.[ch]: Add GdkPangoRenderer, a subclass of 
	PangoRenderer targeting GDK drawables. Use to implement the old
	gdk_draw_layout() and friends.

	* gdk/gdkdraw.c gdk/gdkdrawable.h gdk/gdkwindow.c gdk/gdkpixmap.c:
	Add gdk_draw_glyphs_transformed() gdk_draw_trapezoids() and
	the corresponding members of GdkDrawableClass. Add a fallback
	implementation of gdk_draw_trapezoids() in terms of pixbufs.

	* gdk/gdkwindowing.h gdk/x11/gdkg-x11.h: Add 
	_gdk_windowing_gc_get_foreground() to enable the fallback 
	trapezoid implementation.

	* gdk/x11/gdkdrawable-x11.c gdk/x11/gdkdisplay-x11.h: Implement 
	draw_glyph_transformed,	draw_trapezoids.

	* gdk/x11/gdkdrawable-x11.[ch]: Add 
	_gdk_x11_drawable_draw_xtrapezoids, _gdk_x11_drawable_draw_xft_glyphs
	for use of GdkX11Renderer.

	* gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Implement
	GDK_TILED, GDK_STIPPLED, GDK_OPAQUE_STIPPLED in the RENDER codepath.

	* gdk/gdkpango-x11.c: Add GdkX11Renderer... a subclass of 
	PangoXftRenderer that does tiles/stipples and fallback rendering
	of trapezoids without the RENDER extension.

	* gdk/gdkpango-x11.c gdk/x11/gdkscreen-x11.[ch] _gdk_x11_renderer_get:
	Add _gdk_x11_renderer_get() to get a singleton GdkX11Renderer
	for the screen.

	* gdk/x11/gdkdrawable-x11.c (get_impl_drawable): Fix a None/NULL
	confusion.

	* gtk/gtklabel.[ch] gtk/gtk.symbols: Add gtk_label_set/get_angle(),
	and an ::angle property.

	* gtk/gtklabel.c: Remove #if 0'd dead code gtk_label_paint_word().

	* gtk/gtktextdisplay.c: Switch to using a GtkTextRenderer subclass
	of GdkPangoRenderer for drawing.

	* gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Switch to using
	gtk_attr_shape_new_with_data() to store backreferences to 
	embedded pixmaps and widgets. Leave line_display->shaped_objects
	around for backwords compatibility.

	* gdk/gdkpango.[ch] (gdk_pango_context_set_colormap): Describe
	as deprecated, remove implementation.

	* gtk/gtkwidget.c (gtk_widget_create_pango_context): Remove
	call to gdk_pango_context_set_colormap.

	* demos/gtk-demo/Makefile.am demos/gtk-demo/rotated_text.c: Add
	a demo showing drawing rotated text.

	* tests/testgtk.c: Add a rotated-label test, and also a rotated
	drawing test (differs from demos/gtk-demo/rotated_text by also
	using a tile)
	
1256 1257 1258 1259
2004-11-21  Sven Neumann  <sven@gimp.org>

	* configure.in: talk about TIFF loader, not TIFF plug-in.

1260 1261
2004-11-20  Matthias Clasen  <mclasen@redhat.com>

1262
	* gtk/gtk.symbols: 
1263 1264 1265 1266 1267
	* gtk/gtkdialog.h: 
	* gtk/gtkdialog.c (gtk_dialog_set_alternative_button_order_from_array): 
	Provide a non-varargs variant of gtk_dialog_set_alternative_button_order()
	for language bindings.  (#158798, John Finlay)
	
1268 1269 1270 1271 1272 1273 1274 1275
2004-11-20  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	* gtk/gtkfilechooserdefault.c (list_icon_data_func): Set an empty
	icon if we are on the editable row:  if we don't set the cell
	renderer at all, it will reuse the last thing it painted.

1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286
2004-11-19  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	Fix #158475:

	* gtk/gtkpathbar.c (make_directory_button): Make the button a drag
	source.
	(button_drag_data_get_cb): New callback to let us drag the
	button's path as a text/uri-list.

1287 1288 1289 1290 1291 1292 1293 1294 1295 1296
2004-11-19  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	Fix #141077.  Based on a patch by Christian Neumair <chris@gnome-de.org>:

	* gtk/gtkfilechooserdefault.c (new_folder_button_clicked):
	Desensitize the "new folder" button.
	(edited_idle_cb): Sensitize the button back.

1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324
2004-11-19  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	Fix #158477:

	* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
	Remove the "save_extra_align" and "browse_extra_align" fields; use
	a single "extra_align" field.
	(save_widgets_create): Don't create the save_extra_align.
	(browse_widgets_create): Don't create the browse_extra_align.
	(gtk_file_chooser_default_constructor): Create the extra_align
	here.
	(set_extra_widget): Add the extra widget to the alignment here,
	and remove the old one if necessary.
	(update_appearance): No need to frob the extra widget's alignments
	anymore.
	(gtk_file_chooser_default_set_property): No need to call
	update_appearance() anymore when we set the extra widget.

2004-11-19  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_initial_focus): Don't set the cursor if
	we are still loading.

1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346
2004-11-18  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	Fixes #155744:

	Try to load the whole file system model within a specified time.

	* gtk/gtkfilechooserdefault.c (set_list_model): Don't create and
	set the sort model here.  Instead, set up a timer in which we'll
	try to load the file system model.
	(load_set_model): Create and set the sort model here.
	(load_setup_timer): New function to set up a timer and switch to
	the LOAD_LOADING state.
	(load_remove_timer): New function to unset the timer and switch to
	the LOAD_FINISHED state.
	(browse_files_model_finished_loading_cb): Remove the timer if
	needed and set the file system and sort model; switch to the
	LOAD_FINISHED state.
	(gtk_file_chooser_default_finalize): Remove the load timer.
	(gtk_file_chooser_default_init): Start in the LOAD_FINISHED state.

1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377
Fri Nov 19 15:18:51 2004  Manish Singh  <yosh@gimp.org>

	* modules/engines/ms-windows/msw_rc_style.c
	* modules/engines/ms-windows/msw_style.c
	* modules/engines/ms-windows/msw_theme_main.c
	* modules/engines/pixbuf/pixbuf-main.c
	* modules/engines/pixbuf/pixbuf-rc-style.c
	* modules/input/gtkimcontextime.c
	* modules/input/gtkimcontextxim.c
	* modules/input/imam-et.c
	* modules/input/imcedilla.c
	* modules/input/imcyrillic-translit.c
	* modules/input/iminuktitut.c
	* modules/input/imipa.c
	* modules/input/imthai-broken.c
	* modules/input/imti-er.c
	* modules/input/imti-et.c
	* modules/input/imviqr.c
	* tests/prop-editor.c
	* tests/testentrycompletion.c
	* tests/testfilechooser.c
	* tests/testmerge.c
	* tests/testtoolbar.c
	* tests/testtreecolumns.c
	* tests/testtreeview.c: get rid of unnecessary casts.

	* tests/testgtk.c (create_labels): add GTK_LABEL() casts for
	gtk_label_set_ellipsize() calls.

	* tests/testicontheme.c (main): remove unused pixbuf variable.

1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411
Fri Nov 19 14:54:09 2004  Manish Singh  <yosh@gimp.org>

	* gdk/linux-fb/gdkgc-fb.c
	* gdk/win32/gdkgc-win32.c
	* gdk/win32/gdkwindow-win32.c
	* gtk/gtkaboutdialog.c
	* gtk/gtkaction.c
	* gtk/gtkactiongroup.c
	* gtk/gtkcellrendererprogress.c
	* gtk/gtkcellview.c
	* gtk/gtkcolorbutton.c
	* gtk/gtkcombobox.c
	* gtk/gtkcomboboxentry.c
	* gtk/gtkentrycompletion.c
	* gtk/gtkfilechooserbutton.c
	* gtk/gtkmenutoolbutton.c
	* gtk/gtkrc.c
	* gtk/gtksettings.c
	* gtk/gtkstyle.c
	* gtk/gtktoggletoolbutton.c
	* gtk/gtktoolbutton.c
	* gtk/gtktoolitem.c
	* gtk/gtktreemodelfilter.c
	* gtk/gtktreeselection.c
	* gtk/gtktreeviewcolumn.c
	* gtk/gtkuimanager.c: get rid of unnecessary casts.

	* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_set_property):
	cast away the const for g_value_set_enum. This is after the g_warning,
	so this is a hack to begin with.

	* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_set_property):
	add a cast to GTK_FILE_CHOOSER for impl here.

1412 1413 1414 1415 1416
Fri Nov 19 14:52:42 2004  Manish Singh  <yosh@gimp.org>

	* autogen.sh: rm autom4te.cache, since it might interfere with
	differing autoconf versions.

1417 1418 1419 1420
2004-11-19  Christian Rose  <menthos@menthos.com>

	* configure.in: Added "rw" to ALL_LINGUAS.

1421 1422 1423 1424 1425 1426
2004-11-17  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkaboutdialog.c (gtk_about_dialog_set_email_hook) 
	(gtk_about_dialog_set_url_hook): Destroy the correct 
	data.  (#158522, John Finlay)

1427 1428 1429 1430 1431
2004-11-16  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Use gmodule-no-export-2.0.pc, require glib 2.5.7
	(#125627, Owen Taylor)

1432 1433 1434 1435 1436
2004-11-17  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkbutton.c: Don't return a relief when a 
	widget is expected.  (#158470, Kazuki IWAMOTO)

1437 1438 1439 1440 1441
Tue Nov 16 19:44:26 2004  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkevents-x11.c gdk/x11/gdkim-x11.c gdk/x11/gdkwindow-x11.c: 
	More strict aliasing warning suppressage.

1442 1443 1444 1445 1446
Tue Nov 16 19:26:30 2004  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display): 
	Squash strict aliasing warnings. 

1447 1448 1449 1450 1451
2004-11-17  Davyd Madeley  <davyd@madeley.id.au>

	* gtk/gtkfilechooserdefault.c: Allow backspace to move up the
	FileChooser tree to make it consistent with Nautilus and others.

1452 1453
2004-11-16  Matthias Clasen  <mclasen@redhat.com>

1454 1455 1456
	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix a 
	copy-and-paste error.  (#158459) 

1457 1458
	* demos/gtk-demo/*.c: Don't include config.h in the examples.

Jonathan Blandford's avatar
Jonathan Blandford committed
1459 1460 1461 1462 1463 1464 1465
Tue Nov 16 00:08:07 2004  Jonathan Blandford  <jrb@redhat.com>

	* docs/tools/widgets.c: Update so that toplevel windows accomodate
	for the titlebar when sizing.  Also clean up statusbar

	* docs/reference/gtk/images/*png: update

1466 1467 1468 1469 1470 1471 1472
2004-11-16  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcellrenderertext.c (get_layout): Don't use the foreground
	color for selected cells, Don't use the background color
	in unfocused selected cells. Also avoid creating two PangoLayouts
	per render call.  (#154615, #154611, Billy Biggs)

1473 1474 1475 1476 1477 1478
Mon Nov 15 19:02:07 2004  Manish Singh  <yosh@gimp.org>

	* gdk/abicheck.sh
	* gtk/abicheck.sh: don't hardcode lengths for cut, instead split on
	the third field.

1479 1480
2004-11-15  Matthias Clasen  <mclasen@redhat.com>

1481 1482 1483
	* gtk/gtkselection.c: Reduce the clipboard timeout from 300
	seconds to 30 seconds.  (#155428, Billy Biggs)

1484 1485 1486 1487 1488 1489 1490
	* gtk/gtkimagemenuitem.c (gtk_image_menu_item_setting_changed): 
	* gtk/gtkbutton.c (gtk_button_setting_changed): Really free the
	list.  (#158422, Morten Welinder)

2004-11-15  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkimagemenuitem.c (gtk_image_menu_item_screen_changed) 
1491 1492 1493 1494
	* gtk/gtkbutton.c (gtk_button_screen_changed): Use 
	GPOINTER_TO_UINT()/GUINT_TO_POINTER() for guints.  (#158420,
	Morten Welinder)

1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506
Mon Nov 15 17:17:17 2004  Manish Singh  <yosh@gimp.org>

	* configure.in: Output Makefile for the pixbuf engine directory.

	* gtk/gtk.symbols: Add gtk_button_{get,set}_image.

	* modules/engines/pixbuf/pixbuf-render.c: Replace usage of deprecated
	functions.

	* modules/engines/pixbuf/pixbuf-draw.c: undef GDK_DISABLE_DEPRECATED
	for gdk_draw_string (ick).

Matthias Clasen's avatar
Matthias Clasen committed
1507 1508
2004-11-15  Matthias Clasen  <mclasen@redhat.com>

1509 1510 1511 1512 1513
	* gtk/gtkbutton.[hc]: Add a GtkButton::image property with setter 
	and getter, which allows to construct stock-like buttons with 
	custom images and/or text.  (#62466, Jonathan Blandford, patch by
	Matthias Clasen)

Matthias Clasen's avatar
Matthias Clasen committed
1514 1515 1516
	* gtk/gtkimagemenuitem.c (gtk_image_menu_item_set_image): Add 
	some more docs.

1517 1518 1519 1520 1521 1522
Mon Nov 15 14:25:21 2004  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_cell_set_dirty):
	Patch from Gavin Romig-Koch <gavin@redhat.com> to no longer reset
	the resized_width when marking a column dirty.

1523 1524
2004-11-15  Matthias Clasen  <mclasen@redhat.com>

Matthias Clasen's avatar
Matthias Clasen committed
1525 1526
	* modules/engines/Makefile.am (SUBDIRS): Add pixbuf.

1527 1528 1529 1530 1531 1532
	* gtk/gtkbutton.c: 
	* gtk/gtkimagemenuitem.c: Don't use one signal handler per
	instance to track changes to the gtk-menu-images and
	gtk-button-images settings. Instead use a single handler which 
	iterates over the widget hierarchy. (#143668)

1533 1534 1535
	* gtk/gtktreemodel.c (gtk_tree_path_prev): Return FALSE if
	depth is 0 (noticed by Tim Janik)

1536
2004-11-15 Erwann Chenede - <erwann.chenede@sun.com>
Matthias Clasen's avatar
Matthias Clasen committed
1537

1538 1539
	* gtk/gtkfilesel.c: fix unselect in multiple selection (#156805)

1540 1541 1542 1543
2004-11-15  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtklabel.c: Include gtkdnd.h  (#158243, Kazuki IWAMOTO)

1544 1545 1546 1547 1548
2004-11-13  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkspinbutton.c (gtk_spin_button_new_with_range): Allow
	min == max.  (#158225, Vasco Alexandre da Silva Costa)

Matthias Clasen's avatar
Matthias Clasen committed
1549 1550
2004-11-12  Matthias Clasen  <mclasen@redhat.com>

Matthias Clasen's avatar
Matthias Clasen committed
1551 1552
	* gtk/gtkcombobox.c (gtk_combo_box_class_init): Add more docs.

Matthias Clasen's avatar
Matthias Clasen committed
1553 1554 1555
	* gtk/gtkfilefilter.c (gtk_file_filter_filter): Fix typo in
	docs.

1556 1557
	* gtk/gtklabel.c (gtk_label_do_popup): Adjust to the current
	entry popup menu.
1558 1559
	(gtk_label_button_press, gtk_label_button_release) 
	(gtk_label_drag_data_get): Implement DND for selectable labels.
1560

1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571
	Make GDK+ compile with X11R5 (#148032)
	
	* gdk/x11/xsettings-client.c (xsettings_client_new): 
	* gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Only
	use XInternAtoms if it is available.

	* gdk/x11/gdkasync.c: Include XIproto.h if necessary.

	* configure.in: Check for XInternAtoms and X headers needed for
	xReply.
	
Matthias Clasen's avatar
Matthias Clasen committed
1572 1573
	* configure.in: Bump version.

Matthias Clasen's avatar
Matthias Clasen committed
1574 1575 1576 1577 1578 1579 1580
	* === Released 2.5.5 ===
	
	* gtk/gtkwindow.c (gtk_window_activate_key_after): Add parentheses 
	around comparison in operand of &.

	* gtk/gtkcalendar.c: Replace a non-ASCII character in a comment.

Matthias Clasen's avatar
Matthias Clasen committed
1581 1582
2004-11-12  Matthias Clasen  <mclasen@redhat.com>

1583 1584 1585
	* tests/Makefile.am (pixbuf_threads_LDADD): Make pixbuf-threads
	link.

Matthias Clasen's avatar
Matthias Clasen committed
1586 1587
	* NEWS: Updates

1588 1589 1590 1591 1592 1593 1594
2004-11-12  Matthias Clasen  <mclasen@redhat.com>

	* tests/Makefile.am: Add pixbuf-threads

	* tests/pixbuf-threads.c: Test loading images in multiple
	threads.

1595 1596
2004-11-11  Matthias Clasen  <mclasen@redhat.com>

1597 1598 1599 1600 1601
	* configure.in: Check for uxtheme.h  (#157967, J. Ali Harlow)

	* modules/engines/ms-windows/xp_theme.c: Use HAVE_UXTHEME_H
	to protect the #include <uxtheme.h> 

1602 1603 1604
	* docs/tools/Makefile.am: Don't try to build doc-shooter on 
	Windows.  (#157979, J. Ali Harlow) 

1605 1606 1607
	* gtk/gtkfilefilter.c: Don't try to use xdgmime on 
	Windows where we don't build it.   (#157944, J. Ali Harlow)

1608 1609 1610 1611 1612 1613
	* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Also
	reserve space for the resize grip if the grip_window is not
	realized yet.  (#158010, Christian Persch)
	(gtk_statusbar_button_press): Only start a resize if the
	button press comes from the grip_window.  (#158011, Christian Persch)

1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625
2004-11-11  Tor Lillqvist  <tml@iki.fi>

	Fix for #137551, by Robert Ögren:

	* gdk/win32/gdkevents-win32.c (generate_focus_event): New function.

	(gdk_keyboard_grab, gdk_keyboard_ungrab): Generate focus change
	events.
	
	(gdk_event_translate): Check for keyboard grabs and not pointer
	grabs when handling WM_{SET,KILL}FOCUS. Use generate_focus_event().

1626 1627
2004-11-11  Matthias Clasen  <mclasen@redhat.com>

1628 1629 1630
	* gtk/gtkuimanager.c (update_node): Remove two more places
	where we were unconditionally setting "visible", causing
	unnecessary notifications.
Matthias Clasen's avatar
Matthias Clasen committed
1631
	(update_node): Fix some C99isms.
1632 1633 1634 1635 1636 1637 1638

	* gtk/gtkclipboard.c (gtk_clipboard_get_for_display): 
	(gtk_clipboard_get): Clarify the docs.  (#156638, Torsten 
	Schoenfeld)
	(gtk_clipboard_finalize): Warn if the clipboard is still in
	its displays clipboard list.

1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654
	Considerably speed up GtkUIManager, by changing the semantics
	of the dirty flag. It is now propagated up the tree, and
	update_node() doesn't descend into clean subtrees.  (#143668,
	Dave Neary, Michael Natterer, Sven Neumann, fix proposed
	by Soeren Sandmann)
	
	* gtk/gtkuimanager.c (node_prepend_ui_reference): Only prepend 
	a new node reference if the merge_id is different. Take a GNode,
	so we can walk up the tree, adjust all callers. 
	(node_remove_ui_reference): Only mark a node dirty if the first 
	ui reference is removed. Take a GNode here as well for 
	consistency. 
	(update_node): Don't descend into clean subtrees.
	(mark_node_dirty): New function to mark a node and its 
	predecessors dirty.

1655 1656 1657 1658 1659 1660
Thu Nov 11 11:34:32 2004  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkfilechooserbutton.c (update_idler): return FALSE instead
	of TRUE.  This is just a quick fix to prevent the idle from
	looping indefinitely.

1661 1662 1663 1664 1665 1666 1667
2004-11-11  J. Ali Harlow  <ali@juiblex.co.uk>

	* gdk/Makefile.am:
	* gdk-pixbuf/Makefile.am:
	* gtk/Makefile.am (gtk.def): Use embedded tab rather than '\t'
	escape sequence. (#157949)

1668 1669 1670 1671 1672 1673 1674
2004-11-10  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (_gdk_win32_get_next_tick): 
	Event timestamps don't have to be unique. As long as they are
	nondecreasing we should be fine. Solves problems with for instance
	long menus not staying up on first click. (#152035, Robert Ögren)

Matthias Clasen's avatar
Matthias Clasen committed
1675 1676
2004-11-10  Matthias Clasen  <mclasen@redhat.com>

1677 1678
	* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Only
	shorten the label if it actually overlaps the resize grip.
1679 1680
	(gtk_statusbar_size_allocate): Handle extra children
	by leaving room for the resize grip.  (#157778, Christian Persch)
1681

1682
	* gdk/linux-fb/*: Fix many sparse warnings.  (#157253,
1683
	Kjartan Maraas).
1684
	
Matthias Clasen's avatar
Matthias Clasen committed
1685 1686
	* NEWS: Updates

1687 1688
2004-11-09  Matthias Clasen  <mclasen@redhat.com>

1689 1690 1691 1692 1693
	* gtk/gtkrange.c (gtk_range_real_change_value): Make 
	power a double.
	(gtk_range_class_init): s/digits/decimal digits/ in doc 
	comment.

1694 1695 1696
	* gtk/gtkfilechooserbutton.c (update_idler): Remove debugging
	printfs. 

1697 1698 1699
	* gtk/gtkicontheme.[ch]: Improve the docs.  (#157785,
	Torsten Schoenfeld)

1700 1701 1702
	* gdk/x11/gdkwindow-x11.c (gdk_window_get_geometry): Add
	a hint about using gdk_drawable_get_size() instead.

Matthias Clasen's avatar
Matthias Clasen committed
1703 1704
	* gtk/gtk.symbols: Add new symbols.

1705 1706 1707
	* gtk/gtkiconview.c (gtk_icon_view_scroll_to_item): Make
	it work with *big* icon views.  (#154466)

1708 1709
	* tests/testiconview.c: Add a real "Add many" button.

1710 1711 1712 1713 1714 1715 1716 1717 1718 1719
	* gtk/gtkaction.[hc]: 
	* gtk/gtkactiongroup.[hc]: Make return types G_CONST_RETURN
	instead of const.

	* gtk/gtk.symbols: 
	* gtk/gtkaction.h: 
	* gtk/gtkaction.c (gtk_action_get_accel_path): Add
	a function to obtain the accel path of an action. (#148106,
	Michael Natterer)

1720 1721
	* tests/testiconview.c: Fix double-click activation.

1722 1723
	* gtk/gtkstatusbar.c (gtk_statusbar_init): Raise the grip
	window when appropriate.
Matthias Clasen's avatar
Matthias Clasen committed
1724
	(gtk_statusbar_init): Instead of cutting the text off, make
1725 1726 1727
	ellipsize the label.
	(gtk_statusbar_size_allocate): Don't let the label extend
	under the resize grip.
1728

1729 1730 1731 1732 1733
	* gtk/gtkcombobox.c (find_menu_by_path) 
	(gtk_combo_box_menu_fill_level, gtk_combo_box_menu_row_inserted): 
	Use a row reference, not a path, to associate separators
	with their tree row.  
	
1734 1735 1736
	* gtk/gtkstatusbar.c (gtk_statusbar_set_has_resize_grip): 
	Show the grip_window if necessary.  

1737 1738
	* gtk/gtkstyle.c (gtk_default_draw_resize_grip): Only
	clear the triangle below the grip to the background,
1739
	not the full area. 
1740

1741 1742 1743 1744 1745
	* gtk/gtklabel.c (draw_insertion_cursor, gtk_label_expose): 
	Clip when drawing the cursor. This prevents bits of a
	selectable label leaking out from underneath the resize
	grip in a statusbar.  (#73359)

1746 1747 1748 1749
	* gtk/gtkstatusbar.c: Apply a patch by Owen Taylor to
	get reasonable allocations for the statusbar and its
	children.  (#73359)

1750 1751 1752
	* tests/testgtk.c: Apply a patch by Soeren Sandmann to 
	test long statusbar texts.

Matthias Clasen's avatar
Matthias Clasen committed
1753 1754
	* gtk/gtk.symbols: Add new symbols.

1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765
	Avoid resizing GtkStatusbar if the text of the label 
	changes  (#90955, He Qiangqiang, fix proposed by 
	Owen Taylor, patch by Christian Persch)
	
	* gtk/gtklabel.[hc]: Add a boolean single-line-mode property 
	which causes the label height not to depend on the actual
	text, but only on the font.

	* gtk/gtkstatusbar.c (gtk_statusbar_init): Turn on
	single-line-mode for the label.

1766 1767
2004-11-08  Matthias Clasen  <mclasen@redhat.com>

1768 1769 1770 1771 1772
	* gtk/gtkfilefilter.c (gtk_file_filter_filter): Use 
	xdg_mime_mime_type_subclass() to match mime types. This
	also gives use wildcard matching. (#143760, #141224, 
	Tommi Komulainen, David A Knight)

1773 1774 1775
	* gtk/gtkaction.c (_gtk_action_sync_menu_visible): Use 
	gtk_widget_{hide,show} instead of g_object_set (..."visible"...).

1776 1777 1778
	* tests/testfilechooserbutton.c (main): Disable the SAVE 
	and CREATE_FOLDER modes.  (#157675, Christian Persch)

1779 1780 1781
	* gtk/gtkaboutdialog.c (gtk_about_dialog_set_website): Hide the
	website button if the url is unset.  (#157630, John Finlay)

1782 1783 1784 1785
	* gtk/gtkaboutdialog.[hc]: Change the return types of the 
	gchar ** getters to be more const correct.  (#157566, Mariano 
	Suárez-Alvarez)

1786 1787 1788 1789
	* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_init): Add
	uri targets before text targets, to make file dnd work 
	better.  (#157651, Christian Persch)

1790 1791 1792 1793
	* gtk/gtktreedatalist.c: Support columns whose declared type is
	an interface better, by treating them like G_TYPE_OBJECT if
	the interface types requires G_TYPE_OBJECT.

1794 1795 1796 1797 1798 1799
2004-11-08  Bastien Nocera  <hadess@hadess.net>

	* gtk/stock-icons/stock_media_play_rtl_16.png:
	* gtk/stock-icons/stock_media_play_rtl_24.png: add the icons again
	with the binary flag (Closes: #157665)

1800 1801
2004-11-07  Matthias Clasen  <mclasen@redhat.com>

1802 1803 1804 1805 1806 1807 1808
	* gtk/gtkfilefilter.h:
	* gtk/gtkfilefilter.c (gtk_file_filter_add_pixbuf_formats): 
	New convenience function to add a filter for image files
	which can be loaded by GdkPixbuf. (#145388, Anders Carlsson)

	* tests/testfilechooser.c: Test the image filter.
	
Matthias Clasen's avatar
Matthias Clasen committed
1809 1810
	* gtk/gtkmenu.c (menu_change_screen): Remove some warnings.

1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822
	Show files in folder modes. (#157013, Nickolay V. Shmyrev)
	
	* gtk/gtkfilechooserdefault.c (create_file_list): Use a selection
	function to determine which rows can be selected.
	(update_appearance): Always show files. Also queue a redraw.
	(set_list_model): Always show files.
	(list_select_func): The selection function used for the file list.
	Don't allow to select files when in select/create folder mode.
	(list_row_activated): Don't activate files in folder modes.
	(list_icon_data_func, list_mtime_data_func, list_size_data_func): 
	Render files insensitive in folder modes.

1823 1824
2004-11-06  Matthias Clasen  <mclasen@redhat.com>

1825 1826 1827 1828
	* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_set_property): 
	Don't support CREATE_FOLDER and SAVE for now. UI authorities
	object to it.  (#157384, Seth Nickell)

1829 1830 1831 1832
	* gtk/gtkfilechooserdefault.c (file_pane_create): Jump through
	a few hoops to make the tooltip on the filter combo box work
	a bit better. This fixes #157273 and #157074.

1833 1834 1835 1836
	* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_pack_end): 
	Add the ComboCellInfo to the list.  (#157528, Carlos Garnacho
	Parro)

1837 1838
2004-11-05  Matthias Clasen  <mclasen@redhat.com>

1839 1840 1841
	* gtk/gtkcombobox.c (gtk_combo_box_menu_button_state_changed):
	Remove this unneeded function, as it breaks state propagation.

1842 1843 1844 1845 1846 1847
	* gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_activate): 
	Queue the resize before setting the tearoff state, to 
	make sure the torn-off menu picks up the size increase due
	to the arrow in the torn off menu item.  (#157286, Adam
	Hooper, fix proposed by Owen Taylor)

1848 1849 1850 1851 1852
	* gtk/gtkmenu.c (menu_change_screen): Don't unnecessarily
	call gtk_menu_position(), since that function has issues
	when called on a menu whose parent is unrealized.  (#157354,
	Adam Hooper)

1853 1854
	* gtk/gtkmain.c: Document new functions.

Matthias Clasen's avatar
Matthias Clasen committed
1855 1856
2004-11-04  Matthias Clasen  <mclasen@redhat.com>

Matthias Clasen's avatar
Matthias Clasen committed
1857 1858
	* gtk/stock-icons/Makefile.am: Typo fix.

Matthias Clasen's avatar
Matthias Clasen committed
1859 1860
	* gtk/gtkaboutdialog.c: Documentation updates.

1861 1862 1863 1864 1865 1866 1867 1868 1869
2004-11-04  Bastien Nocera  <hadess@hadess.net>

	* gtk/gtkiconfactory.c: (get_default_icons): Make sure the RTL
	variants are used for media icons
	* gtk/stock-icons/Makefile.am: update following the addition of
	the 2 Play icon RTL variants
	* gtk/stock-icons/stock_media_play_rtl_16.png: added
	* gtk/stock-icons/stock_media_play_rtl_24.png: added

1870 1871
2004-11-03  Matthias Clasen  <mclasen@redhat.com>

1872 1873 1874
	* gtk/gtkfilechooserdefault.c (new_folder_button_clicked): 
	Don't leak the path.  (#157301, Carlos Garnacho Parro)

1875 1876 1877 1878
	* gdk/x11/gdkdnd-x11.c (gdk_drag_motion): Handle the 
	case that the protocol version in the context is not 
	set yet.  (#157123, James Henstridge)

1879 1880 1881
	* gtk/gtktreeview.c (gtk_tree_view_search_activate): Don't
	try to activate a node if the cursor is not valid.  

1882 1883 1884 1885 1886 1887
2004-11-03  James M. Cape  <jcape@ignore-your.tv>

	* gtk/gtkfilechooserbutton.c (update_dialog), (dialog_response_cb):
	Don't mysteriously go to the parent dir when hitting "Cancel" in
	folder mode (fixes #156971).

1888 1889
2004-11-03  Matthias Clasen  <mclasen@redhat.com>

1890 1891 1892
	* gtk/gtkaccellabel.c (gtk_accel_label_expose_event): Don't
	access label->layout directly.  (#157080, Adam Hooper)

1893 1894 1895
	* gtk/gtklabel.c (gtk_label_set_pattern_internal): Allow
	unsetting a pattern by passing NULL.  (#156720, Tristan Van Berkom)

1896 1897 1898 1899
	* gtk/gtkcombobox.c (gtk_combo_box_get_active): Don't crash 
	if the active_row reference has become invalid.  (#157156,
	Christophe Fergeau)
	
Matthias Clasen's avatar
Matthias Clasen committed
1900 1901
2004-11-02  Matthias Clasen  <mclasen@redhat.com>

1902 1903 1904 1905 1906 1907
	* gtk/gtkwindow.c (gtk_window_activate_key_after): As
	a last stage in GtkWindow key press handing, try adding
	window->mnemonic_modifier to event->state and see if it
	matches a mnemonic. (#53709, based on a patch by
	Pasupathi Duraisamy, patch by Owen Taylor)

Matthias Clasen's avatar
Matthias Clasen committed
1908 1909 1910
	* gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_class_init): 
	Doc additions.

1911 1912
	* gtk/gtkfilechooserbutton.h: Fix trigraphs in private markers.

Matthias Clasen's avatar
Matthias Clasen committed
1913 1914 1915
	* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_class_init): 
	Fix a doc comment.

1916 1917
2004-11-01  Matthias Clasen  <mclasen@redhat.com>

1918 1919 1920
	* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
	Remove a debug printf().  (#157087, Christian Persch)

1921 1922 1923
	* gtk/gtkicontheme.c: Actually commit the "stat less" patch
	which appeared in the ChangeLog a few days ago.

Matthias Clasen's avatar
Matthias Clasen committed
1924 1925
	* gtk/gtkfilechooserbutton.c: Move some docs inline.

Matthias Clasen's avatar
Matthias Clasen committed
1926 1927
	* gtk/gtkaboutdialog.c (gtk_show_about_dialog): Doc update.

1928 1929 1930
	* gtk/gtktextbuffer.c (gtk_text_buffer_backspace): Revalidate the
	iter.  (#156924, Murray Cumming)

1931 1932 1933
	* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't crash on
	broken ClientMessage events.  (#157056, Owen Taylor)

1934 1935 1936
	* gtk/gtkactiongroup.c (gtk_action_group_get_visible): Fix a typo in
	the docs.  (#157044, Masao Mutoh)

Matthias Clasen's avatar
Matthias Clasen committed
1937 1938
2004-10-31  Matthias Clasen  <mclasen@redhat.com>

1939 1940
	* gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Update the
	state of the cell view when the state of the button changes (to 
1941 1942
	get prelighted drawing right).  (#138650, Frances Keenan, 
	Christian Persch)
1943

1944 1945