2005-09-11 05:39:45 +00:00
|
|
|
2005-09-11 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gdk/gdk.symbols:
|
|
|
|
* gdk/gdkproperty.h:
|
|
|
|
* gdk/x11/gdkproperty-x11.c (gdk_atom_intern_static_string):
|
|
|
|
New function to avoid pointless strdups when creating atoms
|
|
|
|
from static strings.
|
|
|
|
|
2005-09-11 05:48:27 +00:00
|
|
|
* gdk/x11/*.c:
|
|
|
|
* gtk/*.c: Use gdk_atom_intern_static_string() where
|
|
|
|
appropriate.
|
2005-09-11 05:39:45 +00:00
|
|
|
|
2005-09-10 01:51:07 +00:00
|
|
|
2005-09-09 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtkcellrendererkeys.h:
|
|
|
|
* gtk/gtkcellrendererkeys.c: Add a cell renderer for displaying
|
|
|
|
and editing accelerators, a port of EggCellRendererKeys .
|
|
|
|
|
|
|
|
* gtk/gtk.symbols:
|
|
|
|
* gtk/gtk.h:
|
|
|
|
* gtk/Makefile.am: Add the keys cell renderer.
|
|
|
|
|
|
|
|
* tests/Makefile.am:
|
|
|
|
* tests/testkeys.c: Test GtkCellRendererKeys
|
|
|
|
|
2005-09-09 22:50:15 +00:00
|
|
|
2005-09-09 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
Make it possible to determine if a key event is for a
|
|
|
|
modifier key:
|
|
|
|
|
|
|
|
* gdk/x11/gdkprivate-x11.h:
|
|
|
|
* gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier):
|
|
|
|
New function to determine if a keycode is mapped to a modifier.
|
|
|
|
(get_xkb): Get the modmap.
|
|
|
|
|
|
|
|
* gdk/x11/gdkevents-x11.c (translate_key_event): Set the
|
|
|
|
is_modifier bit by calling _gdk_keymap_key_is_modifier().
|
|
|
|
|
|
|
|
* gdk/gdkevents.h (struct _GdkEventKey): Add an is_modifier
|
|
|
|
bit.
|
|
|
|
|
|
|
|
2005-09-09 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gdk/gdkpixbuf-drawable.c (convert_real_slow): Remove an
|
|
|
|
unused variable, noticed by Kjartan Maraas.
|
|
|
|
|
2005-09-09 21:21:12 +00:00
|
|
|
2005-09-09 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event):
|
|
|
|
Make drag reordering work properly for columns other than the
|
|
|
|
first. (#315054, Dan Winship)
|
|
|
|
|
2005-09-09 19:01:02 +00:00
|
|
|
* gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Handle
|
|
|
|
invalid fontnames better. (#136926, Michael R. Walton)
|
|
|
|
|
2005-09-09 18:34:43 +00:00
|
|
|
Stop cursor blinking in non-editable regions of a text view.
|
|
|
|
(#311508, Torbjörn Andersson)
|
2005-09-09 18:19:48 +00:00
|
|
|
|
2005-09-09 18:34:43 +00:00
|
|
|
* gtk/gtktextview.c (gtk_text_view_check_cursor_blink):
|
|
|
|
(cursor_blinks): Take editability into account when deciding
|
|
|
|
whether the cursor blinks.
|
|
|
|
(gtk_text_view_button_release_event):
|
|
|
|
(gtk_text_view_move_cursor_internal): Update cursor blinking here.
|
|
|
|
|
|
|
|
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing):
|
|
|
|
Use connect_after to connect to the focus_out event. This
|
|
|
|
ensures that the entry has already stopped blinking by the time
|
|
|
|
we emit the edited signal. (#315229, Thomas Leonard)
|
|
|
|
|
2005-09-09 18:19:48 +00:00
|
|
|
* tests/testgtk.c: Use GDK_MOD1_MASK, not GDK_ALT_MASK.
|
2005-09-09 17:26:14 +00:00
|
|
|
|
2005-09-09 17:48:00 +00:00
|
|
|
* gtk/gtkwindow.c (gtk_window_parse_geometry): Don't set
|
|
|
|
unsigned ints to -1. (#315481, Kjartan Maraas)
|
|
|
|
|
2005-09-09 17:26:14 +00:00
|
|
|
* gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
|
|
|
|
to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
|
|
|
|
(#314473, Stanislav Brabec)
|
|
|
|
|
2005-09-09 16:21:15 +00:00
|
|
|
2005-09-09 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-09-09 16:24:49 +00:00
|
|
|
* gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Document
|
|
|
|
memory handling. (#314975, Torsten Schoenfeld)
|
|
|
|
|
2005-09-09 16:21:15 +00:00
|
|
|
* gtk/gtkiconview.c (gtk_icon_view_class_init):
|
|
|
|
* gtk/gtkfilesel.c (gtk_file_selection_class_init):
|
|
|
|
* gtk/gtkcombobox.c (gtk_combo_box_class_init):
|
|
|
|
* gtk/gtklabel.c (gtk_label_class_init):
|
|
|
|
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
|
|
|
|
Stylistic improvements and clarifications for some blurbs.
|
|
|
|
(#315520, Clytie Siddall)
|
|
|
|
|
2005-09-08 22:45:40 +00:00
|
|
|
2005-09-09 Tor Lillqvist <tml@novell.com>
|
|
|
|
|
|
|
|
* gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Cache the
|
|
|
|
display name. There is only one GdkDisplay on Win32, and
|
|
|
|
constructing the display name isn't entirely trivial, so cacheing
|
|
|
|
is probably worth it. For instance GIMP calls this function a lot.
|
|
|
|
(gdk_display_open): Call gdk_display_get_name() to prime the
|
|
|
|
cached name.
|
|
|
|
(gdk_display_get_n_screens, gdk_display_get_screen,
|
|
|
|
gdk_display_get_default_screen): Verify parameter correctness like
|
|
|
|
the X11 backend does.
|
|
|
|
|
|
|
|
* gdk/win32/gdkscreen-win32.c (gdk_screen_make_display_name):
|
|
|
|
Return a freshly allocated string, as the API specifies. Fixes a
|
|
|
|
heap corruption problem that caused random errors and crashes in
|
|
|
|
GIMP, for instance.
|
|
|
|
|
2005-09-07 17:02:47 +00:00
|
|
|
2005-09-07 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress):
|
|
|
|
Make C-u commit and restart hex input if we are already in a
|
|
|
|
hex sequence.
|
|
|
|
|
2005-09-06 17:56:01 +00:00
|
|
|
2005-09-06 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-09-07 01:31:23 +00:00
|
|
|
* gdk/x11/gdkkeys-x11.c (update_modmap): Make the modmap reflexive.
|
|
|
|
(_gdk_keymap_add_virtual_modifiers): Don't add both Alt and Meta
|
|
|
|
if they are mapped to the same modifier.
|
|
|
|
|
2005-09-06 20:17:48 +00:00
|
|
|
* gtk/Makefile.am: Rename gtkstatusicon-x11.c and gtktrayicon.c
|
|
|
|
to gtkstatusicon.c and gtktrayicon-x11.c
|
|
|
|
|
2005-09-06 19:52:50 +00:00
|
|
|
* gtk/gtkaccelgroup.c: Include Super, Hyper and Meta in the
|
|
|
|
default accel mod mask.
|
|
|
|
|
2005-09-06 19:25:47 +00:00
|
|
|
* gtk/gtkaccelgroup.c (gtk_accelerator_parse):
|
|
|
|
* gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label):
|
|
|
|
Don't use GDK_ALT_MASK.
|
|
|
|
|
|
|
|
* gdk/gdktypes.h: No need to introduce GDK_ALT_MASK
|
|
|
|
|
|
|
|
2005-09-06 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
Add support for extra virtual modifiers: (#85780, Owen Taylor)
|
|
|
|
|
2005-09-06 18:13:56 +00:00
|
|
|
* tests/testgtk.c (create_key_lookup): Add tests for extra virtual
|
|
|
|
modifiers.
|
|
|
|
|
|
|
|
* gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Try to match both against
|
|
|
|
Mod2 - Mod5 and against Super, Hyper, Meta.
|
|
|
|
|
|
|
|
* gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label):
|
|
|
|
* gtk/gtkaccelgroup.c (gtk_accelerator_parse)
|
|
|
|
(gtk_accelerator_name): Support Super, Hyper Meta and Mod2 - Mod5.
|
|
|
|
|
2005-09-06 17:56:01 +00:00
|
|
|
* gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Add a
|
|
|
|
modmap to maintain the information which X modifiers map to
|
|
|
|
virtual modifiers.
|
|
|
|
(get_xkb): Set up the modmap from the XKB tables.
|
|
|
|
(update_keymaps): Set up the modmap from the information returned
|
|
|
|
by XGetModifierMapping in the non-XKB case.
|
|
|
|
|
|
|
|
* gdk/x11/gdkprivate-x11.h:
|
|
|
|
* gdk/x11/gdkkeys-x11.c (_gdk_keymap_add_virtual_modifiers): New
|
|
|
|
function to set the virtual modifiers in the state.
|
|
|
|
|
|
|
|
* gdk/x11/gdkevents-x11.c (translate_key_event): Call
|
|
|
|
_gdk_keymap_add_virtual_modifiers here.
|
|
|
|
|
|
|
|
* gdk/gdktypes.h (GdkModifierType): Add bits for virtual Super,
|
|
|
|
Hyper and Meta modifiers. Also add GDK_ALT_MASK as an alias
|
|
|
|
for GDK_MOD1_MASK.
|
|
|
|
|
2005-09-05 18:44:29 +00:00
|
|
|
2005-09-05 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtkaction.c (connect_proxy): Set the label of a button
|
|
|
|
if it has no child. (#315253, John Finlay)
|
|
|
|
|
2005-09-03 03:29:04 +00:00
|
|
|
2005-09-02 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtkimcontextsimple.h: Add a modifiers_dropped bit
|
|
|
|
|
2005-09-02 18:14:59 +00:00
|
|
|
2005-09-02 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-09-02 19:48:53 +00:00
|
|
|
* gtk/gtkentry.c (gtk_entry_destroy): Disconnect idle handlers
|
|
|
|
on destroy to avoid problems when they are called on a destroyed
|
|
|
|
widget. (#315135, John Cupitt)
|
|
|
|
|
|
|
|
* gtk/gtkentry.c (gtk_entry_class_init):
|
2005-09-02 18:23:10 +00:00
|
|
|
* gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
|
|
|
|
for Ctrl-Shift-A to unselect all. (#309301, Kathy Fernandes)
|
|
|
|
|
2005-09-02 18:14:59 +00:00
|
|
|
* gtk/gtkimcontextsimple.c: Rework the Unicode hex input
|
|
|
|
code. Now we only steal a single key combination, Ctrl-Shift-U,
|
|
|
|
instead of sixteen.
|
|
|
|
A hex Unicode sequence must be started with Ctrl-Shift-U, followed
|
|
|
|
by a sequence of hex digits entered with Ctrl-Shift still held.
|
|
|
|
Releasing one of the modifiers or pressing space while the modifiers
|
|
|
|
are still held commits the character. It is possible to erase
|
|
|
|
digits using backspace.
|
|
|
|
As an extension to the above, we also allow to start the sequence
|
|
|
|
with Ctrl-Shift-U, then release the modifiers before typing any
|
|
|
|
digits, and enter the digits without modifiers.
|
|
|
|
(#82011, Owen Taylor)
|
|
|
|
|
2005-09-02 17:15:47 +00:00
|
|
|
2005-09-02 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-09-02 17:29:38 +00:00
|
|
|
* gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
|
|
|
|
we still need to deliver the destroy event. (#314980, Chris Lahey)
|
|
|
|
|
2005-09-02 17:15:47 +00:00
|
|
|
* gtk/gtktextview.c (gtk_text_view_key_press_event): Reset
|
|
|
|
im context before committing \n or \t.
|
|
|
|
|
2005-09-02 13:33:06 +00:00
|
|
|
2005-09-02 Alexander Larsson <alexl@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
|
|
|
|
(shortcuts_activate_volume):
|
|
|
|
Handle base_path being null in the rest of the cases (#310270)
|
|
|
|
|
2005-09-02 01:54:45 +00:00
|
|
|
2005-09-02 Tor Lillqvist <tml@novell.com>
|
|
|
|
|
|
|
|
* gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
|
|
|
|
cursor position also in root window coordinates. Prune out
|
|
|
|
superfluous WM_MOUSEMOVE events even earlier, based on root window
|
|
|
|
coordinates. Windows sends WM_MOUSEMOVE messages after a new
|
|
|
|
window has ben mapped below the cursor even if the mouse doesn't
|
|
|
|
move. We used to generate GDK_MOTION_NOTIFY in these cases. This
|
|
|
|
confused at least gtk_menu_motion_notify(). (#314995)
|
|
|
|
|
|
|
|
* gtk/gtkintl.h: No need to include config.h here. It caused
|
|
|
|
warnings about GTK_LOCALEDIR being redefined on Win32 when
|
|
|
|
compiling files where gtkintl.h is included after gtkprivate.h
|
|
|
|
(which #undefines and re-#defines GTK_LOCALEDIR on Win32).
|
|
|
|
|
|
|
|
* gtk/gtkplug.c: Include config.h.
|
|
|
|
|
2005-09-01 05:11:46 +00:00
|
|
|
2005-09-01 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-09-01 14:42:02 +00:00
|
|
|
* gtk/gtkfilesystemunix.c: Pass statbufs down to
|
|
|
|
xdg_mime_get_mime_type_for_file() where possible, to avoid
|
|
|
|
useless re-stating.
|
|
|
|
|
2005-09-01 13:10:55 +00:00
|
|
|
* gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
|
|
|
|
typo. (#314921, Guillaume Cottenceau)
|
|
|
|
|
2005-09-01 05:11:46 +00:00
|
|
|
* gdk/*.c: Intern some more strings.
|
|
|
|
* gtk/gtkintl.h:
|
|
|
|
* gtk/*.c: Define an I_() macro and use it instead of the
|
|
|
|
bulky g_intern_static_string().
|
|
|
|
|
2005-08-31 15:14:26 +00:00
|
|
|
2005-08-31 Matthias Clasen <mclasen@redhat.com>
|
2005-09-01 05:11:46 +00:00
|
|
|
|
|
|
|
* gtk/gtkbindings.c (binding_signal_new): Intern the signal name
|
|
|
|
instead of copying it.
|
|
|
|
|
|
|
|
* gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
|
|
|
|
|
2005-08-31 17:58:55 +00:00
|
|
|
* gtk/*.c: Also intern static strings passed to
|
|
|
|
g_object_set_data().
|
2005-08-31 15:14:26 +00:00
|
|
|
|
2005-08-31 16:53:43 +00:00
|
|
|
* gdk/Makefile.am:
|
|
|
|
* gtk/Makefile.am: Intern type names in code generated by
|
|
|
|
glib-mkenums, too.
|
|
|
|
|
|
|
|
* gtk/*.c:
|
|
|
|
* gdk/x11/*.c:
|
|
|
|
* gdk/*.c: Intern type names before registering the type to avoid
|
|
|
|
unnecessary copies.
|
2005-08-31 15:14:26 +00:00
|
|
|
|
|
|
|
* configure.in: Require GLib 2.9.0
|
|
|
|
|
2005-08-31 04:01:40 +00:00
|
|
|
2005-08-31 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-31 05:19:56 +00:00
|
|
|
* gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
|
|
|
|
and add icon-size and icon-size-set properties. (#314172)
|
|
|
|
|
2005-08-31 04:41:45 +00:00
|
|
|
* gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
|
|
|
|
groups across transient parents. (#312918, Christian Persch)
|
|
|
|
|
2005-08-31 04:17:46 +00:00
|
|
|
* gtk/gtktreemodel.c: Some documentation fixes. (#314882,
|
|
|
|
Guillaume Cottenceau)
|
|
|
|
|
2005-08-31 04:01:40 +00:00
|
|
|
* gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions):
|
|
|
|
Fix a typo in the docs. (#314878, Guillaume Cottenceau)
|
|
|
|
|
2005-08-30 14:11:50 +00:00
|
|
|
2005-08-30 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-30 18:38:17 +00:00
|
|
|
* gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
|
|
|
|
make C-/ select all and C-\ unselect all. (#309301,
|
|
|
|
Kathy Fernandez)
|
|
|
|
|
2005-08-30 17:29:28 +00:00
|
|
|
* gtk/gtkimcontextsimple.c: Change the compose sequence for
|
|
|
|
soft hyphen to be multi_key-minus-minus-space, and add
|
|
|
|
compose sequences multi_key-minus-minus-period and
|
|
|
|
multi_key-minus-minus-minus for en dash and em dash.
|
|
|
|
(#172653, Christian Lohmaier)
|
|
|
|
|
2005-08-30 16:09:03 +00:00
|
|
|
* gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
|
|
|
|
code. (#313946, Christian Persch)
|
|
|
|
|
2005-08-30 14:11:50 +00:00
|
|
|
* gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
|
|
|
|
fix for the default value of the "ui" property.
|
|
|
|
|
2005-08-30 04:46:09 +00:00
|
|
|
2005-08-30 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-30 05:08:35 +00:00
|
|
|
* gtk/gtk.symbols:
|
|
|
|
* gtk/gtkselection.h:
|
2005-08-30 05:42:37 +00:00
|
|
|
* gtk/gtkselection.c: Add functions which look for text, image
|
|
|
|
or uri targets in an array of atoms. (#314089, Mark Wielaard)
|
|
|
|
|
|
|
|
* gtk/gtk.symbols:
|
|
|
|
* gtk/gtkselection.h:
|
2005-08-30 05:08:35 +00:00
|
|
|
* gtk/gtkselection.c (gtk_selection_data_targets_include_uri):
|
|
|
|
Add a function to check wether targets include uri.
|
|
|
|
(#314092, Mark Wielaard)
|
|
|
|
|
2005-08-30 04:46:09 +00:00
|
|
|
* gtk/gtk.symbols:
|
|
|
|
* gtk/gtkwindow.h:
|
|
|
|
* gtk/gtkwindow.c: Add a deletable property with getter
|
|
|
|
and setter, to control the close button in the window
|
|
|
|
frame. (#59718, Havoc Pennington)
|
|
|
|
|
2005-08-29 17:47:10 +00:00
|
|
|
2005-08-29 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-30 03:52:56 +00:00
|
|
|
* gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
|
|
|
|
to the arrow keys for menu navigation. (#162825, Carl Worth)
|
|
|
|
|
2005-08-29 23:52:32 +00:00
|
|
|
* gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
|
|
|
|
|
2005-08-29 23:48:49 +00:00
|
|
|
* gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
|
|
|
|
|
2005-08-29 20:06:16 +00:00
|
|
|
* gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock):
|
|
|
|
* gtk/gtkimage.c (gtk_image_new_from_stock): Don't
|
|
|
|
refer to nonexisting stock ids.
|
|
|
|
|
2005-08-29 20:01:28 +00:00
|
|
|
* gtk/gtktextview.c (popup_targets_received):
|
|
|
|
* gtk/gtkentry.c (popup_targets_received): Construct
|
|
|
|
the "Select All" menuitem from stock.
|
|
|
|
|
|
|
|
* gtk/stock-icons/stock_select_all_{16,24}.png:
|
|
|
|
* gtk/stock-icons/Makefile.am:
|
|
|
|
* gtk/gtkiconfactory.c:
|
|
|
|
* gtk/gtkstock.h:
|
|
|
|
* gtk/gtkstock.c: Add a "Select All" stock item. (#78545,
|
|
|
|
Calum Benson)
|
|
|
|
|
2005-08-29 19:15:24 +00:00
|
|
|
* gtk/gtktrayicon.c: Add a pointer to the spec.
|
|
|
|
|
2005-08-29 19:01:42 +00:00
|
|
|
* gtk/gtkstatusicon-x11.c: Add docs.
|
|
|
|
|
|
|
|
* gtk/gtkstatusicon.h: Fix a typo.
|
|
|
|
|
2005-08-29 17:47:10 +00:00
|
|
|
Add a cross-platform "tray icon" API, by
|
|
|
|
porting EggStatusIcon/EggTrayIcon (#105101)
|
|
|
|
|
|
|
|
* gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
|
|
|
|
displays an icon in a notification area.
|
|
|
|
|
|
|
|
* gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
|
|
|
|
X11, using GtkTrayIcon.
|
|
|
|
|
|
|
|
* gtk/gtktrayicon.h:
|
|
|
|
* gtk/gtktrayicon.c: An implementation of the freedesktop.org
|
|
|
|
system tray specification, not public API.
|
|
|
|
|
|
|
|
* gtk/gtk.symbols: Add new exported functions.
|
|
|
|
|
|
|
|
* gtk/gtk.h: Include gtkstatusicon.h.
|
|
|
|
|
|
|
|
* gtk/Makefile.am: Add new files.
|
|
|
|
|
|
|
|
* tests/Makefile.am:
|
|
|
|
* tests/teststatusicon.c: Test for GtkStatusIcon.
|
|
|
|
|
2005-08-29 17:37:53 +00:00
|
|
|
2005-08-29 Christopher Aillon <caillon@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
|
|
|
|
and GTK_STOCK_DISCONNECT
|
2005-08-29 17:47:10 +00:00
|
|
|
|
2005-08-29 14:53:45 +00:00
|
|
|
2005-08-29 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-29 17:18:12 +00:00
|
|
|
* gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify):
|
|
|
|
Use XFixesChangeSaveSet if available. (#314682)
|
|
|
|
|
2005-08-29 14:53:45 +00:00
|
|
|
* gtk/gtkmenu.c (gtk_menu_grab_notify): Only cancel if the menu
|
|
|
|
was active. (#314298, Christian Persch, analysis by Mark McLoughlin)
|
|
|
|
|
2005-08-29 04:38:52 +00:00
|
|
|
2005-08-29 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-29 05:06:18 +00:00
|
|
|
* gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
|
|
|
|
accidentally leftover duplicate pixbuf creation. (#314700,
|
|
|
|
Kjartan Maraas)
|
|
|
|
|
2005-08-29 04:48:19 +00:00
|
|
|
* gtk/gtksettings.c (settings_update_cursor_theme): Don't
|
|
|
|
leak the cursor theme name. (#314693, Kjartan Maraas)
|
|
|
|
|
2005-08-29 04:38:52 +00:00
|
|
|
* gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free
|
|
|
|
state.children in all cases. (#313862, Kjartan Maraas)
|
|
|
|
|
2005-08-28 06:07:13 +00:00
|
|
|
2005-08-28 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* po/POTFILES.in, po-properties/POTFILES.in:
|
|
|
|
Add gdk/gdkscreen.c
|
|
|
|
|
2005-08-27 04:25:28 +00:00
|
|
|
2005-08-27 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-27 04:34:00 +00:00
|
|
|
* gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
|
|
|
|
value of the ui property. (#314532, Yong Wang)
|
|
|
|
|
2005-08-27 04:25:28 +00:00
|
|
|
* gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
|
|
|
|
when G_MAXLONG is passed as length.
|
|
|
|
|
2005-08-26 19:05:31 +00:00
|
|
|
2005-08-26 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtk/updateiconcache.c: Add a separate --ignore-theme-index option
|
|
|
|
to avoid overloading --force. (JP Rosevaar)
|
|
|
|
|
2005-08-26 16:29:40 +00:00
|
|
|
2005-08-26 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-26 18:52:48 +00:00
|
|
|
* configure.in: Bump version to 2.9.0
|
|
|
|
|
2005-08-26 18:49:52 +00:00
|
|
|
* gdk/gdk.symbols:
|
|
|
|
* gdk/gdkscreen.h:
|
|
|
|
* gdk/gdkscreen.c: Make the GdkScreen font options api
|
|
|
|
public, and add properties GdkScreen::font-options and
|
|
|
|
GdkScreen::resolution. (#314004)
|
|
|
|
|
|
|
|
* gdk/gdkpango.c:
|
|
|
|
* gtk/gtksettings.c:
|
|
|
|
* gtk/gtkwidget.c: Adjust all callers.
|
|
|
|
|
|
|
|
* gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
|
|
|
|
* gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
|
|
|
|
* gdk/gdkscreen.c: Include gdkintl.h.
|
|
|
|
|
2005-08-26 16:29:40 +00:00
|
|
|
* gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
|
|
|
|
variable warning, pointed out by Colin Walters. (#314585)
|
|
|
|
|
2005-08-26 13:44:50 +00:00
|
|
|
2005-08-26 Tor Lillqvist <tml@novell.com>
|
|
|
|
|
|
|
|
* gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
|
|
|
|
printouts.
|
|
|
|
(gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
|
|
|
|
|
2005-08-26 06:28:40 +00:00
|
|
|
2005-08-26 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
|
|
|
|
of week_start. (#314473, JP Rosevaar)
|
|
|
|
|
2005-08-26 03:48:27 +00:00
|
|
|
2005-08-25 Thomas Fitzsimmons <fitzsim@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
|
|
|
|
lock. (#314533, Thomas Fitzsimmons)
|
|
|
|
|
2005-08-26 03:09:36 +00:00
|
|
|
2005-08-25 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
|
|
|
|
NULL gracefully. (#314523, Ed Catmur)
|
|
|
|
|
2005-08-25 19:22:29 +00:00
|
|
|
2005-08-25 Owen Taylor <otaylor@redhat.com>
|
|
|
|
|
|
|
|
* gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme):
|
|
|
|
Handle theme == NULL.
|
|
|
|
|
2005-08-25 18:04:09 +00:00
|
|
|
2005-08-25 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
|
|
|
|
y offset into account when positioning the popup. (#314470,
|
|
|
|
Christian Persch)
|
|
|
|
|
2005-08-25 17:53:15 +00:00
|
|
|
2005-08-25 Owen Taylor <otaylor@redhat.com>
|
|
|
|
|
|
|
|
* gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
|
2005-08-25 18:00:20 +00:00
|
|
|
as instance_init, not base_init! (#314452, Fix from Frederic
|
|
|
|
Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
|
2005-08-25 17:53:15 +00:00
|
|
|
rather than 1 for a negative flag value.
|
|
|
|
|
2005-08-24 20:05:54 +00:00
|
|
|
2005-08-24 Owen Taylor <otaylor@redhat.com>
|
|
|
|
|
|
|
|
* gdk/gdkpango.c (draw_error_underline): Add a note about
|
|
|
|
cut-and-paste between here and Pango.
|
|
|
|
|
2005-08-24 15:28:20 +00:00
|
|
|
2005-08-24 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-24 18:22:23 +00:00
|
|
|
* === Released 2.8.2 ===
|
|
|
|
|
|
|
|
* gtk/gtkclipboard.c (request_image_received_func): Use the correct
|
|
|
|
callback for image/gif, and also try image/bmp. (#314086, Mark
|
|
|
|
Wielaard)
|
|
|
|
|
|
|
|
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon):
|
|
|
|
Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev. (#314382,
|
|
|
|
Sebastien Bacher)
|
|
|
|
|
2005-08-24 15:53:23 +00:00
|
|
|
* NEWS: Updates
|
|
|
|
|
2005-08-24 15:47:28 +00:00
|
|
|
* gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
|
|
|
|
and cursor settings get propagated down to the screen initially.
|
|
|
|
Pointed out by Frederic Crozat.
|
|
|
|
|
2005-08-24 15:28:20 +00:00
|
|
|
* gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
|
|
|
|
message if the screen is NULL. Noticed by Kjartan Maraas.
|
|
|
|
|
2005-08-24 06:29:12 +00:00
|
|
|
2005-08-24 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-24 13:22:35 +00:00
|
|
|
* Bump version
|
|
|
|
|
2005-08-24 06:29:12 +00:00
|
|
|
* === Released 2.8.1 ===
|
|
|
|
|
|
|
|
* NEWS: Updates
|
|
|
|
|
2005-08-24 04:15:28 +00:00
|
|
|
2005-08-24 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
|
|
|
|
against lazy filterers which return values other than TRUE or
|
|
|
|
FALSE from their visible func. (#314335)
|
|
|
|
|
2005-08-24 03:29:06 +00:00
|
|
|
2005-08-23 Owen Taylor <otaylor@redhat.com>
|
|
|
|
|
|
|
|
Fix for #314004, reported by Michael Reinsch:
|
|
|
|
|
|
|
|
* gdk/gdk.symbols:
|
|
|
|
* gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
|
|
|
|
Add gdk_screen_get/set_resolution_libgtk_only()
|
|
|
|
|
|
|
|
* gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
|
|
|
|
the options for the screen on the newly created context.
|
|
|
|
|
|
|
|
* gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c:
|
|
|
|
Move font options and dpi code from gtkwidget.c to gtksettings.c, set
|
|
|
|
the font options on the screen.
|
|
|
|
|
|
|
|
* gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
|
|
|
|
the font options from the screen and set them on the context.
|
|
|
|
|
2005-08-23 20:33:42 +00:00
|
|
|
2005-08-23 Kristian Rietveld <kris@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
|
|
|
|
bother inserting new rows in a level with a zero refcount and
|
|
|
|
immediately free the level. (Fixes #312350, reported by Markku Vire).
|
|
|
|
|
2005-08-23 12:48:05 +00:00
|
|
|
2005-08-23 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-23 15:18:08 +00:00
|
|
|
* gtk/updateiconcache.c: Complain when there is no index.theme file
|
|
|
|
in the specified directory, unless --force is used. Also add an
|
|
|
|
--index-only option to create caches without image data.
|
|
|
|
|
2005-08-23 12:48:05 +00:00
|
|
|
* gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
|
|
|
|
C99ism. (#314262, Robert Jeff Mitchell)
|
|
|
|
|
2005-08-22 20:51:56 +00:00
|
|
|
2005-08-22 Manish Singh <yosh@gimp.org>
|
|
|
|
|
|
|
|
* gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
|
|
|
|
|
|
|
|
* gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
|
|
|
|
|
2005-08-22 20:12:15 +00:00
|
|
|
2005-08-22 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtkwindow.c (gtk_window_client_event):
|
|
|
|
* gtk/gtkicontheme.c (ensure_valid_themes)
|
|
|
|
(_gtk_icon_theme_check_reload): Implement a clientmessage based
|
|
|
|
scheme for makeing sure that all GTK+ applications notice if an
|
|
|
|
icon theme has been updated. This should prevent multiple versions
|
|
|
|
of an icon theme cache to be mapped in memory at the same time,
|
|
|
|
which can cause excessive memory consumption. (#313156, Chris
|
|
|
|
Lahey)
|
|
|
|
|
2005-08-22 14:14:45 +00:00
|
|
|
2005-08-22 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-22 16:38:46 +00:00
|
|
|
* gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
|
|
|
|
regarding icon theme changes.
|
|
|
|
|
|
|
|
* gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
|
|
|
|
pixbufs which are backed by the mmapped memory of an icon cache,
|
|
|
|
increase the refcount of the icon cache, so that the memory is not
|
|
|
|
munmapped away underneath the pixbuf upon icon theme changes.
|
|
|
|
(#314170, Kjartan Maraas)
|
|
|
|
|
2005-08-22 14:44:39 +00:00
|
|
|
* docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order
|
|
|
|
to link against Xext. (#314062)
|
|
|
|
|
2005-08-22 14:14:45 +00:00
|
|
|
* gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
|
|
|
|
overruns. (#314081, Hans Breuer)
|
|
|
|
|
2005-08-21 01:57:01 +00:00
|
|
|
2005-08-20 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
|
|
|
|
returned layout must not be modified.
|
|
|
|
|
2005-08-20 20:16:34 +00:00
|
|
|
Sat Aug 20 16:12:14 2005 Jonathan Blandford <jrb@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtktreeview.c (gtk_tree_view_set_model): clear
|
|
|
|
scroll_to_path if the model changes.
|
|
|
|
|
|
|
|
* gtk/gtkiconview.c: (gtk_icon_view_destroy),
|
|
|
|
(gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
|
|
|
|
(gtk_icon_view_scroll_to_path): Handle scrolling to a path before
|
|
|
|
we're realized, #312798
|
|
|
|
(gtk_icon_view_set_model): clear scroll_to_path if the model
|
|
|
|
changes.
|
|
|
|
|
2005-08-20 05:55:25 +00:00
|
|
|
2005-08-20 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtkrange.c (gtk_range_adjustment_changed)
|
|
|
|
(gtk_range_adjustment_value_changed): Don't queue a draw
|
|
|
|
if the layout has not changed. (#313991, Benjamin Berg)
|
|
|
|
|
2005-08-19 16:46:57 +00:00
|
|
|
2005-08-19 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-19 19:23:32 +00:00
|
|
|
* gtk/gtktreeitem.c: Remove duplicate lines. (#313344,
|
|
|
|
Benoit Carpentier)
|
|
|
|
|
2005-08-19 19:21:45 +00:00
|
|
|
* modules/engines/ms-windows/msw_style.c (setup_system_styles):
|
|
|
|
Fix a typo.
|
|
|
|
|
2005-08-19 18:21:31 +00:00
|
|
|
* gtk/gtkfilechooserbutton.c (change_icon_theme)
|
|
|
|
(model_add_special, model_add_special, model_add_volumes):
|
|
|
|
Handle pixbuf being NULL without warnings. Also, don't
|
|
|
|
leak pixbuf references when the icon theme is changed.
|
|
|
|
|
2005-08-19 16:46:57 +00:00
|
|
|
* gtk/gtkmain.c (gtk_get_event_widget): Don't access
|
|
|
|
the user data on destroyed windows, since at best
|
|
|
|
it can be a stale pointer. (#313953, Robin Green)
|
|
|
|
|
2005-08-19 04:39:30 +00:00
|
|
|
2005-08-19 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-19 16:16:17 +00:00
|
|
|
* gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.
|
|
|
|
(#313900, Sebastien Bacher)
|
|
|
|
|
2005-08-19 14:05:32 +00:00
|
|
|
* gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
|
|
|
|
FALSE if the tree is empty. (#313891, Guillaume Cottenceau)
|
|
|
|
|
2005-08-19 05:46:06 +00:00
|
|
|
* gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display)
|
|
|
|
(xdnd_read_actions, get_client_window_at_coords_recurse):
|
|
|
|
Free data returned from XGetWindowProperty.
|
|
|
|
|
|
|
|
* gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window)
|
|
|
|
Free data returned from XGetWindowProperty. (313867, Kjartan
|
|
|
|
Maraas)
|
|
|
|
|
2005-08-19 05:16:31 +00:00
|
|
|
* gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
|
|
|
|
children in all cases. (#313862, Kjartan Maraas)
|
|
|
|
|
2005-08-19 04:39:30 +00:00
|
|
|
* gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs
|
|
|
|
in the per-directory hash, even if they come from the icon cache.
|
|
|
|
We tried to avoid that before, but as a result leaked icon data
|
|
|
|
structs. (#313852, Kjartan Maraas)
|
|
|
|
|
2005-08-18 20:29:55 +00:00
|
|
|
2005-08-18 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
|
|
|
|
signal handlers on destroy, not on finalize. (#313759, Brett Atoms)
|
|
|
|
|
2005-08-15 21:26:19 +00:00
|
|
|
2005-08-15 Owen Taylor <otaylor@redhat.com>
|
|
|
|
|
|
|
|
* configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
|
|
|
|
files for x11/xext. (Jonas Bonn)
|
|
|
|
|
2005-08-15 19:36:32 +00:00
|
|
|
2005-08-15 Tor Lillqvist <tml@novell.com>
|
|
|
|
|
|
|
|
* gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
|
|
|
|
inside GTK_NOTE.
|
|
|
|
|
2005-08-15 19:04:55 +00:00
|
|
|
2005-08-15 Owen Taylor <otaylor@redhat.com>
|
|
|
|
|
|
|
|
* configure.in: Fix have_base_pc / have_base_x_pc typo.
|
|
|
|
|
|
|
|
* gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
|
|
|
|
(#313417, James Andrewartha)
|
|
|
|
|
|
|
|
* configure.in: Add fontconfig to X_PACKAGES, since we use it for
|
|
|
|
FcNameConstant(). (More of #313417)
|
|
|
|
|
2005-08-15 16:36:31 +00:00
|
|
|
2005-08-15 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-15 18:17:01 +00:00
|
|
|
* gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
|
|
|
|
modal dialogs, make sure to inherit the window group from
|
|
|
|
the parent, since we don't inherit window groups across
|
|
|
|
transient parents currently. (#312918, Christian Persch)
|
|
|
|
|
|
|
|
* gtk/gtkmessagedialog.c (gtk_message_dialog_new):
|
|
|
|
* gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs.
|
|
|
|
|
2005-08-15 16:46:52 +00:00
|
|
|
* gtk/gtkiconview.c (gtk_icon_view_select_path)
|
|
|
|
(gtk_icon_view_scroll_to_path): Handle paths of depth 0
|
|
|
|
gracefully. (#312796, Jonathan Blandford)
|
|
|
|
|
2005-08-15 16:36:31 +00:00
|
|
|
* tests/testtoolbar.c: Add some more tests for menu placement.
|
|
|
|
|
|
|
|
* gtk/gtkmenutoolbutton.c (menu_position_func):
|
|
|
|
* gtk/gtktoolbar.c (menu_position_func): Improve positioning
|
|
|
|
of toolbutton menus and of the overflow menu. (#312937,
|
|
|
|
#153870, Christian Persch, Paolo Borelli)
|
|
|
|
|
2005-08-15 14:53:00 +00:00
|
|
|
2005-08-15 Tor Lillqvist <tml@novell.com>
|
|
|
|
|
|
|
|
* gtk/updateiconcache.c: Use g_path_get_dirname() instead of
|
|
|
|
the nonportable <libgen.h> and dirname().
|
|
|
|
|
2005-08-15 13:28:22 +00:00
|
|
|
2005-08-15 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
2005-08-15 13:46:32 +00:00
|
|
|
* gtk/gtksizegroup.c: Use object data to mark widgets and
|
|
|
|
groups as visited, so that we avoid constant extra list
|
|
|
|
traversals. Also allocate quarks in class_init. (#311618,
|
|
|
|
Michael Natterer)
|
|
|
|
|
2005-08-15 13:28:22 +00:00
|
|
|
* gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the
|
|
|
|
download location for the hicolor icon theme. (#313475, Olexiy
|
|
|
|
Avramchenko)
|
|
|
|
|
2005-08-15 13:46:32 +00:00
|
|
|
* gtk/gtkicontheme.c: Remove debug spew.
|
|
|
|
|
2005-08-15 12:35:04 +00:00
|
|
|
2005-08-15 Owen Taylor <otaylor@redhat.com>
|
|
|
|
|
|
|
|
* gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap):
|
|
|
|
* gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap):
|
|
|
|
* gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
|
|
|
|
Handle pixmap == NULL when checking for a colormap.
|
|
|
|
(Allin Cottrell).
|
|
|
|
|
2005-08-15 03:52:34 +00:00
|
|
|
2005-08-14 Matthias Clasen <mclasen@redhat.com>
|
|
|
|
|
|
|
|
* gtk/updateiconcache.c: Store only one copy of the pixel data
|
|
|
|
for symlinked icons. To achieve this, maintain a hashtable
|
|
|
|
mapping pathnames to pixel data, and share the pixel data for
|
|
|
|
all symlinks resolving to the same pathname. When writing out
|
|
|
|
the image data, write out the pixel data only the first time
|
|
|
|
it is met, and store the offset pointing to the first copy
|
|
|
|
for use in all later cases.
|
|
|
|
This reduces the size of the Bluecurve icon cache from 40
|
|
|
|
to 13MB. (#312972)
|
|
|
|
|