Bump libtiff requirement to 3.6.0, by requiring presence of
2007-05-18 Michael J. Chudobiak <mjc@cvs.gnome.org>
* INSTALL.in:
* README.in:
* configure.in: Bump libtiff requirement to 3.6.0, by requiring
presence of TIFFReadRGBAImageOriented.
* gdk-pixbuf-scaled-anim.c: (get_scaled_pixbuf):
Preserve pixbuf options when generating a new scaled pixbuf.
* io-jpeg.c: (get_orientation), (gdk_pixbuf__jpeg_image_load),
(gdk_pixbuf__jpeg_image_load_increment): Read the exif
orientation tag and associate it with the "orientation" pixbuf
option. Renders libexif unnecessary in some applications.
* io-tiff.c: (tiff_image_parse): Read the tiff orientation tag,
compensate for the partial rotations performed by libtiff,
and generate an "orientation" option for the pixbuf.
Carlos Garnacho [Fri, 18 May 2007 11:33:13 +0000 (11:33 +0000)]
Make combobox menu popdown keybindable (#433593)
2007-05-18 Carlos Garnacho <carlos@imendio.com>
Make combobox menu popdown keybindable (#433593)
* gtk/gtkcombobox.c (gtk_combo_box_class_init): Add "popdown" binding
signal and keybindings.
(gtk_combo_box_real_popdown): Added, "popdown" keybinding signal
handler.
(gtk_combo_box_menu_key_press):
(gtk_combo_box_list_key_press): forward the event to the combobox if
it wasn't handled by the menu.
Carlos Garnacho [Fri, 18 May 2007 11:07:04 +0000 (11:07 +0000)]
Allow widgets up in the hierarchy to run their DnD handlers if the target
2007-05-18 Carlos Garnacho <carlos@imendio.com>
* gtk/gtknotebook.c (gtk_notebook_init) (gtk_notebook_drag_motion)
(gtk_notebook_drag_drop): Allow widgets up in the hierarchy to run
their DnD handlers if the target doesn't match with anything the
notebook manages. (#350665, Joakim Lundborg).
Carlos Garnacho [Fri, 18 May 2007 10:38:42 +0000 (10:38 +0000)]
Refactor GtkFileChooserDialog sizing.
2007-05-18 Carlos Garnacho <carlos@imendio.com>
Refactor GtkFileChooserDialog sizing.
* gtkfilechooserembed.[ch] (delegate_get_resizable_hints)
(_gtk_file_chooser_embed_get_resizable_hints):
s/resizable_hints/resizable/, return just one boolean value to
determine whether the filechooser should be resizable or not.
* gtkfilechooserprivate.h (struct GtkFileChooserDialogPrivate): remove
variables related to the GtkFileChooserEmbed get_default_size() and
get_resizable() implementations.
(struct GtkFileChooserDefault): Move default size management here.
* gtkfilechooserdefault.c (gtk_file_chooser_default_size_allocate):
Added, store currently allocated size to calculate default size later.
(gtk_file_chooser_default_get_resizable_hints):
s/resizable_hints/resizable/.
(gtk_file_chooser_default_set_property): Reload settings if the file
chooser action changes, this way the save expander state will be known
before mapping the window, avoiding wrong window positioning and
flickering. (#424299, #424309)
(find_good_size_from_style): Only get size from style if it wasn't set
previously.
(gtk_file_chooser_default_get_default_size): return default size based
on stored default size and preview/extra widget sizes.
* gtkfilechooserdialog.c (file_chooser_widget_update_hints)
(file_chooser_widget_realized_size_changed)
(file_chooser_widget_unrealized_size_changed): simplified to
(file_chooser_widget_size_changed): set window size and resizability
based on the GtkFileChooserEmbed interface implementation. (Bug
#420285, Tomeu Vizoso)
(gtk_file_chooser_dialog_map): force a dialog size change, so it's
clamped for sure to the 75% of the screen size.
Carlos Garnacho [Fri, 18 May 2007 09:42:52 +0000 (09:42 +0000)]
Do not unset the brand new current page if there was none set previously.
2007-05-18 Carlos Garnacho <carlos@imendio.com>
* gtk/gtknotebook.c (gtk_notebook_real_insert_page): Do not unset
the brand new current page if there was none set previously. Fixes
#425138 (Reported by Michail Crayson). Some code simplifications.
(gtk_notebook_draw_arrow): code style fix.
Matthias Clasen [Wed, 16 May 2007 17:42:53 +0000 (17:42 +0000)]
Add ATK names to the Up, Down, and Root buttons. Keep the focus from
2007-05-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkpathbar.c: Add ATK names to the Up, Down, and Root
buttons. Keep the focus from vanishing when Up or Down arrows
become insensitive or invisible. (#357005, Patrick Wade)
Brian Cameron [Wed, 16 May 2007 01:35:51 +0000 (01:35 +0000)]
Add Sun mediaLib support so that hardware acceleration via mediaLib is
2007-05-16 Brian Cameron <brian.cameron@sun.com>
* acconfig.h, configure.in, gdk/Makefile.am, gdkprivate.h, gdkrgb.c,
gdkdraw.c, gdk-pixbuf/gdk-pixbuf-scale.c,
gdk-pixbuf/pixops/Makefile.am, gdk-pixbuf/pixops/pixops.[ch],
gdk-pixbuf/pixops/timescale.c: Add Sun mediaLib support so that
hardware acceleration via mediaLib is enabled if mediaLib is
detected via configure. Enhancement request #344813. I was given
permission to commit in the bug report by Matthias Clasen.
* gdk/medialib.[ch]: New files added for mediaLib support.
* docs/reference/gdk-pixbuf/tmpl/scaling.sgml,
docs/reference/gdk/tmpl/rgb.sgml, gdk/gdkdraw.c: Add docs for
mediaLib support.
* gtk/gtkprintoperation.c (pdf_end_run): Unset priv->platform_data and
priv->free_platform_data to prevent gtk_print_operation_finalize()
from freeing the cairo surface a second time.
Functions: gtk_about_dialog_get/set_name() were deprecated in favour of
* gtk/gtkaboutdialog.c: Functions: gtk_about_dialog_get/set_name()
were deprecated in favour of gtk_about_dialog_get/set_program_name(),
the GtkAboutDialog now uses the "program-name" property instead of
the conflicting "name" property (fixes bug 345822).
Emmanuele Bassi [Mon, 14 May 2007 10:16:07 +0000 (10:16 +0000)]
Convert the GtkTreeIter inside the sorting functions for the search and
2007-05-14 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkfilechooserdefault.c:
Convert the GtkTreeIter inside the sorting functions for the
search and recent modes. This doesn't yet fix the segfault when
clicking the 'Name' column in recent mode, though.
Emmanuele Bassi [Fri, 11 May 2007 19:42:40 +0000 (19:42 +0000)]
GtkFileChooser search fixes and recent files support. (#435342)
2007-05-11 Emmanuele Bassi <ebassi@gnome.org>
GtkFileChooser search fixes and recent files support. (#435342)
* gtk/gtkfilechooserprivate.h:
* gtk/gtkfilechooserdefault.c: Follow the sorting order of
the GtkTreeView displaying the files list.
(shortcuts_get_index), (shortcuts_insert_separator),
(shortcuts_model_create), (shortcuts_combo_filter_func): Remove
the separator between the Search and the Recently Used shortcuts.
(list_select_func), (list_icon_data_func), (list_name_data_func),
(list_mtime_data_func): Update the sensitivity of the row
depending on the GtkFileChooserAction used.
Emmanuele Bassi [Fri, 11 May 2007 19:37:26 +0000 (19:37 +0000)]
GtkFileChooser search fixes and recent files support. (#435342)
2007-05-11 Emmanuele Bassi <ebassi@gnome.org>
GtkFileChooser search fixes and recent files support. (#435342)
* gtk/gtkfilechooserprivate.h:
* gtk/gtkfilechooserdefault.c: Update the contents of the
files list when changing the filter of the GtkFileChooserDefault
widget.
Emmanuele Bassi [Fri, 11 May 2007 19:33:38 +0000 (19:33 +0000)]
GtkFileChooser search fixes and recent files support. (#435342)
2007-05-11 Emmanuele Bassi <ebassi@gnome.org>
GtkFileChooser search fixes and recent files support. (#435342)
* gtk/gtkfilechooserdefault.c: Update the add bookmark button
sensitivity when in search or recent files mode, and allow
adding a bookmark for a folder.
Emmanuele Bassi [Fri, 11 May 2007 19:30:38 +0000 (19:30 +0000)]
GtkFileChooser search fixes and recent files support. (#435342)
2007-05-11 Emmanuele Bassi <ebassi@gnome.org>
GtkFileChooser search fixes and recent files support. (#435342)
* gtk/gtkfilechooserdefault.c: UI fixes in the Search mode: add
a mnemonic to the label, de-boldify the label's text and assign
focus to the search entry when switching to the search mode.
(list_name_data_func): Split the text in both search and recent
files mode: on the first line use the short name and on the
second line use the full path.
Emmanuele Bassi [Fri, 11 May 2007 19:16:59 +0000 (19:16 +0000)]
Add key binding for the Search shortcut; default to MOD1+S.
2007-05-11 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkfilechooserdefault.c:
(_gtk_file_chooser_default_class_init): Add key binding for
the Search shortcut; default to MOD1+S.
(search_shortcut_handler): Handle the key binding.
(search_hit_get_info_cb), (search_add_hit), (search_clear_model),
(search_setup_model): Retrieve informations on the search hits
when adding them to the model.
Michael Natterer [Fri, 11 May 2007 16:03:48 +0000 (16:03 +0000)]
call gdk_event_request_motions(event) so selecting works with XInput
2007-05-11 Michael Natterer <mitch@imendio.com>
* gtk/gtktextview.c (selection_motion_event_handler): call
gdk_event_request_motions(event) so selecting works with
XInput devices too. Spotted by Tommi Komulainen.
Emmanuele Bassi [Fri, 11 May 2007 14:08:57 +0000 (14:08 +0000)]
Fall back to GtkSearchEngineSimple only if gthread has already been
2007-05-11 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtksearchengine.c (_gtk_search_engine_new): Fall back
to GtkSearchEngineSimple only if gthread has already been
initialiased; otherwise, disable search support in the file
chooser widget. (#435847)
Emmanuele Bassi [Wed, 9 May 2007 10:59:15 +0000 (10:59 +0000)]
Return GTK_STOCK_DIRECTORY for entries with MIME type
2007-05-09 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkrecentmanager.c:
(gtk_recent_info_get_icon): Return GTK_STOCK_DIRECTORY for entries
with MIME type "x-directory/normal", instead of GTK_STOCK_FILE.
Richard Hult [Sat, 5 May 2007 10:19:39 +0000 (10:19 +0000)]
Fix bugs #428733 and #433301. Turns out the lockFocus logic was flawed,
007-05-05 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkdrawable-quartz.c:
(gdk_quartz_drawable_get_context),
(gdk_quartz_drawable_release_context): Fix bugs #428733 and #433301.
Turns out the lockFocus logic was flawed, now we only lock/unlock
when called outside a real expose event and never flush manually.
Behdad Esfahbod [Fri, 4 May 2007 00:24:46 +0000 (00:24 +0000)]
Make GTK_JUSTIFY_FILL work, using pango_layout_set_justify() that works
2007-05-03 Behdad Esfahbod <behdad@gnome.org>
* gtk/gtklabel.c (gtk_label_ensure_layout):
* gtk/gtktextlayout.c (set_para_values): Make GTK_JUSTIFY_FILL work,
using pango_layout_set_justify() that works now. (#435675)
* gtk/gtksearchenginebeagle.[ch]: Private search engine
implementation using libbeagle (via g_module_open()).
* gtk/gtksearchenginesimple.[ch]: Private search engine
implementation using file tree walking.
* gtk/gtksearchenginetracker.[ch]: Private earch engine
implementation using libtracker (via g_module_open()).
* gtk/gtkquery.[ch]: Private query object for the search
engines.
* gtk/gtkfilechooserprivate.h:
* gtk/gtkfilechooserdefault.c: Use the GtkSearchEngine to
query a search engine backend using GtkQuery; create a new
operating mode, OPERATION_MODE_SEARCH, and call the common
operating mode OPERATION_MODE_BROWSE; add support for virtual
shortcuts inside the shortcuts model and create a new "Search"
virtual shortcut.
* gtk/Makefile.am: Update the build with the new files
Armin Burgmeier [Wed, 2 May 2007 22:19:45 +0000 (22:19 +0000)]
Destroy the menu in dispose instead of finalize, because the menu might
2007-05-02 Armin Burgmeier <armin@openismus.com>
* gtk/gtkcombobox.c: Destroy the menu in dispose instead of
finalize, because the menu might unparent itself from its parent and
cause a signal emission on a finalized object. (#430746)
Matthias Clasen [Wed, 2 May 2007 01:19:59 +0000 (01:19 +0000)]
Don't ignore the fact that gtk_file_system_get_parent() may return NULL.
2007-05-01 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilesystemmodel.c (_gtk_file_system_model_path_do):
Don't ignore the fact that gtk_file_system_get_parent()
may return NULL. (#424042, Jan Martinek)
No need to allocate a guint; just stuff the ID into the pointer directly.
2007-05-02 Christian Persch <chpe@gnome.org>
* gtk/gtkstatusbar.c: (gtk_statusbar_get_context_id),
(gtk_statusbar_expose_event): No need to allocate a guint; just stuff
the ID into the pointer directly. Bug #434865.
Matthias Clasen [Tue, 1 May 2007 20:35:33 +0000 (20:35 +0000)]
add a new struct field to clear the file entry after the current folder
2007-05-01 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserdefault.c (struct UpdateCurrentFolderData),
(update_current_folder_get_info_cb): add a new struct field to clear
the file entry after the current folder has been updated.
(gtk_file_chooser_default_update_current_folder),
(change_folder_and_display_error): Add a new function parameter to
trigger file entry clearing.
(edited_idle_create_folder_cb),
(file_list_drag_data_received_get_info_cb),
(gtk_file_chooser_default_map),
(gtk_file_chooser_default_set_current_folder),
(switch_to_selected_folder), (save_entry_get_info_cb),
(shortcuts_activate_volume_mount_cb), (shortcuts_activate_volume),
(shortcuts_activate_get_info_cb), (list_row_activated),
(path_bar_clicked): use new function parameter appropriately.
(gtk_file_chooser_default_should_respond): trigger file entry clearing
after the directory is updated instead of clearing it before, this way
we avoid reloading the completion model with the soon to be old folder,
causing a warning and a glitch in the folder where completion happens.
(#379414, Carlos Garnacho)
Get all the printer attributes when getting the list of printers, not via
2007-04-30 Matthias Clasen <mclasen@redhat.com>
* modules/printbackends/cups/gtkprintbackendcups.c: Get all
the printer attributes when getting the list of printers,
not via separate requests. (#387889, Krishan Purahoo)
Michael Natterer [Mon, 30 Apr 2007 13:00:07 +0000 (13:00 +0000)]
pop up the submenu explicitely only in touchscreen mode since otherwise
2007-04-30 Michael Natterer <mitch@imendio.com>
* gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): pop up the
submenu explicitely only in touchscreen mode since otherwise
selecting the item already pops up the submenu. Restores the
drag-selection timeout (spotted by Søren Sandmann, #128968).
Tor Lillqvist [Mon, 30 Apr 2007 07:37:24 +0000 (07:37 +0000)]
Add functionality to set overall opacity of a top-level window. (#405316)
2007-04-30 Tor Lillqvist <tml@novell.com>
Add functionality to set overall opacity of a top-level
window. (#405316)
* gtk/gtk.symbols: Add gtk_window_set_opacity and
gtk_window_get_opacity.
* gtk/gtkwindow.c (struct _GtkWindowPrivate,
(gtk_window_class_init): Add opacity property, a double in the
range [0, 1].
(gtk_window_set_opacity, gtk_window_get_opacity): Implement.
(gtk_window_realize): If opacity is set, call
gdk_window_set_opacity().
* gtk/gtkwindow.h: Declare gtk_window_set_opacity() and
gtk_window_get_opacity().
Tor Lillqvist [Mon, 30 Apr 2007 07:27:22 +0000 (07:27 +0000)]
Add functionality to set overall opacity of a top-level window. (#405316)
2007-04-30 Tor Lillqvist <tml@novell.com>
Add functionality to set overall opacity of a top-level
window. (#405316)
* gdk/gdk.symbols: Add gdk_window_set_opacity.
* gdk/x11/gdkwindow-x11.c
* gdk/win32/gdkwindow-win32.c: Implement
gdk_window_set_opacity(). On X11 use the _NET_WM_WINDOW_OPACITY
property. On Win32 use SetLayeredWindowAttributes(LWA_ALPHA).
* gdk/x11/gdkscreen-x11.c (gdk_screen_get_rgba_colormap): Document
that this is not implemented in the Windows backend. Add reference
to gdk_window_set_opacity().
Rename gtk_paper_size_get_builtins() to gtk_paper_size_get_paper_sizes()
2007-04-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols:
* gtk/gtkpapersize.[hc]: Rename gtk_paper_size_get_builtins()
to gtk_paper_size_get_paper_sizes() and optionally include
custom paper sizes.
* gtk/gtkpagesetupunixdialog.c: Internally export a function
to load custom paper sizes.
* modules/printbackends/file/gtkprintbackendfile.c: Implement
printer_list_papers, returning all paper sizes. (#434329,
Christian Persch)
Fix some issues with reference handling in the printing code. (#429902,
2007-04-29 Matthias Clasen <mclasen@redhat.com>
Fix some issues with reference handling in the printing
code. (#429902, Mathias Hasselmann)
* gtk/gtkprintoperation.c (gtk_print_operation_finalize):
Unref the print context, if we have one.
(gtk_print_operation_done): Add a default ::done handler
that unrefs the print context.
(preview_ready): Take a reference on the print operation
preview here.
(print_pages_idle): ...not here,
(preview_print_idle_done): ...and release it here.
* tests/print-editor.c (preview_cb): Take a reference
on the print operation here.
Make the emission of ::end-print and ::done consistent for previews.
2007-04-29 Matthias Clasen <mclasen@redhat.com>
Make the emission of ::end-print and ::done consistent
for previews. (#347567, Yevgen Muntyan)
* gtk/gtkprintoperation.c (preview_iface_end_preview): Set
the finished status here.
(preview_end_run): ...and not here.
(print_pages_idle_done): Emit ::done for a cancelled preview.
(print_pages_idle): If a preview has been cancelled, don't
emit ::ready, but emit ::end-print.
tests/print-editor.c: Use ::end-print to undo allocations
from ::begin-print.
Mark paper sizes in the PWG "custom" namespace as custom. Add a link to
2007-04-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkpapersize.c (gtk_paper_size_new): Mark paper sizes
in the PWG "custom" namespace as custom. Add a link to
the spec in the docs. (#426416, Andreas Guelzow)