Commit Graph

6812 Commits

Author SHA1 Message Date
Matthias Clasen
6fa25d074e New function to get the cell renderers of a cell layout.
2006-12-29  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtk.symbols:
        * gtk/gtkcelllayout.[hc] (gtk_cell_layout_get_cells):
        New function to get the cell renderers of a cell layout.

        * gtk/gtktreeviewcolumn.c:
        * gtk/gtkcellview.c:
        * gtk/gtkiconview.c: Implement get_cells.
2006-12-29 07:53:01 +00:00
Matthias Clasen
b3ef93d8ee Use word wrapping by default, and center multiline labels. (#318763, Ross
2006-12-28  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkiconview.c: Use word wrapping by default, and
        center multiline labels.  (#318763, Ross Burton)

        * gtk/gtkcellrenderertext.c (get_layout): Remove a special
        case for single-line layouts.
2006-12-29 04:39:51 +00:00
Matthias Clasen
a8604619bd Fix a typo in the docs. (#390423, David Lodge)
2006-12-28  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkarrow.c: Fix a typo in the docs.  (#390423,
        David Lodge)
2006-12-28 21:47:59 +00:00
Matthias Clasen
785bffff68 Only use the results of find_menu/toolbar_position() if they succeed. May
2006-12-28  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkuimanager.c (update_node): Only use the results
        of find_menu/toolbar_position() if they succeed. May fix
        bug #388041.
2006-12-28 21:23:17 +00:00
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
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
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
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
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
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
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
Matthias Clasen
6f581dd268 Typo fix. (#388123, Murray Cumming)
* gtk/gtkfilechooserembed.c (_gtk_file_chooser_embed_set_delegate()):
        Typo fix.  (#388123, Murray Cumming)
2006-12-21 16:41:11 +00:00
Matthias Clasen
5b1283ba4c Add signal documentation. (#317064, Søren Wedel Nielsen)
2006-12-20  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextbuffer.c: Add signal documentation.  (#317064,
        Søren Wedel Nielsen)
2006-12-20 21:18:27 +00:00
Matthias Clasen
10ae5ad60f Silently return if a drag is already in progress, rather than asserting.
2006-12-20  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_start_selection_drag):
        Silently return if a drag is already in progress, rather
        than asserting.  (#335622, Li Yuan, testcase by Erwann Chenede)
2006-12-20 20:57:49 +00:00
Matthias Clasen
2dc9ec7c43 Allow any GtkDialog that implements GtkFileChooser as dialog. (#335473,
2006-12-20  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog):
        Allow any GtkDialog that implements GtkFileChooser as
        dialog.  (#335473, Tommi Komulainen)
2006-12-20 19:02:21 +00:00
Mikael Hallendal
e3655ec688 Fixed a last minute change in the quartz backend.
2006-12-20  Mikael Hallendal  <micke@imendio.com>

	* gtk/gtkstatusicon.c: (gtk_status_icon_init): Fixed a last minute
	change in the quartz backend.
2006-12-20 14:02:43 +00:00
Mikael Hallendal
f18b0d4b7a Added gtkstatusicon-quartz.c Implements the quartz backend for the status
2006-12-20  Mikael Hallendal  <micke@imendio.com>

	* gtk/Makefile.am: Added gtkstatusicon-quartz.c
	* gtk/gtkstatusicon-quartz.c: Implements the quartz backend for the
	status icon.
	* gtk/gtkstatusicon.c: Hooked in the new quartz backend. Bug #387874.
2006-12-20 13:24:05 +00:00