* gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
* gdk/win32/gdkevents.c: Fix long-standing bug in key
events. The key.string wasn't zero-terminated, still we strdup'ed
it in gdk_event_copy(). Synthesize crossing events for button
events before possible propagation.
* gdk/win32/gdkwindow.c: Log gdk_window_set_title.
* gdk/win32/makefile.cygwin
* gtk/makefile.cygwin: Use new DLL naming style for the
GCC-compiled ones.
* gdk/win32/makefile.msc
* gtk/makefile.msc: Cosmetics mostly.
* gtk/gtk.def: Add missing entry points.
* gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
* gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
or height is zero. Don't print a warning if Pie or Arc fails, they
always fail (?) for very narrow ellipses.
* gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
the part or the destination window corresponding to source area
outside of the source drawable's boundary.
* gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
anything if less than two points.
* gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
return NULL. Gtk cut-and-paste inside a single program works
better this way. (It always gets the clipboard contents from
Windows, not from its own copy, which is cleared anyway. I can't
say I fully understand what happens... Emulating the X selection
and property stuff is a bit of a mess.)
* gdk/win32/gdkevents.c
* gdk/win32/gdkproperty.c: A bít more verbose logging.
* gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
that never got deleted). Revamp gdk_region_shrink.
* gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
after use.
* gtk/gtk.def: Add some missing entry points.
* gtk/gtkrc.c: Strip trailing directory separator from pixmap path
component.
* README.win32: Mention using GNU gettext.
* config.h.win32: Enable NLS stuff.
* gtk/makefile.msc: Use GNU gettext.
* gdk/win32/gdkdnd.c: Minor header reorg.
* gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
cosmetics.
* gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
* gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
* gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
SafeAdjustWindowRectEx. Don't override all calls to
AdjustWindowRectEx by it, but use it only in two places: When
creating a new top-level window and when moving a top-level
window.
Use screen coordinate rectangle, not client rectangle, in
gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
when we try to place a window so that the decoration (mainly,
title bar) isn't visible.
These changes fix the bug that showed up for instance as the
GIMP's saved top-level windows moving right and down (by an amount
equal to the window decoration) for each session. This bug showed
up also in testgtk's "Saved Position".
gdk_window_resize also redone a bit.
* gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
gdkx.h to a gdk subdirectory, so that applications can include
these with <gdk/*.h> without trouble.
* gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
(gdk_image_destroy): Plugged resource leak, some GdkImages didn't
have their bitmap destroyed.
* gdk/win32/gdk.def: Add gdk_root_parent.
gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
* gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
* config.h.win32: Changes for gcc.
* gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
* gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
* gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
* gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
Protect shl stuff unavaiilable with mingw32 headers.
* gdk/win32/gdkevents.c: Fix typo.
* gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
* gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
* gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
* gdk/win32/gdkprivate.h: Make up for some stuff missing from
the mingw32 headers.
* gdk/win32/makefile.msc: Use latest Wintab kit and glib.
* gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
* gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
Test for NATIVE_WIN32, not _MSC_VER.
* gtk/gtkmain.c: No use warning about developer version on Win32,
there aren't any non-developer versions anyhow.
* gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
* gtk/makefile.msc: Use pthread from another directory. Minor other
changes.
Mon Mar 8 12:52:53 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
when gtk_widget_grab_default() is called for a widget that
is not within a GtkWindow.
Sat Apr 10 13:52:54 BST 1999 Tony Gale <gale@gtk.org>
* docs/gtk_tut.sgml, examples/clist.c: use a
scrolled window in the clist example. Minor
tutorial fixes.
1999-03-30 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
* gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
compile with unknown value of GDK_WINDOWING
* gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
after the rule is fired.
(install-exec-local): Install gdkconfig.h only if the contents are
different from the currently installed gdkconfig.h.
Rationale:
`make install-exec' is meant to install files that go into
$exec_prefix, which includes `gdkconfig.h'. However, developers use
`make install-exec' when they know that none of the headers have
changed, to prevent needless recompiles of other packages. My
previous change of installing `*config.h' during `make install-exec'
undermines this, even though it is the right thing to do. So, in the
spirit of "do the right thing first, optimize later", here's the
optimization.
* gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
declaring gdk variables exported/imported from the DLL. New image
type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
GDK_DRAG_PROTO_OLE2.
* gdk/gdk.h: Merge in Win32 version: Two new functions,
gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
declared only for the Win32 version, but could be in the X11
version as well. (Needed for a Xlib-less gdk_imlib.)
gdk_color_hash should have only one parameter. Declare
gdk_threads_mutex with GDKVAR.
* gdk/gdkcolor.c (gdk_color_hash): As a hash function should have
just one parameter.
* gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
per pixel, not bits.
* gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
Fetch bpp (which means bits-per-pixel here) from another place on
Win32. Accept also depth==32 (which we might get on Win32) with
bpp==32.
* gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
in the backend-dependent directory, not in the common gdk
directory.
* gtk/testgtk.c: Ditto. Also, don't use ../gdk patchs to gdk
headers.
Wed Mar 17 05:06:49 1999 Tim Janik <timj@gtk.org>
* gtk/gtkmain.c (gtk_init_check): tell people that they don't really
want to use the Gtk+ devel version (which is true, and yes - even i am
currently working with the 1.2.x branch). so everyone reading this, you
probably want to issue
cvs checkout -r glib-1-2 glib
and
cvs checkout -r gtk-1-2 gtk+
as your next two comands.
Wed Mar 17 02:49:32 1999 Tim Janik <timj@gtk.org>
* configure.in: build gtkcompat.h from gtkcompat.h.in instead of
gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
* gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
file. strongly deprecated the GTK_HAVE_* macros, we provide
GTK_CHECK_VERSION() for people that need to check for certain
Gtk+ versions.
* gtk/gtkcompat.h: removed this from CVS.
* gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
idea right from the start, it just didn't seem like that back then.
Wed Mar 17 01:46:28 1999 Tim Janik <timj@gtk.org>
* merges from gtk-1-2:
Tue Mar 16 17:43:33 1999 Tim Janik <timj@gtk.org>
* gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
item factory class has been created.
(gtk_item_factory_parse_rc): likewise.
* gtk/gtkmenu.c:
keep proper references for old_active_menu_item.
(gtk_menu_reparent): unset the usize of the new parent,
so the menu can sanely be size requested and we don't get nasty screen
artefacts upon next reparentation.
(gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
enter notify. only synthesize enter notifies if the pointer really is
inside the event window.
(gtk_menu_popdown): use gtk_menu_shell_deselect().
(gtk_menu_popup): move the background setting stuff into
gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
* gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
gtk_menu_shell_select_item() to select the new item.
(gtk_menu_shell_deselect): export this function, so gtkmenu.c can
do the right thing for deselection as well.
Sat Mar 15 20:10:33 1999 Tim Janik <timj@gtk.org>
* gtk/gtkwidget.[hc]:
(gtk_widget_accelerators_locked): return whether a widget's accelerators
are locked.
* gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
existing accelerators if the widget's accelerators are locked.
Sat Mar 14 19:44:05 1999 Tim Janik <timj@gtk.org>
* gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
* gtk/gtkmenu.c: truely forward key press and key release events to
the menu widget from the toplevel or tearoff window. we can't simply
connect to that, we need to stop further processing of the events as
well.
Sat Mar 13 13:14:17 1999 Tim Janik <timj@gtk.org>
* gtk/gtkmenu.c:
(gtk_menu_key_press): pass event->keyval, event->state to
gtk_accelerator_valid, instead of event->keyval twice.
refuse to install single letter accelerators for menus that use
single letter shortcuts.
* gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
gtk_menu_ensure_uline_accel_group().
* gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
which will always return an uline accel group, made
gtk_menu_get_uline_accel_group() return NULL if the group isn't
yet created.
Mon Mar 15 01:03:27 1999 Lars Hamann <lars@gtk.org>
* gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
* gtk/gtkclist.c (gtk_clist_column_title_passive):
Leave button sensitive, trap button_press, button_release,
motion_notify, enter_notify and leave_notify events instead.
(gtk_clist_column_title_active): disconnect event handler.
(gtk_clist_drag_data_get): fixed memory leak. Reported by
Guillaume Laurent <glaurent@worldnet.fr>
Wed Mar 10 23:49:55 1999 Lars Hamann <lars@gtk.org>
* gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
width/height mixups.
* gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
if needed.
Wed Mar 10 00:11:32 1999 Tim Janik <timj@gtk.org>
* gtk/testgtk.c (create_item_factory): unref the item factory after
window's destruction.
* gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
count on the menu shell around the menu item's activation, since the
signal emission may cause menu shell destruction.
* gtk/gtkitemfactory.c:
the previous code leaked one accel group per menu. we use
gtk_menu_get_uline_accel_group() now to fix that, and with that
also create the underline accelerator group of the menus only if
required (i.e. an underline accelerator has been specified).
(gtk_item_factory_construct):
(gtk_item_factory_create_item): removed code that would create an
extra accel group for the menu (and leak references).
(gtk_item_factory_create_item): adapted the underline accelerator
installation code to properly feature gtk_menu_get_uline_accel_group().
* gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
menu->accel_group, this may return NULL if the accelerator group
hasn't been set yet.
added gtk_menu_get_uline_accel_group() to retrive the underline
accelerator group of the menu, this will be created on demand
and proper care is taken about its reference count.
* gtk/gtkitemfactory.h:
* gtk/gtkitemfactory.c:
dumped the approach of keeping a widgets by action list on the
factory since the factory<->widget destroy negotiation didn't work
and would be hard to get going at all. instead we keep a list of
GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
persistant throughout a program's life time).
also, i removed the static const gchar *key_* variables, and made
them inline strings (they weren't actually used anyways).
(gtk_item_factory_add_item): update ifactory->items.
(gtk_item_factory_destroy): destroy ifactory->items (and remove
the item factory pointer from the remaining ifactory widgets).
(gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
list to find the widget.
(gtk_item_factory_get_item): new function that works around
gtk_item_factory_get_widget() limitations, this function will only
return menu items, even for <Branch> entries.
Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
* gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
font hash table, if we have a GdkFontPrivate entry for this font
already, simply increment its reference count, provided by Olaf Dietsche
<olaf.dietsche+list.gtk@netcologne.de>.
* gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
Sun Mar 7 06:13:29 1999 Tim Janik <timj@gtk.org>
* gtk/gtkcontainer.c:
(gtk_container_add_with_args):
(gtk_container_addv):
(gtk_container_add): before adding a child to a conatiner, make sure
it is (default) constructed, this is neccessary because under certain
circumstances the child will get relized and mapped immediatedly, in
which case it has to be constructed already.
Mon Mar 1 17:58:21 1999 Tim Janik <timj@gtk.org>
* gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
values > 1 as TRUE also.
* configure.in: Check for lstat.
* config.h.win32: Add non-definition of HAVE_LSTAT, just for
completeness.
* gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
* gtk/gtk.def: Removed CRs.
* gtk/makefile.msc: Correct include path to Win32 GDK version (in
..\gdk\win32).
* gdk/win32/makefile.msc: Correct upwards relative paths.
Mon Mar 15 03:38:34 1999 George Lebl <jirka@5z.com>
* gtk/gtkdnd.c: (gtk_drag_highlight) swap the
gtk_drag_highlight_expose and gtk_drag_highlight_paint since
it was connecting a void function to expose_event and the int
returning function to the draw signal
1999-03-14 Jeff Garzik <jgarzik@pobox.com>
* configure.in:
Use correct path to libgmodule.la when ref'ing uninstalled copy
of glib. (Already in stable branch, Bug #417)
should break on Unix/X11.
Win32 merge and general portability stuff:
* acconfig.h,configure.in: Check for <sys/time.h>.
* gdk/win32: New directory (actually, been there for a while).
* gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
NATIVE_WIN32, and use these. Always case fold on Win32. No
backslashed escapes on native Win32.
* gtk/{gtk.def,makefile.msc}: New files.
* gtk/Makefile.am: Add above new files.
* gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
instead of <strings.h>.
* gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
<unistd.h> appropriately.
* gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
Use ABS() (from <glib.h>) instead of abs().
* gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
of gtk (and thus glib) headers, so that WIN32 will be
defined. With MS C, include <direct.h> for mkdir prototype.
* gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
some casts, needed by MS C.
* gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
implemented).
* gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
<X11/Xlocale.h> only on X11 platform, otherwise <locale.h>. Use
G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
* gtk/gtkmain.h: Mark variables for export/import on Win32.
* gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
the event is not a hint, or its window is not the slider. Needed
on Win32, at least.
* gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
a subdirectory of the Windows directory as gtk system
configuration directory.
* gtk/gtkselection.c: No chunks on Win32.
* gtk/gtksocket.c: Not implemented on Win32.
* gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
* gtk/makeenums.h: Include gdkprivate.h after gdk.h.
* gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
1999-03-13 Raja R Harinath <harinath@cs.umn.edu>
* configure.in (gdk_wc): Move widechar tests from `glib' to here,
since those were meant only for gdki18n.h.
* gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
for widechar tests.
* gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
configure generates glibconfig.h. Currently it only defines what
windowing API GDK uses, and on Unix (where configure scripts are
used), it's always X11...
Include gdkconfig.h in gdktypes.h.
gdkconfig.h is installed in @libdir@/gtk+/include (like glibconfig.h
is in @libdir@/glib/include). (This might be debatable?) Add that to
gtk-config --cflags.
Merge in Win32 changes to gtkfontsel.c
* configure.in acconfig.h: Check for dirent.h and pwd.h.
* gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
expansion (based on HAVE_PWD_H), allow for drive letters UNC
names not handled yet. Also, code from Craig Setera's port to
Win32 that uses cygwin.dll
Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org>
* gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
font hash table, if we have a GdkFontPrivate entry for this font
already, simply increment its reference count, provided by Olaf Dietsche
<olaf.dietsche+list.gtk@netcologne.de>.
* gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
1999-03-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
the number of calls to gdk_draw_point() (and thus to X) by
clipping the points by hand.
* gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
the clip parameter.
(gtk_handle_box_paint): Only paint the handle if the expose area
intersects it.
* gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to
GtkSpinButton, "input" and "output", to make the output more flexible.
The user has to provide a mapping between adjustment->value and the
output string (and vice versa, if the spin button is editable).
See testgtk for examples.
Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org>
* ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
new one.
* configure.in: set gtk+ version to 1.3.0.
Incremented version to 1.2.0. -Shawn <amundson@gtk.org>
Also:
Wed Feb 24 05:26:20 CST 1999 Shawn T. Amundson <amundson@gtk.org>
* gtk/gtkitemfactory.h: added a dummy gpointer to
GtkItemFactoryClass for Tim Janik.
Mon Feb 22 21:22:11 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcontainer.h gtk/gtkwidget.h: Added some
padding to class structures to allow addition
of signals without breaking binary compatibility.
Thu Feb 25 13:38:38 1999 Tim Janik <timj@gtk.org>
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): still
request the extra width or height if the corresponding scrollbar is
already visible (the change from 09:50 needs to apply to policy ==
GTK_POLICY_AUTOMATIC only).
Thu Feb 25 11:27:36 1999 Tim Janik <timj@gtk.org>
* TODO: updates, i left the text widget related portions in there,
to serve as a guide line for things to watch out for when it gets
reimplemented.
Thu Feb 25 09:50:38 1999 Tim Janik <timj@gtk.org>
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): don't add
extra width or height if the requested size is mandatory (i.e. set
through child->usize).
Thu Feb 25 02:13:20 CST 1999 Shawn T. Amundson <amundson@gtk.org>
* gtk/gtkmenu.[ch]: New function gtk_menu_reorder_child()
from Tim Janik.
This will be used in GIMP, so it is tested there.
Thu Feb 25 00:48:51 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfontsel.c: Don't access *bitmapped_sizes
if nbitmapped_sizes == 0. (Pointed out by
zucchi@zedzone.fsi.com.au (Michael Zucchi))
Wed Feb 24 23:12:09 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.h gtk/gtkclist.c: Make prototypes
for drag_data_get and drag_data_received handlers
match the types used for gtk_singal_new; time needs
to be a uint, not a uint32.
Wed Feb 24 20:34:59 1999 Owen Taylor <otaylor@redhat.com>
* README: Changed bug reporting instructions to
describe using the GNOME bug tracking system.
Wed Feb 24 19:08:51 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkclist.c (draw_cell_pixmap): Unset the clip
mask for the GC if we set it. (Patch from
Lars Hamann <lars@gtk.org>)
Thu Feb 24 23:58:44 1999 Tim Janik <timj@gtk.org>
* gtk/gtksignal.c (gtk_signal_handler_pending_by_id): added function
to check if a specific signal handler connection exists (similar to
gtk_signal_handler_pending_by_func). and yes, this is a neccessary
addition, since without this function, signal handlers can not be
(un)blocked or disconnected in a generic fashion without producing
g_warnings().
made gtk_signal_get_handlers() an inline function since it's used in
a lot of places, especially within signal emission.
Wed Feb 24 19:35:15 1999 Tim Janik <timj@gtk.org>
* gtk/gtktext.c (gtk_text_key_press): if the widget is not editable,
don't silently eat up GDK_Return, GDK_Home and GDK_End, return FALSE
instead so the user can still hook up key bindings.
Wed Feb 24 11:19:12 1999 Tim Janik <timj@gtk.org>
* gtk/gtkwidget.c (gtk_widget_size_request): warn about
&widget->requisition, even for toplevels.
* gtk/gtkwindow.c (gtk_window_move_resize): request size into an
automatic variable and check if our size has changed.
when we decide to reallocate everything, we need to resize our
own GdkWindow as well.
* gtk/gtkmain.c:
* gtk/gtkobject.c: hack time, make --gtk-debug=objects work even
after gtk_type_init(), this is to "fix" gnome's arg parsing oddities.
* gtk/gtktypeutils.h: don't segfault in GTK_CHECK_CLASS_TYPE and
GTK_CHECK_TYPE upon NULL pointers.
* gtk/gtklayout.c: removed bogus prototypes of gtk_layout_gravity_works,
gtk_layout_set_static_gravity, gtk_layout_add_child_cb and
gtk_layout_remove_child_cb to shut up compiler.
* gtk/Makefile.am: added an empty rule
gtkrc:
:
so make doesn't try to "update" gtkrc from gtkrc.c.
Wed Feb 24 05:53:15 CST 1999 Shawn T. Amundson <amundson@gtk.org>
* gtk/Makefile.am: removed gtkrc rule added by
Sergey Panov, because GTK+ no longer built. We
don't need to install an empty gtkrc anyway.
Tue Feb 23 17:52:37 1999 Tim Janik <timj@gtk.org>
* gtk/gtkitemfactory.c (gtk_item_factory_create_item): fix implicit
branch creation, we need the *real* parent path for this and
gtk_item_factory_parse_path() only returns the parent path with "_?"
stripped off.
Mon Feb 22 19:06:30 1999 Owen Taylor <otaylor@redhat.com>
* gdk/gdkdnd.c (xdnd_send_*): When sending events to
windows with a proxy, set the window field in the
sent event to the original window, not to the proxy.
(This gives consistency with Motif, and also provides
information to the destination that it wouldn't have
otherwise).
* gtk/gtkdnd.c: Fixed some refcount leaks for windows.
* gdk/gdkdnd.c (xdnd_send_xevent): When sending
Xdnd event to the root window, set the event mask
to ButtonPressMask. Hopefully, this should give us
compatibility with kfm, if it uses the Qt style
of root window drops.
Mon Feb 22 08:45:10 GMT 1999 Tony Gale <gale@gtk.org>
* docs/gtk_tut.sgml:
- Complete the ProgressBar API
- Fix the CList example code
* examples/clist/clist.c, examples/progressbar/progressbar.c:
Update from tutorial
Sun Feb 21 17:14:44 1999 Owen Taylor <otaylor@redhat.com>
* gdk/gdkwindow.c (gdk_window_set_geometry_hints): Always
set the max width or height to at least 1, since 0
triggers bugs in some window managers. (The window
"pops out" of the frame in fvwm)
Sun Feb 21 16:16:22 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkscrolledwindow.c gdk/gdkfont.c gdk/gdkim.c:
Changed warnings from g_message() to g_warning().
* gdk/gdkim.c (gdk_ic_destroy): Changed g_print
to g_message within GDK_NOTE()
* gtk/gtkcolorsel.c gtk/gtkhandlebox.c:
Removed some leftover debugging printfs.
Sun Feb 21 15:59:55 1999 Owen Taylor <otaylor@redhat.com>
* gdk/MwmUtil.h gdk/gdkwindow.c: Account for the
fact that Xlib expects format == 32 to be a long,
even on 64-bit architectures.
[ patch from George Lebl (jirka@5z.com) ]
Sun Feb 21 14:21:46 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c: removed debugging statements
about embedded XID's. They could have been
moved to the new PLUGSOCKET debug key, but they weren't
really useful anyways.
* gdk/gdk.h: Added gdk_error_trap_push/pop to provide
a clean interface to the gdk_error_code functionality
of trapping X errors.
* gtk/gtkplug.c gtk/gtksocket.c: Add error
traps around accesses to foreign windows.
Sun Feb 21 15:37:25 1999 Tim Janik <timj@gtk.org>
* gtk/gtkwindow.h: marked gtk_window_set_focus, gtk_window_set_default,
gtk_window_remove_embedded_xid and gtk_window_add_embedded_xid as
internal functions.
Sun Feb 21 11:39:06 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtktext.c (find_line_containing_point): Revise
algorithm for scrolling backwards. This one might actually
work with one-line-high Text widgets.
* gtk/gtkmain.c: Removed a misplaced comment, a few
formatting cleanups.
Sat Feb 20 20:59:25 1999 Tim Janik <timj@gtk.org>
* gtk/gtkwindow.c: hm, set_modal doesn't really work with random
gtk_grab_add/gtk_grab_remove calls. either the window user uses
the set_modal interface or he places grab_add/grab_remove on his own.
(gtk_window_set_modal): enforce modality state either way.
(gtk_window_hide): revert previous change.
Sat Feb 20 20:04:48 1999 Tim Janik <timj@gtk.org>
* gtk/gtkcalendar.c (gtk_calendar_button_press): increment years and
months by two not three on double clicks, patch provided by Nick Lamb
<njl98r@ecs.soton.ac.uk>.
Sat Feb 20 19:44:36 1999 Tim Janik <timj@gtk.org>
* gtk/gtkwindow.c: added ::modal argument.
(gtk_window_hide): reset window->modal from the current grab state
(this is only relevant when grab_add/grab_remove is called on the
window by bypassing gtk_window_set_modal).
(gtk_window_remove_embedded_xid):
(gtk_window_add_embedded_xid): don't use g_print() but g_message()
within #ifdef G_ENABLE_DEBUG. when the hack got these functions
added (ChangeLog doesn't know them)?
* gtk/gtkrc,gtk/gtkrc.ja, gtk/gtkrc.ko,
gtk/gtkrc.ru: Collecttion of the locale dependent
gtkrc files and
* gtk/Makefile.am: patched to get that collection
installed in to $(prefix)/etc/gtk/
Fri Feb 19 17:52:28 1999 Tim Janik <timj@gtk.org>
* gtk/gtksignal.h: grouped function names into application-level,
widget-level and non-public.
* gtk/gtktreeitem.c (gtk_tree_item_size_request): use auto
pix_requisition instead of item->pixmaps_box->requisition.
Thu Feb 18 17:26:09 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_queue_clear_area):
When queueing clears relative to widget->window,
actually store widget->window so we know that
the coordinates are window-relative.
Thu Feb 18 11:46:57 1999 Owen Taylor <otaylor@redhat.com>
* gtk.m4: Fix glib_config_args gtk_config_args
confusion. (pointed out by
Roland Dreier <droland@mail.math.okstate.edu>)
* gtk/gtksocket.c gtk/gtkmain.c gtk/gtkdebug.h
(gtk_socket_filter_func): Move the plug-socket
debugging code to a new "plugsocket" debug keys
from the previous hardcoded DPRINTF.
Thu Feb 18 00:27:46 1999 Tim Janik <timj@gtk.org>
* gtk/gtkwidget.c (gtk_widget_queue_clear_area): only translate widget
relative coordinates to window relative if the widget is not a toplevel
(i.e. it has ->parent != NULL), otherwise the area size gets screwed up
for toplevels.
Tue Feb 16 14:25:44 CST 1999 Shawn T. Amundson <amundson@gtk.org>
* INSTALL
README
configure.in
gtk+.spec
docs/gtk-config.1: version = 1.1.16
* Makefile.am: removed colorsel example since it
doesn't actually exist.
* Released GTK+ 1.1.16
Mon Feb 15 23:55:27 1999 Owen Taylor <otaylor@redhat.com>
* gtk/testgtk.c (create_text): Use a ScrolledWindow
test how Text widgets work within ScrolledWindow.
(POLICY_AUTOMATIC drew very badly, so it uses
POLICY_ALWAYS for the vscrollbar)
* gtk/gtktext.c (gtk_text_unrealize): Free the cache
in the unrealize handler. Some code in gtktext.c
assumes that if text->line_start_cache is non-NULL,
the widget is realized. We'll recompute it again
anyways if we later re-realize.
Fri Feb 12 15:47:20 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcalender.c gtk/gtkentry.c gtk/gtkhandlebox.c
gtk/gtknotebook.c gtk/gtktext.c gtk/gtkviewport.c
gtk/gtkwidget.c:
When setting styles, remove unecessary explicits draws
and clears.
* gtk/gtkrange.c: Ugly fix so the steps get the
correct background.
Mon Feb 15 18:02:22 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkdnd.c: Some coding style fixups.
* gtk/gtkdnd.c (gtk_drag_set_icon_pixmap): Set a flag
so that we destroy the icon window that we created
when the drag ends.
Thu Feb 11 18:43:12 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkbindings.c (gtk_binding_set_add_path): When
we find a match, stop searching. (Because we
assume pspec != NULL in the search).
Wed Feb 10 01:18:22 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkhandlebox.c (gtk_handle_box_draw_ghost): Fix
up painting of "ghosts".
* gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
Add double-click reattachment.
* gtk/gtkhandlebox.c: Grab on widget->window,
not on handlebox->bin_window. This means we don't
have to worry about ungrabbing while reparenting.
Don't make a GTK+ grab - that wasn't necessary.
* gtk/gtkhandlebox.c: Only compute the root -> desk
offset once, when starting the drag, instead
of continuously. This should solve the *Bad Window*
errors that were occurring because of race conditions
with the WM.
* gtk/gtkhandlebox.c: Completely reworked the
the logic of reattachment. We introduce the
concept of the "snap edge", which is an edge
that needs to be aligned for reattachmed.
We set a reasonable default from
handlebox->handle_position, but an application
might want to change this in some circumstances.
* gtk/gtkhandlebox.[ch]: Add settors:
gtk_handle_box_set_handle_position ();
gtk_handle_box_set_snap_edge ();
Mon Feb 15 11:13:01 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_set_focus):
gtk/gtkwidget.c (gtk_widget_real_grab_focus):
If the focus widget is the same, but does not currently
have the focus, call gtk_window_set_focus(). This is needed
so that click focusing with GtkPlug works correctly.
Wed Feb 10 01:02:46 1999 Lars Hamann <lars@gtk.org>
* gtk/gtkclist.c (real_remove_row):
* gtk/gtkctree.c (gtk_ctree_remove_node): don't autoselect focus_row
in case of GTK_SELECTION_EXTENDED
* gtk/testgtk.c : few changes in clist/ctree examples.
Wed Feb 10 15:49:16 1999 Tim Janik <timj@gtk.org>
* gtk/gtkwindow.c (gtk_window_class_init):
* gtk/gtkctree.c (gtk_ctree_class_init): applied patch from Paolo
Molaro to fix GTK_TYPE_POINTER args of ::tree_collapse and
::set_focus signals.
* docs/gtk_tut.sgml: s/menufactory/itemfactory, minor fixups
to the item factory example.
Wed Feb 10 08:35:36 1999 Tim Janik <timj@gtk.org>
* gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar): asure that
->value_buf always points to an allocated area.
(gtk_color_selection_drag_end): new function hooked up to drag_end to
destroy the drag_window.
* gtk/gtkdnd.c: some coding style fixups.
Wed Feb 10 06:47:17 1999 Tim Janik <timj@gtk.org>
* gdk/gdkwindow.c: various indentation fixes.
* gdk/gdkevents.c: coding style fixups.
NULL initialize event_func, event_notify and event_chunk.
(expose_predicate): made this function static.
(gdk_event_handler_set): perform destroy notification even if no
event_func is set.
* gdk/gdkrectangle.c (gdk_rectangle_union): added g_return_if_fail
statements.
Sun Feb 7 19:49:21 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_move_resize): Fixed some
bugs with set_default_size.
Sat Feb 6 13:23:51 1999 Owen Taylor <otaylor@redhat.com>
* docs/Changes-1.2.txt: Added information about
the change to gtk_widget_size_request().
* gtk/gtkentry.c: Call gtk_widget_get_child_requisition
explicitely since we differentiate between the usize
set by the user and what we got. (Ugh)
* gtk/gtkwidget.[ch] (gtk_widget_get_child_requisition):
New function to return the effective size of a widget
as it looks to its parent.
* gtk/gtkwidget.c (gtk_widget_size_request): Leave
widget->requisition set to exactly what the widget
asked for, and then make a copy of that into
the requisition argument. Allow a NULL requisition
argument, and, if G_ENABLE_DEBUG, warn if
requisition == &widget->requisition.
* gtkalignment.c gtkaspectframe.c gtkbutton.c gtkclist.c
gtkcontainer.c gtkentry.c gtkeventbox.c gtkfixed.c
gtkframe.c gtkhandlebox.c gtkhbox.c gtkhpaned.c
gtklayout.c gtklist.c gtklistitem.c gtkmenu.c
gtkmenubar.c gtkmenuitem.c gtknotebook.c
gtkoptionmenu.c gtkpacker.c gtkscrolledwindow.c
gtktable.c gtktoolbar.c gtktree.c gtktreeitem.c
gtkvbox.c gtkviewport.c gtkvpaned.c gtkwindow.c
Avoid calling gtk_widget_size_request with
requisition == widget->requisition; use
gtk_widget_get_child_requisition to get the
size of children.
Tue Feb 9 19:39:32 1999 Owen Taylor <otaylor@redhat.com>
* gtk/gtkentry.[ch] gtk/gtkeditable.h: Moved
entry->visible into editable class. (Leave it
behind deprecated for compatibility)
* gtk/gtkeditable.c: If not editable->visible,
return *'s for clipboard and selection.