ChangeLog 68.1 KB
Newer Older
1
2
2005-11-10  Matthias Clasen  <mclasen@redhat.com>

3
4
5
	* gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): Remove an erroneous
	semicolon. 

6
7
8
9
10
11
12
13
	Don't corrupt odd keymaps (#316638, Kean Johnston)
	
	* gdk/x11/gdkkeys-x11.c (set_symbol): Auxiliary function to
	handle frobbing keymaps with odd numbers of syms/code.
	
	* gdk/x11/gdkkeys-x11.c (update_keymaps): Use set_symbol() to 
	frob the keymap.

14
15
16
17
18
19
20
21
22
	Improve navigation to parent folders.  (#318444, Andrei Yurkevich)
	
	* gtk/gtkpathbar.[hc]: Add a child_path argument to
	the path_clicked signal.
	* gtk/gtkfilechooserdefault.c (path_bar_clicked): Select the
	child_path, if it is provided.
	* gtk/marshalers.list (path_bar_clicked): Add the necessary
	glue.

23
24
25
	* gtk/gtkmenu.c: Fix some compiler warnings. (#321141,
	Kjartan Maraas)
	
26
27
28
29
30
	* gtk/gtk.symbols: 
	* gtk/gtktreeview.h: 
	* gtk/gtktreeview.c: Implement a getter for headers-clickable.
	(#163851, Richard Hult)

31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
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
2005-11-10  Michael Natterer  <mitch@imendio.com>

	Applied patch from maemo-gtk that addresses many issues wrt
	display migration and display closing (bug #85715).

	* gdk/gdkdisplay.c (gdk_display_dispose): don't just set the
	default display to NULL when it's closed. Instead set the most
	recently opened display as new default (if one exists).

	* gdk/gdkpango.c (on_renderer_display_closed): fixed signature
	of this callback.

	* gdk/gdkscreen.c (gdk_screen_dispose): check if the GCs still
	exist before unrefing them.

	* gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): if the screen
	is closed, allow destruction of the root window.

	* gdk/x11/gdkdisplay-x11.c: moved some stuff from finalize() to
	dispose(), free stuff that was leaked before.

	* gdk/x11/gdkevents-x11.c (_gdk_x11_events_uninit_screen): check if
	the xsettings_client still exists before destroying it.

	* gdk/x11/gdkkeys-x11.c: added finalization and free the allocated
	X resources.

	* gdk/x11/gdkpixmap-x11.c: moved stuff from finalize() to new
	dispose() implementation.

	* gdk/x11/gdkscreen-x11.c: moved stuff from finalize() to
	dispose() and check if it still exists before unrefing it. Set
	their pointers to NULL/None *after* upchaining in dispose(),
	because X11 implementations of members of the parent class still
	need them for their own destruction.

	* gdk/x11/gdkvisual-x11.c: removed finalize() implementation which
	was g_error()ing when finalizing a visual.

	* gtk/gtkclipboard.c (gtk_clipboard_finalize): don't use
	get_clipboard_widget() because it would create the widget if it
	doesn't exist. Use g_object_get_data() directly instead.

	* gtk/gtktextdisplay.c (on_renderer_display_closed): fixed signature
	of this callback.

77
78
79
80
2005-11-10  Simos Xenitellis  <simos@gnome.org>

	* configure.in: Added Tatar (tt) to ALL_LINGUAS.

81
82
83
84
85
86
87
Wed Nov  9 16:29:42 2005  Tim Janik  <timj@imendio.com>

	* gtk/gtkrange.c: patch from maemo-gtk that changes GtkRange
	to render its arrows insensitive when the adjustment is in
	its min or max position. this makes range arrow behaviour 
	consistent with spin button behaviour. (#321056)

88
89
90
91
92
93
94
95
96
97
2005-11-09  Tor Lillqvist  <tml@novell.com>

	* gdk/gdkinternals.h
	* gdk/gdk.c (gdk_debug_keys[]): Add new GDK_DEBUG_DRAW flag to
	the GdkDebugFlag enum.

	* gdk/win32/gdkdrawable-win32.c: Use DRAW to trigger GDK_NOTEs in
	this file instead of MISC. Now asking for MISC will give mainly
	window manipulation debugging output with the Win32 backend.

Tor Lillqvist's avatar
Tor Lillqvist committed
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
2005-11-09  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkwindow-win32.c: Remove unnecessary includes.

	(_gdk_win32_get_adjusted_client_rect): Remove this two-line
	function which was used only in one place.

	(get_outer_rect): Use _gdk_win32_adjust_client_rect().

	(gdk_window_set_geometry_hints): If we have identical minimum and
	maximum size hints, remove the resize and maximize
	decorations/functions. (#104514)

	If we have a maximum size hint, remove the maximize
	decoration/function but ensure the resize decoration/function is
	available. Otherwise ensure both resize and maximize
	decorations/functions are there.

	(set_or_clear_style_bits): Factored out common code from
	gdk_window_set_decorations() and gdk_window_set_functions(). 

	Hack the window style setting once more: Only touch the window
	style bits corresponding to the GdkWMDecoration or GdkWMFunction
	parameter bitmasks. Hopefully this finally is the correct thing to
	do. We used to clear all other bits than those that were being
	set, or set all other bits than those that were being cleared.

	Take into account that adding or removing decorations leaves the
	window's outer size unchanged, i.e., the client area's size and
	position change. This is apparently not what we want, so change
	also the window's (outer) position and size appropriately so that
	the client area's position and size stay constant.

	gtk-demo's color selector dialog is now non-resizable like on X11
	(I tested with metacity in GNOME). Torn off menus are shrinkable
	vertically but have a maximum size, and are not maximizable or
	minimizable, like on X11.

	(gdk_window_set_decorations, gdk_window_set_functions): Let
	set_or_clear_decorations() do most of the job.

	* gdk/win32/gdkprivate-win32.h: Remove declaration of
	_gdk_win32_get_adjusted_client_rect().

142
143
144
145
146
147
148
149
2005-11-09  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkwindow-win32.h (struct _GdkWindowImplWin32)
	* gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_init,
	gdk_window_get_type_hint, gdk_window_get_type_hint): Store the
	type hint. Implement gdk_window_get_type_hint() by just returning
	the hint stored.

150
151
152
153
154
2005-11-09  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
	Remove code that has been permanently ifdeffed out for two years.

155
156
2005-11-08  Matthias Clasen  <mclasen@redhat.com>

157
158
159
	* gdk/gdkgc.c (gdk_gc_finalize): Unref tile and stipple when
	finalizing a gc.  (#320789, Nickolay V. Shmyrev)

160
161
162
163
	* gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Ignore
	icons if they would make the request large enough to cause
	Xlib to loose the connection.  (#320909, Claudio Saavedra)

164
165
166
167
168
169
170
2005-11-08  Michael Natterer  <mitch@imendio.com>

	* gdk/gdk.symbols
	* gdk/gdkwindow.h
	* gdk/x11/gdkwindow-x11.c: added gdk_window_get_type_hint() (patch
	extracted from maemo-gtk). Fixes bug #320872.

171
172
2005-11-07  Matthias Clasen  <mclasen@redhat.com>

173
174
175
	* gtk/gtkfilechooserdefault.c (shortcuts_reorder): Don't
	looks the bookmark label when reordering.  (#320720, Jeremy Cook)

176
177
178
179
180
	* gtk/gtkpathbar.[hc]: Set focus-on-click to FALSE for all buttons.
	Don't grab focus when a slider button is pressed, instead, use
	a bit in the pathbar struct to determine whether to scroll up
	or down.  (#314486, Carlos Garnacho)

181
182
183
184
	* gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
	Don't popup the completions if the focus has already been
	moved somewhere else.  (#319914, Christian Persch)

185
186
187
188
	* gtk/gtktoolitem.c (_gtk_tool_item_toolbar_reconfigured): 
	Raise the drag_window after reconfiguring the 
	toolbar.  (#320803, Christian Persch)

189
190
191
192
193
	* gtk/gtk.symbols: 
	* gtk/gtkfilechooserbutton.h: 
	* gtk/gtkfilechooserbutton.c: Add a focus-on-click property
	with setter and getter.  (#318945, Christian Persch)
	
194
195
196
197
Mon Nov  7 16:15:16 2005  Tim Janik  <timj@imendio.com>

	* configure.in: fixed missing $X_CFLAGS setup in case x11.pc is present.

198
199
200
201
2005-11-07  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Adjust to the stock icon changes.
	
202
203
204
205
206
2005-11-07  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkcursor-win32.c (pixbuf_to_hbitmaps_normal):
	Correct the calculation of maskstride. (#320152, Peter Zelezny)
	
207
208
209
210
211
2005-11-06  Michael Natterer  <mitch@imendio.com>

	* gtk/Makefile.am (icons): fixed rule to actually create the
	symlinks, erroring out if anything goes wrong.

212
213
214
215
216
217
218
219
220
2005-11-06  Tor Lillqvist  <tml@novell.com>

	* gtk/updateiconcache.c (build_cache): Can't rename a file if the
	target exists on Win32. First rename the target temporarily, then
	if the renaming of the source to target fails, restore the
	original name for the target.

	* gtk/Makefile.am: Use EXEEXT in the dependency on gtk-update-icon-cache.

221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
2005-11-06  Tor Lillqvist  <tml@novell.com>

	(pixbuf_to_hbitmaps_alpha_winxp): Use an 1-bit mask bitmap,
	like pixbuf_to_hbitmaps_normal().
	(_gdk_win32_pixbuf_to_hicon_supports_alpha): Check
	G_WIN32_IS_NT_BASED() first, so we can pretend being on Win9x by
	setting the G_WIN32_PRETEND_WIN9X environment variable.
	
2005-11-06  Tor Lillqvist  <tml@novell.com>

	Make icon masks work on Win98 (#320152, Peter Zelezny)

	* gdk/win32/gdkcursor-win32.c (create_color_bitmap): Take also a
	parameter for the depth of the bitmap, so that this function can
	be used to create 1-bit bitmaps, too.
	(pixbuf_to_hbitmaps_normal): Create an 1-bit bitmap for the mask,
	and initialize it properly.

239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
2005-11-04  Matthias Clasen  <mclasen@redhat.com>

	Store builtin stock icons in an icon cache, instead of
	populating a hash table with pixbufs at startup, to save both
	memory and startup time.

	* gtk/stock-icons/*: Reorganize the icons in a directory structure
	suitable for gtk-update-icon-cache, and rename them to match the
	stock ids.

	* gtk/gtkiconcache.[hc]: Support non-mmapped icon caches, and
	add _gtk_icon_cache_has_icon_in_directory().

	* gtk/updateiconcache.c: Support a --source <VARIABLE> argument
	to store the contents of the icon cache in a C header.

	* gtk/gtkbuiltincache.h: Generated private header which contains 
	the icon cache for the builtin icons.

	* gtk/gtkicontheme.c: Create a GtkIconCache for the builtin
	icons, and use that in addition to the hash table whenever
	builtin icons are searched.

	* gtk/gtkiconfactory.c: Add GTK_ICON_SOURCE_STATIC_ICON_NAME and
	use it for static stock ids. 
	(get_default_icons): Don't add the builtin
	icons to the icon theme, just register the stock ids.
	(render_fallback_image): Take the fallback image out of the
	builtin icon cache.
	
	* gtk/Makefile.am: Remove stock-icons from SUBDIRS and add 
	the necessary machinery to rebuild gtkbuiltincache.h.

272
273
274
275
276
277
278
2005-11-04  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): applied patch
	from maemo-gtk that changes the mtime check for rc files from
	'>' to '!=', otherwise theme changes go unnoticed when turning
	back the clock (Tommi Komulainen).

Tor Lillqvist's avatar
Tor Lillqvist committed
279
280
281
282
283
2005-11-04  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkstatusicon.c (gtk_status_icon_set_tooltip): Plug memory
	leak on Win32.

284
285
2005-11-03  Tor Lillqvist  <tml@novell.com>

286
287
288
289
290
291
292
293
294
295
296
	* gdk/win32/gdkcursor-win32.c: As there is only one GdkDisplay in
	the Win32 backend, check that GdkDisplay* parameters are equal to
	_gdk_display instead of using the unnecessarily general
	GDK_IS_DISPLAY().

	(pixbuf_to_hbitmaps_alpha_winxp): Rename the variables for the
	color bitmap to have "color" in their name, for similarity with
	pixbuf_to_hbitmaps_normal(). Create a color bitmap for the mask,
	too, instead of creating a b&w bitmap with CreateBitmap(). Set up
	the mask bitmap's contents, ones for those pixels in the color
	bitmap where the alpha is zero, zero for other pixels. We used to
Tor Lillqvist's avatar
Typo.    
Tor Lillqvist committed
297
298
299
300
	use an uninitialized mask bitmap! This meant that icons and
	cursors created presumably worked more or less by accident.
	Totally blank icons with zero alpha everywhere (as used by
	gtktrayicon.c) definitely did not work as expected.
301

302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
	* gtk/Makefile.am: Include gtkstatusicon.c on all platforms.

	* gtk/gtkstatusicon.c: Implement for Win32. Use code from
	gtktrayicon-win32.c as applicable. (gtktrayicon-win32.c is not
	necessary and can be removed from CVS. It has never been mentioned
	in gtk/Makefile.am.) No tray icon widget, GtkImage or GtkTooltips
	are used on Win32. One label widget is used (but never shown) as
	gtk_widget_render_icon() needs a widget.

	Ifdefs used as necessary in several places. It might be cleaner to
	split out the backend-specific parts to separate files, or at
	least collect them into separate blocks in the file.

	(wndproc): New function. Window procedure to monitor mouse events
	in the system tray icon. Call gtk_status_icon_button_press() as
	needed.
	(create_tray_observer): New function. Creates a hidden window that
	only serves as a tray icon message observer.

321
322
323
324
325
326
	* tests/teststatusicon.c (icon_activated): Position the dialog
	with GTK_WIN_POS_CENTER.
	(do_quit): New function, hide and unref the GtkStatusIcon, and
	call gtk_main_quit().
	(popup_menu): Add a Quit menu item that calls do_quit().
	
327
328
329
330
331
332
333
334
335
336
337
338
339
2005-11-02  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkcolor-win32.c
	* gdk/win32/gdkscreen-win32.c
	* gdk/win32/gdkwindow-win32.c: Whitespace consistency
	fixes. Remove superfluous test for GdkWindow* parameters being
	non-NULL. Testing GDK_IS_WINDOW() is enough. As there is only one
	GdkScreen and one GdkDisplay in the Win32 backend, use those
	variables instead of the getter functions. For GdkDisplay* and
	GdkScreen* parameters, check that they are equal to the
	corresponding singleton variables instead of the more general
	GDK_IS_DISPLAY() or GDK_IS_SCREEN().

340
341
2005-11-02  Matthias Clasen  <mclasen@redhat.com>

342
343
344
345
346
347
348
349
350
	* gtk/gtktextview.c: Remove some g_return_if_fail() from
	static functions, replace some others by g_assert().
	
	* gtk/gtktextview.c (selection_motion_event_handler) 
	(gtk_text_view_start_selection_drag): Keep track of the original
	selection boundaries during a drag selection, in order to correctly
	decide when to extend or shrink the selection.  (#320167,
	reported by Arvind S N, patch by Paolo Borelli)

351
352
353
354
355
	* gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
	* gtk/gtktextiter.c (gtk_text_iter_backward_chars): Replace
	manual offset calculations by g_utf8_offset_to_pointer().
	(#320360, Paolo Borelli)

356
357
358
359
360
361
Tue Nov  1 16:18:24 2005  Tim Janik  <timj@imendio.com>

	* gtk/gtkrbtree.[hc]: get rid of GAllocator usage, allocate and free 
	nodes via the g_slice_*() API.
	_gtk_rbtree_new(): fixed wrong node allocation via g_new().

362
363
2005-11-01  Tor Lillqvist  <tml@novell.com>

364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkglobals-win32.c
	* gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Add more
	pre-interned GdkAtoms and pre-registered clipboard formats. Sort
	their declarations, definitions and assignments into a more
	logical and consistent order.

	* gdk/win32/gdkmain-win32.c (_gdk_win32_cf_to_string): Include the
	CF_ prefix for the predefined clipboard format names. Put quotes
	around registered format names to distinguish them.
	
	* gdk/win32/gdkproperty-win32.c (gdk_property_change): Return
	immediately with a warning if the property type is STRING, TEXT,
	COMPOUND_TEXT or SAVE_TARGETS, as these are X11-specific that we
	should never pretend to handle on Win32. Handle only UTF8_STRING
	here, other formats with delayed rendering. Use \uc1 instead of
	\uc0 when generating Rich Text Format for easier testability on
	XP, where WordPad misinterprets \uc0 encoded characters. Add more
	GDK_NOTE debugging output for Clipboard operations.

	* gdk/win32/gdkselection-win32.c: Debugging printout improvements.
	(gdk_selection_convert): Don't pretent to handle STRING, just
	UTF8_STRING. Streamline error handling, don't unnecessarily have a
	GError which then isn't used for anything anyway if it gets set.
	(gdk_win32_selection_add_targets): Skip also STRING, TEXT,
	COMPOUND_TEXT and SAVE_TARGETS in addition to UTF8_STRING.

391
392
	* config.h.win32.in: Sync with what configure produces.

393
394
395
	* configure.in: Don't look for X_PACKAGES unless building for
	x11. (#313986, John Ehresman)

396
397
398
399
400
2005-10-28  Erdal Ronahi  <erdal.ronahi@gmail.com>

	* configure.in: Added ku (Kurdish) to ALL_LINGUAS
			Wondered why there was no ku there before??

401
402
403
404
405
2005-10-28  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Add the popup
	window to the toplevels window group.  (#319912, Christian Persch)

Kristian Rietveld's avatar
Kristian Rietveld committed
406
407
408
409
410
2005-10-28  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): fix
	stupid thinko.

411
412
2005-10-28  Matthias Clasen  <mclasen@redhat.com>

413
414
415
	* gtk/gtkdnd.c (gtk_drag_get_cursor): Fix the anchor of the default
	drag cursors.  (#319200, Federico Mena Quintero)

416
417
418
419
	* gtk/gtktreeview.c (gtk_tree_view_search_key_press_event): Handle
	Shift-G to go to the previous match, like firefox.  (#320061, Christian 
	Neumair)

420
421
422
	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_build_level): Fix a
	C99ism.  (#320000, Kazuki Iwamoto)

423
424
425
	* gtk/gtkaboutdialog.c (gtk_about_dialog_init): Add the little 
	stars.  (#319985, Bastien Nocera)

426
427
428
	* gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout): Return
	FALSE, so we don't flush repeatedly.  (#319151, Alexander Larsson)

Michael Natterer's avatar
Michael Natterer committed
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
2005-10-26  Michael Natterer  <mitch@imendio.com>

	Fix bug #319974:

	* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
	make sure that setting any of pixbuf/stock-id/icon-name resets the
	others because they are mutually exclusive, and that unsetting any
	of them only resets the pixbuf and nothing else. Also added
	some missing g_object_notify().

	(gtk_cell_renderer_pixbuf_get_property): simplified calls to
	g_value_set_object().

	(gtk_cell_renderer_pixbuf_create_stock_pixbuf)
	(gtk_cell_renderer_pixbuf_create_named_icon_pixbuf): added
	g_object_notify ("pixbuf").

446
447
2005-10-27  Matthias Clasen  <mclasen@redhat.com>

448
449
450
451
	* gtk/gtktreeview.c (gtk_tree_view_button_press): Be more 
	careful about initializing cell_area.  (#319382, Tommi
	Komulainen)

452
453
454
	* gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't eat
	Ctrl-PageUp/PageDown.  (#318670, Christian Neumair)

455
456
457
458
459
460
	* demos/gtk-demo/clipboard.c (paste_received): Only set the
	text if it is not NULL.  (#319930, Thomas Klausner)

	* gtk/gtkselection.c (gtk_selection_data_get_pixbuf): Close the
	loader before trying to get the pixbuf.  (#319930, Thomas Klausner)

461
462
463
464
465
466
467
2005-10-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilesystem.c (gtk_file_system_module_load): 
	* gtk/gtkthemes.c (gtk_theme_engine_load): 
	* gtk/gtkimmodule.c (gtk_im_module_load): Use G_MODULE_BIND_LAZY
	when dlopening modules.  (#319557, Laszlo Peter)

Matthias Clasen's avatar
Matthias Clasen committed
468
469
2005-10-26  Matthias Clasen  <mclasen@redhat.com>

470
471
472
	* gtk/gtktextbtree.c (gtk_text_btree_resolve_bidi): Only use text
	segments when determining text direction.  (#319065, Tommi Komulainen)

473
474
475
	* gtk/gtktreeview.c (gtk_tree_view_destroy): Don't crash
	on duplicate destroy.  (#318953, Gustavo Carneiro)

Matthias Clasen's avatar
Matthias Clasen committed
476
477
478
479
	* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog): 
	Point out that destroy-with-parent is a bad idea for the dialog
	passed to this function.  (#318943, Christian Persch)

480
481
482
	* */Makefile.am: use $(GLIB_MKENUMS) instead of 
	glib-mkenums.  (#318582, Damien Carbery)

483
	* gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Clarify
484
	docs.  (#317682, Christian Neumair)
485

Matthias Clasen's avatar
Matthias Clasen committed
486
487
488
489
	* gdk/x11/gdkdnd-x11.c: Remove an extra const which doesn't
	seem to affect the placement of the data in the readonly 
	section, and causes problems with some compilers.  (#317844)

490
491
2005-10-25  Matthias Clasen  <mclasen@redhat.com>

492
493
494
495
	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
	Fix some issues with background drawing in RTL.  (#318781,
	Eric Cazeaux)

Matthias Clasen's avatar
Matthias Clasen committed
496
497
498
499
	* tests/Makefile.am:
	* tests/testentrycompletion.c: Apply a patch by Christian
	Persch to add property editors.

500
501
502
	* gtk/gtkstatusicon.c: Emit activate on single-click,
	not on double-click, change proposed by Milosz Derezynski.

503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
2005-10-25  Kristian Rietveld  <kris@gtk.org>

	Fixes #311955, reported by Markku Vire; and a lot more.

	* gtk/gtktreemodelfilter.c: Made this thing work correctly.
	Levels can now have invisible nodes cached, functions have been
	rewritten/refactored to take this into account; also the logic in
	some functions has been corrected.
	
	Each referenced node now references all visible children or a single
	invisible child, in order to be able to monitor all changes in the
	child model required for correct operation.

	When a virtual root is set, all nodes on the virtual root level are
	referenced.

	At last, a bunch of random bug fixes and comment updates.

521
522
2005-10-25  Matthias Clasen  <mclasen@redhat.com>

523
524
525
	* gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Add some
	more docs.  (#319722, Paolo Borelli)

526
527
528
529
	* gdk/x11/gdkxftdefaults.c (init_xft_settings): Make the 
	initialization of screen_x11->xft_rgba more explicit.  (#319627,
	Bogdan Nicula)

530
531
532
	* gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Fix whitespace
	in a blurb.  (#319499, Francisco Javier F. Serrador)

533
534
535
536
537
538
539
540
541
542
543
544
2005-10-24  Matthias Clasen  <mclasen@redhat.com>

	Add settings to hide the input method and Unicode control character
	submenus in the context menus of GtkEntry and GtkTextView.  
	
	* gdk/x11/gdkevents-x11.c: Map GTK+ settings to X settings.
	
	* gtk/gtksettings.c (gtk_settings_class_init): Declare GTK+ settings here.

	* gtk/gtktextview.c (popup_targets_received): 
	* gtk/gtkentry.c (popup_targets_received): Use the settings here.

545
546
547
548
549
550
551
552
553
554
2005-10-24  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): emitting
	row-has-child-toggled when the level is not in the cache does not
	make sense.  (This bug probably crept in during the early stages
	of GtkTreeModelSort when there wasn't a correct row-has-child-toggled
	implementation yet),
	(gtk_tree_model_sort_real_unref_node): only get the child iter
	when we will actually also use it.

555
556
557
558
559
560
561
2005-10-22  Michael Natterer  <mitch@imendio.com>

	* gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): check for the
	widget being realized, in addition to being visible, to avoid
	running into precondition check in gtk_tree_view_get_cell_area().
	(approved by Kris).

562
563
564
565
566
567
568
569
570
2005-10-22  Dom Lachowicz <cinamod@hotmail.com>

	* modules/engines/ms-windows/msw_style.c (setup_msw_rc_style): 
	Experimentally, scrollbar steppers can shrink to 8 pixels on 
	Win32. Reflect that in the theme.
	* modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Experimentally,
	there is a 1-pixel border between a scrollbar and its child
	in ScrolledWindows on Win32. Reflect that in the theme.
	
571
572
573
574
575
2005-10-20  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtklabel.c (gtk_label_create_window): Use GDK_WINDOW_CHILD
	for the selection window.  (#318806, Alex Larsson)

Federico Mena Quintero's avatar
Federico Mena Quintero committed
576
577
578
579
580
581
582
583
584
585
586
587
588
2005-10-18  Federico Mena Quintero  <federico@ximian.com>

	Fixes bug #317999:

	* tests/autotestfilechooser.c
	(test_button_folder_states_for_action): Test that we have either
	$cwd or the explicitly-set folder.
	(test_reload_sequence): Likewise.

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_get_current_folder): If our reload_state
	is RELOAD_EMPTY, return a GtkFilePath corresponding to $cwd.

589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
2005-10-14  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkdisplay-win32.c: Remove the clipboard viewer code.
	It didn't really do anything useful, and was just confusing and
	incomplete. Comments claimed we don't do delayed rendering, but in
	fact we do, for images. (The delayed rendering code has other
	problems, though, see #168173.) The clipboard viewer code was
	probably even buggy (the WM_CHANGECBCHAIN handled didn't propagate
	the message when necessary). It was just test code, it said so in
	a comment. Add something similar back later if necessary.

	(_win32_on_clipboard_change,
	_gdk_win32_register_clipboard_notification): Remove.

	(gdk_display_supports_selection_notification,
	gdk_display_request_selection_notification): Always just return
	FALSE. We didn't generate any GDK_OWNER_CHANGE events anywhere.

607
608
609
610
611
612
2005-10-13  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't treat
	Alt-Enter specially. It does not have any special meaning and
	should be passed on to the application. (#318378, Tim Evans)

613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
2005-10-13  Tor Lillqvist  <tml@novell.com>

	Set visual depth to 24 for 32 bits-per-pixel devices on
	Win32. This allows gdk_drawable_real_draw_pixbuf() to use the
	optimized composite_0888() function rather than the slower image
	dithering functions to draw pixbufs (#313993, John Ehresman)

	* gdk/win32/gdkimage-win32.c (_gdk_win32_new_image): Use
	_gdk_windowing_get_bits_for_depth() to initialize
	GdkImage::bits_per_pixel.
	(_gdk_windowing_get_bits_for_depth): Return 32 bits for depth 24.

	* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use
	_gdk_windowing_get_bits_for_depth() to initialize
	BITMAPINFOHEADER::biBitCount.

	* gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Set
	GdkVisual::depth to 24 even if GetDeviceCaps(BITSPIXEL) returns
	32.

633
634
635
636
637
2005-10-12  Stefan Kost  <ensonic@users.sf.net>

	* demos/gtk-demo/appwindow.c: (about_cb):
	  use PACKAGE_VERSION,bump year (#318654)

638
639
640
641
642
643
644
645
646
647
648
649
2005-10-11  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextbtree.c (_gtk_text_btree_delete): Try to match an off 
	toggle here with the matching on toggle if it immediately follows. 
	This is a common case, and handling it here prevents quadratic blowup 
	in cleanup_line() below.  (#317125)

	* gtk/gtktextsegment.h: 
	* gtk/gtktextsegment.c (_gtk_char_segment_new_from_two_strings): Pass
	the character counts into this function instead of computing them
	again.

650
651
652
653
654
655
656
657
2005-10-10  Tommi Komulainen  <tommi.komulainen@iki.fi>

	* gtk/gtkfilechooser.h (GtkFileChooserError): Add ALREADY_EXISTS error
	code.
	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_add_shortcut_folder): Return an error code
	when the shortcut already exists in the sidebar.  (#147521)

658
659
660
661
662
2005-10-09  Matthias Clasen  <mclasen@redhat.com>

	* tests/testcombo.c: Demonstrate how to use custom widgets in
	a GtkComboBox.  

Federico Mena Quintero's avatar
Federico Mena Quintero committed
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
2005-10-07  Federico Mena Quintero  <federico@ximian.com>

	Fixes bug #317999:

	* tests/autotestfilechooser.c (test_reload_sequence): Ensure that
	the the result of gtk_file_chooser_get_folder() is NULL or
	non-NULL at the right times.  Log the tests.
	(test_button_folder_states): New test for the initial states of
	the current folder in GtkFileChooserButton.
	(main): Test that the number of warnings/errors/critical errors is
	zero.

	* gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder):
	Clarify the documentation on when this can return NULL.
	(gtk_file_chooser_get_current_folder_uri): Likewise.

	* gtk/gtkfilechooserbutton.c (struct
	_GtkFileChooserButtonPrivate): Added a folder_has_been_set flag;
	we use it to keep track of whether a folder has been set.
	(gtk_file_chooser_button_map):  Implement.  If no folder has been
	loaded before, we at least try to load $cwd here.
	(gtk_file_chooser_button_constructor): If the construct-time
	dialog already has a folder set, turn on our folder_has_been_set
	flag.
	(dialog_current_folder_changed_cb): Turn on our
	folder_has_been_set flag.

690
691
692
693
694
695
2005-10-07  Michael Natterer  <mitch@gimp.org>

	* gtk/gtkfilechooserdefault.c: remove some explicit #defines of
	PROFILE_FILE_CHOOSER because they break compilation after the
	removal of <unistd.h>.

696
697
2005-10-07   Matthias Clasen  <mclasen@redhat.com>

Matthias Clasen's avatar
Matthias Clasen committed
698
699
700
	* gtk/gtkfilechooserdefault.c: Properly fix the unistd.h include
	by moving it out of the profiling ifdef.

701
702
703
	* gtk/gtkfilechooserdefault.c: Remove a redundant (and
	unconditional) include of unistd.h  (#318211, Kazuki Iwamoto)

704
705
706
707
	* gtk/gtktexttag.c (gtk_text_attributes_ref): Use
	g_return_val_if_fail(), not g_return_if_fail().  (#318412,
	Kazuki Iwamoto)

Matthias Clasen's avatar
Matthias Clasen committed
708
709
710
711
712
713
714
2005-10-06  Matthias Clasen  <mclasen@redhat.com> 
		
	* gtk/gtk.symbols:
	* gtk/gtktextbuffer.h:
	* gtk/gtktextbuffer.c: Add a readonly has-selection property
	with a getter.  (#318161, Paolo Borelli)

715
716
2005-10-05  Matthias Clasen  <mclasen@redhat.com>

717
718
	* README.in: Start collecting release notes for 2.10.

719
720
721
722
	* gtk/gtkrc.c (gtk_rc_clear_realized_style): Readd the memory
	leak fix, since the assertion failures were traced to 
	an xchat bug.  (#314696)
	
723
724
725
726
	* gtk/gtkstyle.c (gtk_style_detach):
	(gtk_style_attach):  Documentation improvements.
	(gtk_style_detach): Assert that the attach_count is > 0.

727
728
729
730
731
732
733
734
735
736
737
738
739
740
2005-10-04  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (switch_to_shortcut): Take a
	shortcut position, not a ShortcutsIndex, to make the function more
	generic.
	(home_folder_handler): Pass the resolved index to
	switch_to_shortcut(), rather than just SHORTCUTS_HOME.
	(desktop_folder_handler): Likewise for SHORTCUTS_DESKTOP.
	(gtk_file_chooser_default_class_init): Add a "quick-bookmark"
	binding signal, and bind it to Alt-1, Alt-2. ..., Alt-0.  These
	make the respective key switch to the first, second, ..., tenth
	bookmark.
	(quick_bookmark_handler): Implement.

741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
2005-10-04  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkpathbar.c (get_dir_name): Don't special-case Home and
	Desktop; just use their real names on the file system for the
	user-visible names.

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_class_init): Add a "desktop-folder"
	binding signal, and bind it to M-d by default.
	(desktop_folder_handler): Implement the default handler.
	(home_folder_handler): Use a helper function.
	(switch_to_shortcut): New helper function.
	(shortcuts_append_home): Don't special-case the name of "Home";
	just use the folder name.

756
757
758
759
760
2005-10-04  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkcalendar.c (gtk_calendar_init): Make it compile without
	HAVE__NL_TIME_FIRST_WEEKDAY. (#317910, Mathias Hasselmann)

761
762
763
764
765
766
2005-10-04  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkrc.c (gtk_rc_clear_realized_style): Revert the change
	from yesterday, since it leads to assertion failures.  (#317879,
	Sebastian Bacher)

767
768
769
770
771
2005-10-03  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcalendar.c (gtk_calendar_init): Call 
	calendar_compute_days() after setting priv->week_start.

772
773
774
775
776
2005-10-03  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkrc.c (gtk_rc_clear_realized_style): Unref the style when
	removing it from the hash table.  (#314696, Benjamin Berg)

777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
2005-10-01  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkdrawable-win32.c (blit_from_pixmap): In case
	BitBlt() fails with ERROR_INVALID_HANDLE, the most probable cause
	is that the the desktop isn't visible because the session has been
	switched, the screen is locked, or a terminal server session
	disconnected, so no error message necessary. (#137796)

	It is of course remotely possible that BitBlt() failing with
	ERROR_INVALID_HANDLE might also be caused by some other
	problem. We could strive for perfection and track whether the
	desktop is visible by using WTSRegisterSessionNotification() and
	handling WM_WTSESSION_CHANGE. I think that's overdoing it just for
	this issue, though. If we would track desktop visibility, we
	should then avoid even trying to update the display at all while
	the desktop isn't visible.

794
795
2005-09-30  Matthias Clasen  <mclasen@redhat.com>

796
797
798
799
800
	* gtk/gtkcalendar.c (gtk_calendar_init): Another attempt
	to correct the calculations for the first week day. We may
	just have to remove this code if too many locales turn out 
	to have broken data. 

801
802
803
	* gtk/gtkimage.c (gtk_image_expose): Don't leak pixbuf in
	some cases.  (#317611, Tommi Komulainen)

804
805
806
807
	* gtk/gtksocket-x11.c (_gtk_socket_windowing_size_request):
	Prevent overflow when storing size hints in an unsigned
	short variable. Tracked down by Ray Strode and Søren Sandmann.

808
809
2005-09-29  Matthias Clasen  <mclasen@redhat.com>

810
811
812
	* gtk/gtkbutton.c (gtk_button_set_image): Check arguments.  (#317491,
	Paolo Borelli)

813
814
815
	* gtk/gtkpaned.c (gtk_paned_grab_notify): Stop drags when being
	grab shadowed.  (#317332)

816
817
818
819
2005-09-29  Tor Lillqvist  <tml@novell.com>

	* gtk-zip.sh.in: DLLs are always in bin nowadays, no need to test.

820
821
822
823
824
825
826
827
2005-09-28  Federico Mena Quintero  <federico@ximian.com>

	* tests/autotestfilechooser.c (test_reload_sequence): Oops, return
	if the unmap test fails.
	(test_reload_sequence): Use gtk_widget_show_now() instead of
	gtk_widget_show() for the dialog.
	Thanks to Tim Janik for noticing these.

828
829
830
831
832
833
834
835
836
837
838
839
840
841
2005-09-28  Federico Mena Quintero  <federico@ximian.com>

	* tests/testcellrenderertext.c: New file with a set of tests for
	GtkCellRendererText.  The idea is to run a text renderer through
	most of its interesting property values to see that it works
	correctly.

	* tests/Makefile.am: Added testcellrenderertext.

	* gtk/gtkfilechooserdefault.c (load_set_model): Mark the
	entry/exit of this function for profiling.
	(gtk_file_chooser_default_style_set): Mark the start/end of the
	calls to the parent class and the the signal emission for profiling.

842
843
844
845
846
847
848
2005-09-29  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkmain.c (_gtk_get_localedir): The locale directory is
	passed to bindtextdomain() which isn't UTF-8-aware, so convert to
	system codepage using g_win32_locale_filename_from_utf8().
	(#317457, Kazuki Iwamoto)

849
850
2005-09-28  Matthias Clasen  <mclasen@redhat.com>

851
852
853
	* gtk/gtkselection.c (_gtk_selection_request): Free mult_atoms 
	here. (#317039, Paolo Borelli)

Matthias Clasen's avatar
Matthias Clasen committed
854
	* gtk/gtktexttag.h: 
855
856
857
858
	* gtk/gtktexttag.c (gtk_text_attributes_ref): Return the attributes
	to make this function work as boxed copy function.  (#317455,
	Gustavo Carneiro)

859
860
861
	* gtk/gtkclipboard.c (request_image_received_func): Don't unref
	NULL.  (#316828, Tor Lillqvist)

862
863
864
865
866
2005-09-28  Tor Lillqvist  <tml@novell.com>

	* modules/input/imime.c: Include <config.h>. (#317444, Kazuki
	Iwamoto)

867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
2005-09-27  Federico Mena Quintero  <federico@ximian.com>

	Don't reload the current folder unnecessarily on ::map().

	* gtk/gtkfilechooserprivate.h (ReloadState): New enum to represent
	the reloading state.
	(struct _GtkFileChooserDefault): Added a "reload_state" field.

	* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
	Initialize impl->reload_state.
	(gtk_file_chooser_default_map): Check the impl->reload_state; load
	a default folder if no folder has been set, or reload the current
	one only if we had been unmapped first.
	(gtk_file_chooser_default_update_current_folder): Set the
	reload_state to RELOAD_HAS_FOLDER.
	(gtk_file_chooser_default_unmap): Implement, and set the
	reload_state to RELOAD_WAS_UNMAPPED.
	(shortcuts_model_create): Don't call shortcuts_add_bookmarks()
	here; they'll get (re)loaded on ::map() anyway.

	* gtk/gtkfilechooserwidget.c
	(gtk_file_chooser_widget_constructor): Don't set a default folder here.

	* tests/autotestfilechooser.c (test_action_widgets): Don't take in
	a dialog; build it ourselves.
	(test_reload): New test to ensure that we don't load the default
	folder more than once, and that we reload it when
	unmapping/remapping.
	(get_impl_from_dialog): New utility function.
	(test_widgets_for_current_action): Use get_impl_from_dialog().

898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
2005-09-27  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_constructor): Mark the entry/exit of
	this function for profiling.
	(check_icon_theme): Likewise.
	(change_icon_theme): Likewise.
	(settings_notify_cb): Likewise.
	(gtk_file_chooser_default_screen_changed): Likewise.
	(update_chooser_entry): If the selection is empty, clear the file
	name entry only if we are in CREATE_FOLDER mode.  In SAVE mode,
	nothing will be selected when the user starts typeahead in the
	treeview, and we don't want to clear the file name entry in that
	case --- the user could be typing-ahead to look for a folder name.
	Fixes bug #308332, patch by Jürg Billeter.

914
915
916
917
918
919
2005-09-27  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
	Pop below the entry if there's more free space below the entry
	than above.  (#316948, Tommi Komulainen)

920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
2005-09-26  Federico Mena Quintero  <federico@ximian.com>

	Do not create the save mode-specific widgets in the open modes, so
	that we don't carry their baggage around.

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_constructor): Don't create the
	save_widgets here.
	(save_widgets_create): Set the impl->save_widgets directly here,
	instead of passing the widgets back to the caller.  Also, pack
	them into the impl's box.
	(update_appearance): Create or destroy the save widgets as
	appropriate.  Set the action of the save_file_name_entry here.
	(shortcuts_add_current_folder): Set the active item in the
	save_folder_combo only if it exists.
	(gtk_file_chooser_default_set_property): Don't set the action of
	the save_file_name_entry here.
	(gtk_file_chooser_default_update_current_folder): Set the base
	folder of the save_file_name_entry only if the entry exists.
	(shortcuts_drag_data_received_cb): Cast the selection_data->data
	to (const char *) since that's what shortcuts_drop_uris() expects.
	(file_list_drag_data_received_cb): Likewise, for
	g_uri_list_extract_uris().

944
945
946
947
948
949
950
2005-09-26  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkwindow-win32.c (gdk_window_shape_combine_mask): Set
	the shaped flag here, too. (#316871)
	(gdk_window_shape_combine_region): Currently unimplemented, so
	don't do anything to the shaped flag here.

951
952
953
954
955
956
957
958
959
960
961
962
2005-09-26  Matthias Clasen  <mclasen@redhat.com>

	Fix #316871, reported by Dan Winship:
	
	* gdk/gdkwindow.h (struct _GdkWindowObject): Add a shaped flag.

	* gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_mask) 
	(gdk_window_shape_combine_region): Set it here.

	* gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
	remove the child area for shaped windows.

963
964
965
966
967
2005-09-23  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize):
	Don't leak expander pixbufs.  (#316946, Tommi Komulainen)

968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
2005-09-22  Michael Natterer  <mitch@imendio.com>

	Renamed GtkCellRendererKeys to GtkCellRendererAccel to be
	consistent with GTK+ terminology:

	* gtk/gtkcellrendererkeys.[ch]
	* tests/testkeys.c: removed...

	* gtk/gtkcellrendereraccel.[ch]
	* tests/testaccel.c: ...and added.

	* gtk/Makefile.am
	* gtk/gtk.h
	* gtk/gtk.symbols
	* tests/Makefile.am: changed accordingly.

984
985
986
987
988
2005-09-22  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_class_init): Fix the documentation
	for the grab-broken-event signal, noticed by Damon Chaplin.

989
990
991
992
993
994
995
996
997
998
999
2005-09-21  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkselection-win32.c (gdk_selection_convert,
	gdk_text_property_to_text_list_for_display,
	gdk_text_property_to_utf8_list_for_display,
	gdk_win32_selection_add_targets,
	_gdk_win32_selection_convert_to_dib): Free return value from
	gdk_atom_name().
	(gdk_text_property_to_text_list_for_display): Drop GError variable
	that isn't actually used after being set.

Johan Dahlin's avatar
Johan Dahlin committed
1000
2005-09-20  Johan Dahlin  <jdahlin@async.com.br>