Owen Taylor [Sat, 14 Dec 2002 06:05:00 +0000 (06:05 +0000)]
Handle the case where the pointer isn't on the same screen as the widget
Sat Dec 14 01:00:12 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmenu.c (gtk_menu_position): Handle the case
where the pointer isn't on the same screen as the widget
by centering the menu on the widget's screen. (#94563)
Owen Taylor [Sat, 14 Dec 2002 05:27:23 +0000 (05:27 +0000)]
gdk/gdkscreen.c (gdk_screen_get_monitor_at_point) Provide a useful
Fri Dec 13 23:58:06 2002 Owen Taylor <otaylor@redhat.com>
* gdk/gdkscreen.c (gdk_screen_get_monitor_at_point)
* gdk/gdkscreen.c (gdk_screen_get_monitor_at_window):
Provide a useful fallback on failure - return a monitor
close to the point or window. (#79991)
* gtk/gtkmenu.c (gtk_menu_position): Remove a now
unneeded check for failure of
gdk_screen_get_monitor_at_point()
Owen Taylor [Sat, 14 Dec 2002 02:41:30 +0000 (02:41 +0000)]
Handle the case where the pointer is moved between screens during a handle
Fri Dec 13 21:35:12 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkhandlebox.c (gtk_handle_box_motion): Handle
the case where the pointer is moved between screens
during a handle box drag by resetting the original
location. (#94562)
* gtk/gtkinputdialog.c (gtk_input_dialog_get_private):
Fix a leftover variable name from cut-and-paste.
Owen Taylor [Fri, 13 Dec 2002 23:18:03 +0000 (23:18 +0000)]
System fnmatch wasn't going to be UTF-8 clean, neither was our version.
Fri Dec 13 17:45:40 2002 Owen Taylor <otaylor@redhat.com>
* gtk/fnmatch.c gtk/gtkprivate.h gtk/gtkfilesel.c:
System fnmatch wasn't going to be UTF-8 clean, neither
was our version. Redo our fnmatch.c to be UTF-8, add
test cases, fix all sorts of bugs inherited
from the antique GNU fnmatch code. Change interface
to get rid of fnmatch.h constants. Fixes basic
non-workingness of filesel with non-ASCII filenames.
Owen Taylor [Fri, 13 Dec 2002 01:06:55 +0000 (01:06 +0000)]
Include "." and ".." in the list of entries; they are needed for correct
Thu Dec 12 19:51:45 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilesel.c (open_new_dir): Include "."
and ".." in the list of entries; they are needed for
correct handling of .<TAB>, ..<TAB>; were lost
with the GDir conversion. (Francisco Bustamante,
#89972)
* gtk/gtkfilesel.c (open_new_dir): If we hit
EOF unexpectedly, that's OK... a file was just
deleted while we were reading the directory.
Owen Taylor [Thu, 12 Dec 2002 23:07:45 +0000 (23:07 +0000)]
Intercept events of type GDK_SETTING before we check to see if there was
Thu Dec 12 18:02:34 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmain.c (gtk_main_do_event): Intercept events
of type GDK_SETTING before we check to see if there
was an event widget or not. (#97451, Simon Wong,
Bastien Nocera)
Owen Taylor [Wed, 11 Dec 2002 23:29:50 +0000 (23:29 +0000)]
Fix problem from recent commit where non GNU-format message catalogs would
Wed Dec 11 14:06:50 2002 Owen Taylor <otaylor@redhat.com>
* po/Makefile.in.in: Fix problem from recent commit where
non GNU-format message catalogs would be installed in
datadir. Remove some leftover setting of PATH=../src:$PATH.
* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new,
gdk_bitmap_create_from_data, gdk_pixmap_create_from_data)
* gdk/win32/gdkprivate-win32.h
* gdk/win32/gdkimage-win32.c (_gdk_win32_setup_pixmap_image):
Functions now take a GdkDrawable instead of GdkWindow parameter,
like in X11 and linux-fb backends (#100780)
* gdk/win32/gdkwindow-win32.c (get_default_title): Do use
g_get_application_name() (I now have a fresh enough GLib).
gdk_x11_get_xatom_by_name_for_display takes a GdkDisplay *, not an
Tue Dec 10 15:46:01 PST 2002 Manish Singh <yosh@gimp.org>
* gdk/x11/gdkwindow-x11.c (set_initial_hints):
gdk_x11_get_xatom_by_name_for_display takes a GdkDisplay *,
not an XDisplay * (obvious typo fix for the previous commit)
Owen Taylor [Tue, 10 Dec 2002 20:06:02 +0000 (20:06 +0000)]
Separate out tracking of the X server focus window from tracking our idea
Tue Dec 10 14:37:41 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkevents-x11.c (gdk_event_translate)
gdk/x11/gdkwindow-x11.h: Separate out tracking of the X server
focus window from tracking our idea of what the focus window is,
because the PointerRoot code needs to know the real pointer
window. (Mostly accidentally committed a bit earlier.)
Soeren Sandmann [Tue, 10 Dec 2002 12:02:43 +0000 (12:02 +0000)]
new default color scheme based on the GNOME stock icon palette. (#80691,
Tue Dec 10 12:40:30 2002 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkmenuitem.c, gtk/gtkstyle.c, gtk/gtkrc.c: new default
color scheme based on the GNOME stock icon palette. (#80691,
Tuomas Kuosmanen, Garrett LeSage, Owen Taylor)
* gtk/gtknotebook.c (gtk_notebook_real_remove): take a new
parameter, "destroying", and don't emit the switch-page signals
when it is true (fix #64832, reported by Jarred Keuch)
x can be in the range [0, upper], which can be bigger than [0, page_size].
Tue Dec 10 02:14:12 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): x can be in
the range [0, upper], which can be bigger than [0, page_size].
(Fixed #99778, reported and testcase provided by Carlos Garnacho
Parro).
Owen Taylor [Tue, 10 Dec 2002 00:53:47 +0000 (00:53 +0000)]
Remove a couple of places if (widget->window), this function will only
Mon Dec 9 19:49:03 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_move_resize): Remove
a couple of places if (widget->window), this function
will only ever be called on a realized window.
(#80225)
implement a working use_align = FALSE implementation (also mentioned in
Tue Dec 10 01:58:43 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (validate_visible_area): implement a working
use_align = FALSE implementation (also mentioned in #91335, reported
by Juri Pakaste).
* gtk/gtktreeview.c (validate_visible_area): only free the
scroll_to_path if we are done with validating (fixes #93584, reported
and testcase provided by Erik Simonsen).
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
set the GTK_CELL_RENDERER_FOCUSED flag where appropriate. (fixes
#75745, reported by Richard Hult).
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_position):
initialize cellinfo to NULL to silence the compiler.
Owen Taylor [Mon, 9 Dec 2002 23:55:26 +0000 (23:55 +0000)]
Remove selection for DeviceButtonRelease, we no longer need it now that
Mon Dec 9 18:50:31 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
Remove selection for DeviceButtonRelease, we no longer need
it now that gxi is gone. (#32617, reported by Garry
Osgood)
update to allow a GdkDrawable instead of a GdkWindow.
Tue Dec 10 00:49:35 2002 Kristian Rietveld <kris@gtk.org>
* gdk/gdkpixmap.h (gdk_pixmap_new), (gdk_bitmap_create_from_data),
(gdk_pixmap_create_from_xpm), (gdk_pixmap_colormap_create_from_xpm),
(gdk_pixmap_create_from_xpm_d),
(gdk_pixmap_colormap_create_from_xpm_d): update to allow a
GdkDrawable instead of a GdkWindow.
* gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpm),
(gdk_pixmap_create_from_xpm), (gdk_pixmap_colormap_create_from_xpm_d),
(gdk_pixmap_create_from_xpm_d): update to allow a GdkDrawable
instead of a GdkWindow.
* gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new),
(gdk_bitmap_create_from_data), (gdk_pixmap_create_from_data): update
to allow a GdkDrawable instead of a GdkWindow.
Owen Taylor [Mon, 9 Dec 2002 02:41:51 +0000 (02:41 +0000)]
Fix a lost refcount in the case where we get a duplicate back from the X
Sun Dec 8 21:29:10 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc1): Fix
a lost refcount in the case where we get a duplicate
back from the X server.
* gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors_writeable):
Set success[] for all colors when allocation of colors
cells via XAllocColorCells succeeds.
* gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors_private):
Don't match against colors cells allocated writeable.
Owen Taylor [Mon, 9 Dec 2002 02:25:14 +0000 (02:25 +0000)]
When allocating non-writeable colors, fill in the flags field of the
Sun Dec 8 21:22:46 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors_private):
When allocating non-writeable colors, fill in the flags
field of the XColor, and insert the returned color into
our color hash. (#100023, Naofumi Yasufuku)
* gdk/x11/gdkcolor-x11.c (gdk_colormap_free_colors):
Fix a typo (my fault) that slipped in in the last patch.
Owen Taylor [Mon, 9 Dec 2002 02:02:27 +0000 (02:02 +0000)]
More fixes for GdkColormapX11 (#100023, Naofumi Yasufuku)
Sun Dec 8 20:32:23 2002 Owen Taylor <otaylor@redhat.com>
More fixes for GdkColormapX11 (#100023, Naofumi Yasufuku)
* gdk/x11/gdkcolor-x11.c (gdk_colors_free)
(gdk_colormap_free_colors): Don't call XFreeColors() for
private colorsmaps.
* gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors_writeable,
gdk_colormap_colors_private, gdk_colormap_alloc_colors_shared):
Fix return values to return number remaining not number
allocated.
* gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors_shared,
gdk_colormap_alloc_colors_private): Clean up some a stray
initializations.
Owen Taylor [Mon, 9 Dec 2002 01:29:34 +0000 (01:29 +0000)]
Fixes for GdkColormapX11 (#100023, Naofumi Yasufuku)
Sun Dec 8 20:19:22 2002 Owen Taylor <otaylor@redhat.com>
Fixes for GdkColormapX11 (#100023, Naofumi Yasufuku)
* gdk/x11/gdkcolor-x11.c (gdk_x11_colormap_foreign_new):
Fix typo that caused us to always return the system
colormap.
* gdk/x11/gdkcolor-x11.c (gdk_colormap_new): When allocating
a private colormap and copying the system palette
to prevent flashing, handle colormap->size greater than
system_colormap->size.
* gdk/x11/gdkcolor-x11.c (gdk_x11_colormap_get_xdisplay):
Get rid of the last remains of private->xdisplay
in favor of using private->screen.
Tor Lillqvist [Mon, 9 Dec 2002 00:43:42 +0000 (00:43 +0000)]
Merge from stable:
2002-12-09 Tor Lillqvist <tml@iki.fi>
Merge from stable:
* gdk/win32/gdkdrawable-win32.c (generic_draw): Don't leak
stipple_gc. More checks for errors. Use correct ternary ROP when
blitting the foreground into the tile pixmap onto those pixels
where the stipple is set. (I didn't notice that I had used the
wrong one, as it didn't matter on Win2k, where DIB sections
apparently are zeroed upon creation. But on Win98 they have random
initial contents. Thanks to Hans Breuer for reporting this.)
(gdk_win32_draw_rectangle, gdk_win32_draw_arc,
gdk_win32_draw_polygon): Don't pass the LINE_ATTRIBUTES bits to
generic_draw() if drawing a filled figure.
* gdk/win32/gdkmain-win32.c (_gdk_win32_print_dc): Minor cosmetics.
(_gdk_win32_gcvalues_mask_to_string): Initialize buffer as empty.
(_gdk_win32_window_state_to_string): New debugging output helper
function.
* gdk/win32/gdkevents-win32.c: Minor debugging output changes.
(gdk_event_translate): Ignore the WM_SHOWWINDOW/SW_OTHERUNZOOM or
SW_OTHERZOOM messages. Do not generate a GDK_UNMAP event for
WM_SIZE/SIZE_MINIMIZED messages, they do not really corrspond to
unmapping on X11. Set window state correctly for all three of
SIZE_{MINIMIZED,MAXIMIZED,RESTORED}. A maximized and then iconified
("minimized" in Windows terminology) window still has the
"maximized" property, i.e. when deiconified, it will reappear as
maximized. (#10557)
* gdk/win32/gdkprivate-win32.h: Declare new function.
(WIN32_API_FAILED, WIN32_GDI_FAILED, OTHER_API_FAILED): Don't use
__PRETTY_FUNCTION__ if __GNUC__ >= 3, to avoid warning message.
* gdk/win32/gdkwindow-win32.c (show_window_internal): Handle more
situations. Add parameter to tell whether deiconifying. Code
reorg: Return early when appropriate instead of using nested if
statements. If just deiconifying without raising, restore active
window. (#10557)
(gdk_window_hide, gdk_window_withdraw, gdk_window_iconify,
gdk_window_deiconify, gdk_window_maximize, gdk_window_unmaximize,
gdk_window_focus): Use _gdk_win32_window_state_to_string() in
debugging output.
(gdk_window_iconify): Restore active window after calling
ShowWindow(). Otherwise the "next" window gets activated.
(gdk_window_stick, gdk_window_unstick): Don't output any warnings.
(gdk_window_set_transient_for): Rewrite. Just call SetWindowLong()
with GWL_HWNDPARENT, which despite its name sets the *owner*
window, which should be exactly what we want. The PSDK
documentation is said to be misleading. testgtk's modal window
test now works much better. (#50586)
Owen Taylor [Sun, 8 Dec 2002 23:32:29 +0000 (23:32 +0000)]
Remove left-over NULL checks that were preventing the NULL to "unmodify"
Sun Dec 8 18:28:51 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_modify_fg/bg/base/text/font):
Remove left-over NULL checks that were preventing the
NULL to "unmodify" feature from actually working.
Owen Taylor [Wed, 4 Dec 2002 19:50:57 +0000 (19:50 +0000)]
Always look up and create the Motif drag window as a child of the root
Wed Dec 4 14:31:46 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdnd-x11.c: Always look up and create the
Motif drag window as a child of the root window of screen 0
rather than the default screen. (#100362, Erwann Chenede)
* gdk/x11/gdkdnd-x11.c (motif_read_initiator_info):
Return FALSE, not GDK_FILTER_REMOVE on failure; this
isn't a filter function.
* gdk/x11/gdkselection-x11.c gtk/gtkselection.c: Add
some g_return_if_fail() to catch selection == None more
gracefully than an X error.
Owen Taylor [Wed, 4 Dec 2002 18:07:08 +0000 (18:07 +0000)]
Add back the monitoring of the selection when the combo isn't popped down;
Wed Dec 4 12:44:50 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcombo.c (gtk_combo_selection_changed): Add
back the monitoring of the selection when the combo
isn't popped down; apparently people depended upon
the side-effect where gtk_combo_set_popdown_strings()
would wipe out the contents of the list when browse-mode
autoselected the first item in the list. (#100347)