2002-03-06 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (gdk_pointer_grab,
gdk_pointer_ungrab): Bypass calls to the grab/ungrab functions in
gdkinput-win32.c, as they don't effectively do anything anyway.
(build_key_event_state): Set MOD2 bit if key is in AltGr group.
(gdk_event_translate): Call _gdk_windowing_window_get_offsets()
each time the offsets are used, on the window they refer to,
instead of once in the beginning. The window in question might
change due to event propagation.
(gdk_event_translate): Set key event group to 0 for non-AltGr
keys. Do set the SHIFT bit in the key event state also for
ISO_Left_Tab. Now backtabbing finally works again.
* gdk/win32/gdkunput-win32.c: Minor debugging output change.
* gdk/win32/gdkkeys-win32.c (update_keymap): Set VK_TAB mapping to
Gdk_Tab and GDK_ISO_Left_Tab, like on X11.
(gdk_keymap_translate_keyboard_state): Add similar code as in the
non-XKB case on X11 to generate a more correct
consumed_modifiers. Add debugging output.
(gdk_keyval_name): Use the U+xxxx format for UCS characters
encoded as keyvals. Never return NULL, but hex number
representation if keyval not in table.
* gdk/win32/gdkwindow-win32.c (gdk_window_focus): Call
SetFocus(). Doesn't seem to have any harmful effect, and probably
is close to what this function is supposed to do. But it didn't
fix GtkCombo as I had hoped.
(gdk_window_set_type_hint): Don't intern the _NET_WM_* atoms that
weren't used and wouldn't have any meaning on Win32 anyway.
Tue Mar 5 19:19:19 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_set_focus): When setting
the focus to NULL, clear the existing focus chain so
that when we focus into the window again, we start
at the beginning. (Pointed out by Tim Janik.)
Tue Mar 5 17:43:43 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfontsel.c (gtk_font_selection_init): Don't
create ->font_entry, ->font_style_entry at all rather
than just not showing them to avoid the problem of
them popping up if gtk_widget_show_all() is done
on the dialog. (#72913, Charles Kerr.)
2002-03-05 Havoc Pennington <hp@redhat.com>
* gtk/gtktextview.c (gtk_text_view_size_allocate): don't assign
yoffset here, just let it get updated in response to the
value_changed. Fixes#72479
Tue Mar 5 10:29:09 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktreeview.c (do_presize_handler)
gtk/gtktreeview.c (do_validate_rows): Don't use this
same functions as idle callbacks and directly, to avoid
threading deadlocks. (#72392, Scott Guilbeaux)
* gtk/gtktable.c (gtk_table_size_request_init): Fix
row/column confusion from recent patch. (#73505,
Vitaly Tishkov.)
* docs/tutorial/gtk-tut.sgml: Make color selection and selection
examples work.
* tests/testselection.c (selection_toggled, selection_clear):
Use selection_widget as selection owner - otherwise clearing the
selection doesn't work.
Mon Mar 4 12:43:48 2002 Owen Taylor <otaylor@redhat.com>
Fixes for non XKB operation. (#73103)
* gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
Fix problem where GDK_Tab was converted to GDK_ISO_Left_Tab
always, not just if Shift was pressed.
* gdk/x11/gdkkeys-x11.c gdk/x11/gdkprivate-x11.c
gdk/x11/gdkevents-x11.c: Move determination of group
to _gdk_x11_get_group_for_state(), fix to handle non-XKB.
* gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Only
add in SHIFT_MASK | LOCK_MASK to consumed_modifiers if the shifted
and unshifted keysyms are different. Only add in group_switch_mask
if the group-switched and non-group-switched keysyms are diferent.
* gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
When calling XKeycodeToKeysym, use group * keysyms_per_keycode / 2
not group * keysyms_per_keycode. (Tor Lillquist)
* gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
Remove the hack to fudge the return value for GDK_Tab + Shift
since that didn't work -- it didn't affect the reverse mapping.
Instead fudge the non-XKB keymap instead.
Mon Mar 4 10:35:28 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_set_current_page): Fix docs
in terms of what out of range @page_num does. (#73371,
Vitaly Tishkov.)
Sun Mar 3 18:47:13 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_parse_geometry): Fix
to properly take the default window into account by
setting a flag and in gtk_window_compute_configure_request_size ()
multiplying by the increments and adding in the base
size. (#72393)
* tests/testgtk.c (create_gridded_geometry): Add a
test for gridded geometry and for gtk_window_parse_geometry().
Sun Mar 3 17:03:30 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmenushell.c gtk/gtkmenubar.[ch]: Back out
changes to propagate keys to parent menu shells, since
that broke stuff; rather implement ::cycle-focus as
a key binding on GtkMenuShell rather than on GtkMenuBar.
* gtk/gtkmenushell.c (gtk_menu_shell_class_init): Add
add bindings for ::cycle-focus. (In gtkmenubar.c, were
mistakently bound to ::move-focus.)
Sun Mar 3 15:16:07 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktable.c: When increasing the row or column
requisitions to make them sufficient for spanning widgets,
favor rows or columns with expandable children in them.
(#1261, Jonathan Blandford.)
Sun Mar 3 14:26:33 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkstyle.[ch] (_gtk_get_insertion_cursor_gc):
Centralize lookup and caching of cursor GC's here.
* gtk/gtkentry.[ch] gtk/gtktextview.[ch] gtk/gtktextdisplay.c
gtk/gtklabel.c: Move to using _gtk_get_insertion_cursor_gc().
* gtk/gtkentry.c (gtk_entry_expose): Draw cursors
under the text, not over the text.
* gtk/gtkwidget.c (gtk_widget_class_init): add
a secondary-cursor-color property.
* gtk/gtkwidget.c (gtk_widget_class_init): Decrease
the default aspect ratio to 1/25 (0.04).
* tests/testgtkrc (bell_duration): Comment out
cursor color setting.
Sun Mar 3 20:48:12 2002 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkmenu.c (gtk_menu_set_submenu_navigation_region): change
offset of cursor corner of navigation region from (-2, 2) to
(-2, 0).
Sun Mar 3 12:13:56 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Fix typo where pangoxft was being
required instead of pangox. (Reported by Miles
Lane)
Sun Mar 3 11:12:16 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextlayout.c (add_cursor): When in split cursor
mode, always add the cursor as both strong and weak
so that it is drawn with the correct non-split color.
Sun Mar 3 10:28:32 2002 Owen Taylor <otaylor@redhat.com>
* gtk/Makefile.am: add missing dependency of objects on
gtkmarshalers.h.
* gtk/Makefile.am gtk/gtk-boxed.defs: Remove completely
out of date and unused gtk-boxed.defs and the accompanying
Makefile rule to generate the complete gtk.defs.
Sun Mar 3 06:39:19 2002 Tim Janik <timj@gtk.org>
* gtk/gtkfilesel.c: added compile time switch to put the tree views
into a hpaned for owen to play with.
* gtk/gtktreedatalist.c (_gtk_tree_data_list_header_free):
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func),
(gtk_tree_view_column_finalize):
* gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func),
(gtk_tree_store_set_sort_func), (gtk_tree_store_finalize):
* gtk/gtktreeselection.c (gtk_tree_selection_finalize):
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_reset_default_sort_func),
(gtk_tree_model_sort_set_default_sort_func),
(gtk_tree_model_sort_set_sort_func):
* gtk/gtkliststore.c (gtk_list_store_set_default_sort_func),
(gtk_list_store_set_default_sort_func),
(gtk_list_store_set_sort_func), (gtk_list_store_finalize):
add reentrancy protection around destroy() function invocation.
* gtk/gtktreeselection.c (gtk_tree_selection_set_select_function): fix
destroy function invocation (which was missing).
Sat Mar 2 23:08:23 2002 Owen Taylor <otaylor@redhat.com>
Fixes for uninstalled operation with module suffixes
other than .so and in general for platforms like AIX where
the module suffix isn't predictable. (#72185, problems
reported by Miroslaw Dobrzanski-Neumann)
* modules/input/Makefile.am (gtk.immodules): Query .la
files rather than shared objects in .libs when creating the
uninstalled gtk.immodules file.
* gtk/gtkmain.c (_gtk_find_module): Look for .la files
after looking for the normal soname extension to handle
cases where the soname extension isn't predictable,
like AIX.
* gtk/gtkthemes.c (gtk_theme_engine_load): Don't
call g_module_build_path... leave that to
gtk_rc_find_module_in_path.
* demos/gtk-demo/main.c (main) demos/pixbuf-init.c (pixbuf_init):
tests/testgtk.c (test_init): tests/testtext.c (test_init)
tests/testdnd.c (test_init): Point gdk-pixbuf to .la
files rather than poking in .libs for .so files.
* gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Remove
.libs from GDK_PIXBUF_MODULEDIR.
Sat Mar 2 20:58:30 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_reparent): Handle NO_WINDOW
widgets with windows that are children of widget->window.
(#50279)
* tests/testgtk.c: Add eventboxes to the example so that
we are reparenting between different GdkWindows.
Sat Mar 2 20:39:38 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
Add a note to the docs about how to use this in the
context of changeable accelerators. (#72382, Mark Patton)
Fri Mar 1 00:46:49 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Add a --enable-explicit-deps option to control
whether dependency libraries are written into .la files and .pc
files. Default is auto: if static libraries are off and shlib
dependencies are found, don't write deps.
* gdk/Makefile.am gtk/Makefile.am sanitize-la.sh: Shell script
used to strip dependencies out of .la files.
* Makefile.am: Add a slightly modified distcheck rule that passes
--enable-gtk-doc to the configure inside.
(So that 'make dist' succeeds inside.)
* configure.in: If pango was compiled with
--disable-explicit-deps, then repeat the checks for X and
freetype ourselves so we don't depend on linking to libraries
that pango doesn't reveal in the link line. Add some more paranoia
for whether what we detect ourselves matches what Pango backends
we found.
2002-03-03 Tor Lillqvist <tml@iki.fi>
* gdk/gdk.def
* gdk/win32/gdkevents-win32.c: Add and (trivially) implement
gdk_pointer_grab_info_libgtk_only() and
gdk_keyboard_grab_info_libgtk_only().
2002-03-02 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (build_keypress_event): Reorder
code, keyval should get a value in all cases now.
(build_keyrelease_event): Set GDK_CONTROL_MASK here, too, if it
was a control character produced with Alt+keypad digits.
(gdk_event_translate): Minor cleanups to keyboard input
handling. Still need more major work.
Sat Mar 2 16:12:03 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkradiobutton.c (gtk_radio_button_focus): Don't
do special focus handling if draw_indicator is not set.
(#64723, Damon Chaplin.)
Sat Mar 2 15:48:04 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkentry.c (gtk_entry_new_with_max_length,
gtk_entry_set_max_length): Clamp @max parameter passed in to
[0, MAX_SIZE], improve docs. Fix default and range
for ::max-length property, range for ::ncursor_position,
::selection_bound properties. (#55916, Vitaly Tishkov)
* gtk/gtkmain.c (rewrite_event_for_grabs): Fix typo
Fri Mar 1 18:39:44 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/{gdkevents-x11.c,gdkmain-x11.c,gdkprivate-x11.h,
gdkwindow-x11.c}: Robustify tracking of pointer grab window.
* gdk/x11/gdkmain-x11.c: Keep track of current keyboard
grab window.
* gdk/x11/gdkmain-x11.c (gdk_pointer_grab_info_libgtk_only,
gdk_keyboard_grab_info_libgtk_only): Private libgtk => libgtk
API for finding out current grab information.
* gtk/gtkmain.c (rewrite_event_for_grabs): Rewrite events
so that the effective behavior of owner_events = TRUE is changed
to "deliver events to same window group normally" instead
of "deliver events to same application normally. #69934
* gtk/gtkrange.c: Use an explicit gtk_grab_add() so that
it works within the GtkList combo, where there is a
owner_events = FALSE gdk_pointer_grab() already in effect.
(#65006, reported by Damon Chaplin)
Sat Mar 2 14:32:50 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Default to --disable-gtk-doc (avoid Jade
breakage) and --disable-static (static linking causes
problems with Xft changes.)
* autogen.sh: Add --enable-gtk-doc by default.
* Makefile.am: Add a 'mydistcheck' rule that passes
--enable-gtk-doc to the configure since that is needed
for 'make dist'.
* docs/tutorial/Makefile.am (dist-hook): Don't distribute
the PDF file. (Rule doesn't work on my system, plus it's
big.)
* gtk/Makefile.am: 'make dist' fixes.
Sat Mar 2 13:26:58 2002 Owen Taylor <otaylor@redhat.com>
* gtk/Makefile.am: Switch style of stamp file usage.
* gtk/Makefile.am gtk/typeutils.[ch]: Switch all the exported
enumeration/fags TYPE variables over to macros for get_type() functions,
for lazy definition and to get rid of expensive relocations.
* gtk/gtkiconfactory.[ch] gtk/gtkselection.[ch] gtk/gtkstyle.[ch]
gtk/gtktextiter.[ch] gtk/gtktexttag.[ch] gtk/gtktreemodel.[ch]
gtk/gtktypeutils.[ch] gtk/gtkwidget.[ch]: Switch boxed type
definitions over manually coded get_type() functions.
* gtk/gtk.def: Updates for above
* gtk/{genmarshal.pl,makeenums.awk,makeenums.h,maketypes.awk}:
Remove from CVS, no longer used.
* configure.in: Remove checks for awk.
Fri Mar 1 23:59:35 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_size): set
first_cell to FALSE after first iteration
* gtk/gtktreeview.c (validate_visible_area): reduce usage of
GTK_RBNODE_GET_HEIGHT, check for node != NULL,
(gtk_tree_view_top_row_to_dy): remove call to gtk_adjustment_changed
(gtk_tree_view_search_iter): select iter after scrolling
2002-03-01 Tor Lillqvist <tml@iki.fi>
* gdk/gdkkeys.c (gdk_keyval_convert_case)
* gdk/x11/gdkkeys-x11.c (gdk_keyval_convert_case): If the keyval
to be converted is one of those that consist of a Unicode
character plus our special flag bit, use the
g_unichar_to{lower,upper} functions (Bug#73112).
* gdk/gdkkeys.c (gdk_keyval_convert_case): Drop the #ifdefs for
the GDK keysym symbols. As we include gdkkeysyms.h, we know they
are there. And if GDK keysyms some day are added/removed, this
function needs changes, too, anyway.
Fri Mar 1 17:00:28 2002 Owen Taylor <otaylor@redhat.com>
* gdk/gdkpolyreg-generic.c: Fix some reported (but not significant)
UMR's from purify. (#73160, Morten Welinder)
Fri Mar 1 16:48:19 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkscrolledwindow.c: Initialize the scrollbar spacing
variable in the class to -1, and then take that to mean
"default" (3) rather than putting 3 in the class directly.
This gives us some wiggle room to make it a per-instance
rather than a per-class property later.
Fri Mar 1 14:49:35 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextview.c (gtk_text_view_commit_text): Don't delete
forward across line boundaries when in overwrite mode.
(#73145, reported by Ettore Perazzoli)
Fri Mar 1 10:31:14 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_reorder_child):
Fix signed-unsigned error that was accidentally causing
negative values to append, do it intentionally. Fix docs
to say that negative values append. (Alexey A. Malyshev,
#73108)
Fri Mar 1 09:05:19 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkitemfactory.c (gtk_item_factory_delete_entries):
Really make it work for paths with underline accelerators. (#69247)
2002-02-28 Havoc Pennington <hp@pobox.com>
* gtk/gtktextview.c (gtk_text_view_finalize): free the tab array
for custom tabs, reported by Paolo Maggi #72980
Thu Feb 28 19:55:01 2002 Owen Taylor <otaylor@redhat.com>
* gdk/gdkkeys.c: include gdkkeysysms.h if
compiling gdk_keyval_convert_case.
* gtk/gtkmenubar.c (gtk_menu_bar_cycle_focus): Implement
<Control>Tab <Control><Shift>Tab to cycle between
all menu bars in a toplevel once one is up.
* tests/testgtk.c: Add a second menubar, this
example is already full of crack anyways.
* gtk/gtkmenushell.c (gtk_menu_shell_key_press): Padd
unhandled events up to the parent menu shell.
* gtk/gtkmenuitem.c (gtk_menu_item_select_timeout): Only
pop up the menu if the parent menu shell is still active.
* gtk/gtkcontainer.[ch] (_gtk_container_focus_sort): Add a
old_focus argument, export privately.
2002-03-01 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkwindow-win32.h (struct _GdkWindowImplWin32): Remove
the event_mask, it is now in GdkWindowObject.
* gdk/win32/gdkwindow-win32.c: Change accordingly. Set the
GDK_STRUCTURE_MASK in gdk_window_set_events(), as it is always set
in gdk_window_new(), too. (Bug#72921)
* gdk/win32/gdkevents-win32.c: Change accordingly here, too.
(vk_from_char): New function, calculates the virtual keycode
corresponding to the char in a WM_CHAR message.
(build_keypress_event, build_keyrelease_event): Use it.
(build_keypress_event): Call ImmReleaseContext() after using the
input context. This might plug a memory or resource leak.
(build_key_event_state): Remove #if 0 code.
(gdk_event_translate): Actually, it would be preferrable to always
handle just the WM_KEYDOWN and WM_KEYUP messages, not WM_CHAR at
all, and thus drop the contorted logic with ignore_wm_char etc.
* gdk/win32/gdkkeys-win32.c: (gdk_keymap_get_entries_for_keyval):
Debugging output.
(gdk_keymap_translate_keyboard_state): Return correct value. (But
_gtk_key_hash_lookup() doesn't check the return value...)
Thu Feb 28 14:49:08 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): Initialize
private->event_mask from attributes we retrieved for
the window.
ChangeLog entry.
2002-02-22 Havoc Pennington <hp@redhat.com>
* gtk/gtktextbuffer.c (save_range): change gravity of start/end
marks so that text added at either end of the range doesn't end up
inside the range.
(gtk_text_buffer_real_insert_range): fix to handle pasting a range
into itself.
2002-02-28 Tor Lillqvist <tml@iki.fi>
* gdk/win32/Makefile.am: Move bdfcursor.c from
libgdk_win32_la_SOURCES to EXTRA_DIST.
* gdk/win32/gdkgc-win32.c (gdk_win32_colormap_color_pack): In the
bitmap case, use just the LSB of the pixel value. Does this match
X11 semantics? Or should it be pixel!=0?
Wed Feb 27 18:50:29 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_event): Allow focus-change
events to be sent to unrealized widgets; they aren't
really normal events in that they have anything to
do with widget->window. (#72914)
Wed Feb 27 18:39:25 2002 Owen Taylor <otaylor@redhat.com>
* gtk/stock-icons/Makefile.am: Split big VARIABLES variable
that was causing overlong lines into 6 variables with 20
in each one.
Wed Feb 27 18:01:03 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkaccellabel.c (gtk_accelerator_name) po/POTFILES.in: Mark
<Control>, <Shift>, <Release>, <Alt> for translation.
* gtk/gtkfontsel.c: Mark PREVIEW_TEXT for translation.
(Vlad Harchev, #53223)
Wed Feb 27 17:32:09 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkrange.c (gtk_range_get_props): if CAN_FOCUS
reserve focus_line_width + focus_line_pad extra
space and draw the focus in that space. #72027.
Wed Feb 27 14:58:12 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmenubar.c (gtk_menu_bar_size_request/allocate):
Don't reserve space for border when the shadow type
for the menubar is "none". (#61843)
* gtk/gtkmenubar.c (gtk_menu_bar_size_allocate): Fix
offset for right-justified menu items.
Wed Feb 27 14:45:21 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Go
back to old style of drawing children over the bevel.
(#58615)
Wed Feb 27 12:34:21 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkiconfactory.c: Register all stock icons
"unscaled" so that we don't have icons only available
at some sizes. (#68896)
Wed Feb 27 11:59:05 2002 Owen Taylor <otaylor@redhat.com>
Some ASCII vs. locale fixes from Darin Adler (#55837)
* gtk/gtkcombo.c (gtk_combo_find): Implement real
case-insensitive comparison using g_utf8_casefold().
* gtk/gtkaccellabel.c (gtk_accel_label_refetch): Fix
assignment of gunichar to char by replacing g_unichar_totitle
with g_ascii_toupper ... the contents would only be ascii
here anyways.
* gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale)
* gtk/gtkfontsel.c (gtk_font_selection_show_available_fonts):
Replace a calls to g_strcasecmp() with g_ascii_strcasecmp().
Wed Feb 27 10:34:46 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkrange.c (gtk_range_set_range): After computing
the clamped value, actually set it. (#62639, Sergey Kuzminov)
Tue Feb 26 22:22:37 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkbox.c (gtk_box_reorder_child): Clean up
the code so < 0 == end wasn't just a side effect,
remove most of the manual linked list manipulation
code in favor of g_list_* functions.
Tue Feb 26 22:01:59 2002 Owen Taylor <otaylor@redhat.com>
* gtk/tmpl/gtkbox.sgml: Fix docs to correspond to the code -
negative @position indicates the end of the list.
Tue Feb 26 21:44:01 2002 Owen Taylor <otaylor@redhat.com>
* config.status config.guess: Remove these files
from CVS so we more-or-less current versions from
automake --add-missing. (Reported by Finlay Dobbie,
#60342)
* gdk/gdkkeyuni.c: Shouldn't map KP_Enter to '\n',
or KP_Tab to \t' since we don't map the corresponding
main keyboard characters in that way. (#61561,
Padraig O'Briain)
Tue Feb 26 21:35:31 2002 Owen Taylor <otaylor@redhat.com>
* gdk/gdkkeyuni.c: Shouldn't map KP_Enter to '\n',
or KP_Tab to \t' since we don't map the corresponding
main keyboard characters in that way. (#61561,
Padraig O'Briain)
Tue Feb 26 19:45:29 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcombo.c (gtk_combo_set_popdown_strings):
Call gtk_combo_set_popdown_strings() in case
the combo is up currently. (#63535, Skip Montaro)
Tue Feb 26 19:38:14 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init):
Switch control-home/end and home/end with
the idea that scrolled windows more typically contain
vertical sets of controls and to correspond to the bindings
in GtkTreeView.
Tue Feb 26 19:32:42 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtk[hv]vscale.c (gtk_[hv]scale_expose): Chain
up before drawing the scale values so that the number
is drawn in the right place instead of one step
back. (#61743, patch from Satyajit Kanungo)
Tue Feb 26 19:16:28 2002 Owen Taylor <otaylor@redhat.com>
* gdk/win32/gdkkeys-win32.c (gdk_keyval_name):
* gdk/x11/gdkkeys-x11.c (gdk_keyval_name):
Make sure Page_Up, Page_Down get those names, not Prior,
Next.
* gtk/gtkaccelgroup.c (gtk_accelerator_set_default_mod_mask):
OR in the three default modifiers to any value passed
in by the caller, so that the caller won't break the
the default bindings. (#70142, Jody Goldberg, though he
wasn't in favor of this particular way of solving it.)
Tue Feb 26 18:47:44 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_add_mnemonic): Append
mnemonics rather than prepending them so that the
order is typically forward rather than typically
backward. (Partial fix for #52395)
Tue Feb 26 18:38:17 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkaccellabel.c (gtk_accel_label_refetch):
Display any "g_unicode_isgraph()" char literally,
not just latin1. (#65679)
Tue Feb 26 18:01:10 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_grab_focus): Don't
to focus insensitive widgets. (#68203)
* gtk/gtkentry.c (gtk_entry_state_changed): Clear any
current selection if we become insensitive. (#68203)
* gtk/gtkentry.c (gtk_entry_grab_focus): Don't
select the text if the entry isn't editable. (#67203)
* gtk/gtkentry.c: Activate keybindings when not editable,
but supress keybindings that change the text. (#65848, #68203)
* gtk/gtkentry.c (gtk_entry_set_property): Reset the
IM context for the entry when it is made not editable.
Tue Feb 26 17:04:44 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcolorsel.c (update_color): Emit ::color_changed
every time we notify current_color. (Brute force
fix for #72470, Matthias Clasen). Some fixes to improve
reentrancy.
Tue Feb 26 15:04:33 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkentry.c (gtk_entry_enter_text): use
the cursor position _after_ deleting the text
as the position to insert at. (#72717, Jan Mynarik)
2002-02-26 Vitaly Tishkov <tvv@sparc.spb.su>
* gtk/gtktreemodel.c
misprints in documentation for gtk_tree_row_reference_inserted()
and gtk_tree_path_new () are fixed
Tue Feb 26 19:47:16 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (validate_visible_area): take into account
that a path from a rowref can be NULL. (#72623 and #72650)
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_render_or_focus):
let focus_rectangle be the same as cell_area for empty cells (#69900)
Tue Feb 26 10:38:14 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkkeyhash.c (_gtk_key_hash_lookup_keyval): Handle
a keyval of 0, by returning an empty list. (#72617,
Kevin Breit)
Mon Feb 25 22:10:47 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init): Fix
double set of bindings for page-up/down. (#72605, Tor Lillquist)
* gtk/gtkmenu.c (gtk_menu_key_press): Remove consumed modiifers
when setting up accelerator to make accelerators look prettier.
(#65416, Guillermo S. Romero)
2002-02-26 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkkeys-win32.c: Implement the functions that until
now just were non-functional stubs. For "hardware keycodes", we
use Windows virtual keycodes. Not scancodes, although that at
first might seem more low-level and a better match to X11
keycodes.
The Windows API is really mixed up and confused with respect to
scancodes and virtual keycodes. (Surprised?) Some scancodes are
generated by two keys on the keyboard (!), and although the
keyboard messages do have a flag to indicate which key the user
pressed, other API that take a scan code as input don't let you
specify which actual key you mean.
(update_keymap): Function to build a X11-like representation of
the keyboard. Each key has four keysyms: two levels (nonshifted
and shifted) and two groups (normal and with AltGr).
(gdk_keymap_get_direction): Use the codepage corresponding to the
thread's input locale, not the system codepage.
* gdk/win32/gdkglobals.h
* gdk/win32/gdkmain-win32.c
* gdk/win32/gdkprivate-win32.h
* gdk/win32/gdkwindow-win32.h
* gdk/win32/gdkwindow-win32.c: Remove the input_locale and
charset_info fields from GdkWindowImplWin32. Input locale is
per-thread in Windows, and as GDK on Windows really only works
when the GDI interaction all happens in just one thread anyway,
this state can be global. Use globals _gdk_input_locale and
_gdk_input_codepage instead. Set these based on the thread's input
locale (keyboard layout, or which IME is active).
* gdk/win32/gdkevents-win32.c: Set the group and hardware_keycode
fields in GDK key events. On input locale change messages, set
the global state variables, and inform update_keymap() that it
has to rebuild the keymap.
* docs/tutorial/gtk-tut.sgml: Fix typos in pkg-config
invokations. (#72476)
Fixes for #72478:
* gtk/tmpl/gtkprogressbar.sgml: Add note about new GtkProgressBar
API to introduction.
* gtk/gtk-sections.txt: Reorder GtkProgressBar functions to move
undeprecated API to top.
Mon Feb 25 18:59:27 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktooltips.c (start_keyboard_mode): Set the keyboard-mode
flag before popping up the tooltip so that pop it up
in the right place. (#71917, Narayani Pattipati)
Mon Feb 25 22:11:34 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_visible): call
_gtk_tree_view_column_cell_set_dirty when visible, so this column
gets some space allocated. (#70996)
* gtk/gtkliststore.c (gtk_list_store_get_path): add simple
optimization for the tail case
(gtk_list_store_real_set_value): remove unneeded _get_path calls
Sun Feb 24 23:23:28 2002 Owen Taylor <otaylor@redhat.com>
* tests/testselection.c (main): Convert over to using
an GtkInvisible - selections don't work properly
with now NO_WINDOW GtkToggleButton. (Example really
should be using GtkClipboard.)
* gdk/x11/gdkselection-x11.c (gdk_selection_property_get):
Fix problems if sizeof(GdkAtom) != sizeof(Atom). (Unlikely)
* gdk/x11/gdkproperty-x11.c (gdk_property_get): Set
actual_length when converting atoms as well.
(Gregory Merchan, #72074)
2002-02-24 Havoc Pennington <hp@pobox.com>
* gtk/gtkstyle.c (_gtk_draw_insertion_cursor): change to pass in
the cursor direction always, not just when we need an arrow, so we
can flip the cursor around its axis for RTL. Resolves#72372
* gtk/gtkentry.c (gtk_entry_draw_cursor): update for
draw_insertion_cursor change
* gtk/gtklabel.c (gtk_label_draw_cursor): ditto
* gtk/gtktextdisplay.c (gtk_text_layout_draw): ditto
2002-02-24 Alexander Larsson <alla@lysator.liu.se>
* gdk/x11/gdkwindow-x11.c (gdk_window_set_background):
Always NULL out bg_pixmap, even when it used to be None
or parent relative.
2002-02-24 Havoc Pennington <hp@pobox.com>
* gtk/gtktextbuffer.c (parent_class): parent_class variable was
GtkObjectClass instead of GObjectClass
* gtk/gtktextview.c (widget_to_buffer): fix this the way
buffer_to_widget was fixed, to avoid duplicating
the code that computes text_window->allocation.x/y
Sun Feb 24 21:18:20 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtksocket.c (gtk_socket_end_embedding): Fix
off-by-one error. (Pointed out by Anders Carlsson)
Mon Feb 25 01:14:26 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktextlayout.c (find_display_line_above): free iter before
going to done
* gtk/gtktreeview.c (validate_visible_area): free above_path,
(set_destination_row): free path before returning,
(gtk_tree_view_set_drag_dest_row): free current_dest
Sun Feb 24 14:15:45 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextview.c (widget_to_buffer): Take border
width into account.
* gtk/gtklabel.c (get_label_wrap_width): Don't use GdkFont
to compute wrap width ... GdkFont will pull in X11 core
fonts.
Sun Feb 24 00:06:58 2002 Owen Taylor <otaylor@redhat.com>
* Released 1.3.15.
* configure.in: Version 1.3.15, binary, interface age 0.
* NEWS: Updates
* configure.in: Update version requirements.
Sat Feb 23 22:37:23 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkstyle.c (gtk_style_init): Sanity check default
font family name and size.
* gtk/gtkwindow.c (gtk_window_set_default_size): Remove
incorrect comment about the geometry widget.
* gtk/gtkwindow.c (gtk_window_move_resize): Unset the
gtk_window_resize)() information once we've set the size
once, to avoid it coming back next time we queue a resize.
(#72359)
* gtk/gtkwindow.c (gtk_window_move_resize): Remove
setthing of ->need_default_size from here, Havoc
says that it should correspond more or less exactly
to GTK_WIDGET_MAPPED (window).
Sat Feb 23 22:10:52 2002 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreemodel.c (gtk_tree_path_new_first): change new_root to
new_first to avoid confusion.
(gtk_tree_model_get_iter_first): ditto.
Sat Feb 23 20:59:05 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkstyle.c gtk/gtkrc.[ch]: gtk/gtksettings.c gtk/gtkstyle.c:
Patch from Richard Hestilow to add a gtk-font-name GtkSetting.
* gdk/x11/gdkevents-x11.c: Add Gtk/FontName XSETTING.
2002-02-24 Tor Lillqvist <tml@iki.fi>
* gtk/gtkfilesel.c: Move inclusion of <windows.h> before inclusion
of <winsock.h>, to actually get STRICT prototypes for Win32
API. Include glib.h early to get G_OS_WIN32 and G_WITH_CYGWIN.
Don't declare static functions that aren't defined if !HAVE_PWD_H
or if G_OS_WIN32.
(win32_gtk_add_drives_to_dir_list): Remove #if 0 code, reindent.
(gtk_file_selection_get_selections): Don't crash if nothing has
been selected.
2002-02-23 Havoc Pennington <hp@redhat.com>
* gtk/gtktextbuffer.c (save_range): change gravity of start/end
marks so that text added at either end of the range doesn't end up
inside the range.
(gtk_text_buffer_real_insert_range): fix to handle pasting a range
into itself. #71412
Sat Feb 23 19:05:34 2002 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (validate_visible_area): Didn't refind node
when it was NULL. Bug found by Tor Lillqvist.
2002-02-24 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (build_keypress_event,
build_keyrelease_event, gdk_event_translate): Set also group in
the key press/release events, always to zero for now.
2002-02-24 Anders Carlsson <andersca@gnu.org>
* gtk/stock-icons/stock_dialog_error_48.png:
* gtk/stock-icons/stock_sort_ascending_16.png:
* gtk/stock-icons/stock_undelete_24.png:
* gtk/stock-icons/stock_sort_descending_16.png:
Alpha-pad icons so they get the correct size.
Sat Feb 23 16:52:38 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkentry.c: Patch from Matthias Clasen to remove some
excessive ::changed signals for GtkEntry. (#53130)
2002-02-23 Anders Carlsson <andersca@gnu.org>
* gtk/gtkiconfactory.c (get_default_icons): Register 16x16
versions of most icons.
* gtk/stock-icons: Add 16x16 versions
of most icons.
Wed Feb 20 16:44:05 2002 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): delay
scrolling until we try to draw the window.
* gtk/gtktreeview.c (validate_visible_area): Implement
scroll_to_cell.
2002-02-23 Tor Lillqvist <tml@iki.fi>
* gtk/gtk.def: Add missing gtk_file_selection_get_select_multiple.
Remove gtk_tree_view_column_cell_* entry points that were made
private.
Sat Feb 23 15:43:46 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktogglebutton.c: Make button draw depressed whenever
the user clicks / activates it, whether it's off/on/inconsistent.
Sat Feb 23 11:54:12 2002 Owen Taylor <otaylor@redhat.com>
* gtk/*.h gdk/*.h: Massive padding addition to class structures.
* gtk/gtktextmark.h: Fix a FIXME about G_CONST_RETURN.
Fri Feb 22 20:28:18 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkrange.c: Applied patch from Thomas Leonard to make
stepper click to scroll take effect immediately, rather than after
a delay (#67649).
* gtk/gtkrange.c: Remove right-click == step in trough since it
isn't a useful binding and it's a large area to hit accidentally.
(Leave it on the steppers since its more useful there and less
likely to do accidentally.)
Sat Feb 23 03:10:20 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_key_press): honor min_width and
max_width while resizing columns (pointed out by Jorn Baayen)
Fri Feb 22 18:36:45 2002 Owen Taylor <otaylor@redhat.com>
Fixes for AIX compilation from Miroslaw Dobrzanski-Neumann,
#72182.
* demos/gtk-demo/main.c gtk/gtktreeview.c gtk/gtktoolbar.c
gtk/gtkpaned.c gtk/gtkobject.c gtk/gtkcontainer.c
gtk/gtkcolorsel.c gtk/gtkcellrender.c gdk/x11/xsettings-client.h:
Squash trailing commas on enumerations.
* gdk/gdktypes.h: Drop GDK_RELEASE_MASK to 1 << 30 instead
of 1 << 31 to work around AIX compiler problem. (C standard
seems to imply that compiler is required to use an unsigned
type for the enum value in this case.)
* gdk/gdkpixbuf-drawable.c: Fix lvalue casts.
* gtk/gtkwindow.h: Fix use of enum types for bitfields ...
compilers may choose to use a signed type for bitfields.
2002-02-22 Anders Carlsson <andersca@gnu.org>
* gtk/stock-icons/*: Rename icons.
* gtk/stock-icons/Makefile.am: Update for new icon names.
* gtk/gtkiconfactory.c (init_icon_sizes): Set the
GTK_ICON_SIZE_BUTTON size to be 20x20.
(get_default_icons): Change stock names.
2002-02-22 Anders Carlsson <andersca@gnu.org>
* gtk/Makefile.am (HTML_IMAGES): Update for name changes.
Fri Feb 22 22:39:59 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeprivate.h: add last_single_clicked and
last_single_clicked_2 rowrefs and add disable_popdown to the
bitfield
* gtk/gtktreeview.c (gtk_tree_view_destroy): add destroy stuff
for two new rowrefs
(gtk_tree_view_button_press): add some 'advanced' button handling,
so double click is being handled right (double click madness was
discovered by Anders Carlsson)
* gtk/gtktreeview.c (gtk_tree_view_set_property): add missing
break
(gtk_tree_view_class_init): default value of headers_visible
should be TRUE (both pointed out by Damon Chaplin, #71986)
* gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
connect to populate_popup,
(gtk_tree_view_search_disable_popdown): new function,
(gtk_tree_view_real_search_enable_popdown): ditto,
(gtk_tree_view_search_enable_popdown): ditto,
(gtk_tree_view_search_dialog_destroy): check for
gtk-tree-view-popdown-disabled (#71868)
* gtk/gtktreeview.c (gtk_tree_view_set_reorderable): move
->priv->reorderable assignment to bottom. (#72122)
2002-02-22 Havoc Pennington <hp@redhat.com>
* gtk/gtkstyle.c (_gtk_draw_insertion_cursor): subtract 1 from
line endpoint, to avoid cursor dirt in the text widget.
zero-width lines appear to draw the endpoint always. #67999
2002-02-22 Havoc Pennington <hp@redhat.com>
* gtk/gtktextview.c (buffer_to_widget): implement more cleanly by
using text_window->allocation.x/y instead of recomputing it.
Fixes a bug caused by leaving out the border width here.
2002-02-22 Havoc Pennington <hp@redhat.com>
* gtk/gtktextview.c (changed_handler): call
gtk_size_group_queue_resize to avoid invalidating the widget every
time its requisition changes. Instead we use the btree invalid
lines to know what to redraw. Fixes#71429
Fri Feb 22 14:08:38 2002 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkradiobutton.c, gtk/gtkcheckbutton.c, gtkbutton.h,
gtktogglebutton.c: feedback when check and radio buttons are
depressed.
Thu Feb 21 23:02:29 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.[ch]: add keynav handling for unselect all,
focus column header, change focus with arrow keys in column headers,
column reordering, column resizing, small try to fix page up/down
(this fixes#70889, and fixes a great deal of #53580)
Thu Feb 21 16:51:17 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkaccelgroup.c (gtk_accelerator_valid): Add
GDK_ISO_Next_Group/Prev_Group/Level3_Shift/
First_Group/Last_Group to list of invalid accelerators.
(A lot more that should be added, but probably would
want a range mechanism. These are the ones found in
the standard XFree86 config files.)
* gtk/gtkbindings.c (gtk_bindings_activate): Fix problem
that broke bindings for menus.
* gtk/gtkwindow.[ch]: Export _gtk_window_activate_key()
privately.
* gtk/gtkmenushell.c (gtk_menu_shell_key_press): Use
_gtk_window_activate_key(), gtk_bindings_activate_event().
Thu Feb 21 12:24:22 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkctree.c (gtk_ctree_class_init): Remove some workarounds
for +/= and shift key handling.
Wed Feb 20 14:26:47 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkkeyhash.[ch]: Implement "fuzzy" key binding lookups;
allow matches on key and level but not group. Also, implement
ignoring "consumed modifiers correctly."
* gtk/gtkaccelgroup.c gtk/gtkbindings.c: Convert to using
GtkKeyHash.
* gtk/gtkdebug.h gtk/gtkmain.c: Support GTK_DEBUG=keybindings
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Fill in
the group for key release events as well as key press events.
* gdk/gdkkeys.h gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
Rename unused_modifiers to consumed_modifiers, make the docs and
non-Xkb implementation match the Xkb implementation.
* gdk/linux-fb/gdkkeyboard-fb.c gdk/win32/gdkkeys-win32.c: Propagate
doc and parameter name changes.
* gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
XkbTranslateKeyCode doesn't handle LockMask, we need to handle
it ourselves.
* gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Force
<Shift>Tab to give GDK_ISO_Left_Tab, since we need consistency
to allow dealing with ISO_Left_Tab.
* gtk/gtkwindow.c gtk/gtktextview.c gtk/gtkscrolledwindow.c
gtk/gtkpaned.c gtk/gtkcombo.c gtk/gtknotebook.c:
Remove inappropriate uses of GDK_ISO_Left_Tab. (GDK_ISO_Left_Tab
or <Shift>Tab both are equivalent as a binding specifier.)
* gtk/gtkbutton.c (gtk_button_class_init): Make ::activate
GTK_RUN_ACTION, so you can bind an accelerator to it.
* gtk/gtklabel.c (gtk_label_set_uline_text_internal): Call
gdk_unicode_to_keyval on the mnemonic character.
* tests/testgtk.c: Add a test for the new fuzzy key binding matching.
Wed Feb 20 21:52:13 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkselection.c (gtk_selection_request): Set the property
as type ATOM_PAIR, not ATOM. (#72074, Gregory Merchan.)
* gdk/x11/gdk{property,selecton}-x11.c: Auto-convert properties
of type ATOM_PAIR as well as properties of type ATOM.
Thu Feb 21 00:31:41 2002 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkspinbutton.c: Many cleanups and fixes. Draw exclusively
in expose handler. Feedback when buttons are depressed.
* gtk/gtkstyle.c: update for changes in gtkspinbutton.c. Fix
spinbuttons for RTL langauges.
Wed Feb 20 23:00:08 2002 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkstyle.c: new radio buttons. handle inconsistent state for
check- and radiobuttons.
* gtk/theme-bits/check-13-inconsistent.png,
gtk/theme-bits/radio-13-inconsistent.png: new files
* gtk/theme-bits/radio-13.png: new radio buttons
* gtk/theme-bits/Makefile.am (EXTRA_DIST): add new
-inconsistent.png files
Wed Feb 20 16:19:49 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkevents-x11.c: Add a XSETTING mapping for
gtk-can-change-accels. (#70218, Thomas Leonard.)
2002-02-20 Sven Neumann <sven@gimp.org>
* gtk/gtkcolorsel.c (gtk_color_selection_finalize): check
handler_id before disconnecting the signal handler since it might
have never been connected if the GtkColorSelection is destroyed
before it was realized.
* docs/tutorial/gtk-tut.sgml: Fold back Svens g_signal fixes from
the examples.
* docs/tutorial/gtk-tut.sgml, examples/progressbar/progressbar.c,
examples/progressbar/Makefile: Make the progressbar example
deprecation-clean.
Tue Feb 19 22:10:59 2002 Kristian Rietveld <kris@gtk.org>
* gtktreeviewcolumn.c (gtk_tree_view_column_mnemonic_activate): new
function
(gtk_tree_view_column_create_button): use g_signal_* instead of
gtk_signal_*, hook up _mnemonic_activate callback
(gtk_tree_view_column_update_button): use
gtk_label_set_text_width_mnemonic instead of gtk_label_set_text
(#69095)
* gtktreeview.c (gtk_tree_view_class_init): remove key bindings
for C-f and C-b, let treeview search use C-f (instead of C-s)
(#61886)
* gtkrc.key.emacs: add some GtkTreeView bindings
2002-02-19 Sven Neumann <sven@gimp.org>
* examples/*/*.c: finish conversion to g_signal_* functions by
using G_OBJECT and G_CALLBACK and other assorted changes.
Tue Feb 19 17:36:31 2002 Kristian Rietveld <kris@gtk.org>
* gtktreeprivate.h, gtktreeviewcolumn.[ch], gtktreeview.c: change
gtk_tree_view_column_cell_render,
gtk_tree_view_column_cell_focus,
gtk_tree_view_column_cell_draw_focus and
gtk_tree_view_column_cell_set_dirty to be private functions.
* gtktreeviewcolumn.[ch]: add install_handler argument to
_cell_set_dirty to control if _mark_rows_col_dirty (which calls
install_presize_handler) gets called, set widths correctly so
autosizing works (#71870)
* gtktreeview.c (gtk_tree_view_column_autosize): new function,
(gtk_tree_view_button_press): make double click on column
separator resize the row (#71870)
(gtk_tree_view_get_dest_row_at_pos): change DnD threshold to 33%
(#71869, suggestion by Anders Carlsson)
Mon Feb 18 23:16:16 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmain.[ch]: Add routines _gtk_find_module(),
_gtk_get_module_path() to look up a module of an arbitrary type in
a standard fashion. (#68474)
* gtk/gtkrc.c: Make module_path keyword warn and do
nothing. Remove the im_module_path keyword.
* gtk/gtkrc.c (gtk_rc_get_im_module_path): Fix
to return the standard path instead of one determined
from im_module_path and GTK_IM_MODULE_PATH.
* gtk+-2.0.pc.in: Add gtk_host to go along with gtk_binary_version.
Mon Feb 18 18:27:45 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Select
the right item in the family list. (Reported by Mark Patton,
Patch from Satajyit Kanungo, #64240)
* gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Update
the size and face entry lists as well, fix memory leak.
(Also #64240)
* gtk/gtkfontsel.c (gtk_font_selection_show_available_sizes):
Allow fractional sizes, unselect the selected row if none
matches.
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_focus): Fix
a bug where the scrolled window would always get focus
when focusing out of the child.
2002-02-18 Hans Breuer <hans@breuer.org>
* gdk/win32/gdkevents-win32.c : process WM_PAINT messages
for bg_pixmap == GDK_NO_BG, fixes The GIMP's canvas
rendering glitches on win32
* gdk/win32/gdkinput-win32.c : use g_object_new to create
GdkDevice instead of g_new
* gtk/gtkpaned.c : make LAST_SIGNAL the last in enum.
This avoids to smash totally unrelated static data and
resulting random crashes. (as reported on gtk-devel-list,
2002-02-10 : testgtk crashes)
* gtk/gtk.def : add new file selection entry points
Mon Feb 18 17:34:43 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkentry.c gtk/gtktextview.c: Remove support for
the poorly defined text/plain type for now. (#55117)
Mon Feb 18 16:44:00 2002 Owen Taylor <otaylor@redhat.com>
* docs/widget_system.txt: Add some docs for GTK_NEED_REQUEST
GTK_NEED_ALLOCATION.
* gtk/gtkmenu.c (gtk_menu_popup): Scroll the menu
to the right place before showing the menu to
avoid spurious enter events.
* gtk/gtkmenu.c (gtk_menu_realize): Only scroll
if there is an active menu item.
* gtk/gtkwidget.c (gtk_widget_init): Set RESIZE_NEEDED
ALLOC_NEEDED initially.
2002-02-18 Manish Singh <yosh@gimp.org>
* Makefile.am: don't comment out the lines to dist the packer
example, just simply remove it. (the continuation line confused
make even though it was in the comment, barf)
Mon Feb 18 14:40:22 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcombo.c (gtk_combo_popdown_list): Fix problems
with stuck grab (#60132, reported by Nicolas Setton) and
stuck prelighting. Combine duplicated code in three
places for popping down the list.
Mon Feb 18 14:17:59 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkclist.c (adjust_adjustments)
* gtk/gtklayout.c (gtk_layout_size_allocate)
* gtk/gtktextview.c (gtk_text_view_size_allocate)
* gtk/gtktreeview.c (gtk_tree_view_size_allocate)
* gtk/gtkviewport.c (gtk_viewport_size_allocate):
Standardize on a page increment of page minus 1 line
rather than half a page (#51027, Eric Fischer)
* gtk/gtkviewport.c (gtk_viewport_size_allocate):
Change step increment to be 0.1 * page_size height rather than
a fixed 10 pixels.
Mon Feb 18 12:31:52 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress):
Don't commit unless we got at least one hex digit. (#70619)
Sun Feb 17 21:30:49 2002 Owen Taylor <otaylor@redhat.com>
* Released 1.3.14
* configure.in: Version 1.3.14, interface, binary age 0.
* gdk/gdkregion-generic.c (miSubtractO): Fix out-of-bounds
read. (#71619, reported by Morten Welinder)
* gtk/gtkmenu.c (gtk_menu_class_init): Fix setting default.
* gtk/gtkfilesel.c (gtk_file_selection_class_init): Add
a select_multiple property to go along with thenew
get/set_select_multiple.
* gdk/gdkwindow.c: Patch from Soeren Sandmann to improve
update debugging code. (#71703)
2002-02-17 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkcolor-win32.c (free_colors): Don't set the
PC_EXPLICIT flag for unused palette entries, that might have
undesired side effects. Just set them to black. Black is always
present in a palette, so having superfluous black entries won't
cause any extra allocations from the system palette either when
realized.
* gdk/win32/gdkevents-win32.c
(gdk_event_translate:WM_QUERYNEWPALETTE): Don't do anything if the
system visual is static color, i.e. the user has told GDK to use
just the 16 static colors. In that case no need to redraw
anything, as the colors are static and by definition always
correctly mapped in the system palette.
(WM_PALETTECHANGED): Ditto, no need to call UpdateColors() either.
* docs/tutorial/gtk-tut.sgml, examples/paned/paned.c,
examples/paned/Makefile: Make the paned example deprecation-clean.
* various ChangeLog files: correct my email.
2002-02-16 Manish Singh <yosh@gimp.org>
* tests/testgtk.c: redid the filesel test. Added a way to set select
multiple as a toggle button, and made show/hide fileops toggle
buttons as well. get_selections() is called on OK and all the
filenames selected are printed.
2002-02-17 Tor Lillqvist <tml@iki.fi>
* gdk/win32/*.c: Massive changes. Too many to list here, but I'll
try a summary:
1) Unify GdkPixmap and GdkImage implementation: For each
GdkPixmap, allocate a GdkImage, and vice versa.
GdkPixmapImplWin32Data has a pointer to the GdkImage.
GdkImage::windowing_data is a pointer to the GdkPixmap.
This simplifies many pixmap and image related functions a lot, and
reduces duplicated code snippets. For instance, there is only one
place in gdk/win32 where CreateDIBSection() is called, in the
function _gdk_win32_new_pixmap(). Converting a bitmap (GdkPixmap)
to a Windows region is almost trivial, with the bitmap bits being
readily accessible in the associated GdkImage.
All blitting between GdkPixmaps, GdkWindows and GdkImages goes
through handled the _gdk_win32_blit() function, which calls
different functions to handle the cases of blitting from pixmaps,
inside windows (scrolling), or from windows, which all require
somewhat different handling.
2) Support 256-color mode. This has long been very broken, now it
works more or less OK. Keep the logical palette for each colormap
as small as possible while allocating and freeing colors. Select
and realize the logical palette associated with a GdkColormap into
a DC before drawing or blitting.
When the display is in 256-color mode, make it possible for the
user to override the size of the palette(s) used with either the
GDK_WIN32_MAX_COLORS environment variable, or a -max-colors
command line option. It is possible to reduce the palette size all
the way down to using just the 16 static colors (which causes the
system visual to be of type GDK_VISUAL_STATIC_COLOR. This could
possibly be useful if one desperately wants to avoid color
flashing. (Note that in order for this to work properly, an as of
yet not commited fix to gdkrgb.c is needed.)
Handle the palette messages. On WM_PALETTECHANGED, call
UpdateColors() for the given window hierarchy. Do this only if a
window in some other top-level window hierarchy caused the palette
change (realized a palette). Do this max five times in a row (an
arbitrarily chosen limit), though, otherwise redraw by generating
expose events. On WM_QUERYNEWPALETTE, cause a redraw of the whole
window hierarchy by generating GDK_EXPOSE events.
3) Code cleanup in general. For instance, remove the "emulated"
X11 structs ColormapStruct, Visual and XStandardColormap. Use the
new GDK_DEBUG_* flags for debugging output in the relevant source
files. Remove the unused colormap hash table in gdkcolor-win32.c
4) Plug some resource leaks.
2002-02-14 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkdnd-win32.c (gdk_dropfiles_filter): Use
g_filename_to_uri() to actually create legal URIs in the
text/uri-list data.
* examples/*/Makefile (CFLAGS): add deprecation guards.
* docs/tutorial/gtk-tut.sgml, examples/*/*.c: make most examples
deprecation-clean; the major offenders right now are the examples
that make heavy use of completely deprecated or broken widgets:
list, tree, text, pixmap, paned and progressbar. These will have
to be redone from scratch.
* demos/Makefile.am (INCLUDES): add -DGDK_PIXBUF_DISABLE_DEPRECATED.
Sun Feb 17 00:13:06 2002 Kristian Rietveld <kris@gtk.org>
This commit lands the 'dy patch'.
* gtk/gtktreeview.c (validate_rows_handler): update top_row or dy,
(gtk_tree_view_top_row_to_dy): new function,
(gtk_tree_view_row_changed): update top_row or dy,
(gtk_tree_view_rows_reordered): update top_row
* examples/extract.awk: rearrange rules to not emit the example
start and end markers.
* docs/tutorial/gtk-tut.sgml: turn the start and end markers into
SGML comments, so they don't clutter the formatted tutorial.
2002-02-16 Havoc Pennington <hp@pobox.com>
* gtk/gtkwindow.c (gtk_window_parse_geometry): take
GDK_HINT_RESIZE_INC into account, and handle negative coordinates
correctly. (Can't email Owen - hope this is OK.)
Fri Feb 15 20:09:45 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkscrolledwindow.[ch] gtk/gtkmarshallers.list:
Add key bindings on GtkScrolledWindow for arrow keys,
PageUp/PageDown Home/End to scroll the window.
Bind Control-[Shift]-Tab to focus out of the scrolled
window entirely. Allow the scrolled window to be
focused if no child can be focused. (#63480)
* gtk/gtkwidget.c (gtk_widget_hide): Remove the REALIZED()
check - if we have visible but not mapped widgets
(inside a unshown notebook tab, for instance), we need
to track their size. (#65087, reported by Damon Chaplin.)
* gtk/gtkcolorsel.c (palette_change_color): Shut up
a warning.
2002-02-16 Tor Lillqvist <tml@iki.fi>
* gdk/win32/rc/Makefile.am (gdk-win32res.lo): Depend on gtk.ico.
* gdk/win32/rc/gtk.ico: Use the real GTK logo. Thanks to Jernej
Simoncic for providing the nice multi-resolution .ico file.
Fri Feb 15 19:38:00 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreestore.c (gtk_tree_store_clear_traverse): new function
(gtk_tree_store_clear): traverse the tree, so we emit row_deleted
for every node. This way we don't have confused row refs crashing the
application. (#70631)
2002-02-14 Richard Hult <rhult@codefactory.se>
* gtk/gtkpaned.c (gtk_paned_enter): Only queue a draw on the
handle, not the whole widget. #71530.
(gtk_paned_leave): Likewise.
2002-02-14 Jody Goldberg <jody@gnome.org>
* gtk/gtkrange.c (gtk_range_class_init) : add new signal
'adjust_bounds' to potentialy change the bounds before assigning the
new value and camping it to the existing bounds.
(gtk_range_internal_set_value) : used here. #68800.
* gtk/gtkmarshalers.list : add VOID:DOUBLE