Tor Lillqvist [Mon, 29 Oct 2001 07:06:37 +0000 (07:06 +0000)]
Updates.
2001-10-29 Tor Lillqvist <tml@iki.fi>
* README.win32: Updates.
* gtk-zip.sh.in: New file, used to build distribution package for
Windows.
* gdk/gdkglobals.c: Mark gdk_threads_mutex for DLL export when
applicable with GDKVAR.
* gtk/gtk.def: Update.
* gtk/gtkfilesel.c: Include <winsock.h> (if available) for
gethostname().
* gtk/gtkmain.c
* gtk/gtkrc.c: (Win32) Save actual DLL name for later use in DLL
entry function. Avoid hardcoded paths GTK_LIBDIR, GTK_SYSCONFDIR,
GTK_DATA_PREFIX and GTK_LOCALEDIR, instead add functions that call
g_win32_get_package_installation_subdirectory() with the actual
DLL name saved above. Redefine above directory name macros to call
these functions. Remove some ifdefs.
* gtk/maketypes.awk: Output GTKTYPEBUILTINS_VAR (that marks
variable for export on Win32) also to the _vars file.
Changes for autoconfiscated build on Win32, and addition of Win32
backend to the related files:
* configure.in: Like in GLib, set LT_CURRENT_MINUS_AGE for use
when forming DLL name in some files. Set MS_LIB_AVAILABLE is
lib.exe is available. Call AC_LIBTOOL_WIN32_DLL. Set
PLATFORM_WIN32, OS_WIN32 and USE_WIN32 automake conditionals. Add
win32 target, using pangowin32. Don't use the
-export-symbols-regex option on Win32, we use .def files to list
exported symbols. Check <winsock.h> (for gethostname() in
gtkfilesel.c). Enclose nested AC_CHECK_* macros in brackets to
prevent premature m4 expansion.
* acconfig.h: Add HAVE_WINTAB.
* gdk/Makefile.am: Add libgdk-win32-1.3.la target and associated
macros and rules. Use -no-undefined on Win32. Use gdk.def file. If
MS_LIB_AVAILABLE, build MS import library. Install the import
libraries. If HAVE_WINTAB, link with the Wintab library.
* gtk/Makefile.am: Add libgtk-win32-1.3.la target and associated
macros and rules. Use -no-undefined on Win32. Use gtk-win32.def
file. Install import libraries.
Tor Lillqvist [Mon, 29 Oct 2001 06:50:55 +0000 (06:50 +0000)]
New file, hand-written wrapper for the Wintab library.
2001-10-29 Tor Lillqvist <tml@iki.fi>
* gdk/win32/libwntab32x.la: New file, hand-written wrapper for the
Wintab library.
* gdk/win32/gdkwin32.h
* gdk/win32/gdkprivate-win32.h: Reorganise to match corresponding
X11 headers better, and to enable gdkwin32.h to be installed and
included from applications, but not the *-win32.h headers.
* gdk/win32/*.c: Corresponding small changes, simplifications of
#includes.
* gdk/win32/gdkproperty-win32.c (gdk_atom_intern): Don't insert
GDK_NONE values into hash table.
Changes for autoconfiscated build on Win32, and addition of Win32
backend to the related files:
* gdk/win32/Makefile.am: Actually enable building the win32
objects here, not just list all files in EXTRA_DIST. Link in the
compiled resource file from rc/gdk-win32res.lo. If HAVE_WINTAB,
copy the Wintab library into the .libs directory.
* gdk/win32/gdkwindow-win32.c (RegisterGdkClass): Don't assume the
name of the GDK DLL when fetching the icon. Use the HMODULE saved
in gdk_dll_hinstance by DllMain.
* gdk/win32/rc/Makefile.am: Build gdk-win32res.lo using the
build/win32/lt-compile-resource script.
* gdk/win32/rc/gdk.rc.in
* gtk/gtk-win32.rc.in: Use the DLL name that libtool would use.
Hans Breuer [Sun, 28 Oct 2001 21:28:51 +0000 (21:28 +0000)]
static correct-ness, underscore prefixing of library internal functions
2001-10-28 Hans Breuer <hans@breuer.org>
* gdk/gdk.c gdk/gdkevents.c
gdk/win32/gdkcolor-win32.c gdk/win32/gdkdnd-win32.c
gdk/win32/gdkdrawable-win32.c gdk/win32/gdkevents-win32.c
gdk/win32/gdkfont-win32.c gdk/win32/gdkgc-win32.c
gdk/win32/gdkim-win32.c gdk/win32/gdkmain-win32.c
gdk/win32/gdkprivate-win32.h gdk/win32/gdkproperty-win32.c
gdk/win32/gdkselection-win32.c gdk/win32/gdkwin32.h
gdk/win32/gdkwindow-win32.c gdk/win32/gdkwindow-win32.h :
static correct-ness, underscore prefixing of library internal
functions
(applied the undisputed and the win32 part. Of the latter
I'm probably the one who will change it back again, if Owen
decides that the Gdk*Impl types should not be private to Gdk)
* gdk/gdk.def : added the remaining exported functions
jacob berkman [Sun, 28 Oct 2001 16:49:56 +0000 (16:49 +0000)]
do not call gtk_settings_get_default() here as that requires an X
2001-10-28 jacob berkman <jacob@ximian.com>
* gtk/gtkcolorsel.c (gtk_color_selection_class_init): do not call
gtk_settings_get_default() here as that requires an X connection
(which breaks doc building with no X connection) and is not
multihead safe
(gtk_color_selection_init): delay palette loading until realize
time
(gtk_color_selection_realize): load the palette, and initialize
the global palette if it hasn't been already
* gtk/gtkpreview.c (gtk_preview_class_init): don't initialize the
visual/cmap fields of klass->info since they are gone
(gtk_preview_get_visual): just return gdk_rgb_get_visual ()
(gtk_preview_get_cmap): just return gdk_rgb_get_colormap ()
(gtk_preview_realize): don't set VISUAL and COLORMAP attributes
* gtk/gtkpreview.h (struct _GtkPreviewInfo): remove visual and
cmap fields
(gtk_preview_get_visual):
(gtk_preview_get_cmap): mark as deprecated
* docs/Changes-2.0.txt: add a little note about the GtkPreviewInfo
changes
Matthias Clasen [Sat, 27 Oct 2001 20:41:05 +0000 (20:41 +0000)]
Typo fix. Updates. Document the special values <none> and <parent> for
* gdk/x11/gdkinput.c: Typo fix.
* gdk/tmpl/input_devices.sgml: Updates.
* gtk/tmpl/gtkrc.sgml: Document the special values <none> and
<parent> for bg_pixmap.
Havoc Pennington [Sat, 27 Oct 2001 02:41:24 +0000 (02:41 +0000)]
Call update_im_spot_location here explicitly
2001-10-26 Havoc Pennington <hp@pobox.com>
* gtk/gtktextview.c (gtk_text_view_mark_set_handler): Call
update_im_spot_location here explicitly
(gtk_text_view_reset_im_context): don't update the spot location
here
Owen Taylor [Sat, 27 Oct 2001 00:59:51 +0000 (00:59 +0000)]
Oct 26 20:55:57 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkbutton.c: Revert changes to GTK_RUN_LAST.
Unfortunately, people apparently erroneously connect
to ::clicked for GtkToggleButton and expect
they know what happened in the default signal handler
instead of appropriately connecting to notification
signal ::toggled. When the revolution comes, such
people will be first against the wall.
We'll just have to go back to the old less-reliable
set-it-back hacks for handling model-view toggle
buttons and entries. :-(.
Hans Breuer [Sat, 27 Oct 2001 00:41:12 +0000 (00:41 +0000)]
to simplify parsing for exported functions: - made implementation
2001-10-27 Hans Breuer <hans@breuer.org>
* gtk/gtkbbox.c gtk/gtkctree.c gtk/gtkhbbox.c
gtk/gtkimmulticontext.c gtk/gtklabel.c gtk/gtkliststore.c
gtk/gtkmenu.c gtk/gtkpaned.c gtk/gtkrc.c gtk/gtkscale.c
gtk/gtkstyle.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
gtk/gtktexttag.c gtk/gtktexttagtable.c gtk/gtktextview.c
gtk/gtktreestore.c gtk/gtkvbbox.c :
to simplify parsing for exported functions:
- made implementation signature static, when the local
prototype already was
- put the functions return value on it's own line
- added as space between the function name and the
opening bracket
* gtk/gtk.def : added the remaining exported functions
Anders Carlsson [Sat, 27 Oct 2001 00:18:23 +0000 (00:18 +0000)]
Fix docs to say previous instead of next.
2001-10-27 Anders Carlsson <andersca@gnu.org>
* gtk/gtktextiter.c (gtk_text_iter_backward_sentence_start):
Fix docs to say previous instead of next.
(gtk_text_iter_backward_word_start): Likewise.
This fixes bug #62980.
Anders Carlsson [Fri, 26 Oct 2001 23:43:32 +0000 (23:43 +0000)]
Ugh, broken pipe.
2001-10-27 Anders Carlsson <andersca@gnu.org>
* gdk/x11/gdkmain-x11.c: Replace int and guint with
long and gulong in some places to make the code 64-bit
clean.
(_gdk_windowing_init_check): Replace gint with gulong.
This patch was made by George Lebl and fixes bug #62113.
Anders Carlsson [Fri, 26 Oct 2001 23:43:16 +0000 (23:43 +0000)]
Replace int and guint with long and gulong in some places to make the code
2001-10-27 Anders Carlsson <andersca@gnu.org>
* gdk/x11/gdkmain-x11.c: Replace int and guint with
long and gulong in some places to make the code 64-bit
clean.
(_gdk_windowing_init_check): Replace gint with gulong.
This patch was made by George Lebl and fixes bug #62113.
Add support for invalid nodes. (_gtk_rbnode_rotate_right): Ditto.
Thu Oct 25 16:27:29 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkrbtree.c (_gtk_rbnode_rotate_left): Add support for
invalid nodes.
(_gtk_rbnode_rotate_right): Ditto.
(_gtk_rbtree_node_mark_invalid): New function.
(_gtk_rbtree_node_mark_valid): New function.
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_class_init): We're a
GObject, not a GtkObject.
(gtk_tree_model_sort_row_has_child_toggled): Rewrote to be more
correct.
(gtk_tree_model_sort_row_deleted): ditto.
(gtk_tree_model_sort_{un,}ref_node): Fix.
* gtk/gtktreeview.c: Protean incremental reflow support (commented
out)
* gtk/gtktreeview.h (GtkTreeViewSearchEqualFunc): change char *key
to const char *key.
* gtk/gtktreemodel.c (gtk_tree_row_reference_unref_path_helper):
Important 1 line fix to fix a lot of refcounting woes.
Matt Wilson [Thu, 25 Oct 2001 17:05:35 +0000 (17:05 +0000)]
call gtk_text_view_destroy_layout after gtk_text_view_set_buffer (which
2001-10-25 Matt Wilson <msw@redhat.com>
* gtk/gtktextview.c (gtk_text_view_destroy): call
gtk_text_view_destroy_layout after gtk_text_view_set_buffer (which
now invalidates) so that we remove our idle functions.
(gtk_text_view_destroy_layout): remove the first_validate_idle as
well.
Matt Wilson [Thu, 25 Oct 2001 14:02:51 +0000 (14:02 +0000)]
the valid range for the 'indent' property is G_MININT to G_MAXINT. Don't
2001-10-25 Matt Wilson <msw@redhat.com>
* gtk/gtktexttag.c (gtk_text_tag_class_init): the valid range for
the 'indent' property is G_MININT to G_MAXINT. Don't use
-G_MAXINT for the minimum of the 'rise' property, use G_MININT
instead.
Anders Carlsson [Thu, 25 Oct 2001 05:22:13 +0000 (05:22 +0000)]
This ought to make msw happy since it fixes #62887.
2001-10-24 Anders Carlsson <andersca@gnu.org>
* gtk/gtktreeview.c:
(gtk_tree_view_real_expand_row): add an animate argument
(gtk_tree_view_real_collapse_row): likewise
(gtk_tree_view_button_press), (gtk_tree_view_button_release),
(gtk_tree_view_collapse_all), (gtk_tree_view_expand_row),
(gtk_tree_view_collapse_row): update functions that call
real_{expand|collapse}_row to set the animate argument
accordingly.
more changes in an attempt to get it right. It's not yet ready for general
Wed Oct 24 20:29:47 2001 Kristian Rietveld <kristian@planet.nl>
* gtk/gtktreemodelsort.c: more changes in an attempt to get
it right. It's not yet ready for general consumption.
* tests/treestoretest.c: add a button and entry for the new
iter_change function
(iter_change): new function, to test
the row_changed signal implementation of the GtkTreeModelSort
* tests/testtreesort.c: cleanups, changes to test more features
of the GtkTreeModelSort at once
Havoc Pennington [Wed, 24 Oct 2001 17:51:56 +0000 (17:51 +0000)]
remove hack to strip off the bogus newline, since we killed the bogus
2001-10-24 Havoc Pennington <hp@redhat.com>
* gtk/gtktextbuffer.c (clipboard_clipboard_buffer_received):
remove hack to strip off the bogus newline, since we killed the
bogus newline; fixes #61779
Havoc Pennington [Wed, 24 Oct 2001 16:11:41 +0000 (16:11 +0000)]
don't create layout if we didn't have one (gtk_text_view_set_buffer):
2001-10-24 Havoc Pennington <hp@redhat.com>
* gtk/gtktextview.c (gtk_text_view_update_adjustments): don't
create layout if we didn't have one
(gtk_text_view_set_buffer): invalidate so we get the idle handlers
as appropriate, avoids blanking the screen
(gtk_text_view_invalidate): new function to do invalidation,
containing old guts of invalidated_handler
Owen Taylor [Wed, 24 Oct 2001 14:15:50 +0000 (14:15 +0000)]
Always set window->parent (except or the root window itself); if the
Tue Oct 23 17:31:42 2001 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkwindow-x11.c gdk/win32/gdkwindow-win32.c: Always
set window->parent (except or the root window itself); if
the window's parent is not a GdkWindow, or is a window of
type GDK_WINDOW_FOREIGN, set window->parent to the root parent.
* gdk/gdkwindow.c (gdk_window_get_toplevels): Don't include
windows of type GDK_WINDOW_FOREIGN.
Havoc Pennington [Wed, 24 Oct 2001 04:48:21 +0000 (04:48 +0000)]
if we move to the front of a segment, use the "slow" technique for moving
2001-10-24 Havoc Pennington <hp@pobox.com>
* gtk/gtktextiter.c (gtk_text_iter_backward_chars): if we move to
the front of a segment, use the "slow" technique for moving
backward, so we don't mess up the any_segment field in the iter.
Fixes #57707
* tests/testtextbuffer.c: add code to detect #57707, to avoid
regression
Havoc Pennington [Tue, 23 Oct 2001 23:35:00 +0000 (23:35 +0000)]
only sensitize Cut if selection contains some editable text, #60975
2001-10-23 Havoc Pennington <hp@redhat.com>
* gtk/gtktextview.c (popup_targets_received): only sensitize Cut
if selection contains some editable text, #60975
(gtk_text_view_scroll_to_iter): remove warning about scrolling
prior to map; it should actually be OK to do so in many cases,
it would be nice to warn about scrolling when many lines have
height 0, but I don't know what to do about that. Perhaps
move part of flush_scroll into this function? comment added
to consider this.
Havoc Pennington [Tue, 23 Oct 2001 23:06:14 +0000 (23:06 +0000)]
Correctly keep the same text on the top of the screen, considering that
2001-10-23 Havoc Pennington <hp@redhat.com>
* gtk/gtktextview.c (changed_handler): Correctly keep the same
text on the top of the screen, considering that the changed region
may have overlapped the first paragraph. Should fix msw's "text
widget scrolled to wrong place on map" bug, and probably some
other scrolling cases as well.
(gtk_text_view_set_scroll_adjustments): start adjustments at 0.0,
instead of some random value
* gtk/gtktextview.c (gtk_text_view_class_init): actually override
grab_focus, so #59708 is really fixed
Havoc Pennington [Tue, 23 Oct 2001 20:13:44 +0000 (20:13 +0000)]
queue a resize here; will temporarily slow down the widget a lot, until we
2001-10-23 Havoc Pennington <hp@redhat.com>
* gtk/gtktextview.c (changed_handler): queue a resize here; will
temporarily slow down the widget a lot, until we figure out how to
optimize to avoid full redraw everytime we queue a resize
Havoc Pennington [Mon, 22 Oct 2001 23:35:03 +0000 (23:35 +0000)]
don't back up a char from the end iterator, fixes #61859 ("can't put
2001-10-22 Havoc Pennington <hp@redhat.com>
* gtk/gtktextbuffer.c (gtk_text_buffer_place_cursor): don't back
up a char from the end iterator, fixes #61859 ("can't put cursor
at the end of the buffer")
* gtk/gtktextiter.c (gtk_text_iter_forward_to_line_end): fix this
to work with delimiters other than newline.
* tests/testtextbuffer.c: add some tests for get_chars_in_line,
get_bytes_in_line
* gtk/gtktextiter.c (gtk_text_iter_get_chars_in_line): fix for the
last line, since the newline is no longer counted.
(gtk_text_iter_get_bytes_in_line): ditto
Havoc Pennington [Mon, 22 Oct 2001 22:17:21 +0000 (22:17 +0000)]
add temporary code to dump btree contents on assertion failure described
2001-10-22 Havoc Pennington <hp@redhat.com>
* gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
add temporary code to dump btree contents on assertion failure
described in #62656
* gtk/gtktextbtree.c (ensure_end_iter_segment): add some
assertions that we're getting the right end iter segment
* gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
verify that we aren't on the end iterator after moving
forward one segment - fixes return value in an obscure case.
Also, some trivial code cleanup/rearranging.
* gtk/gtkentry.c (gtk_entry_class_init): Rename text_position
to cursor_position. (1.3.x addition, text_position is an awful
name.) Make cursor_position read-only to avoid sticky questions
of interaction with selection_bound. (#62636, reported by
Padraig O'Briain)
Havoc Pennington [Mon, 22 Oct 2001 19:26:16 +0000 (19:26 +0000)]
rip out "height_lines" and "width_columns" properties, it doesn't make
2001-10-22 Havoc Pennington <hp@redhat.com>
* gtk/gtktextview.c (gtk_text_view_class_init): rip out
"height_lines" and "width_columns" properties, it doesn't make
sense to set the size request on a text view really. #62103
Havoc Pennington [Mon, 22 Oct 2001 19:13:28 +0000 (19:13 +0000)]
Clarify behavior in docs, #61777 (gtk_text_iter_forward_search)
2001-10-22 Havoc Pennington <hp@redhat.com>
* gtk/gtktextiter.c (gtk_text_iter_set_line): Clarify behavior in
docs, #61777
(gtk_text_iter_forward_search) (gtk_text_iter_backward_search):
change the two boolean args to a flags field, so we can extend
to add case insensitive, regexp searches later. #61852
Mon Oct 22 14:08:26 2001 Jonathan Blandford <jrb@redhat.com>
* demos/gtk-demo/appwindow.c: Remove handle_box from App demo.
* gtk/gtktreeview.c (size_allocate): Move to a different drawing
system. Instead of having a window the size of the tree, we have
a window the size of widget->allocation, and simply draw with the
offset.
(coords_are_over_arrow): ditto. Move to window coordinates.
(do_prelight): ditto
(do_unprelight): ditto
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
Minor fix from Kristian Rietveld to fix unsorted case.
Owen Taylor [Mon, 22 Oct 2001 12:59:21 +0000 (12:59 +0000)]
Add a function, gdk_threads_init() that must be explicitely called to
Mon Oct 22 08:51:02 2001 Owen Taylor <otaylor@redhat.com>
* gdk/gdk.[ch] (gdk_threads_init) docs/Changes-2.0.txt:
Add a function, gdk_threads_init() that must be explicitely
called to enable the GDK thread mutex.
Owen Taylor [Mon, 22 Oct 2001 04:34:42 +0000 (04:34 +0000)]
Fix problem with g_return_if_fail return value.
Sun Oct 21 23:27:00 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_translate_coordinates): Fix
problem with g_return_if_fail return value.
* gdk/x11/gdkproperty-x11.c docs/Changes-2.0.txt: Move over the
virtual atom code from the gdk-multihead branch, removing the per-display
part. Virtualizing atoms needs to be done now to prevent compat
breakage in direct Xlib accessing code in the future. (#62208)