2002-05-03 Erwann Chenede - <erwann.chenede@sun.com>
* gdk/x11/gdkvisual-x11.c:
* gdk/x11/gdkwindow-x11.c:
* gdk/x11/gdkdisplay-x11.[hc] (gdk_open_display) :
Rationalized the screen initialization process,
changed the GdkDisplayX11 screen list to an array.
* gdk/x11/gdkscreen-x11.[hc] (_gdk_x11_screen_new) :
Moved the xinerama init functions to gdkdisplay-x11.c to
this file, create a single function to fully initialize
a GdkScreen. #79981
2002-05-01 Erwann Chenede - <erwann.chenede@sun.com>
* gdk/gdkpixmap.[hc] (gdk_pixmap_get_screen):
* x11/gdkpixmap-x11.c:
removed that function as gdk_drawable_get_screen
does the job. #79964
2002-05-01 Anders Carlsson <andersca@gnu.org>
* gdk/x11/gdkevents-x11.c
(gdk_x11_screen_supports_net_wm_hint): Use the same
key when setting and getting NetWmSupportedAtoms.
Tue Apr 30 18:42:25 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_set_screen): Make it
work, even if the window is already realized or
mapped.
* tests/testgtk.c: Erwann's multihead changes, slightly
dumbed down. (Removed logic for pulling windows onto
the current screen, people can click twice on the demo
to destroy and create again.)
* tests/prop-editor.c: Set the screen on the property
editor if the edited object is a widget.
Tue Apr 30 18:42:25 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_set_screen): Make it
work, even if the window is already realized or
mapped.
* tests/testgtk.c: Erwann's multihead changes, slightly
dumbed down. (Removed logic for pulling windows onto
the current screen, people can click twice on the demo
to destroy and create again.)
* tests/prop-editor.c: Set the screen on the property
editor if the edited object is a widget.
2002-04-30 Havoc Pennington <hp@redhat.com>
* gtk/gtktextlayout.c (gtk_text_layout_real_free_line_data): use
gtk_text_layout_invalidate_cache instead of cut-and-paste
(gtk_text_layout_real_invalidate): always invalidate cache, even
if the line has no stored line data. #78573
* gtk/gtktextview.c (gtk_text_view_get_iter_location): add call to
gtk_text_view_ensure_layout, #77388
(gtk_text_view_get_iter_at_location): ditto
(gtk_text_view_get_line_yrange): ditto
(gtk_text_view_get_line_at_y): ditto
Tue Apr 30 15:59:53 2002 Owen Taylor <otaylor@redhat.com>
* tests/testmultiscreen.c: Multi-screen test case
form multihead branch with a few cleanups. (Get rid
of use of g_object_connect())
* tests/testmultidisplay.c: Multi-display test case
from multihead branch with a few improvements.
(Allow the other display name to be passed on
the command line, use a GtkDialog to get more attractive
spacing.)
Tue Apr 30 14:23:43 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdisplay-x11.c (gdk_open_display): fix
problem with finalizing non-initialized fully display
when failing to open display.
* tests/testxinerama.c: Xinerama test case from
multihead branch, with some cleanups. (Start even
if there is only one monitor, for one.)
2002-04-30 Havoc Pennington <hp@redhat.com>
* gtk/gtktextbtree.c (gtk_text_btree_remove_tag_info): assign
something to "prev" so that removing tag info succeeds.
Part of #77301
* gtk/gtktextbtree.c (_gtk_text_btree_unref): reorder so that it
unrefs the tag table first, so that the btree is in a consistent
state when we're removing tags from it.
* gtk/gtktexttagtable.c (_gtk_text_tag_table_remove_buffer): strip
all tags in the tag table out of the buffer. #77301
Tue Apr 30 11:37:09 2002 Owen Taylor <otaylor@redhat.com>
* modules/input/gtkimcontextxim.c: Make multihead-safe;
use a different IM context per display.
* configure.in acconfig.h: Add Xinerama checks from
multihead branch, changing HAS_XINERAMA => HAVE_XINERAMA.
* gdk/x11/gdkdisplay-x11.c: HAS_XINERAMA => HAVE_XINERAMA.
2002-04-29 Alex Larsson <alexl@redhat.com>
* gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
Use tmp also if foreground is set.
Sun Apr 28 22:43:55 2002 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_sort_func): Fix
so that you can set a new sort func.
2002-04-27 Anders Carlsson <andersca@gnu.org>
* gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new_for_display):
Use GDK_DISPLAY_XDISPLAY instead of GDK_SCREEN_XDISPLAY since
we pass in a GdkDisplay * in the macro.
2002-04-26 Anders Carlsson <andersca@gnu.org>
* gdk/gdkdisplay.c: (gdk_set_default_display):
Call _gdk_windowing_set_default_display.
* gdk/gdkinternals.h:
* gdk/x11/gdkmain-x11.c: (_gdk_windowing_set_default_display):
New function that sets gdk_display to the default display.
Fixes#79965
Fri Apr 26 21:58:16 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): if the
deleted node was "below" this path, then do not unref all nodes
between the deleted parent and the node this rowref is pointing too
(see added comment in gtk_tree_row_ref_deleted_callback),
(fixes#77977)
2002-04-26 Sven Neumann <sven@gimp.org>
* tests/testtreecolumns.c
* tests/testtreeview.c: quit the main loop when the window is
destroyed. Removed compiler warnings about wrong format in printf().
Fri Apr 26 21:46:42 2002 Kristian Rietveld <kris@gtk.org>
This commit fixes binary compatibility, which I broke with my
recent cell renderer commits :/.
* gtk/gtkcellrenderer.h: move cell_background out of _GtkCellRenderer
* gtk/gtkcellrenderer.c: create GtkCellRendererInfo, with the
cell_background field and use this as object data. This way we keep
the field private and dont break ABI.
* gtk/gtkcellrendererpixbuf.h: remove stock_id, stock_size and
stock_detail from _GtkCellRendererPixbuf
* gtk/gtkcellrendererpixbuf.c: create a GtkCellRendererPixbufInfo
with above mentioned fields. And update everything.
Thu Apr 25 16:51:40 2002 Owen Taylor <otaylor@redhat.com>
Start of integration of Erwann Chenede's multihead work
from the gtk-multihead branch.
* gdk/gdkdisplay.[ch] gdk/gdkscreen.[ch]
gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkscreen-x11.[ch]
New classes representing a set of screens with attached
input devices and a single contiguous area, respectively.
* gdk/gdk.[ch] gdk/gdkinternals.h gdk/x11/gdkmain-x11.c:
gdk/x11/gdkprivate-x11.h: Make the initialization interface
simple _gdk_windowing_init() and do the rest in
gdk_open_display() calls.
* gdk/gdk.[ch]: Add gdk_parse_args() which can be used
to do the display-independent part of initialization
instead of gdk_init_[check].
* gdk/gdkcursor.h gdk/gdkfont.h gdk/gdkkeys.h gdk/gdkpixmap.h
gdk/gdkproperty.h gdk/gdkselection.h gdk/gdkwindow.h:
Add multihead variants (_for_display(), for_screen()) of functions
getting information specific to a particular screen screen or
display.
* gdk/gdkscreen.[ch]: Add gdk_screen__* variants of functions
like gdk_rgb_get_colormap() that used to get/list global
objects.
* gdk/x11/gdkx.h: Add functions for converting GdkScreen
and GdkDisplay into the X equivalents.
* gdk/x11/gdkwindow-x11.c: Removed gdk_window_xid_at_coords()
not in the headers and unused.
* configure.in gdk/x11/{gxid.c,gxid_lib.[ch],gdkinput-gxi.c}:
Remove gxid support ... has not been tested for a long time...
"xfree" support is more portable to non XFree86.
* gdk/**.h: Add a GDK_MULTIHEAD_SAFE define that can be
used to turn off functions that are inherently non-multihead
safe.
* gdk/**.c: add GDK_NOTE(multihead, ...) calls when functions
are used in non-multihead-safe ways.
* gdk/*.c gdk/x11/*.c: Changes to make the internals of GDK
multihead safe.
Thu Apr 25 23:49:01 2002 Kristian Rietveld <kris@gtk.org>
Fixes#74206.
* gtk/gtktreeprivate.h: add _gtk_tree_view_column_count_special_cells
* gtk/gtktreeview.c (_gtk_tree_view_column_has_editable_cell),
(_gtk_tree_view_column_get_editable_cell): remove a space which made
the code look ugly
(_gtk_tree_view_column_count_special_cells): new function,
(gtk_tree_view_column_cell_process_action): if there's only one
activatable cell, the whole column will activate that renderer.
Thu Apr 25 23:36:55 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_search_iter): make the search
dialog not scroll horizontally (prolly fixes#74806).
Thu Apr 25 20:24:37 2002 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): use the child's
requisition.height, not allocation.height, as width of submenu
indicator. (#75948)
Thu Apr 25 00:26:34 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_reset_default_sort_func):
resort if we're already in 'unsorted' state, and update the docs
Wed Apr 24 17:34:16 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_stop_editing): temporarily set
->priv->edited_column to NULL. Pleas read the comment in this
function for an explanation (fixes#79632).
Tue Apr 23 18:35:34 2002 Kristian Rietveld <kris@gtk.org>
This commit adds a cell_background property for cell renderers. With
this property you can make your TreeView look incredibly ugly.
* gtk/gtkcellrenderer.c: add cell_background, cell_background_gdk and
cell_background_set properties,
(set_cell_bg_color): new function,
(gtk_cell_renderer_get_property), (gtk_cell_renderer_set_property):
support for new properties,
(gtk_cell_renderer_render): render a background when set.
* gtk/gtkcellrenderer.h: add cell_background_set and cell_background
fields.
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
when rendering, pass in just the background_area of the cell and not
the background_area of the entire column.
Mon Apr 22 19:24:29 2002 Kristian Rietveld <kris@gtk.org>
This commit adds stock icon functionality to GtkCellRendererPixbuf
which is totally cool.
* gtk/gtkcellrendererpixbuf.h: add some fields
* gtk/gtkcellrendererpixbuf.c: add finalize method, add some
properties, add some stock icon rendering code.
* demos/gtk-demo/stock_browser.c: modified to use the stock
icon stuff in the cellrendererpixbuf instead of its own stock icon
rendering code.
2002-04-21 Alexander Larsson <alla@lysator.liu.se>
* gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
Save x and y in window_private.
* gtk/gtkplug.c (_gtk_plug_add_to_socket):
Move plug window outside the visible area to avoid flashing until
the first size_allocate.
Sat Apr 20 12:07:14 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_modify_color_component): Accept
NULL for color to mean "unmodify"
* gtk/gtkwidget.c (gtk_widget_modify_font): Accept NULL for
font_desc to mean "unmodify".
Sat Apr 20 16:49:26 2002 Kristian Rietveld <kris@gtk.org>
* gdk/x11/gdkpixmap-x11.c (gdk_pixmap_new): replace GDK_IS_WINDOW
with GDK_IS_DRAWABLE in the assert, only check GDK_WINDOW_DESTROYED
if window is a GdkWindow,
(gdk_bitmap_create_from_data): ditto,
(gdk_pixmap_create_from_data): ditto
Fri Apr 19 23:38:16 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeprivate.h: add _gtk_tree_view_column_autosize
* gtk/gtktreeview.c: privately export _gtk_tree_view_column_autosize,
and add a small note about that function,
(gtk_tree_view_button_press): check for double click and
"not having an autosize" column before autosizing the column,
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_min_width):
call _gtk_tree_view_column_autosize to update autosized column width
(gtk_tree_view_column_set_max_width): ditto
* TODO, TODO.xml, README.nanox, docs/Changes-1.2.txt,
docs/Changes-2.0.txt, docs/gtk-config.txt, docs/debugging.txt,
gdk/TODO: Remove some files whose content is either obsolete or
has been moved elsewhere.
* Makefile.am, gtk+.spec.in, docs/Makefile.am: Remove references
to these files.
Fri Apr 19 21:06:39 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_size_allocate): subtract
TREE_VIEW_HEADER_HEIGHT from allocation->height to get the real
size for the tree (fixes#72729),
(gtk_tree_view_real_start_editing): correct cell_area->y for
scrolling due to gtk_tree_view_real_set_cursor (fixes#75687)
Fri Apr 19 16:30:09 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeprivate.h, gtk/gtktreeview.c: rename
last_single_clicked{,_2} to last_button_press{,_2}, as the latter
is a more sane name.
* gtk/gtktreeview.c (gtk_tree_view_button_press): use ->priv->anchor
instead of ->priv->cursor, check for the anchor at another place, as
you can go in edit mode without having an anchor.
2002-04-18 Tor Lillqvist <tml@iki.fi>
* gdk-pixbuf/Makefile.am (uninstall-libtool-import-lib)
* gdk/Makefile.am (uninstall-libtool-import-lib): Fix typo,
thanks to David Sterba for noticing.
* gtk/gtkmain.h
* gtk/gtkmain.c (gtk_init_abi_check, gtk_init_check_abi_check): In
GTK+ 2.0 the GtkWindow struct actually is the same size in gcc on
Win32 whether compiled with -fnative-struct or not. Unfortunately
this wan't noticed until now. So, from now on, check some other
struct, too, for which the use of -fnative-struct still
matters. GtkBox is one such.
Thu Apr 18 00:23:31 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c
(gtk_tree_model_sort_convert_path_to_child_path): so this function
was completely broken. Fix it and improve readability.
Tue Apr 16 17:28:21 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): check
->priv->cursor and ->priv->anchor rowrefs before removing
node->children from the rbtree. Also check the
->priv->last_single_clicked and ->priv->last_single_clicked_2 rowrefs
(I think I really need to rename those two someday).
Mon Apr 15 15:41:56 2002 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkcontainer.c (gtk_container_focus): include internal
children when doing focus.
(gtk_container_get_all_children): new static function to include
internal children when making a list of them.
Sun Apr 14 16:56:59 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeprivate.h: add _gtk_tree_view_column_get_editable_cell and
_gtk_tree_view_column_get_neighbor_sizes
* gtk/gtktreeviewcolumn.c (struct _GtkTreeViewColumnCellInfo): add
real_width field,
(_gtk_tree_view_column_get_editable_cell): implement,
(gtk_tree_view_column_cell_process_action): fill info->real_width
(_gtk_tree_view_column_get_neighbor_sizes): implement
* gtk/gtktreeview.c (gtk_tree_view_button_press): make the "editable
widget" show up with the same size as the actual cell, so it doesnt
cover the complete column if there are any other cells in that column.
2002-04-13 Havoc Pennington <hp@pobox.com>
* gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): create
the target pixbuf AFTER filling in width/height, so that
passing in -1 for width/height will work.
Sat Apr 13 22:49:45 2002 Kristian Rietveld <kris@gtk.org>
Fixes#75510
* gtk/gtktreeselection.c (gtk_tree_selection_get_selected): make this
function work correctly and more sane
* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): remove
node->children from rbtree before emitting GtkTreeSelection::changed
Sat Apr 13 17:15:12 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_init): dont set
the mode to GTK_CELL_RENDERER_MODE_EDITABLE by default,
(gtk_cell_renderer_text_class_init): for some reason our default for
editable was TRUE, of course this is FALSE.
(gtk_cell_renderer_text_set_property): update mode when editable
has been changed.
2002-04-12 Havoc Pennington <hp@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_real_remove): relocate the
remove_weak_pointer to just before we free the page, to be sure
it doesn't get re-added. #75282
Fri Apr 12 18:32:46 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): add
clamp_node argument
(toplevel): update usages of gtk_tree_view_real_set_cursor,
(gtk_tree_view_focus_to_cursor): don't let
gtk_tree_view_real_set_cursor clamp the node, so you won't get
unexpected scrolling
Sat Apr 6 06:57:00 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmenushell.[ch] gtk/gtkmenuitem.c: Export
private _gtk_menu_shell_activate() to encapsulate
cut-and-paste code.
* gtk/gtkmenubar.c: Select the first item on the menu bar
for F10 rather than acting as if the user pressed <Alt>F
to select the file manager.
Tue Apr 9 19:01:28 2002 Owen Taylor <otaylor@redhat.com>
Fix problems with HandleBox and focusing - #78232
* gtk/gtkwidget.c (gtk_widget_translate_coordinates): Handle
GtkHandleBox / GnomeDock style window heirarchy / widget
heirarchy disconnects. :-(.
* gtk/gtkcontainer.c: Handle failures from
gtk_widget_translate_coordinates (Focusing is not right, but at
least it doesn't go into infinite loops.)
Tue Apr 9 18:34:58 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcontainer.c (_gtk_container_queue_resize): Always
set the ALLOC_NEEDED and REQUEST_NEEDED flags up the hierarchy,
even if we aren't currently in a resize container... we need
this to properly handle size changes to widgets that are
being moved from one heirarchy to another. (#78226)
Mon Apr 8 20:28:54 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeselection.c (gtk_tree_selection_select_path),
(gtk_tree_selection_unselect_path),
(gtk_tree_selection_path_is_selected): check the return value of
_gtk_tree_view_find_node and return if it's TRUE. This makes those
functions work somewhat saner on non-expanded trees.
Fri Apr 5 18:28:56 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free
anchor row reference after unselecting the selection (fixes#76272)
Fri Apr 5 18:27:48 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_real_expand_row): only return
when we don't have to open all children (fixes#75736)
Fri Apr 5 18:24:24 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear): unref
cellrenderer after clearing the attributes of the renderer (fixes
#75592)
Thu Apr 4 22:28:08 2002 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkmenuitem.c (gtk_menu_item_paint): Fix problem with menu
titles being clipped (#75948)
2002-04-04 Tor Lillqvist <tml@iki.fi>
* gdk/gdkrgb.c: Fix some bugs, and introduce a minor feature.
(gdk_rgb_convert_4_pack): New function, for 16-color (4 bits per
pixel) static visuals (fixes#858).
(gdk_rgb_convert_gray4_pack, gdk_rgb_convert_gray4_d_pack): Fix
same bugs in both functions: Odd start coordinate (partial byte)
was not handled correctly. Also a partial final byte was not
handled correctly.
(gdk_rgb_do_colormaps): Use G_N_ELEMENTS.
(gdk_rgb_create_info): For pseudocolor visuals, use the 2x2x2
colorcube only for depths 3 and 4. For static color, use it for
depths 3..7 like before. (Depth 5..7 pseudocolor probably never
occurs on X11. It doesn't normally occur on Win32 either, but
there is experimental code in gdkvisual-win32.c to let the user
restrict the size of palette used.)
(gdk_rgb_init): Set gdk_rgb_verbose if the GDK_DEBUG_GDKRGB flag
is set.
(gdk_rgb_select_conv): Use gdk_rgb_convert_8 also for depths 5, 6
and 7 (see above). Use gdk_rgb_convert_4_pack for 4 bits per pixel
static color.
Mon Apr 1 22:20:24 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): add
check for y > tree_view->priv->height (fixes#76974)
Mon Apr 1 22:19:39 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): get
the stamp changes right this time
Mon Apr 1 22:13:24 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodel.c (gtk_tree_row_reference_free): only
disconnect the ref callbacks when model == proxy (Thanks go to
Manuel Clos Crespo for the remote debugging)
Sat Mar 30 15:19:24 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c: revert the latest stamp increment changes,
as it broke stuff for trees
Fri Mar 29 18:09:18 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkaccelgroup.c (gtk_accel_group_query): Call
gdk_keyval_to_lower() on the key passed in, since we
lowercase all other key vals passed in, so querying
keyvals will otherwise fail if the caller used
an uppercase accelerators (#76899, Vitaly Tishkov)
Fri Mar 29 17:41:21 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmain.c (load_modules): Fix screwup in handling
of module path that was resulting in freed memory being
accessed when both GTK_MODULES and a theme were set.
(#76902, Johan Dahlin)
2002-03-29 Hans Breuer <hans@breuer.org>
* gtk/gtkmain.h : fix typo in gtk_init_check macro, which
caused crashes if argc != 0
* gtk/stock-icons/makefile.msc : added new icons
Fri Mar 29 20:17:35 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
remove call to gtk_tree_model_sort_increment_stamp
(gtk_tree_model_sort_sort_level): always increment the stamp
Thu Mar 28 18:38:30 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtk[hv]paned.c (gtk_[hv]paned_size_allocate):
Don't show the window unless the widget is mapped.
(#76742, Dennis Björklund, Soeren Sandmann)