]> Pileus Git - ~andy/gtk/blob - ChangeLog
Rework the Unicode hex input code. Now we only steal a single key
[~andy/gtk] / ChangeLog
1 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
2
3         * gtk/gtkimcontextsimple.c: Rework the Unicode hex input
4         code. Now we only steal a single key combination, Ctrl-Shift-U,
5         instead of sixteen. 
6         A hex Unicode sequence must be started with Ctrl-Shift-U, followed
7         by a sequence of hex digits entered with Ctrl-Shift still held.
8         Releasing one of the modifiers or pressing space while the modifiers
9         are still held commits the character. It is possible to erase
10         digits using backspace.
11         As an extension to the above, we also allow to start the sequence
12         with Ctrl-Shift-U, then release the modifiers before typing any
13         digits, and enter the digits without modifiers.
14         (#82011, Owen Taylor)
15         
16 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
17
18         * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
19         we still need to deliver the destroy event.  (#314980, Chris Lahey)
20
21         * gtk/gtktextview.c (gtk_text_view_key_press_event): Reset 
22         im context before committing \n or \t.
23
24 2005-09-02  Alexander Larsson  <alexl@redhat.com>
25
26         * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
27         (shortcuts_activate_volume):
28         Handle base_path being null in the rest of the cases (#310270)
29
30 2005-09-02  Tor Lillqvist  <tml@novell.com>
31
32         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
33         cursor position also in root window coordinates. Prune out
34         superfluous WM_MOUSEMOVE events even earlier, based on root window
35         coordinates. Windows sends WM_MOUSEMOVE messages after a new
36         window has ben mapped below the cursor even if the mouse doesn't
37         move. We used to generate GDK_MOTION_NOTIFY in these cases. This
38         confused at least gtk_menu_motion_notify(). (#314995)
39
40         * gtk/gtkintl.h: No need to include config.h here. It caused
41         warnings about GTK_LOCALEDIR being redefined on Win32 when
42         compiling files where gtkintl.h is included after gtkprivate.h
43         (which #undefines and re-#defines GTK_LOCALEDIR on Win32).
44
45         * gtk/gtkplug.c: Include config.h.
46
47 2005-09-01  Matthias Clasen  <mclasen@redhat.com>
48
49         * gtk/gtkfilesystemunix.c: Pass statbufs down to 
50         xdg_mime_get_mime_type_for_file() where possible, to avoid
51         useless re-stating.  
52         
53         * gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
54         typo.  (#314921, Guillaume Cottenceau)
55
56         * gdk/*.c: Intern some more strings.
57         * gtk/gtkintl.h: 
58         * gtk/*.c: Define an I_() macro and use it instead of the 
59         bulky g_intern_static_string().
60
61 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
62
63         * gtk/gtkbindings.c (binding_signal_new): Intern the signal name
64         instead of copying it.
65
66         * gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
67
68         * gtk/*.c: Also intern static strings passed to 
69         g_object_set_data().
70
71         * gdk/Makefile.am: 
72         * gtk/Makefile.am: Intern type names in code generated by 
73         glib-mkenums, too.
74
75         * gtk/*.c: 
76         * gdk/x11/*.c: 
77         * gdk/*.c: Intern type names before registering the type to avoid 
78         unnecessary copies.
79
80         * configure.in: Require GLib 2.9.0
81
82 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
83
84         * gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
85         and add icon-size and icon-size-set properties.  (#314172)      
86
87         * gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
88         groups across transient parents.  (#312918, Christian Persch)
89
90         * gtk/gtktreemodel.c: Some documentation fixes.  (#314882,
91         Guillaume Cottenceau)
92
93         * gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions): 
94         Fix a typo in the docs.  (#314878, Guillaume Cottenceau)
95
96 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
97
98         * gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
99         make C-/ select all and C-\ unselect all.  (#309301,
100         Kathy Fernandez)
101
102         * gtk/gtkimcontextsimple.c: Change the compose sequence for
103         soft hyphen to be multi_key-minus-minus-space, and add
104         compose sequences multi_key-minus-minus-period and 
105         multi_key-minus-minus-minus for en dash and em dash.
106         (#172653, Christian Lohmaier)
107
108         * gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
109         code.  (#313946, Christian Persch)
110
111         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
112         fix for the default value of the "ui" property.
113
114 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
115
116         * gtk/gtk.symbols: 
117         * gtk/gtkselection.h:
118         * gtk/gtkselection.c: Add functions which look for text, image
119         or uri targets in an array of atoms.   (#314089, Mark Wielaard)
120
121         * gtk/gtk.symbols: 
122         * gtk/gtkselection.h:
123         * gtk/gtkselection.c (gtk_selection_data_targets_include_uri): 
124         Add a function to check wether targets include uri.  
125         (#314092, Mark Wielaard)
126         
127         * gtk/gtk.symbols: 
128         * gtk/gtkwindow.h: 
129         * gtk/gtkwindow.c: Add a deletable property with getter
130         and setter, to control the close button in the window 
131         frame.  (#59718, Havoc Pennington)
132
133 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
134
135         * gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
136         to the arrow keys for menu navigation.  (#162825, Carl Worth)
137
138         * gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
139
140         * gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
141
142         * gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock): 
143         * gtk/gtkimage.c (gtk_image_new_from_stock): Don't
144         refer to nonexisting stock ids.
145
146         * gtk/gtktextview.c (popup_targets_received): 
147         * gtk/gtkentry.c (popup_targets_received): Construct
148         the "Select All" menuitem from stock.
149
150         * gtk/stock-icons/stock_select_all_{16,24}.png:
151         * gtk/stock-icons/Makefile.am: 
152         * gtk/gtkiconfactory.c:
153         * gtk/gtkstock.h: 
154         * gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
155         Calum Benson)
156
157         * gtk/gtktrayicon.c: Add a pointer to the spec.
158
159         * gtk/gtkstatusicon-x11.c: Add docs.
160
161         * gtk/gtkstatusicon.h: Fix a typo.
162
163         Add a cross-platform "tray icon" API, by
164         porting EggStatusIcon/EggTrayIcon (#105101)
165         
166         * gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
167         displays an icon in a notification area.
168
169         * gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
170         X11, using GtkTrayIcon.
171
172         * gtk/gtktrayicon.h: 
173         * gtk/gtktrayicon.c: An implementation of the freedesktop.org
174         system tray specification, not public API.
175
176         * gtk/gtk.symbols: Add new exported functions.
177
178         * gtk/gtk.h: Include gtkstatusicon.h.
179
180         * gtk/Makefile.am: Add new files.
181
182         * tests/Makefile.am:
183         * tests/teststatusicon.c: Test for GtkStatusIcon.
184
185 2005-08-29  Christopher Aillon  <caillon@redhat.com>
186
187         * gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
188         and GTK_STOCK_DISCONNECT
189         
190 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
191
192         * gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify): 
193         Use XFixesChangeSaveSet if available.  (#314682)
194
195         * gtk/gtkmenu.c (gtk_menu_grab_notify):  Only cancel if the menu
196         was active.  (#314298, Christian Persch, analysis by Mark McLoughlin)
197
198 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
199
200         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
201         accidentally leftover duplicate pixbuf creation.  (#314700,
202         Kjartan Maraas)
203
204         * gtk/gtksettings.c (settings_update_cursor_theme): Don't 
205         leak the cursor theme name.  (#314693, Kjartan Maraas)
206
207         * gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free 
208         state.children in all cases.  (#313862, Kjartan Maraas)
209
210 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
211
212         * po/POTFILES.in, po-properties/POTFILES.in:
213         Add gdk/gdkscreen.c
214
215 2005-08-27  Matthias Clasen  <mclasen@redhat.com>
216
217         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
218         value of the ui property. (#314532, Yong Wang)
219
220         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
221         when G_MAXLONG is passed as length.  
222
223 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
224
225         * gtk/updateiconcache.c: Add a separate --ignore-theme-index option
226         to avoid overloading --force.  (JP Rosevaar)
227
228 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
229
230         * configure.in: Bump version to 2.9.0
231
232         * gdk/gdk.symbols: 
233         * gdk/gdkscreen.h: 
234         * gdk/gdkscreen.c: Make the GdkScreen font options api
235         public, and add properties GdkScreen::font-options and
236         GdkScreen::resolution.  (#314004)
237
238         * gdk/gdkpango.c:
239         * gtk/gtksettings.c:
240         * gtk/gtkwidget.c: Adjust all callers.
241         
242         * gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
243         * gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
244         * gdk/gdkscreen.c: Include gdkintl.h.
245
246         * gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
247         variable warning, pointed out by Colin Walters. (#314585)
248
249 2005-08-26  Tor Lillqvist  <tml@novell.com>
250
251         * gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
252         printouts.
253         (gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
254
255 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
256
257         * gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
258         of week_start.  (#314473, JP Rosevaar)
259
260 2005-08-25  Thomas Fitzsimmons  <fitzsim@redhat.com>
261
262         * gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
263         lock.  (#314533, Thomas Fitzsimmons)
264
265 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
266
267         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
268         NULL gracefully.  (#314523, Ed Catmur)
269
270 2005-08-25  Owen Taylor  <otaylor@redhat.com>
271
272         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
273         Handle theme == NULL.
274
275 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
276
277         * gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
278         y offset into account when positioning the popup.  (#314470,
279         Christian Persch)
280
281 2005-08-25  Owen Taylor  <otaylor@redhat.com>
282
283         * gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
284         as instance_init, not base_init! (#314452, Fix from Frederic
285         Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
286         rather than 1 for a negative flag value.
287
288 2005-08-24  Owen Taylor  <otaylor@redhat.com>
289
290         * gdk/gdkpango.c (draw_error_underline): Add a note about
291         cut-and-paste between here and Pango.
292
293 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
294
295         * === Released 2.8.2 ===
296
297         * gtk/gtkclipboard.c (request_image_received_func): Use the correct
298         callback for image/gif, and also try image/bmp.  (#314086,  Mark 
299         Wielaard)
300
301         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon): 
302         Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev.  (#314382,
303         Sebastien Bacher)
304         
305         * NEWS: Updates
306
307         * gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
308         and cursor settings get propagated down to the screen initially.
309         Pointed out by Frederic Crozat.
310
311         * gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
312         message if the screen is NULL. Noticed by Kjartan Maraas.
313
314 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
315
316         * Bump version
317
318         * === Released 2.8.1 ===
319
320         * NEWS: Updates
321         
322 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
323
324         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
325         against lazy filterers which return values other than TRUE or
326         FALSE from their visible func.  (#314335)
327
328 2005-08-23  Owen Taylor  <otaylor@redhat.com>
329
330         Fix for #314004, reported by Michael Reinsch:
331
332         * gdk/gdk.symbols:
333         * gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
334         Add gdk_screen_get/set_resolution_libgtk_only()
335
336         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
337         the options for the screen on the newly created context.
338
339         * gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c: 
340         Move font options and dpi code from gtkwidget.c to gtksettings.c, set
341         the font options on the screen.
342
343         * gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
344         the font options from the screen and set them on the context.
345
346 2005-08-23  Kristian Rietveld  <kris@gtk.org>
347
348         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
349         bother inserting new rows in a level with a zero refcount and
350         immediately free the level. (Fixes #312350, reported by Markku Vire).
351
352 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
353
354         * gtk/updateiconcache.c: Complain when there is no index.theme file
355         in the specified directory, unless --force is used. Also add an
356         --index-only option to create caches without image data.
357
358         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
359         C99ism.  (#314262, Robert Jeff Mitchell)
360         
361 2005-08-22  Manish Singh  <yosh@gimp.org>
362
363         * gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
364
365         * gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
366
367 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
368
369         * gtk/gtkwindow.c (gtk_window_client_event): 
370         * gtk/gtkicontheme.c (ensure_valid_themes) 
371         (_gtk_icon_theme_check_reload): Implement a clientmessage based
372         scheme for makeing sure that all GTK+ applications notice if an
373         icon theme has been updated. This should prevent multiple versions
374         of an icon theme cache to be mapped in memory at the same time,
375         which can cause excessive memory consumption.  (#313156, Chris 
376         Lahey)
377
378 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
379
380         * gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
381         regarding icon theme changes.
382
383         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
384         pixbufs which are backed by the mmapped memory of an icon cache,
385         increase the refcount of the icon cache, so that the memory is not
386         munmapped away underneath the pixbuf upon icon theme changes.  
387         (#314170, Kjartan Maraas)
388
389         * docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order 
390         to link against Xext.  (#314062)
391
392         * gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
393         overruns.  (#314081, Hans Breuer)
394
395 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
396
397         * gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
398         returned layout must not be modified.
399
400 Sat Aug 20 16:12:14 2005  Jonathan Blandford  <jrb@redhat.com>
401
402         * gtk/gtktreeview.c (gtk_tree_view_set_model): clear
403         scroll_to_path if the model changes.
404
405         * gtk/gtkiconview.c: (gtk_icon_view_destroy),
406         (gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
407         (gtk_icon_view_scroll_to_path): Handle scrolling to a path before
408         we're realized, #312798
409         (gtk_icon_view_set_model): clear scroll_to_path if the model
410         changes.
411
412 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
413
414         * gtk/gtkrange.c (gtk_range_adjustment_changed) 
415         (gtk_range_adjustment_value_changed):  Don't queue a draw
416         if the layout has not changed.  (#313991, Benjamin Berg)
417
418 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
419
420         * gtk/gtktreeitem.c: Remove duplicate lines.  (#313344,
421         Benoit Carpentier)
422
423         * modules/engines/ms-windows/msw_style.c (setup_system_styles): 
424         Fix a typo. 
425
426         * gtk/gtkfilechooserbutton.c (change_icon_theme) 
427         (model_add_special, model_add_special, model_add_volumes):
428         Handle pixbuf being NULL without warnings. Also, don't
429         leak pixbuf references when the icon theme is changed.
430
431         * gtk/gtkmain.c (gtk_get_event_widget): Don't access
432         the user data on destroyed windows, since at best
433         it can be a stale pointer.  (#313953, Robin Green)      
434
435 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
436
437         * gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.  
438         (#313900, Sebastien Bacher)
439
440         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
441         FALSE if the tree is empty.  (#313891, Guillaume Cottenceau)
442
443         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display) 
444         (xdnd_read_actions, get_client_window_at_coords_recurse): 
445         Free data returned from XGetWindowProperty. 
446
447         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window) 
448         Free data returned from XGetWindowProperty.  (313867, Kjartan
449         Maraas)
450         
451         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
452         children in all cases.  (#313862, Kjartan Maraas)
453
454         * gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs 
455         in the per-directory hash, even if they come from the icon cache. 
456         We tried to avoid that before, but as a result leaked icon data
457         structs.  (#313852, Kjartan Maraas)
458
459 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
460
461         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
462         signal handlers on destroy, not on finalize.  (#313759, Brett Atoms)
463
464 2005-08-15  Owen Taylor  <otaylor@redhat.com>
465
466         * configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
467         files for x11/xext. (Jonas Bonn)
468
469 2005-08-15  Tor Lillqvist  <tml@novell.com>
470
471         * gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
472         inside GTK_NOTE.
473
474 2005-08-15  Owen Taylor  <otaylor@redhat.com>
475
476         * configure.in: Fix have_base_pc / have_base_x_pc typo.
477
478         * gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
479         (#313417, James Andrewartha)
480
481         * configure.in: Add fontconfig to X_PACKAGES, since we use it for
482         FcNameConstant(). (More of #313417)
483
484 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
485
486         * gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
487         modal dialogs, make sure to inherit the window group from 
488         the parent, since we don't inherit window groups across
489         transient parents currently.  (#312918, Christian Persch)
490
491         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): 
492         * gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs. 
493
494         * gtk/gtkiconview.c (gtk_icon_view_select_path) 
495         (gtk_icon_view_scroll_to_path): Handle paths of depth 0
496         gracefully.  (#312796, Jonathan Blandford)
497
498         * tests/testtoolbar.c: Add some more tests for menu placement.
499
500         * gtk/gtkmenutoolbutton.c (menu_position_func): 
501         * gtk/gtktoolbar.c (menu_position_func): Improve positioning
502         of toolbutton menus and of the overflow menu.  (#312937, 
503         #153870, Christian Persch, Paolo Borelli)
504
505 2005-08-15  Tor Lillqvist  <tml@novell.com>
506
507         * gtk/updateiconcache.c: Use g_path_get_dirname() instead of
508         the nonportable <libgen.h> and dirname().
509
510 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
511
512         * gtk/gtksizegroup.c: Use object data to mark widgets and
513         groups as visited, so that we avoid constant extra list
514         traversals. Also allocate quarks in class_init.  (#311618,
515         Michael Natterer)
516
517         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the 
518         download location for the hicolor icon theme. (#313475, Olexiy 
519         Avramchenko)
520
521         * gtk/gtkicontheme.c: Remove debug spew. 
522
523 2005-08-15  Owen Taylor  <otaylor@redhat.com>
524
525         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap): 
526         * gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap): 
527         * gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
528         Handle pixmap == NULL when checking for a colormap.
529         (Allin Cottrell).
530
531 2005-08-14  Matthias Clasen  <mclasen@redhat.com>
532
533         * gtk/updateiconcache.c: Store only one copy of the pixel data
534         for symlinked icons. To achieve this, maintain a hashtable 
535         mapping pathnames to pixel data, and share the pixel data for
536         all symlinks resolving to the same pathname. When writing out
537         the image data, write out the pixel data only the first time
538         it is met, and store the offset pointing to the first copy
539         for use in all later cases.
540         This reduces the size of the Bluecurve icon cache from 40
541         to 13MB. (#312972)
542