Owen Taylor [Tue, 26 Mar 2002 19:59:34 +0000 (19:59 +0000)]
Shuffle the ordering around some more (position before realizing) fixing
Tue Mar 26 14:46:50 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmenu.c (gtk_menu_popup): Shuffle the ordering around
some more (position before realizing) fixing problems with
arrows popping up at the wrong time (#73386), hopefully not
introducing other problems. (Reported by Ettore Perrazoli, others)
Sven Neumann [Mon, 25 Mar 2002 20:11:27 +0000 (20:11 +0000)]
free the style's font_description before accessing a new one.
2002-03-25 Sven Neumann <sven@gimp.org>
* gtk/gtkrc.c (gtk_rc_parse_font_name): free the style's
font_description before accessing a new one.
(gtk_rc_parse_stock): always unref the created icon_set. #76289
Sun Mar 24 10:32:38 2002 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreemodel.c (gtk_tree_path_copy): Make path arg const, #75653
* gtk/gtkfontsel.c (gtk_font_selection_show_available_styles): fix
a warning
* gtk/gtktreeview.c (gtk_tree_view_button_press): remove the grab
when we emit row_activated so that listeners of this signal can
grab the mouse, #75629
Matthias Clasen [Mon, 25 Mar 2002 00:15:00 +0000 (00:15 +0000)]
Changed signature to return success and set a GError parameter, adjusted
* io-png.c (setup_png_transformations): Changed signature to
return success and set a GError parameter, adjusted all callers.
Also work around a possible FPE in libpng and always check that
the new info is sane.
Havoc Pennington [Sat, 23 Mar 2002 22:14:40 +0000 (22:14 +0000)]
invalidate the line containing start, even if the [start,end) range is
2002-03-23 Havoc Pennington <hp@pobox.com>
* gtk/gtktextlayout.c (gtk_text_layout_real_invalidate):
invalidate the line containing start, even if the [start,end)
range is empty (just invalidate [start,end], essentially).
Partially fixes #72374
Matthias Clasen [Sat, 23 Mar 2002 21:17:17 +0000 (21:17 +0000)]
context->updated_func is NULL during a nonincremental load.
* io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment):
context->updated_func is NULL during a nonincremental load.
(gdk_pixbuf__wbmp_image_load): Stop reading after the first error.
Havoc Pennington [Sat, 23 Mar 2002 17:54:16 +0000 (17:54 +0000)]
extend selection for pageup/pagedown and ctrl+pageup/pagedown if shift is
2002-03-23 Havoc Pennington <hp@pobox.com>
* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): extend
selection for pageup/pagedown and ctrl+pageup/pagedown if
shift is held. more of #53934
Havoc Pennington [Sat, 23 Mar 2002 17:35:09 +0000 (17:35 +0000)]
disconnect layout handlers earlier in the function, to avoid possible
2002-03-23 Havoc Pennington <hp@pobox.com>
* gtk/gtktextview.c (gtk_text_view_destroy_layout): disconnect
layout handlers earlier in the function, to avoid possible
reentrancy screwups
(gtk_text_view_invalidate): Don't install idle handlers if
layout == NULL, otherwise we get problems during finalization
since clearing the buffer invalidates and puts the idle handlers
back after we destroy the layout. #74660
(gtk_text_view_ensure_layout): Install the validation handlers
right after creating the layout.
Havoc Pennington [Sat, 23 Mar 2002 04:37:53 +0000 (04:37 +0000)]
add more explanatory text to the error message about missing charsets, and
2002-03-22 Havoc Pennington <hp@pobox.com>
* gdk/x11/gdkfont-x11.c (gdk_fontset_load): add more explanatory
text to the error message about missing charsets, and use
g_printerr() not g_warning() since this is typically not a
programming error (we do not export any API to ask whether
a font set will have missing charsets so apps realistically can't
do anything other than try the gdk_fontset_load())
* gtk/gtktextview.c (gtk_text_view_key_press_event): return FALSE
if the text view isn't editable and the user presses Return,
so default buttons and such can be activated, #74937
* gtk/gtktextbuffer.c (paste_from_buffer): don't insert
if the insertion point is not editable and the paste
is interactive, #74125
* gtk/gtkwindow.c (gtk_window_move_resize): enhance the #if 0
debug spew
* gtk/gtktextbuffer.c (cut_or_copy): only remove the previous
cut/copied data right before replacing it, when we know we are
going to replace it. Fixes #74049
Owen Taylor [Fri, 22 Mar 2002 17:35:14 +0000 (17:35 +0000)]
Partial fix for problem where keypad keys acted as shift-arrows in an
Fri Mar 22 11:29:11 2002 Owen Taylor <otaylor@redhat.com>
Partial fix for problem where keypad keys acted
as shift-arrows in an entry rather than arrows (#74327)
* gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Sort lookup
results by number of modifiers in the entry. Fixes
problem where if a key matched both modified and unmodified
key bindings ... e.g., the distinguishing key binding
was consumed, then it was random which was used.
* gtk/gtkbindings.c (gtk_binding_entries_sort_patterns):
Catch the case where there are multiple entries from the
same bindingset (with different modifiers), and use only
the first entry, which, with the change in _gtk_key_hash_lookup()
* gtk/gtkaccelmap.c: Properly handle short returns from
write() calls. (Handling EINTR isn't enough... that only
handles the case where you were interrupted before you
wrote a single byte.)
* gdk/linux-fb/gdkmouse-fb.c gdk/linux-fb/gdkkeyboard-fb.c:
Robustify against short returns from write() calls.
Tor Lillqvist [Thu, 21 Mar 2002 22:36:02 +0000 (22:36 +0000)]
Don't clear all of the pen_style, just the PS_STYLE_MASK. Seems to fix
2002-03-22 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Don't clear
all of the pen_style, just the PS_STYLE_MASK. Seems to fix #74441,
but that is just the special case of one-pixel wide one-pixel
on-off dotted lines. To fully implement generic X11 style dashed
lines a major rewrite would be needed.
Owen Taylor [Thu, 21 Mar 2002 00:50:15 +0000 (00:50 +0000)]
When changing months when the user clicks on a prev-month or next-month
Wed Mar 20 19:33:31 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcalendar.c (gtk_calendar_main_button): When
changing months when the user clicks on a prev-month
or next-month day, focus and select the new day.
Ignore double clicks on prev-month, next-month days.
(Based on suggestions from Andras Salamon, #74173)
* gtk/gtkcalendar.c: Implement the focused/unfocused
selected color change.
Alex Larsson [Thu, 21 Mar 2002 00:41:43 +0000 (00:41 +0000)]
Patches from Carlo E. Prelz <fluido@fluido.as> Now gtkfb at least compiles
2002-03-20 Alex Larsson <alexl@redhat.com>
Patches from Carlo E. Prelz <fluido@fluido.as>
Now gtkfb at least compiles and mostly works. The keyboard
stuff needs more loving.
* gdk/linux-fb/gdkkeyboard-fb.c (xlate_get_for_keyval,
xlate_get_for_keycode, raw_get_for_keyval, raw_get_for_keycode):
At least set the out parameters for these calls.
* gdk/linux-fb/gdkmain-fb.c:
(gdk_pointer_grab_info_libgtk_only, gdk_keyboard_grab_info_libgtk_only):
Implement new functions.
Owen Taylor [Thu, 21 Mar 2002 00:08:19 +0000 (00:08 +0000)]
Short-circuit the text to the exact same thing, so we don't unexpectedly
Wed Mar 20 19:00:03 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkentry.c (gtk_entry_set_text): Short-circuit
the text to the exact same thing, so we don't
unexpectedly change the selection or cursor position.
(#74290, John Ellis.)
* gtk/gtktreeprivate.h: add fixed_height_check field
* gtk/gtktreeview.c (gtk_tree_view_init): initialize
scroll_sync_timer and fixed_height_check
(do_validate_rows): add fixed_height_check. If all validated rows
in the first cycle have the same height, then we set that height for
the entire tree. This is some sort of 'fake' optimization, but helps
a lot for the common case. We keep validating the entire tree in
the background though.
(gtk_tree_view_set_model): reset fixed_height_check
Matthias Clasen [Mon, 18 Mar 2002 22:19:24 +0000 (22:19 +0000)]
Fix assumptions on rowstride by manually allocating a contiguous pixel
* io-tga.c: Fix assumptions on rowstride by manually allocating a
contiguous pixel buffer. Catch buffer overruns in RLE-modi.
Support grayscale + alpha (which can be written, but not read (!)
by the Gimp).
* gtk/gtktreeview.c (install_scroll_sync_handler): new function,
(scroll_sync_handler): ditto,
(gtk_tree_view_unrealize): take scroll_sync_timer into account
(gtk_tree_view_row_deleted): install scroll_sync_timer instead of
calling top_row_to_dy/dy_to_top_row directly
-- this greatly speeds up clearing the model (#73199)
* gtk/gtktreemodelsort.c
(gtk_tree_model_sort_convert_path_to_child_path): fix up this function,
for some reason I really screwed it up (fixes #74663)
Sven Neumann [Sat, 16 Mar 2002 18:11:23 +0000 (18:11 +0000)]
include CFLAGS from gthread-2.0 so that the libs work correctly in a
2002-03-16 Sven Neumann <sven@gimp.org>
* configure.in (GDK_PIXBUF_DEP_CFLAGS) (GDK_PIXBUF_XLIB_DEP_CFLAGS)
(GDK_DEP_CFLAGS) (GTK_DEP_CFLAGS): include CFLAGS from gthread-2.0
so that the libs work correctly in a threaded environment.
Padraig O'Briain [Fri, 15 Mar 2002 10:06:02 +0000 (10:06 +0000)]
Fudge keymap to have lower upper case variants if there is only a single
* gdk/x11/gdkkeys-x11.c (update_keymaps): Fudge keymap to have lower
upper case variants if there is only a single keysym per keycode and
the key symbol has upper and lower case variants (#74512)
Owen Taylor [Thu, 14 Mar 2002 22:12:51 +0000 (22:12 +0000)]
Fix rather improbable reentrancy problem if a window is destroyed while
Thu Mar 14 17:09:52 2002 Owen Taylor <otaylor@redhat.com>
* gdk/gdkwindow.c (gdk_window_process_all_updates): Fix rather
improbable reentrancy problem if a window is destroyed
while updates are being processed on another window. (Noticed
by Michael Meeks, #74708)
Owen Taylor [Wed, 13 Mar 2002 22:14:47 +0000 (22:14 +0000)]
Unset the acceleratable_groups qdata because qdata isn't removed on
Wed Mar 13 17:11:10 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkaccelgroup.c (accel_group_weak_ref_detach): Unset
the acceleratable_groups qdata because qdata isn't removed
on ->dispose but rather on ->finalize. (#74569, found
by Matt Wilson.)
Owen Taylor [Tue, 12 Mar 2002 20:01:47 +0000 (20:01 +0000)]
Fix incorrect return value, filter out returns of 0x7f for the delete key.
Tue Mar 12 10:50:09 2002 Owen Taylor <otaylor@redhat.com>
* modules/input/gtkimcontextxim.c (gtk_im_context_xim_filter_keypress):
Fix incorrect return value, filter out returns of 0x7f for
the delete key. (#74179, Kang Jeong-He)
Matthias Clasen [Tue, 12 Mar 2002 00:20:02 +0000 (00:20 +0000)]
Document GdkScreen.
* gdk/tmpl/windows.sgml: Document GdkScreen.
* gtk/gtk-sections.txt: Move a few Class structs to Standard sections.
* gtk/tmpl/gtktreemodel.sgml, gtk/tmpl/gtkprogress.sgml,
gtk/tmpl/gtksignal.sgml, gtk/tmpl/gtkimage.sgml: Generate proper
markup for format strings in examples, also fix an oversight in
the GtkTreeModel example. (#74213)
handle gtk-tree-model-drop-append like the ListStore, includes some tweaks
Fri Mar 8 20:41:51 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreestore.c (gtk_tree_store_drag_data_received): handle
gtk-tree-model-drop-append like the ListStore, includes some
tweaks to work right with trees
get rid of really bad focus loop. (gtk_tree_view_clamp_node_visible): only
Thu Mar 7 16:46:58 2002 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (validate_visible_area): get rid of really
bad focus loop.
(gtk_tree_view_clamp_node_visible): only clamp the node when
realized. Need to replace this with scroll_to_cell sometime.
(gtk_tree_view_header_focus): clickable or reorderable columns are
focusable, #73656
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_widget): fix
docs to reflect behaviour change, #73682