2006-09-04 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkevents-win32.c
* gdk/win32/gdkwindow-win32.c: Use wide-char API for message and
window handling (PeekMessage, PostMessage, SendMessage,
DispatchMessage, DefWindowProc, RegisterClassEx,
CreateWindowEx). (#321597)
2006-09-03 Kristian Rietveld <kris@imendio.com>
* gtk/gtkfilechooserdefault.c (save_entry_get_info_cb),
(file_exists_get_info_cb), (gtk_file_chooser_default_should_respond):
change file_exists_and_is_not_folder checks to get the file info
for the path directly instead of querying the current file folder
of the save entry.
* gtk/gtkfilechooserprivate.h (struct _GtkFileChooserDefault): add
new field.
* tests/autotestfilechooser.c (wait_for_idle_idle), (wait_for_idle),
(test_reload_sequence), (test_button_folder_states_for_action): wait
for idle after setting a folder to ensure the async operations to load
the folder are finished,
(test_confirm_overwrite), (test_confirm_overwrite_for_path):
factor out test_confirm_overwrite code so we can add tests for more
paths more easily.
2006-09-03 Richard Hult <richard@imendio.com>
* gdk/quartz/GdkQuartzView.c (drawRect): Don't do anything if
exposure isn't in the event mask, plug a leak, and check that the
window isn't destroyed.
(isOpaque): Check that the window isn't destroyed, fixes bug
#353028.
2006-09-03 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkwindow-win32.c (gdk_window_beep): No
GDK_WINDOW_DISPLAY in the Win32 backend.
* gtk/gtkfilesystemwin32.c: Copy what Kris did to
gtkfilesystemunix.c
2006-09-02 Kristian Rietveld <kris@imendio.com>
First part of file chooser fixes.
* gtk/gtkfilechooserbutton.c (model_add_special): also set the
handle in the model for the desktopdir case.
* gtk/gtkfilechooserdefault.c (shortcuts_add_current_folder): free
volume in case we retrieved it but don't pass it on to insert_path,
(shortcuts_model_create): change the column type for the handles
to pointer instead of GObject so our handle ref counting is not
disturbed,
(show_and_select_paths_finished_loading): don't forget to unref
the dialog.
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_class_init),
(gtk_file_system_unix_init), (gtk_file_system_unix_dispose):
remove pending execute_callbacks_idle during dispose, also
execute all callbacks waiting to be run in the next idle,
(queue_*callback), (execute_callbacks_idle): refactor to maintain
a list of callbacks to call per file system instead of globally,
guard the file system during callback invocation,
(gtk_file_system_unix_get_folder): only add load folder idle if
none has been added yet.
2006-09-01 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentry.c: Don't unnecessarily reset the im context
when deleting the selection. (#353803, Alex Larsson)
Stop cursor blinking after a configurable timeout.
(#353670, #352442, Arjan van de Ven, Manu Cornet)
* gtk/gtksettings.c (gtk_settings_class_init): Add a
gtk-cursor-blink-timeout setting, which specifies the number
of seconds that the cursor should blink after a user interaction.
The default value is G_MAXINT to preserve the current behaviour.
* gtk/gtkentry.c (blink_cb): Stop blinking after blink-timeout
seconds.
* gtk/gtkentry.c (gtk_entry_completion_key_press)
(gtk_entry_button_press, gtk_entry_focus_in): Reset the
blink timer.
* gtk/gtktextview.c (blink_cb): Stop blinking after blink-timeout
seconds.
* gtk/gtktextview.c (gtk_text_view_key_press_event)
(gtk_text_view_button_press_event, gtk_text_view_focus_in_event):
Reset the blink timer.
2006-08-29 Matthias Clasen <mclasen@redhat.com>
* gdk/gdkwindow.h:
* gdk/gdk.symbols:
* gdk/directfb/gdkwindow-directfb.c (gdk_window_beep):
* gdk/win32/gdkwindow-win32.c (gdk_window_beep):
* gdk/quartz/gdkwindow-quartz.c (gdk_window_beep):
* gdk/x11/gdkwindow-x11.c (gdk_window_beep): Add a function
to beep on a window. For X11, implement this with
XkbBell. (#353455, Mariano Suárez-Alvarez)
2006-08-29 Tor Lillqvist <tml@novell.com>
Remove support for Windows 9x/ME. GTK+ hasn't worked on Win9x
since 2.6 or 2.8. It's pointless to keep the Win9x code in here as
it isn't being maintained anyway. If somebody is interested, it
can always be found in older GTK+ versions, and in CVS.
* gdk/win32/gdkwindow-win32.c: Remove the G_WIN32_IS_NT_BASED()
and G_WIN32_HAVE_WIDECHAR_API() tests and their false (Win9x)
branches, and any variables or static functions used only by the
Win9x branches.
2006-08-29 Tor Lillqvist <tml@novell.com>
Remove support for Windows 9x/ME. GTK+ hasn't worked on Win9x
since 2.6 or 2.8. It's pointless to keep the Win9x code in here as
it isn't being maintained anyway. If somebody is interested, it
can always be found in older GTK+ versions, and in CVS.
* configure.in
* acconfig.h
* gdk/Makefile.am
* gdk/win32/Makefile.am
* gdk/win32/libie55uid.la
* gdk/win32/gdkevents-win32.c: Remove the --with-ie55 configure
switch and associated stuff. Active IMM and the <dimm.h> header
was used for IM support on NT4 and Win9x. Win2k and later have IM
support built-in.
* gdk/win32/gdkevents-win32.c: Remove the G_WIN32_IS_NT_BASED()
and G_WIN32_HAVE_WIDECHAR_API() tests and their false (Win9x)
branches, and any variables or static functions used only by the
Win9x branches.
2006-08-29 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkrecentchoosermenu.c
(gtk_recent_chooser_menu_set_current_item): Break when an item
is found and activated. (#353449, based on a patch by Jan Arne
Petersen)
Fri Jul 14 16:13:37 2006 Tim Janik <timj@gtk.org>
* gtk/gtkprogressbar.c: introduced ::xspacing and ::yspacing style
properties which make all hardcoded padding and spacing values
configurable. properly swap ::text-xalign treatment for RTL widgets.
* gtk/gtkprogress.c: fixed style property blurbs. made alignment
proeprty more consistent with GtkMisc alignment blurbs. mention
RTL treatment for text-xalign.
Tue Aug 29 11:57:40 2006 Tim Janik <timj@imendio.com>
* tests/testgtk.c: allow (most) windows to be resizable.
added ellipsization settings to progress bars.
2006-08-28 Matthias Clasen <mclasen@redhat.com>
* modules/printbackend/cups/gtkprintbackendcups.c: Use a
resonable timeout of 3 seconds when polling for printer
list updates, instead of 300000 seconds...
2006-08-28 Michael Natterer <mitch@imendio.com>
* gtk/gtktextbufferserialize.c (serialize_text): don't write out
</apply_tag> for tags that have already been closed by the logic
which turns overlapping spans into XML-able trees. Fixes broken
XML when there are overlapping tags in the buffer. Also free two
leaked GLists and did some cleanup.
* tests/Makefile.am
* tests/testrichtext.c: new test which creates randomly tagged
GtkTextBuffers and serializes/deserializes them.
2006-08-23 Tor Lillqvist <tml@novell.com>
* gtk/gtkfilesystemwin32.c (gtk_file_system_win32_make_path):
Revert accidental translatable string change, use same string
for warning as in gtkfilesystemunix.c.
2006-08-23 Tor Lillqvist <tml@novell.com>
* gtk/gtkfilesystemwin32.c (_gtk_file_system_win32_path_compare):
Fix logic at the end of strings.
* gtk/gtkfilesystemwin32.c: Maintain a hash table of live
handles and check that we have no outstanding handles at
finalization time. (Copying what Matthias did for
gtkfilesystemunix.c)
2006-08-23 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilesystemunix.c: Maintain a hash table
of live handles and check that we have no outstanding
handles at finalization time. (Copying what
Federico did for gtkfilesystemgnomevfs.c)
2006-08-23 Tor Lillqvist <tml@novell.com>
* gtk/gtkfilesystemwin32.c: Remove dead code. Reduce spurious
differences between this file and gtkfilesystemunix.c so that it
is easier to compare them and check if differences are
intentional. I will later factor out the common functions and code
snippets from these two files.
2006-08-23 Tor Lillqvist <tml@novell.com>
Fix several problems with the file chooser on Windows, for
instance prevent duplicated directory entries from appearing.
* gtk/gtkfilesystem.c (gtk_file_paths_sort): Use
_gtk_file_system_win32_path_compare() on Windows for casefolded
sorting.
* gtk/gtkfilesystemwin32.c (casefolded_hash, casefolded_equal):
case-independent hash and equality functions. Scan the UTF-8
strings gunichar by gunichar, and ignore special casing rules, to
more closely match NTFS behaviour.
(gtk_file_system_win32_init): Use casefolded_hash() and
casefolded_equal() for the folder hash table.
(remove_trailing_slash): Don't remove the slash of a drive or
share root.
(get_mime_type_for_file): Take also a WIN32_FILE_ATTRIBUTE_DATA as
argument, and use that to recognize directories. Don't call
g_file_test() to check for executables, just look at the file name
extension directly.
(gtk_file_system_win32_make_path): Check illegal chars in file
name, like in gtkfilesystemunix.c.
(create_file_info): Drop unused basename parameter. Call
g_filename_display_name() directly for roots, as
g_filename_display_basename() mishandles those.
(gtk_file_folder_win32_get_info): Skip sanity check for now, as it
fails for server share roots. Construct basename only in the if
branch that uses it.
(fill_in_names): Use casefolded_hash() and casefolded_equal() for
the folder's stat_info hash table, too.
(_gtk_file_system_win32_path_compare): Scan the strings gunichar
by gunichar and ignore special casing here, too, instead of using
g_utf8_casefold(). Match slash and backslash.
2006-08-17 Federico Mena Quintero <federico@novell.com>
* gtk/gtkfilechooserdefault.c
(_gtk_file_chooser_default_class_init): Enable "/" and "~" as
bindings to activate the location entry again. Fixes bug #340856.
(tree_view_keybinding_cb): Likewise.
(trap_activate_cb): Likewise.
(location_popup_handler): Handle the "path" argument again; set it
as the text on the location entry.
(location_set_user_text): New helper function.
(load_setup_timer): Fix comment.
* tests/autotestfilechooser.c (main): Oops, enable all the tests again.
2006-08-17 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktrayicon-x11.c: Fix the ClientMessages we are
sending to the notification area to be more in sync with
the systray spec. (#350860, Wincent Untz)
2006-08-17 Tor Lillqvist <tml@novell.com>
* gtk/Makefile.am (libgtk_win32_2_0_la_LIBADD): Link with -luuid
for IID_IUnknown that gtkprintoperation-win32.o needs.
2006-08-17 Matthias Clasen <mclasen@redhat.com>
* modules/printbackends/file/gtkprintbackendfile.c: Improve
the handling of the default output filename, to ensure
that we default to output.ps when only PostScript output
is possible. (#348236, Don Scorgie)
2006-08-17 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkprintunixdialog.c (gtk_print_unix_dialog_set_manual_capabilities):
Re-select the current printer to update per-printer ui.
(#348245, Don Scorgie)
2006-08-17 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c (set_info_get_info_cb)
(model_add_special_get_info_cb): Handle the case where the
filechooser button is destroyed quickly.
2006-08-17 Paolo Borelli <pborelli@katamail.com>
* gtk/gtktextbuffer.c: make sure the has-selection property is
updated when the delection is deleted. Bug #329752
* tests/testtext.c: add a copy menu item and show how to
update its sensitivity tracking the has-selection property.
2006-08-17 Kristian Rietveld <kris@gtk.org>
* demos/gtk-demo/main.c (window_closed_cb), (row_activated_cb),
(create_tree): move the ITALIC_COLUMN over to a STYLE_COLUMN
which sets the style attribute. Makes drawing the active demos
in italic work again.
2006-08-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentry.c (paste_received): Popup completion if paste
is at the end (patch was already in 2.8.x). (#165714,
Christian Persch)
2006-08-16 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
take the cell spacing into account when calculating the available
extra space. (#350938, patch from Peter Johanson).
2006-08-16 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_fetch_child):
update the refs from children to parents for all nodes, since
they may all have been moved by the insert operation. (#346800,
patch from Jonathan Matthew).
2006-08-15 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkevents-quartz.c: (get_event_mask_from_ns_event):
Add GDK button mask for NS dragging events.
(create_scroll_event): Remove obsolete comment.
(_gdk_quartz_get_current_event_mask), (gdk_event_translate): Keep
track of the latest event mask here...
* gdk/quartz/gdkwindow-quartz.c:
(_gdk_windowing_window_get_pointer): And use it here. Patch from
Kristian Rietveld.
(gdk_window_quartz_update_idle): Rename to make things clearer.
2006-08-15 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkaboutdialog.c (gtk_about_dialog_init): Set CAN_DEFAULT
on all buttons. (#168737, fix proposed by Benjamin Berg)
2006-08-15 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentryprivate.h:
* gtk/gtkentry.c (_gtk_entry_effective_inner_border): Export
privately. Adjust all callers.
* gtk/gtkspinbutton.c (gtk_spin_button_size_request): Use it
here to get the actual inner border. (#349429, Benjamin Berg)
2006-08-15 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserentry.c (struct _GtkFileChooserEntry): Don't
store GSource pointers, but ids.
(gtk_file_chooser_entry_dispose): Remove idles.
(idle_add, idle_add): Factor this out.
(gtk_file_chooser_entry_maybe_update_directory):
(add_completion_idle): And use it here. (#350039, Chris Wilson)
2006-08-15 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkicontheme.c (do_theme_change): Run the reset_styles
idle at a priority higher than size negotiation. (#350517,
Søren Sandmann)
2006-08-15 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilesystem.c (gtk_file_info_render_icon)
(gtk_file_system_volume_render_icon): Do better fallbacks
if the icon theme does not have icons. (#345666,
Kazuki Iwamoto)
2006-08-15 Matthias Clasen <mclasen@redhat.com>
* modules/printbackends/cups/gtkprintbackendcups.c (create_pickone_option):
Simplify, make it build against cups 1.1. (#350329)
2006-08-15 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkliststore.c (gtk_list_store_insert_with_values):
Fix a typo in the docs. (#349501, Carlos GUSLiBu)
2006-08-15 Matthias Clasen <mclasen@redhat.com>
* gdk/x11/gdkwindow-x11.c (gdk_window_get_geometry_hints):
Use XAllocSizeHints to allocate the XSizeHints struct.
(#249285, David Baron)
2006-08-15 Matthias Clasen <mclasen@redhat.com>
* gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd):
* gdk/x11/gdkwindow-x11.c (gdk_window_set_decorations):
(gdk_window_set_functions): Zero out some stack-allocated
X structures, to avoid valgrind warnings about uninitialized
memory. (#349382, David Baron)
2006-08-14 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkrecentchooser.c:
(gtk_recent_chooser_add_filter),
(gtk_recent_chooser_remove_filter),
(gtk_recent_chooser_set_filter): Add a check on the
filter argument, instead of blindly passing it to
underlying implementation.
* gtk/gtkrecentchoosermenu.c:
(gtk_recent_chooser_menu_add_filter),
(gtk_recent_chooser_menu_remove_filter),
(gtk_recent_chooser_menu_list_filters): Implement
these GtkRecentChooser methods, by setting and
returning the only GtkRecentFilter object supported
by a GtkRecentChooserMenu. (#347856, reported by Rod
Butcher)
2006-08-14 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_remove): Null the
cell_view pointer if the internal cell view is removed.
(#348828, Rolando Espinoza La Fuente)
* gdk/directfb/gdkdrawable-directfb.c
Remove gdk_directfb_update_region and calls
* gdk/directfb/gdkwindow-directfb.c
Code cleanup
* gdk/directfb/gdkgeometry-directfb.c
Fix scroll call to use region
2006-08-10 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkrecentchoosermenu.c:
(gtk_recent_chooser_menu_finalize): Remove the idle
source in ::finalize...
(idle_populate_func),
(idle_populate_clean_up): ...and reset the idle source
id at the end of the idle loop while we hold the GDK mutex
lock. (#350605, reported by Wouter Bolsterlee, patch by
Chris Wilson)
2006-08-10 Michael Natterer <mitch@imendio.com>
* gdk/quartz/gdkwindow-quartz.c
(gdk_window_maximize)
(gdk_window_unmaximize)
(gdk_window_iconify)
(gdk_window_deiconify): don't try to set the state of unmapped
windows, call gdk_synthesize_window_state() instead. Also added
autorelease pools back, seems they are needed after all.
* gdk/quartz/gdkwindow-quartz.c (show_window_internal): maximize
and iconify windows here if the state says so.
2006-08-08 Richard Hult <richard@imendio.com>
* gdk/quartz/GdkQuartzView.c: Just expose the minimal region
instead of the whole rect.
* gdk/quartz/gdkwindow-quartz.c:
(gdk_window_quartz_process_all_updates), (gdk_window_update_idle),
(gdk_window_impl_quartz_invalidate_maybe_recurse),
(gdk_window_impl_quartz_process_updates),
(_gdk_windowing_window_destroy): Rework the expose handling so that
it works like the X11 backend, using an idle with the right
priority instead of relying on quartz to do it.
(gdk_window_set_type_hint): Use tornoff instead of submenu as the
documentation (and Mitch) suggests.
2006-08-08 Michael Natterer <mitch@imendio.com>
* gdk/quartz/gdkdrawable-quartz.c: some whitespace and indentation
cleanup.
(gdk_quartz_draw_rectangle)
(gdk_quartz_draw_arc)
(gdk_quartz_draw_polygon)
(gdk_quartz_draw_points): for pixel-prefect drawing, stroked
coordinates need to go through pixel centers, while filled ones
need to go along pixel boundaries. Moved +0.5 adjusting to the
if(!filled) branches and added/removed some adjustments where they
were wrong.
2006-08-07 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkdrawable-quartz.c (gdk_quartz_draw_points): Don't
get and release the context for each point, just once, speeds up
drawing many points a lot.
2006-08-07 Michael Natterer <mitch@imendio.com>
* gtk/gtkdnd-quartz.c (gtk_drag_dest_unset): need to disconnect
from signals connected in gtk_drag_dest_set() here.
* gtk/gtkdnd-quartz.c (gtk_drag_dest_set): call gtk_drag_dest_unset()
instead of disconnecting the old signal connections here.
2006-08-07 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkrecentchooserdefault.c:
(_gtk_recent_chooser_default_init): Show non existing
resources by default.
(recent_meta_data_func): Do not mark non existing
resources as insensitive.
* gtk/gtkrecentchoosermenu.c:
(gtk_recent_chooser_menu_init): Show non existing
resources by default.
(gtk_recent_chooser_menu_create_item): Do not mark
non existing resources as insensitive.
2006-08-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkstyle.c (option_menu_get_props): Only get the
indicator-size and indicator-spacing style properties
for GtkOptionMenu. (#349859, Benjamin Otte)
2006-08-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_set_grid_lines)
(gtk_tree_view_set_enable_tree_lines): Be more careful
when creating gcs, also emit change notification.
(gtk_tree_view_unrealize): Free the gcs here. (#349834,
Chris Wilson)
2006-08-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcalendar.c (calendar_start_spinning, calendar_timer):
Use G_PRIORITY_DEFAULT_IDLE for the month/year-change timer,
so that the caller will have a chance to redraw/resize itself
between every change. (#348824, Federico Mena Quintero, patch
by Michael Meeks)
2006-08-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_drag_motion): Don't allow
dragging a notebook tab to one of its children. (#348626,
Benjamin Otte)
2006-08-05 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextview.c (gtk_text_view_style_set): Create new
PangoContexts and set them on the layout, to catch changes in
font options. (#348278, Behdad Esfahbod)
2006-08-05 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_reorder):
Protect against tree_view being NULL. (#348652, Patrick K. O'Brian,
Chris Wilson)
2006-08-03 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkrecentchoosermenu.c:
(set_recent_managet), (gtk_recent_chooser_menu_populate),
(idle_populate_func), (idle_populate_clean_up),
(manager_changed_cb): Lazily populate the menu when creating
it and after the manager emits the "changed" signal; this
fixes the initial bad placing of the GtkRecentChooserMenu
widget when its set as the menu of a GtkMenuToolButton.
(gtk_recent_chooser_menu_map),
(gtk_recent_chooser_menu_class_init): Remove the ::map method
override, since it's not needed anymore.
2006-08-03 Michael Natterer <mitch@imendio.com>
* gtk/gtkrc.c (gtk_rc_parse_assignment): reset scanner config to
default values while checking if an expression(foobar) follows,
because if no expression follows the scanner's "next token" must
be usable for the caller of this function (fixes bug #349552).
2006-07-31 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkdrawable-quartz.c: (gdk_quartz_draw_drawable):
* gdk/quartz/gdkwindow-quartz.c:
(gdk_window_impl_quartz_begin_paint_region): Patch from Erik van
Pienbroek to implement drawing bg_pixmaps (#348145).
2006-07-29 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkcolor-quartz.c (gdk_colormap_alloc_colors): Always
set success to TRUE.
(gdk_color_change): Implement.
* gdk/quartz/GdkQuartzWindow.c
([GdkQuartzWindow -canBecomeKeyWindow]): Add comment.
* gdk/quartz/gdkevents-quartz.c (gdk_screen_get_setting): Make the
default font a bit smaller until we have made this get the system
setting.
* gdk/quartz/gdkwindow-quartz.c (gdk_window_set_type_hint): Enable
shadows for the right window types.
* gdk/quartz/gdkprivate-quartz.h:
* gdk/quartz/gdkgc-quartz.c:
* gdk/quartz/gdkdrawable-quartz.c:
* gdk/quartz/gdkcolor-quartz.c: Expose the CGContext functions,
update callers.
* gdk/quartz/gdkmain-quartz.c: (_gdk_windowing_init): No need to
get the current process ID, use the right constant instead.
2006-07-28 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkrecentmanager.c (gtk_recent_manager_init): Add the
timeout for polling the file; change the default polling
delta to 2000 msec.
2006-07-27 Michael Natterer <mitch@imendio.com>
* gdk/x11/gdkwindow-x11.c (gdk_window_get_type_hint): cast the
return value of XGetWindowProperty() correctly so we don't return
garbage type hints. Pointed out by Tommi Komulainen, patch taken
from https://maemo.org/bugzilla/show_bug.cgi?id=724
2006-07-21 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkrc.h:
* gtk/gtkrc.c (_gtk_rc_context_destroy): New function to
destroy an rc context.
* gtk/gtksettings.c (gtk_settings_finalize): Destroy the rc context.
(gtk_settings_get_for_screen): Unref the settings when the screen
goes away. (#348096, Chris Wilson)
2006-07-21 Michael Natterer <mitch@imendio.com>
Enable symbolic colors and color expressions in style
properties. Fixes bug #346751.
* gtk/gtkrc.c (rc_parse_token_or_compound): add GtkRcStyle
parameter and replace symbolic colors by color constants.
(gtk_rc_parse_assignment): likewise. Also support parsing of
expressions of the form identifier(compound).
(gtk_rc_parse_style): pass the GtkRcStyle to
gtk_rc_parse_assignment().
(gtk_rc_parse_statement): pass NULL since we don't have a
GtkRcStyle here.
2006-07-21 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_stop_reorder): Unset
the during_reorder flag. (#348049, Sven Herzberg, patch
by Benjamin Otte)
2006-07-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkicontheme.h:
* gtk/gtkicontheme.c (_gtk_icon_theme_ensure_builtin_cache):
Export this privately.
* gtk/gtkiconfactory.c (render_fallback_image): And call it
here to initialize the builtin cache before using it. (#348063,
Diego Pettenò)
2006-07-19 Federico Mena Quintero <federico@novell.com>
* tests/autotestfilechooser.c (test_black_box): Argh, initialize
"passed"!
(set_filename_timeout_cb): Renamed from timeout_cb().
(test_confirm_overwrite): New function, test confirmation before
overwriting a file in SAVE mode.
2006-07-20 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkevents-quartz.c: (generate_grab_broken_event):
Append the event to the queue instead of using gdk_event_put.
(_gdk_quartz_get_mouse_window, find_current_keyboard_window):
Handle grabs.
(get_event_mask_from_ns_event, create_focus_event)
(convert_window_coordinates_to_root, find_window_for_event)
(gdk_event_translate): Improve readability (style changes).
(gdk_flush, gdk_display_sync, gdk_display_flush)
(gdk_event_send_client_message_for_display),
(gdk_screen_broadcast_client_message): Remove FIXMEs.
(gdk_screen_get_setting): Reindent.
Also move find_child_window_by_point to gdkwindow-quartz.c.
* gdk/quartz/gdkwindow-quartz.c:
(find_child_window_by_point_helper),
(_gdk_quartz_find_child_window_by_point): Move here from
gdkevents-quartz.c
(_gdk_windowing_window_get_pointer): Handle destroyed windows and
imlement the return value.
(_gdk_windowing_window_at_pointer): Implement.
2006-07-19 Richard Hult <richard@imendio.com>
* gdk/quartz/GdkQuartzWindow.c
([GdkQuartzWindow -windowDidResignMain:]):
* gdk/quartz/gdkevents-quartz.c (_gdk_quartz_update_focus_window):
Listen to windowDidResignMain notifications and properly update the
focus window when windows are unfocused.
2006-07-19 Kristian Rietveld <kris@imendio.com>
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_init),
(gtk_cell_renderer_text_[gs]et_property), (get_layout): add
align_set field to keep track whether the align property was
set by the user, if not we will use the alignment by looking
at the direction of the widget. (#157439)
2006-07-19 Matthias Clasen <mclasen@redhat.com>
* modules/printbackends/file/gtkprintbackendfile.c
(file_printer_get_settings_from_options): Check if option
is NULL before using it. (#348014, Christian Persch)
2006-07-19 Matthias Clasen <mclasen@redhat.com>
* gdk/x11/gdkx.h (gdk_font_lookup_for_display): When looking
up a font XID, add the XID_FONT_BIT. (#348001)
2006-07-19 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkwindow-quartz.c (gdk_window_impl_quartz_init)
(gdk_window_set_type_hint, gdk_window_get_type_hint):
* gdk/quartz/GdkQuartzWindow.c
([GdkQuartzWindow -canBecomeMainWindow])
([GdkQuartzWindow -canBecomeKeyWindow]): Implement type hints and
use them to determine which windows should be allowed to become
main and key windows.
2006-07-19 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkwindow-quartz.c:
(_gdk_windowing_window_get_pointer): Get the position correctly
for the root window. Fixes bug #347976, patch by Dave Vasilevsky.
* gtk/gtkprinteroption.h:
* gtk/gtkprinteroptionwidget.c:
* modules/printbackends/cups/gtkprintbackendcups.c:
add GTK_PRINTER_OPTION_TYPE_PICKONE_PASSWORD,
GTK_PRINTER_OPTION_TYPE_PICKONE_PASSCODE,
GTK_PRINTER_OPTION_TYPE_PICKONE_REAL,
GTK_PRINTER_OPTION_TYPE_PICKONE_INT,
and GTK_PRINTER_OPTION_TYPE_PICKONE_STRING options to support a subset
of the new CUPS 1.2 custom options spec
2006-07-18 Federico Mena Quintero <federico@novell.com>
Fix https://bugzilla.novell.com/show_bug.cgi?id=184875 - make the
location entry in Save mode preserve the stuff from
set_filename(); it was overwriting it with $cwd.
This is the same fix for
http://bugzilla.gnome.org/show_bug.cgi?id=347066
* tests/autotestfilechooser.c: (test_black_box): Added black-box
test for set_filename() and set_current_name().
* gtk/gtkfilechooser.c (gtk_file_chooser_get_type): Cast to
GClassInitFunc in the call to g_type_register_static_simple(), to
avoid a compiler warning.
* gtk/gtkfilechooserprivate.h (struct _GtkFileChooserDefault):
Added a browse_files_last_selected_name field. We'll copy the
logic from gtkfilesel.c to see when to clear the location entry.
(struct _GtkFileChooserDefault): Removed the
processing_pending_selections field.
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
Free impl->browse_files_last_selected_name.
(pending_select_paths_process): Don't use
impl->processing_pending_selections.
(update_chooser_entry): Keep track of the name that was last
selected in the file list. We use this to know when to clear the
location entry. The logic is similar to that of
gtkfilesel.c:gtk_file_selection_file_changed(). This also lets us
get rid of the processing_pending_selections flag.
(update_chooser_entry): Clear the entry if we didn't have a
selection before.
(location_switch_to_filename_entry): Do not set $cwd as the
contents of the location entry here...
(location_popup_handler): ... but do it here instead, only as the
result of the user asking to turn on the location entry.
(gtk_file_chooser_default_get_paths): If the location entry is
empty, do the fallback of seeing if it is sensible to say that
$cwd is the selected path.
(gtk_file_chooser_default_update_current_folder): Don't set the
text of the location entry; this is no longer needed with the
fixes above.
(shortcuts_activate_iter): Clear the location entry when
activating a shortcut if we are not in SAVE mode. This keeps the
contents of the location entry consistent even when switching
folders via the shortcuts.
2006-07-18 Michael Natterer <mitch@imendio.com>
* gtk/gtkrange.c: remember the sensitivity of the steppers in
GtkRangeLayout, update it in gtk_range_calc_layout() and check for
changes in layout_changed(), so adjustment changes that leave the
slider position unchanged are still able to update the steppers'
sensitivity. Fixes bug #347902.
2006-07-18 Kristian Rietveld <kris@imendio.com>
Fix for #335012, reported by Matteo Nastasi.
* gtk/gtktreeview.c (gtk_tree_view_real_start_editing): if the
requested space of the editable is smaller than the cell area,
put it up above the middle of the cell area.
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing):
configure the inner border to cover the cell area if the
entry requisition is smaller than the cell_area.
2006-07-18 Kristian Rietveld <kris@imendio.com>
Another fix for #164884.
* gtk/gtktreeprivate.h: add in_grab field.
* gtk/gtktreeview.c (gtk_tree_view_button_press): only save press
to possibly begin a drag when there's no grab pending,
(gtk_tree_view_grab_notify): toggle in_grab field.
2006-07-18 Kristian Rietveld <kris@imendio.com>
* gtk/gtktreeview.c (gtk_tree_view_realize): use MAX
priv->width, alloc.width when allocating the bin_window,
(gtk_tree_view_bin_expose): don't overrun bin_window when drawing
the flat box.
2006-07-17 Richard Hult <richard@imendio.com>
* gtk/gtkdnd-quartz.c: (gtk_drag_begin_internal): Set an empty
NSImage if there is none, covers the cases where applications try
to set a pixmap which is not supported by the quartz backend.
2006-07-17 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkevents-quartz.c: (create_key_event):
* gdk/quartz/gdkkeys-quartz.c: (_gdk_quartz_key_event_type),
(_gdk_quartz_key_is_modifier):
* gdk/quartz/gdkprivate-quartz.h: Fill in string, length and
is_modifier for key events. Map some more keys into gdk keyvals.
2006-07-17 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_stop_reorder): Don't undo
reordering if we haven't been reordering. (#346836, Ed Catmur)
2006-07-17 Kristian Rietveld <kris@imendio.com>
* gtk/gtktreeview.c (gtk_tree_view_build_tree): check if the iter
still has children after running the test-expand-row func,
(gtk_tree_view_real_expand_row): ditto. (#302127, Billy Biggs).
2006-07-17 Michael Natterer <mitch@imendio.com>
* gtk/gtkcalendar.c (calendar_timer): use 5 * gtk-timeout-repeat,
just as many other widgets. Makes the calendar arrow buttons
usable for quick month/year skipping (#142582).
2006-07-17 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkwindow-quartz.c:
(_gdk_windowing_window_destroy_foreign): Fix comment.
(gdk_window_set_title): Surround by release pool macros.
(gdk_window_get_type_hint): Fix return value.
(gdk_window_get_frame_extents): Implement.
(gdk_window_iconify): Use the release pool macros.
(gdk_window_deiconify): Likewise.
(_gdk_windowing_get_pointer): Implement.
(gdk_window_get_deskrelative_origin, gdk_window_get_root_origin):
Implement.
* gdk/quartz/gdkevents-quartz.c (create_crossing_event)
(create_scroll_event, convert_window_coordinates_to_root):
Set coordinates and root coordinates for crossing and scroll
events.
* gdk/quartz/gdkcursor-quartz.c (gdk_cursor_new_for_display):
Map some more cursors.
2006-07-17 Matthias Clasen <mclasen@redhat.com>
* gdk/gdkwindow.c (gdk_window_get_pointer): Add some more
detail to the docs. (#311399, Nikos Kouremenos)
2006-07-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserdefault.c (browse_widgets_create): Mark
the text of the location label as translatable.
2006-07-11 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkrecentchooser.c (gtk_recent_chooser_set_show_numbers),
(gtk_recent_chooser_get_show_numbers): Check if the chooser
implementation supports the "show-number" property and use a
meaningful warning in case it doesn't; tell developers not to
use these functions.
2006-07-10 Emmanuele Bassi <ebassi@gnome.org>
* gtk/gtkrecentchooserdefault.c (scan_for_uri_cb): Do not
leak the URI returned by the model; select the row when
calling gtk_recent_chooser_set_current_uri(). (patch by
Torsten Schoenfeld)
2006-07-10 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkpixmap-quartz.c: (gdk_bitmap_create_from_data):
Account for alignment when reading xbm data. (#346721, patch
by Dave Vasilevsky)
2006-07-09 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkwindow-quartz.c (gdk_window_new): Release the pool
in all cases.
(move_resize_window_internal): Surround by alloc/release pool.
Patch from Brian Tarricone, fixes bug #347018.
2006-07-08 Behdad Esfahbod <behdad@gnome.org>
* gdk/gdkpango.c (layout_iter_get_line_clip_region),
(gdk_pango_layout_line_get_clip_region),
(gdk_pango_layout_get_clip_region): Fix quadratic implementation of
gdk_pango_layout_get_clip_region into a linear one. (#337910, patch
by Priit Laes)
2006-07-07 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkevents-quartz.c: Generate a grab broken event when
appropriate. Fixes bug #346603, patch from Dave Vasilevsky.
* gdk/quartz/gdkevents-quartz.c:
* gdk/quartz/gdkkeys-quartz.c:
* gdk/quartz/gdkprivate-quartz.c: Another patch from Dave Vasilevsky,
fixes bug #346605. Makes modifier key events being sent properly.
2006-07-07 Michael Natterer <mitch@imendio.com>
* gtk/gtkrc.c
* gtk/gtksettings.c: fix canonicalization of property names which
was broken after recent constant string cleanup.
2006-07-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c: Get the display name
for the home directory. (#346498, Dennis Cranston,
patch by Andreas Köhler)
* modules/printbackends/cups/gtkprintbackendcups.c:
(cups_request_printer_list_cb): Get the name of the first printer
in a class to use when requesting a PPD
(cups_request_ppd_cb, cups_request_ppd): Fix the parameters of
the "details-acquired" signal emittion
(cups_request_ppd): get the ppd name from the cups printer
* modules/printbackends/cups/gtkprintercups.c (gtk_printer_cups_get_ppd_name):
New method for getting the name of the ppd we should request
2006-07-06 Michael Natterer <mitch@imendio.com>
* gtk/gtkrc.c: added a bunch of utility functions to copy
icon_factories and color_hashes between GtkRcStyles and make sure
that newly created, duplicated and merged styles have access to
all icon_factories and color_hashes they need. Fixes bug #346668.