Commit Graph

8546 Commits

Author SHA1 Message Date
Tor Lillqvist
046642509d Don't leak HICONs on Win32. (#364868, Hiroyuki Yamamoto)
2006-12-28  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkstatusicon.c (gtk_status_icon_finalize)
	(gtk_status_icon_update_image): Don't leak HICONs on
	Win32. (#364868, Hiroyuki Yamamoto)
2006-12-28 16:50:35 +00:00
Carlos Garnacho
d42bbb6466 Make GtkNotebook able to drop detached tabs anywhere. Bug #360225.
2006-12-28  Carlos Garnacho  <carlosg@gnome.org>

        Make GtkNotebook able to drop detached tabs anywhere. Bug #360225.

        * gtk/gtkwidget.c (gtk_widget_class_init): add "drag-failed" signal.
        * gtk/gtkmarshalers.list: add new marshaler definition.
        * gtk/gtkenums.h: add GtkDragResult enum.

        * gtk/gtkdnd.c (gtk_drag_drop_finished): emit "drag-failed" if DND
        operation wasn't successful.
        (_gtk_drag_source_handle_event) (gtk_drag_drop)
        (gtk_drag_selection_get) (gtk_drag_cancel) (gtk_drag_key_cb)
        (gtk_drag_grab_broken_event_cb) (gtk_drag_grab_notify_cb)
        (gtk_drag_button_release_cb) (gtk_drag_abort_timeout): tell
        gtk_drag_drop_finished() the operation result.

        * gtk/gtknotebook.c (gtk_notebook_drag_failed): new function.
        (gtk_notebook_drag_data_get): do not call window creation hook here.
        (gtk_notebook_init): do not set "application/x-rootwindow-drop"
        target, instead connect to "drag-failed".
        (gtk_notebook_draw_focus): fix potential crasher if cur_page is NULL.
2006-12-28 16:38:49 +00:00
Mikael Hallendal
693c3c2649 Factored out the event loop integration into gdkeventloop-quartz.c.
2006-12-28  Mikael Hallendal  <micke@imendio.com>

	* gdk/quartz/gdkevents-quartz.c: Factored out the event loop
	integration into gdkeventloop-quartz.c.

	* gdk/quartz/Makefile.am: Added gdkeventloop-quartz.c

	* gdk/quartz/gdkeventloop-quartz.c: New file containing the event loop
	integration.
2006-12-28 09:04:48 +00:00
Matthias Clasen
c855dc61b5 broken pre-commit script 2006-12-28 04:22:46 +00:00
Matthias Clasen
90532005ee Remove redundant declarations (#390097, Christian Persch)
2006-12-27  Matthias Clasen  <mclasen@redhat.com>

        * gdk/gdk.h: Remove redundant declarations (#390097,
        Christian Persch)
2006-12-28 04:19:49 +00:00
Kristian Rietveld
0677ad8e59 Support inverting arrows via XSetting. (#377979, Yevgen Muntyan).
2006-12-27  Kristian Rietveld  <kris@gtk.org>

	Support inverting arrows via XSetting. (#377979, Yevgen Muntyan).

	* gtk/gtksettings.c (gtk_settings_class_init): add new setting
	gtk-alternative-sort-arrows.

	* gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting): add
	new setting.

	* modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: set new
	gtk-alternative-sort-arrows setting to true.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
	invert direction if gtk-alternative-sort-arrows is TRUE.
2006-12-27 19:52:25 +00:00
Tor Lillqvist
cc89cf541f Add gtk_status_icon_get_screen and gtk_status_icon_set_screen.
2006-12-27  Tor Lillqvist  <tml@novell.com>

	* gtk/gtk.symbols: Add gtk_status_icon_get_screen and
	gtk_status_icon_set_screen.

	* gtk/gtkstatusicon.c: Implement gtk_status_icon_position_menu()
	on Windows. Keep track of where the last button click on the
	taskbar icon took place, and return that. Obviously not correct if
	no button has ever been clicked on the icon, or if the geometry of
	the taskbar has changed since. But for most use cases where a menu
	is going to be displayed as a direct result of a button click on
	the status icon, works fine. (#377349)

	Implement getting the orientation property on Windows.

	(gtk_status_icon_embedded_changed)
	(gtk_status_icon_orientation_changed): Ifdefify these functions
	that are used only on X11.
2006-12-27 18:20:10 +00:00
Tor Lillqvist
6d9dac29d0 Fix typo. (#390035, Kazuki Iwamoto)
2006-12-27  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkfilesystemwin32.c (execute_callbacks): Fix
	typo. (#390035, Kazuki Iwamoto)
2006-12-27 15:40:37 +00:00
Matthias Clasen
8d286a7239 Accept NULL.
2006-12-27  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkcellview.c (gtk_cell_view_set_model): Accept NULL.

        * gtk/gtkcombobox.c (gtk_combo_box_set_model):
        (gtk_combo_box_unset_model): Handle repeated unsetting
        of models without warnings.  (#367529, Robert Ancell)
2006-12-27 07:17:53 +00:00
Matthias Clasen
c5ef6f4b39 Use getters for http fields where available. (#364866, Björn Lindqvist)
2006-12-27  Matthias Clasen  <mclasen@redhat.com>

        * modules/printbackends/cups/gtkprintbackendcups.c: Use
        getters for http fields where available.  (#364866,
        Björn Lindqvist)
2006-12-27 06:49:49 +00:00
Matthias Clasen
6ef83209bd Add a g_return_if_fail. (#362614, Xan Lopez)
2006-12-27  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkwidget.c (gtk_widget_show): Add a g_return_if_fail.
        (#362614, Xan Lopez)
2006-12-27 06:45:19 +00:00
Matthias Clasen
1bb873464c If a required action is missing, don't recurse over the children.
2006-12-27  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkuimanager.c (update_node): If a required action
        is missing, don't recurse over the children.  (#349119,
        Chris Moller)
2006-12-27 06:37:18 +00:00
Matthias Clasen
264e9c0ce1 Fix a few problems with nested menus in comboboxes (#386694, Yevgen
2006-12-17  Matthias Clasen  <mclasen@redhat.com>

        Fix a few problems with nested menus in comboboxes
        (#386694, Yevgen Muntyan)

        * gtk/gtkcombobox.c (gtk_combo_box_menu_fill_level): Always
        connect the activate callback.
        (gtk_combo_box_menu_item_activate): Do nothing if called on
        an item with a submenu.
        (gtk_combo_box_menu_row_deleted): Remove a submenu when it
        is empty.
2006-12-27 06:12:53 +00:00
Mariano Suárez-Alvarez
0b0746e44d Add a file-set signal to the filechooser button. Bug 353196.
2006-12-26  Mariano Suárez-Alvarez  <mariano@gnome.org>

	* gtk/gtkfilechooserbuuton.[hc]: Add a file-set signal to the
	filechooser button. Bug 353196.
2006-12-26 22:20:06 +00:00
Kristian Rietveld
962e54f140 fix typo causing the search dialog timeout never to be refreshed.
2006-12-26  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_search_init): fix typo causing
	the search dialog timeout never to be refreshed. (#389581,
	Andrzej Szombierski).
2006-12-26 18:17:36 +00:00
Kristian Rietveld
a3bc63b9e2 Lots of scrolling fixes. Made scrolling work properly in not fully
2006-12-26  Kristian Rietveld  <kris@gtk.org>

	Lots of scrolling fixes.  Made scrolling work properly in not fully
	validated tree views; fixed a bunch of corner cases.

	* gtk/gtktreeview.c (validate_visible_area): if a row's dy is past
	upper - page_size, we know it is located at the end so the test for
	dy + height has been dropped.
	In the same case if area_below < 0, we know this is the last node
	in the tree view so area_above is page_size - height of this row.
	(validate_visible_area): got rid of subtracting new_height -
	old_height from area_{below,above}, it didn't make any sense at
	all and the full height of the row should be subtracted instead.
	(validate_visible_area): when scrolling to a given path, set the
	top row directly together with the dy offset, then sync that top_row
	to the dy.
	(gtk_tree_view_set_top_row): new function to directly set a top_row.
	(gtk_tree_view_dy_to_top_row): refactored to use
	gtk_tree_view_set_top_row().
	(gtk_tree_view_top_row_to_dy): make sure dy >= 0 when done.
	(gtk_tree_view_adjustment_changed): only update our dy and
	top_row if the adjustment's dy actually changed.
2006-12-26 16:13:02 +00:00
Christian Persch
0b75f7a30f Return the correct value from gtk_notebook_insert_page if the page-added
2006-12-26  Christian Persch  <chpe@cvs.gnome.org>

	* gtk/gtknotebook.c: (gtk_notebook_real_insert_page):
	Return the correct value from gtk_notebook_insert_page if the
	page-added handler reorders the tabs. Bug #345094.
2006-12-26 14:49:34 +00:00
Carlos Garnacho
43e3082a43 Fix small regressions in GtkNotebook tab detaching. Bug #378852.
2006-12-26  Carlos Garnacho  <carlosg@gnome.org>

        Fix small regressions in GtkNotebook tab detaching. Bug #378852.

        * gtk/gtknotebook.c (gtk_notebook_do_arrow): grab focus to allow tabs
        scrolling when hovering with a detached tab.
        (gtk_notebook_stop_reorder): Do not deparent the wrong tab if the
        focus tab has changed during a tab DND operation.
        (gtk_notebook_drag_end): ensure that the dropped tab gets focused.
        (gtk_notebook_paint): do not take cur_page as a reference to paint the
        box if it's detached.
        (gtk_notebook_calculate_tabs_allocation): focus_tab may be different
        to the detached tab if we hover the arrows during a tabs detaching
        operation, do not allocate it unconditionally in 0,0.
2006-12-26 11:02:15 +00:00
Carlos Garnacho
c1077874a0 Expose improvements for GtkNotebook. Bug #383435
2006-12-26  Carlos Garnacho  <carlosg@gnome.org>

        Expose improvements for GtkNotebook. Bug #383435

        * gtk/gtknotebook.c (gtk_notebook_expose): propagate the event to tab
        labels.
        (gtk_notebook_draw_focus): do not repaint the whole focused tab again.
        (gtk_notebook_draw_tab): do not send handmade expose events to tab
        labels.
2006-12-26 10:31:36 +00:00
Matthias Clasen
efcf8f6b63 Return FALSE. (#389623, Carlos Garnacho Parro)
2006-12-26  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkfilesystemunix.c (execute_callbacks): Return
        FALSE.  (#389623, Carlos Garnacho Parro)
2006-12-26 06:57:50 +00:00
Matthias Clasen
e115bcfb02 Avoid spurious redraws.
2006-12-26  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkrange.c (stop_scrolling): Avoid spurious
        redraws.
2006-12-26 06:53:57 +00:00
Christian Persch
65832ae230 Notify the "embedded" property also on normal construction and when
2006-12-25  Christian Persch  <chpe@cvs.gnome.org>

	* gtk/gtkplug.c: (gtk_plug_construct_for_display),
	(gtk_plug_unrealize): Notify the "embedded" property also on
	normal construction and when destroying the socket window.
	Bug #388738.
2006-12-25 12:29:35 +00:00
Christian Persch
bcab1eb30b Set the HIG spacings directly instead of using style-set handlers. Fix the
2006-12-25  Christian Persch  <chpe@cvs.gnome.org>

	* gtk/gtkaboutdialog.c: (gtk_about_dialog_class_init),
	(gtk_about_dialog_init), (display_credits_dialog),
	(display_license_dialog):
	* gtk/gtkfilechooserdialog.c: (gtk_file_chooser_dialog_class_init),
	(gtk_file_chooser_dialog_init),
	(gtk_file_chooser_dialog_constructor),
	(gtk_file_chooser_dialog_unmap):
	* gtk/gtkrecentchooserdefault.c:
	(_gtk_recent_chooser_default_init):
	* gtk/gtkrecentchooserdialog.c:
	(gtk_recent_chooser_dialog_class_init),
	(gtk_recent_chooser_dialog_init),
	(gtk_recent_chooser_dialog_constructor),
	(gtk_recent_chooser_dialog_unmap): Set the HIG spacings directly
	instead of using style-set handlers. Fix the filechooser's spacing
	between content and action area to 12px. Bug #372447.
2006-12-25 12:21:16 +00:00
Christian Persch
a20da20873 Don't assume statusbar->label is the statusbar's frame's child when
2006-12-25  Christian Persch  <chpe@cvs.gnome.org>

	* gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate):
	Don't assume statusbar->label is the statusbar's frame's child when
	shrinking the size allocation when the grip is shown. Bug #372452.
2006-12-25 12:12:10 +00:00
Christian Persch
fca708fb0e Fix mem leaks. Bug #389194.
2006-12-25  Christian Persch  <chpe@cvs.gnome.org>

	* gtk/gtkpagesetupunixdialog.c: (printer_status_cb),
	(add_custom_paper): Fix mem leaks. Bug #389194.
2006-12-25 12:03:44 +00:00
Matthias Clasen
e7e84bb8ec Remove debug output.
2006-12-24  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextutil.c: Remove debug output.

        * gtk/gtktextview.c: Improve the DND scrolling
        behaviour.  (#92387, Carlos Garnacho Parro)
2006-12-25 03:57:39 +00:00
Matthias Clasen
502a54a17c Improve translators comments. (#389298, Christian Persch)
2006-12-24  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkaccellabel.c: Improve translators comments.
        (#389298, Christian Persch)
2006-12-24 22:12:13 +00:00
Kristian Rietveld
1e16587901 Remove stale cvs conflict marker. 2006-12-24 19:32:38 +00:00
Bastien Nocera
5a64bf97e1 Fix typo (s/expansive/expensive) (#389183)
2006-12-24  Bastien Nocera  <hadess@hadess.net>

	* gtk/gtkrecentmanager.c: Fix typo (s/expansive/expensive)
	(#389183)
2006-12-24 15:57:01 +00:00
Christian Persch
4f5e5b4834 Make gtk_printer_list_papers public. Bug #345587.
2006-12-24  Christian Persch  <chpe@cvs.gnome.org>

	* docs/reference/gtk/gtk-sections.txt:
	* gtk/gtk.symbols:
	* gtk/gtkpagesetupunixdialog.c: (fill_paper_sizes_from_printer):
	* gtk/gtkprinter-private.h:
	* gtk/gtkprinter.c: (gtk_printer_list_papers):
	* gtk/gtkprinter.h: Make gtk_printer_list_papers public. Bug #345587.
2006-12-24 13:16:05 +00:00
Carlos Garcia Campos
842b318306 Don't ignore reverse portrait option when is selected in page setup
2006-12-24  Carlos Garcia Campos  <carlosgc@gnome.org>
	* gtk/gtkpagesetupunixdialog.c: Don't ignore reverse portrait option
	when is selected in page setup dialog. Fixes bug #365047.
2006-12-24 11:30:22 +00:00
Behdad Esfahbod
ff3bfe96ea Use gtk_border_free when freeing border.
2006-12-24  Behdad Esfahbod  <behdad@gnome.org>

        * gtk/gtkentry.c (_gtk_entry_effective_inner_border):
        Use gtk_border_free when freeing border.
2006-12-24 09:54:56 +00:00
Matthias Clasen
a9d25d6235 When shift-clicking, keep the larger part of the selection selected.
2006-12-24  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkentry.c (gtk_entry_button_press): When
        shift-clicking, keep the larger part of the selection
        selected.  (#353709, Benjamin Otte)

        * gtk/gtkbutton.c (gtk_button_get_props): Use
        gtk_border_free when freeing borders.
2006-12-24 06:32:07 +00:00
Matthias Clasen
650fd1fd27 Be more careful when faking a button release. (#323146, Travis Abbott)
2006-12-24  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkbutton.c (gtk_button_grab_notify): Be more
        careful when faking a button release.  (#323146,
        Travis Abbott)
2006-12-24 06:06:37 +00:00
Matthias Clasen
d930c90436 Draw the handle with the right orientation, depending on the position of
2006-12-24  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkhandlebox.c (draw_textured_frame): Draw the
        handle with the right orientation, depending on the
        position of the handlebox.  (#159764, Benjamin Berg)
2006-12-24 05:34:38 +00:00
Behdad Esfahbod
c0e479bfab Use gslice for GtkBorder (#383557).
2006-12-24  Behdad Esfahbod  <behdad@gnome.org>

        * gtk/gtkstyle.c (gtk_border_copy), (gtk_border_free): Use gslice for
        GtkBorder (#383557).
2006-12-24 05:32:38 +00:00
Behdad Esfahbod
d698e3eaf2 Bug 340141 – Update to Pango 1.16 API
2006-12-24  Behdad Esfahbod  <behdad@gnome.org>

        Bug 340141 – Update to Pango 1.16 API

        * gdk/gdkpango.c (layout_iter_get_line_clip_region),
        (gdk_pango_layout_line_get_clip_region):
        * gtk/gtkcalendar.c (gtk_calendar_size_request):
        * gtk/gtkentry.c (gtk_entry_get_pixel_ranges),
        (get_layout_position), (gtk_entry_find_position),
        (gtk_entry_adjust_scroll):
        * gtk/gtkiconview.c (get_pango_text_offsets):
        * gtk/gtklabel.c (get_cursor_direction):
        * gtk/gtkstyle.c (get_insensitive_layout):
        * gtk/gtktextdisplay.c (render_para):
        * gtk/gtktextlayout.c (allocate_child_widgets),
        (find_display_line_below), (find_display_line_above),
        (gtk_text_layout_move_iter_to_previous_line),
        (gtk_text_layout_move_iter_to_next_line),
        (gtk_text_layout_move_iter_to_line_end),
        (gtk_text_layout_iter_starts_line),
        (gtk_text_layout_move_iter_to_x):
        * gtk/gtktextutil.c (limit_layout_lines):
        Use the _readonly version of pango_layout_iter_get_line(),
        pango_layout_iter_get_run(), pango_layout_get_line(), and
        pango_layout_get_lines().

        * gtk/gtkmain.c (gtk_get_default_language): Use
        pango_get_default_language().
2006-12-24 05:29:25 +00:00
Matthias Clasen
106ddae86d Emit changed and notify:text only once. The same fix was applied for
2006-12-24  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkentry.c (gtk_entry_set_text): Emit changed
        and notify:text only once. The same fix was applied
        for replacing the selection via DND or copy-and-paste.
        (#64998, Damon Chaplin, Sven Herzberg)
2006-12-24 05:18:25 +00:00
Matthias Clasen
c851a85dc3 Be careful to not override GTK+ translations with the translations of the
2006-12-23  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkimmulticontext.c: Be careful to not override
        GTK+ translations with the translations of the input
        method.  (#317080, Tor Lillqvist)

        * modules/input/imcedilla.c: Use standard macros
        for translation domain and locale dir.
2006-12-23 21:25:16 +00:00
Matthias Clasen
dfbde7a8d8 Allow composing l with stroke. (#349638, Daniel Lublin)
2006-12-23  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkimcontextsimple.c: Allow composing l with
        stroke.  (#349638, Daniel Lublin)
2006-12-23 21:08:45 +00:00
Matthias Clasen
a35e295880 Fix a thinko in the suffix calculation. (#382369, Christian Persch)
2006-12-23  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gen-paper-names.c: Fix a thinko in the suffix
        calculation.  (#382369, Christian Persch)

        * gtk/paper_names_offsets.c: Regenerated.
2006-12-23 21:00:53 +00:00
Matthias Clasen
cd1c63583c Move G_GNUC_INTERNAL before function declarations. (#352276, Damien
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        * modules/engines/pixbuf/pixbuf.h:
        * modules/engines/pixbuf/pixbuf-rc-style.h:
        * modules/engines/pixbuf/pixbuf-style.h: Move
        G_GNUC_INTERNAL before function declarations.  (#352276,
        Damien Carbery)
2006-12-23 03:35:21 +00:00
Matthias Clasen
73614da57c Fix some leaks. (#348108, Chris Wilson)
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        * demos/gtk-demo/*.c: Fix some leaks.  (#348108, Chris
        Wilson)

2
2006-12-23 02:39:45 +00:00
Matthias Clasen
721c3bc101 Replace a lot of idle and timeout calls by the new gdk_threads api.
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        * *.c: Replace a lot of idle and timeout calls by
        the new gdk_threads api.
2006-12-22 19:10:43 +00:00
Matthias Clasen
7854bd1b6e Add functions to allow threadsafe handling of idles and timeouts wrt. to
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        * gdk/gdk.symbols:
        * gdk/gdk.h:
        * gdk/gdk.c: Add functions to allow threadsafe handling
        of idles and timeouts wrt. to the GDK lock.  (#321886,
        Chris Wilson)
2006-12-22 17:46:32 +00:00
Matthias Clasen
1bed6b434c Use pango_cairo_show_error_underline. (#340141, Behdad Esfahbod)
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        * gdk/gdkpango.c: Use pango_cairo_show_error_underline.
        (#340141, Behdad Esfahbod)
2006-12-22 17:06:30 +00:00
Matthias Clasen
7f0d30a0cc Check for getc_unlocked.
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        * configure.in: Check for getc_unlocked.

        * gtk/xdgmime/xdgmimemagic.c: Use getc if getc_unlocked is
        unavailable.   (#381499)
2006-12-22 16:13:49 +00:00
Matthias Clasen
f905c6cf68 typo fix 2006-12-22 15:39:09 +00:00
Matthias Clasen
d9a6a829ce Make it possible to track the embeddedness of statusicon (#387215, Martyn
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        Make it possible to track the embeddedness of
        statusicon (#387215, Martyn Russell, patch by Christian
        Persch)

        * gtk/gtkstatusicon.c: Add orientation and embedded properties.
        * gtk/gtkplug.c:
        * gtk/gtkplug-x11.c: Add an embedded property.
        * tests/teststatusicon.c: Test the new properties.
2006-12-22 07:18:21 +00:00
Matthias Clasen
33153bec36 Don't leak draw_border. (#387170, Kjartan Maraas)
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkwidget.c (gtk_widget_get_draw_rectangle): Don't
        leak draw_border.  (#387170, Kjartan Maraas)
2006-12-22 06:29:51 +00:00