Commit Graph

6802 Commits

Author SHA1 Message Date
Matthias Clasen
8cc4fe41ff Fix #157787, reported by Jonathan Blandford:
2005-07-07  Matthias Clasen  <mclasen@redhat.com>

	Fix #157787, reported by Jonathan Blandford:

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_set_current_folder): Don't leave a
	"trail" behind when set_current_folder is called explicitly.
	(gtk_file_chooser_default_update_current_folder): New function
	that is called to update the current folder in response to
	user actions.

	* gtk/gtkpathbar.c (_gtk_path_bar_set_path): Add a boolean
	keep_trail argument, and don't leave a "trail" behind unless
	it is set.
2005-07-07 12:40:50 +00:00
Manish Singh
362f98246a change_orientation() should return void, remove unused variable in
2005-07-06  Manish Singh  <yosh@gimp.org>

        * demos/gtk-demo/menus.c: change_orientation() should return void,
        remove unused variable in do_menus().
2005-07-07 00:25:18 +00:00
Tor Lillqvist
489f99911a Don't create the GdkPixbuf until we know that we have something to put in
2005-07-06  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkcursor-win32.c
	(gdk_win32_icon_to_pixbuf_libgtk_only): Don't create the GdkPixbuf
	until we know that we have something to put in it.
2005-07-06 15:30:10 +00:00
Matthias Clasen
d28d674a66 Add some additional docs on precision. (#309238, Steve Chaplin)
2005-07-05  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkspinbutton.c (gtk_spin_button_new_with_range): Add some
	additional docs on precision.  (#309238, Steve Chaplin)
2005-07-06 03:45:13 +00:00
Matthias Clasen
2b6ec82856 Fix includes 2005-07-06 00:31:45 +00:00
Matthias Clasen
9a28f71885 Updates 2005-07-05 23:00:12 +00:00
Tor Lillqvist
db343ee03d Add comment about the current named cursor implementation, and what it
2005-07-06  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkcursor-win32.c: Add comment about the current named
	cursor implementation, and what it maybe really should do.
	(gdk_win32_icon_to_pixbuf_libgtk_only): New function, code moved
	here from gtk/gtkfilesystemwin32.c:extract_icon().
	(gdk_cursor_get_image): Use
	gdk_win32_icon_to_pixbuf_libgtk_only().

	* gdk/gdk.symbols
	* gdk/win32/gdkwin32.h: Declare gdk_win32_icon_to_pixbuf_libgtk_only().

	* gtk/gtkfilesystemwin32.c (extract_icon): Use
	gdk_win32_icon_to_pixbuf_libgtk_only().
2005-07-05 22:50:54 +00:00
Matthias Clasen
8821161c38 Take window groups into account. (#309473, Diego Gonzalez)
2005-07-05  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkmenu.c (gtk_menu_grab_notify): Take window
        groups into account.  (#309473, Diego Gonzalez)

        * gtk/gtkwindow.[hc]: Add a non-exported function to
        get the grab widget of a window group.
2005-07-05 22:34:07 +00:00
Kristian Rietveld
45c7c2b0ca in the 'main' expose loop, add back the calls to _set_cell_data removed
2005-07-05  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_bin_expose): in the
	'main' expose loop, add back the calls to _set_cell_data
	removed earlier. (#309221, Matthias Clasen).
2005-07-05 21:11:32 +00:00
Matthias Clasen
d12a6255db Demonstrate vertical menubars 2005-07-05 16:18:40 +00:00
Matthias Clasen
bf9bfd06ca Add a GtkAboutDialog::wrap-license property 2005-07-05 14:53:37 +00:00
Matthias Clasen
7af9cc8f7c Add some missing files to EXTRA_DIST 2005-07-05 05:57:36 +00:00
Matthias Clasen
8ee1ebf819 Queue a resize on the contained menuitems as well.
2005-07-04  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkmenubar.c (gtk_menu_bar_set_pack_direction)
	(gtk_menu_bar_set_child_pack_direction): Queue a resize
	on the contained menuitems as well.
2005-07-04 06:51:57 +00:00
Hans Breuer
19e9165d64 updated <io.h> for open() use G_PI instead of M_PI
2005-07-03  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc[.in] : updated
	* gtk/gtkiconcache.c : <io.h> for open()
	* gtk/gtkstyle.c : use G_PI instead of M_PI

	* gdk/win32/gdkcursor-win32.c : implement gdk_cursor_new_from_name()
	by mapping the lower case win32 api name to the respective cursor.
	E.g. pass "wait" to get the IDC_WAIT cursor. Also allows to load
	cursors from named resources in the executable.
	(gdk_cursor_get_image) : just return NULL for now.

	* gdk/win32/gdkgeometry-win32.c : implement gdk_window_move_region()
	by delegation to ScollWindowEx(), untested.

	* gdk/win32/gdkwindow-win32.c : stub for gdk_window_set_urgency_hint()
2005-07-03 15:47:42 +00:00
Matthias Clasen
1d1b9c7abe Hmm, when committing my vertical menubar patch, I forgot the
2005-07-03  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkimagemenuitem.c: Hmm, when committing my vertical
	menubar patch, I forgot the GtkImageMenuItem changes. And I
	managed to do 2 releases without noticing that...
2005-07-03 06:24:04 +00:00
Matthias Clasen
1d6b47e3fa Correct the blurb for the icon-sizes setting. String change. (#309355,
2005-07-03  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtksettings.c (gtk_settings_class_init): Correct the
	blurb for the icon-sizes setting. String change.
	(#309355, Benjamin Berg)
2005-07-03 04:52:46 +00:00
Matthias Clasen
d5fd8741e4 Bump version 2005-07-01 19:43:03 +00:00
Matthias Clasen
2bd25d8f45 2.7.1 2005-07-01 19:24:05 +00:00
Matthias Clasen
7dc4d68410 Prevent an infinite loop when G_FILENAME_ENCODING is invalid. (#309280,
2005-07-01  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilesel.c (cmpl_init_state): Prevent an infinite
	loop when G_FILENAME_ENCODING is invalid.  (#309280, Padraig Brady)
2005-07-01 15:51:30 +00:00
Manish Singh
5cc0696de6 declare _gdk_xgrab_check_button_event.
Thu Jun 30 14:17:24 2005  Manish Singh  <yosh@gimp.org>

        * gdk/x11/gdkprivate-x11.h: declare _gdk_xgrab_check_button_event.

        * gtk/gtkbutton.c: fix signature of gtk_button_grab_broken.
2005-06-30 21:18:34 +00:00
Matthias Clasen
8833e0d3c3 Avoid infinite loop if a mask is zero. (#309222, David Saxton)
2005-06-30  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkvisual-x11.c (gdk_visual_decompose_mask): Avoid
	infinite loop if a mask is zero.  (#309222, David Saxton)
2005-06-30 19:11:58 +00:00
Matthias Clasen
58824aa9bb Clarify the code, gcc 4 complains about predecrement in MAX().
2005-06-30  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_fetch_child):
	Clarify the code, gcc 4 complains about predecrement in MAX().
2005-06-30 19:07:16 +00:00
Matthias Clasen
9e4d008d25 Don't prematurely unregister callbacks.
2005-06-30  Matthias Clasen  <mclasen@redhat.com>

	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize): Don't
	prematurely unregister callbacks.
2005-06-30 18:42:44 +00:00
Matthias Clasen
6a2838717f Updates 2005-06-30 04:53:23 +00:00
Matthias Clasen
87cafe5b4b Handle broken grabs.
2005-06-29  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkbutton.c (gtk_button_grab_broken): Handle broken
        grabs.

        * gtk/gtkrange.c (gtk_range_grab_broken): Handle broken
        grabs.

        * gdk/gdkevents.h: Add a boolean to specify wether the broken
        grab was implicit.

        * gdk/x11/gdkdisplay-x11.c (gdk_display_pointer_is_grabbed):
        As the documentation states, don't return TRUE for
        implicit grabs.

        * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add
        a boolean field to store wether a pointer grab is implicit.

        * gdk/x11/gdkmain-x11.c (_gdk_xgrab_check_button_event):
        Track implicit grabs.

        * gdk/x11/gdkevents-x11.c (gdk_event_translate): Call
        _gdk_xgrab_check_button_event for button events.
2005-06-30 03:35:30 +00:00
Matthias Clasen
88e3584814 Make sure that cell boxes are always completely inside the item area.
2005-06-28  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkiconview.c (gtk_icon_view_calculate_item_size2):
	Make sure that cell boxes are always completely inside
	the item area.
2005-06-28 06:25:18 +00:00
Matthias Clasen
94f4c71eaa Make the list of demos scrollable.
2005-06-27  Matthias Clasen  <mclasen@redhat.com>

	* demos/gtk-demo/main.c (create_tree): Make the list of
	demos scrollable.
2005-06-28 03:42:55 +00:00
Matthias Clasen
86e4f7d1f3 Fix positioning at the end of the line for lines ending in invisible
2005-06-27  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end):
	Fix positioning at the end of the line for lines ending
	in invisible characters.
	(gtk_text_layout_get_line_display): Set display->layout
	to a PangoLayout, even for totally invisible lines.
2005-06-28 02:46:11 +00:00
Matthias Clasen
b2343762b1 Ignore GrabBroken events which are caused by overgrabbing inside the
2005-06-27  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkmenushell.c (gtk_menu_shell_grab_broken): Ignore
	GrabBroken events which are caused by overgrabbing inside
	the application; menus rely on these for their operation.

	* gdk/gdkevents.h (struct _GdkEventGrabBroken): Add a
	grab_window field.

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Set
	grab_window to NULL when generating GrabBroken events for
	WM_KILLFOCUS messages.

	* gdk/x11/gdkmain-x11.c (_gdk_xgrab_check_unmap)
	(_gdk_xgrab_check_destroy): Set grab_window to NULL when
	generating GrabBroken events when the grab window becomes
	unviewable or is destroyed.

	* gdk/x11/gdkmain-x11.c (gdk_pointer_grab, gdk_keyboard_grab):
	Generate GrabBroken events when overriding a grab inside
	the application. In this case, set grab_window to the new
	grab_window.
2005-06-27 21:06:33 +00:00
Matthias Clasen
f49eab1248 Continue to activate even if we can't grab the keyboard.
2005-06-27  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkbutton.c (gtk_real_button_activate): Continue
	to activate even if we can't grab the keyboard.
	(gtk_button_finish_activate): Only ungrab when we have
	a keyboard grab.  (#172998, William Jon McCann)
2005-06-27 20:04:33 +00:00
Matthias Clasen
c719b4bf3d Avoid a segfault. (#309054)
2005-06-27  Matthias Clasen  <mclasen@redhat.com>

	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize):
	Avoid a segfault. (#309054)

	* gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add
	fields for grab timestamps.

	* gdk/x11/gdkmain-x11.c (gdk_pointer_grab, gdk_keyboard_grab):
	Store grab timestamps when grabbing.

	* gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard_ungrab)
	(gdk_display_pointer_ungrab): Don't unset the grab_window
	if the timestamps indicate that the ungrab will fails.
2005-06-27 18:37:41 +00:00
Matthias Clasen
ddd27f21a6 Cancel menus when they are grab-shadowed by something thats not a submenu.
2005-06-27  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkmenu.c (gtk_menu_grab_notify): Cancel menus when
        they are grab-shadowed by something thats not a
        submenu.  (#145416, Euan MacGregor)
2005-06-27 17:36:34 +00:00
Owen Taylor
3b1269f500 Fix indentation.
2005-06-27  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtk[hv]ruler.c (gtk_[hv]ruler_draw_ticks):
        Fix indentation.
2005-06-27 15:13:08 +00:00
Kjartan Maraas
8eb4666ffe Fix leaks Same Closes bug #308953.
2005-06-27  Kjartan Maraas  <kmaraas@gnome.org>

	* gtk/gtkhruler.c: (gtk_hruler_draw_ticks): Fix leaks
	* gtk/gtkvruler.c: (gtk_vruler_draw_ticks): Same
	Closes bug #308953.
2005-06-27 14:38:19 +00:00
Matthias Clasen
d4c43a42ad Use GMappedFile.
2005-06-27  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkiconcache.c (_gtk_icon_cache_new_for_path): Use
	GMappedFile.

	* configure.in: Require GLib 2.7.1
2005-06-27 04:49:03 +00:00
Matthias Clasen
1b8d849b36 Unregister XIM callbacks here. (#309054)
2005-06-26  Matthias Clasen  <mclasen@redhat.com>

	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize):
	Unregister XIM callbacks here.  (#309054)

	* modules/input/gtkimcontextxim.h: Small cleanup.
2005-06-27 02:27:41 +00:00
Matthias Clasen
92e3227043 Pay attention to the scroll offset when drawing the box. (#308834, Tom von
2005-06-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkmenu.c (gtk_menu_paint): Pay attention to the
	scroll offset when drawing the box.  (#308834, Tom von
	Schwerdtner)
2005-06-27 02:07:35 +00:00
Tor Lillqvist
98a17d1462 gdk/Makefile.am Current GNU tools do understand the PRIVATE keyword, so no
2005-06-26  Tor Lillqvist  <tml@novell.com>

	* gdk/Makefile.am
	* gtk/Makefile.am: Current GNU tools do understand the PRIVATE
	keyword, so no need to remove those entries from the import
	library. libtool installs the .dll.a import library itself, so no
	need to do it here. Install the .def file.
2005-06-26 19:01:33 +00:00
Manish Singh
2f330b7737 add GDK_GRAB_BROKEN to the switch cases.
Sun Jun 26 00:04:36 2005  Manish Singh  <yosh@gimp.org>

        * gdk/gdkevents.c (gdk_event_get_time, gdk_event_get_state): add
        GDK_GRAB_BROKEN to the switch cases.

        * gtk/gtkmenushell.c (gtk_menu_shell_grab_broken): remove unused
        variables.

        * gtk/gtkpaned.c (gtk_paned_grab_broken): return TRUE.
2005-06-26 07:06:13 +00:00
Matthias Clasen
6cc79068cf Stop column header drag operations if the grab is broken.
2005-06-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_grab_broken): Stop column
	header drag operations if the grab is broken.
2005-06-26 06:51:55 +00:00
Matthias Clasen
5fb7f69dd8 Stop the drag if the grab is broken.
2005-06-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkhsv.c (gtk_hsv_grab_broken): Stop the drag if
	the grab is broken.
2005-06-26 06:39:19 +00:00
Matthias Clasen
d45263d5fa Don't do explicitly ungrab pointer and keyboard. We're unmapping the grab
2005-06-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_popdown): Don't do
	explicitly ungrab pointer and keyboard. We're unmapping
	the grab window anyway.
	(gtk_combo_box_popup): Handle grab failures.
2005-06-26 06:26:47 +00:00
Matthias Clasen
96cf099c47 Don't emit grab-broken for overgrabbing, until we figure out how to do
2005-06-25  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkmain-x11.c (gdk_keyboard_grab, gdk_pointer_grab):
	Don't emit grab-broken for overgrabbing, until we figure
	out how to do that without breaking the menu code.
2005-06-26 03:48:06 +00:00
Matthias Clasen
9b356ea0d8 Add a GrabBroken event to GDK, and a grab-broken-event signal to
2005-06-25  Matthias Clasen  <mclasen@redhat.com>

	Add a GrabBroken event to GDK, and a grab-broken-event
	signal to GtkWidget.  (#107320, Simon Cooke, initial patch
	by John Ehresman)

	* gdk/gdkevents.h: Add a GDK_GRAB_BROKEN event type,
	define a GdkEventGrabBroken event struct.

	* gdk/win32/gdkevents-win32.c (gdk_event_translate):
	Generate GrabBroken events in response to WM_KILLFOCUS.

	* gdk/x11/gdkmain-x11.c: Generate GrabBroken events
	when a grab is broken by the window becoming unviewable,
	or by another grab from the same client.

	* gtk/gtkwidget.h (GtkWidgetClass): Add grab_broken_event.

	* gtk/gtkwidget.c (gtk_widget_event_internal): Translate
	GrabBroken events into grab_broken_event signals.

	* gtk/gtkmain.c (gtk_main_do_event): Propagate GrabBroken
	events.

	* gtk/gtkmenushell.c (gtk_menu_shell_grab_broken): Deactivate
	the menu when the grab is broken.

	* gtk/gtkcolorsel.c (gtk_color_selection_grab_broken): Stop
	the color picker if the grab is broken.

	* gtk/gtkpaned.c (gtk_paned_grab_broken): Stop the drag if
	the grab is broken.
2005-06-25 07:10:40 +00:00
Matthias Clasen
effe3785cf Add some new stock items. (#166480, Kristof Vansant)
2005-06-25  Matthias Clasen  <mclasen@redhat.com>

	Add some new stock items.  (#166480, Kristof Vansant)

	* gtk/stock-icons/stock_fullscreen_16.png:
	* gtk/stock-icons/stock_fullscreen_24.png:
	* gtk/stock-icons/stock_leave_fullscreen_16.png:
	* gtk/stock-icons/stock_leave_fullscreen_24.png:
	* gtk/stock-icons/stock_info_16.png:
	* gtk/stock-icons/stock_info_24.png: New icons.

	* gtk/stock-icons/Makefile.am: Add new icons.

	* gtk/gtkstock.h: Define names for the new icons.

	* gtk/gtkstock.c (builtin_items): Register new stock items.

	* gtk/gtkiconfactory.c (get_default_icons): Register new
	stock icons.
2005-06-25 05:06:47 +00:00
Matthias Clasen
458d71a96a Make movement by paragraphs up/down symmetric. (#307055, Behnam Esfahbod)
2005-06-24  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c
	(gtk_text_view_move_cursor_internal): Make movement by
	paragraphs up/down symmetric.  (#307055, Behnam Esfahbod)
2005-06-24 17:42:17 +00:00
Owen Taylor
dd19f542db Fix up selection of conversion functions for MSB machines:
2005-06-24  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkrgb.c (gdk_rgb_select_conv): Fix up selection of
        conversion functions for MSB machines: convert_0888[_br]
        now work on bytes so are endian independent.
        (Reported by David Zeuthen)
2005-06-24 15:06:29 +00:00
Matthias Clasen
47ab9b2dc9 Don't jump to the next line if we are at the end of the line.
2005-06-24  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_scroll_hpages): Don't
	jump to the next line if we are at the end of the line.
2005-06-24 13:49:34 +00:00
Tor Lillqvist
ded7d9b234 Mention also bug #308413. 2005-06-24 13:04:51 +00:00
Tor Lillqvist
baad14eee0 Improve and simplify line segment rendering on Win32, especially the
2005-06-23  Tor Lillqvist  <tml@novell.com>

	Improve and simplify line segment rendering on Win32, especially
	the implementation of GDK_CAP_NOT_LAST, and dashed lines. Fixes
	bug #306396.

	* gdk/win32/gdkprivate-win32.h (GdkGCWin32): Save the GdkGC's
	line_style, cap_style and join_style as such in the
	GdkGCWin32. Don't need to keep the pen_double_dash flag, we can
	check the line_style.

	* gdk/win32/gdkgc-win32.c (fixup_pen): New internal function. Sets
	up the GDI pen type, style, end cap and join attributes to use
	based on the pen width, GDK line style, end cap style, and join
	style.

	For a narrow (zero-width) GDK pen with the GDK_CAP_NOT_LAST end
	cap style, which typically are used for XOR drawing where it is
	essential that the last pixel is not drawn, use a GDI cosmetic
	pen. Only for a cosmetic pen does GDI not draw the last pixel. I
	deduced this by experimetation, the documentation is rather vague.

	For other GDK pens use a geometric GDI pen. If the width is 0 or 1
	and the GDK end cap style is GDK_CAP_BUTT, and the line style is
	GDK_LINE_SOLID, use PS_ENDCAP_ROUND. This ensures that also
	single-pixel length lines are drawn. (For sngle-pixel width lines
	roundness as such is of course irrelevant.) For dashed lines, use
	PS_ENDCAP_FLAT.

	For wide lines use PS_ENDCAP_FLAT, _ROUND or _SQUARE,
	respectively, for GDK_CAP_BUTT, GDK_CAP_ROUND and GDK_CAP_PROJECTING.

	For one pixel on-off dashed lines, use PS_ALTERNATE, it seems to
	work better than PS_USERSTYLE. For other dashed lines, use
	PS_USERSTYLE and the dashes as set by the user (or the default
	four-pixel on-off style).

	(gdk_win32_gc_values_to_win32values, gdk_win32_gc_set_dashes):
	Call fixup_pen() to do the pen settings after modifying some of
	the GDK GC attributes that affect pens.

	* gdk/win32/gdkdrawable-win32.c (render_line_horizontal,
	render_line_vertical, draw_segments): Check GdkGCWin32::line_style
	instead of the the removed pen_double_dash member. Don't use
	PATCOPY unconditionally in the PatBlt() call, use a raster ope
	code that depends on the GC function in use.

	(draw_rectangle, draw_segments, draw_lines): Be more careful in
	deciding when to do the manual dash rendering.

	(draw_segments): Don't do any manual "last point" drawing at
	all. The above changes takes care of narrow line segments being
	drawn correctly in most cases, at least on NT-based Windows.
2005-06-24 13:00:05 +00:00