Compare commits

...

711 Commits

Author SHA1 Message Date
Matthias Clasen 60709383b8 2.10.12
svn path=/branches/gtk-2-10/; revision=17779
2007-05-02 21:54:57 +00:00
Josep Puigdemont i Casamajó 1633a96a90 Updated Catalan translation.
svn path=/branches/gtk-2-10/; revision=17778
2007-05-02 19:46:46 +00:00
Duarte Loreto b5c35a8c9e Updated Portuguese translation.
2007-05-02  Duarte Loreto <happyguy_pt@hotmail.com>

	* pt.po: Updated Portuguese translation.

svn path=/branches/gtk-2-10/; revision=17777
2007-05-02 18:55:12 +00:00
Takeshi AIHANA 901e985c1d Updated Japanese translation.
2007-05-03  Takeshi AIHANA <takeshi.aihana@gmail.com>

        * ja.po: Updated Japanese translation.

svn path=/branches/gtk-2-10/; revision=17776
2007-05-02 17:22:41 +00:00
Matthias Clasen de8ab84a52 Forgotten changes for the icon cache validator
2007-05-02  Matthias Clasen  <mclasen@redhat.com>

        * gtk/Makefile.am: Forgotten changes for the icon cache validator


svn path=/branches/gtk-2-10/; revision=17775
2007-05-02 16:51:41 +00:00
Matthias Clasen 89643a5500 forgotten file
svn path=/branches/gtk-2-10/; revision=17774
2007-05-02 16:15:11 +00:00
Kristian Rietveld 37f8533745 Merge from trunk:
2007-05-02  Kristian Rietveld  <kris@imendio.com>

	Merge from trunk:

	* gtk/gtktreeview.c (gtk_tree_view_grab_notify): stop the rubber band
	if it's active.


svn path=/branches/gtk-2-10/; revision=17771
2007-05-02 08:09:46 +00:00
Matthias Clasen fe6f91ded2 Updates
svn path=/branches/gtk-2-10/; revision=17769
2007-05-02 03:13:57 +00:00
Matthias Clasen afb9a6c601 Don't be too strict when checking icon flags. (#435062)
2007-05-01  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkiconcachevalidator.c: Don't be too strict when checking
        icon flags.  (#435062)



svn path=/branches/gtk-2-10/; revision=17768
2007-05-02 02:21:28 +00:00
Matthias Clasen 40653e2a1f 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)



svn path=/branches/gtk-2-10/; revision=17765
2007-05-02 01:23:30 +00:00
Dan Winship a56af6e2f7 Merge from trunk:
* gdk/x11/gdkwindow-x11.c (setup_toplevel_window): Make sure the
	leader_window's WM_CLIENT_LEADER points to itself. #435028

svn path=/branches/gtk-2-10/; revision=17763
2007-05-02 00:21:51 +00:00
Matthias Clasen 0a65a72417 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)




svn path=/branches/gtk-2-10/; revision=17757
2007-05-01 22:03:08 +00:00
Matthias Clasen f16cc7f311 Remove debug spew, add a warning
svn path=/branches/gtk-2-10/; revision=17755
2007-05-01 21:55:28 +00:00
Ihar Hrachyshka 7209503eb7 Updated Belarusian Latin translation.
svn path=/branches/gtk-2-10/; revision=17750
2007-05-01 09:28:15 +00:00
Matthias Clasen 5eae4ef392 Make sure we always have a color_hash. (#423916, Jens Granseuer)
2007-04-30  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtksettings.c (settings_update_color_scheme):
        Make sure we always have a color_hash.  (#423916, Jens Granseuer)



svn path=/branches/gtk-2-10/; revision=17749
2007-04-30 19:29:33 +00:00
Matthias Clasen abf1066d78 A NO_WINDOW widget must not set the background of its window. (#433972,
2007-04-30  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkexpander.c (gtk_expander_realize): A NO_WINDOW widget
        must not set the background of its window.  (#433972,
        Guilherme Polo)


svn path=/branches/gtk-2-10/; revision=17745
2007-04-30 18:00:17 +00:00
Matthias Clasen 06e80d784a 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)


svn path=/branches/gtk-2-10/; revision=17742
2007-04-30 17:42:10 +00:00
Cody Russell d22d101f97 Clear correct area
svn path=/branches/gtk-2-10/; revision=17738
2007-04-30 15:30:38 +00:00
Matthias Clasen 7e13e72706 Translate the default job name, and don't utf8-validate the job name in
2007-04-30  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtkprintoperation.c: Translate the default job
        name, and don't utf8-validate the job name in the
        setter.  (#421993, Morten Welinder)



svn path=/branches/gtk-2-10/; revision=17727
2007-04-30 05:10:20 +00:00
Matthias Clasen 046fc3cc2f Use g_unlink. (#421990, Morten Welinder)
2007-04-30  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtkprintjob.c (gtk_print_job_get_surface): Use
        g_unlink.  (#421990, Morten Welinder)



svn path=/branches/gtk-2-10/; revision=17725
2007-04-30 04:56:32 +00:00
Matthias Clasen e23495daee 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.



svn path=/branches/gtk-2-10/; revision=17723
2007-04-30 04:50:49 +00:00
Matthias Clasen 08bf8df1a0 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.


svn path=/branches/gtk-2-10/; revision=17720
2007-04-30 02:21:10 +00:00
Matthias Clasen 83ef247e1f Document that a print operation can be run only once, and add a
2007-04-29  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtkprintoperation.c (gtk_print_operation_run): Document
        that a print operation can be run only once, and add a
        corresponding g_return_if_fail().   (#379399, Masao Mutoh)



svn path=/branches/gtk-2-10/; revision=17716
2007-04-29 18:56:28 +00:00
Matthias Clasen 44c7ba14b0 Remove a pointless check from the previous commit that added a new string.
2007-04-29  Matthias Clasen <mclasen@redhat.com>

        * io-jpeg.c: Remove a pointless check from the previous
        commit that added a new string.



svn path=/branches/gtk-2-10/; revision=17713
2007-04-29 18:38:18 +00:00
Matthias Clasen f164053f95 Unlink the file if launching the preview failed, use the settings from the
2007-04-29  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintoperation-unix.c 
        (_gtk_print_operatin_platform_launch_preview): Unlink the
        file if launching the preview failed, use the settings from
        the correct screen, and don't make the error dialog modal.
        (#421985, Morten Welinder)



svn path=/branches/gtk-2-10/; revision=17709
2007-04-29 18:10:35 +00:00
Matthias Clasen d87cb6e82d Only strip parentheses of the form (_x). (#434261, Brian Wellington)
2007-04-29  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores):
        Only strip parentheses of the form (_x).  (#434261,
        Brian Wellington)


svn path=/branches/gtk-2-10/; revision=17706
2007-04-29 07:22:08 +00:00
Matthias Clasen 40db7d038b Fix the build
svn path=/branches/gtk-2-10/; revision=17702
2007-04-29 06:51:12 +00:00
Ihar Hrachyshka 8b4c8fa1a1 Updated Belarusian Latin translation.
svn path=/branches/gtk-2-10/; revision=17700
2007-04-29 06:49:48 +00:00
Matthias Clasen c80541a3e4 Also check the default handler when deciding whether to emit the paginate
2007-04-29  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintoperation.c (print_pages_idle): Also check
        the default handler when deciding whether to emit the
        paginate signal.  (#345345, Yevgen Muntyan)



svn path=/branches/gtk-2-10/; revision=17699
2007-04-29 06:35:33 +00:00
Matthias Clasen 3098de7054 Free the custom paper list. (#403267, Felix Riemann)
2007-04-29  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkpagesetupunixdialog.c (gtk_page_setup_unix_dialog_finalize):
        Free the custom paper list.  (#403267, Felix Riemann)



svn path=/branches/gtk-2-10/; revision=17696
2007-04-29 05:07:33 +00:00
Matthias Clasen d84f87dc1b Fix a small memory leak. (#403251, Felix Riemann)
2007-04-29  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintjob.c (gtk_print_job_get_surface): Fix a
        small memory leak.  (#403251, Felix Riemann)



svn path=/branches/gtk-2-10/; revision=17694
2007-04-29 04:59:38 +00:00
Matthias Clasen ec485b24bd Fix the offsets of the input-only window if we also have a visible window.
2007-04-28  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkeventbox.c (gtk_event_box_realize): Fix the offsets
        of the input-only window if we also have a visible window.
        (#405089)



svn path=/branches/gtk-2-10/; revision=17684
2007-04-28 21:49:13 +00:00
Matthias Clasen a6fc91c07e Recognize negative column indices as invalid. (#415260, Chris Wilson)
2007-04-28  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkliststore.c (gtk_list_store_set_valist_internal):
        * gtk/gtktreestore.c (gtk_tree_store_set_valist_internal):
        Recognize negative column indices as invalid.  (#415260,
        Chris Wilson)


svn path=/branches/gtk-2-10/; revision=17682
2007-04-28 21:31:34 +00:00
Matthias Clasen 1bb1405cf1 Accept unknown parameters with a warning when saving. (#405539, Daniel
2007-04-28  Matthias Clasen <mclasen@redhat.com>

        * io-png.c:
        * io-jpeg.c: Accept unknown parameters with a warning
        when saving.  (#405539, Daniel Atallah)



svn path=/branches/gtk-2-10/; revision=17674
2007-04-28 14:49:43 +00:00
Matthias Clasen 28ec7761ee Plug memory leaks caused by wrong use of g_slist_remove_link(). (#405515,
2007-04-28  Matthias Clasen  <mclasen@redhat.com>

        * gdk/win32/bdfcursor.c (compose_cursors_from_fonts):
        * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_reorder):
        * gtk/gtkfilesystemmodel.c (got_root_folder_cb):
        (get_children_folder_cb): Plug memory leaks caused by wrong
        use of g_slist_remove_link().  (#405515, Nicolas Peninguy)



svn path=/branches/gtk-2-10/; revision=17672
2007-04-28 14:43:20 +00:00
Matthias Clasen 3ebb7e964c Fix the headers in the print demo. (#423722, Yevgen Muntyan)
2007-04-28  Matthias Clasen  <mclasen@redhat.com>

        * demos/gtk-demo/printing.c: Fix the headers in the print
        demo.  (#423722, Yevgen Muntyan)



svn path=/branches/gtk-2-10/; revision=17670
2007-04-28 14:09:36 +00:00
Tor Lillqvist cb2c4a4597 Remove old child of scrolled window before adding a new one when switching
2007-04-26  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkinputdialog.c (gtk_input_dialog_fill_axes)
	(gtk_input_dialog_fill_keys): Remove old child of scrolled window
	before adding a new one when switching what input device is being
	handled. (#399425)


svn path=/branches/gtk-2-10/; revision=17655
2007-04-26 06:19:13 +00:00
Matthias Clasen 3357ad8bf8 Mark the printer list as done. (#428665, Bogdan Gheorghe)
2007-04-26  Matthias Clasen  <mclasen@redhat.com>

        * modules/printbackends/lpr/gtkprintbackendlpr.c
        (gtk_print_backend_lpr_init): Mark the printer list as done.
        (#428665, Bogdan Gheorghe)



svn path=/branches/gtk-2-10/; revision=17654
2007-04-26 06:16:01 +00:00
Matthias Clasen 2f9521e58d Don't install UNIX-printing headers and support files on non-UNIX
2007-04-26  Matthias Clasen  <mclasen@redhat.com>

        * Makefile.am:
        * gtk/Makefile.am: Don't install UNIX-printing headers and
        support files on non-UNIX platforms.  (#425655, Vincent Geddes)



svn path=/branches/gtk-2-10/; revision=17652
2007-04-26 06:05:20 +00:00
Matthias Clasen 2b85c47132 Accept unnamed separators. (#369112, Christian Persch)
2007-04-26  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkuimanager.c (gtk_ui_manager_add_ui): Accept
        unnamed separators.  (#369112, Christian Persch)



svn path=/branches/gtk-2-10/; revision=17650
2007-04-26 05:55:59 +00:00
Matthias Clasen 1b730c2d01 Don't access invalid memory. (#429732, Armin Burgmeier)
2007-04-26  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkaccelgroup.c (gtk_accel_group_finalize): Don't access
        invalid memory.  (#429732, Armin Burgmeier)



svn path=/branches/gtk-2-10/; revision=17648
2007-04-26 05:52:24 +00:00
Cody Russell bdc6c63ffb Use native Win32 cursors where it makes sense
svn path=/branches/gtk-2-10/; revision=17646
2007-04-26 05:28:16 +00:00
Cody Russell f9507b4e08 Win32 drop shadow goodness
svn path=/branches/gtk-2-10/; revision=17644
2007-04-25 23:45:09 +00:00
Matthias Clasen 5ee1e016b1 Set the background of the header window again. (#431067, Benjamin Berg)
* gtk/gtktreeview.c (gtk_tree_view_style_set): Set the background
        of the header window again.  (#431067, Benjamin Berg)



svn path=/branches/gtk-2-10/; revision=17641
2007-04-25 19:13:29 +00:00
Matthias Clasen 9c6e762a33 Set the filename to NULL for builtin icons, sinc
2007-04-25  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkicontheme.c (theme_lookup_icon): Set the filename to
        NULL for builtin icons, sinc gtk_icon_info_get_builtin_pixbuf()
        depends on it.

        * tests/testicontheme.c: Report builtin icons.


svn path=/branches/gtk-2-10/; revision=17639
2007-04-25 18:06:11 +00:00
Matthias Clasen 5196c8e5bf Don't crash if end_run is not set. (#424168, Matthias Hasselmann)
2007-04-25  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintoperation.c (preview_iface_end_preview): Don't
        crash if end_run is not set.  (#424168, Matthias Hasselmann)



svn path=/branches/gtk-2-10/; revision=17637
2007-04-25 16:30:00 +00:00
Matthias Clasen e7ae6a11ee Don't double the delay time of the first frame. (#431997, Björn
2007-04-25  Matthias Clasen <mclasen@redhat.com>

        * gdk-pixbuf-simple-anim.c (gdk_pixbuf_simple_anim_add_frame):
        Don't double the delay time of the first frame.  (#431997,
        Björn Lindqvist)


svn path=/branches/gtk-2-10/; revision=17635
2007-04-25 14:47:19 +00:00
Michael Natterer a117b32242 Merged from trunk:
2007-04-25  Michael Natterer  <mitch@imendio.com>

	Merged from trunk:

	* gtk/gtkmenu.c (gtk_menu_handle_scrolling): fix ACTIVE state of
	scroll buttons (we were setting the state to ACTIVE but
	immediately overwriting it with NORMAL or PRELIGHT). Also got rid
	of many separate calls to gdk_window_invalidate_rect() by
	remembering the old button state and only invalidating the area if
	the state has changed (addresses parts of bug #433242, Tommi
	Komulainen).

	(gtk_menu_scroll_to): change the arrow states only if changing
	from or to INSENSITIVE state, so we don't overwrite the ACTIVE
	state set by above function.


svn path=/branches/gtk-2-10/; revision=17631
2007-04-25 12:31:20 +00:00
Chris Wilson 0131d4ecde Ensure the icon_theme->all_icons and dir->icons hash tables use the same
2007-04-24  Chris Wilson  <chris@chris-wilson.co.uk>

    * gtk/gtkicontheme.c (scan_directory): Ensure the 
    icon_theme->all_icons and dir->icons hash tables use the same string
    as their keys. (#418531)


svn path=/branches/gtk-2-10/; revision=17625
2007-04-24 14:51:52 +00:00
Cody Russell 6411857a0c Cleanup of tab rendering code
svn path=/branches/gtk-2-10/; revision=17624
2007-04-24 03:33:18 +00:00
Cody Russell ec2caa4bae Fix premature DC release
svn path=/branches/gtk-2-10/; revision=17621
2007-04-23 18:44:15 +00:00
Matthias Clasen cab5e86171 Reduce the amount of debug spew if we are not debugging.
2007-04-23  Matthias Clasen  <mclasen@redhat.com>

        * modules/printbackends/cups/gtkprintbackendcups.c: Reduce
        the amount of debug spew if we are not debugging.



svn path=/branches/gtk-2-10/; revision=17620
2007-04-23 17:14:12 +00:00
Cody Russell 9b78d8389d Backported fix from trunk
svn path=/branches/gtk-2-10/; revision=17616
2007-04-19 17:35:20 +00:00
Cody Russell f251591cf8 Fix menuitem rendering in Vista
svn path=/branches/gtk-2-10/; revision=17615
2007-04-19 17:25:24 +00:00
Pema Geyleg fe8facd8a0 Updated Dzongkha Translation
svn path=/branches/gtk-2-10/; revision=17612
2007-04-19 10:32:08 +00:00
Matthias Clasen 90358a3a42 Fix a borderline case with regions
svn path=/branches/gtk-2-10/; revision=17609
2007-04-18 15:23:40 +00:00
Emmanuele Bassi 38eba176e5 Merged from trunk:
2007-04-18  Emmanuele Bassi  <ebassi@gnome.org>

	Merged from trunk:

        * gtk/gtkrecentmanager.c (gtk_recent_manager_lookup_item): Fix
        a leak by not increasing the refcount of the GtkRecentInfo
        object when returning it (thanks to Matthias Clasen).

svn path=/branches/gtk-2-10/; revision=17607
2007-04-18 14:40:33 +00:00
Dan Williams 71021b0efd Merged from trunk:
2007-04-16  Dan Williams  <dcbw@redhat.com>

	Merged from trunk:

	* gtk/gtkrc.c: (gtk_rc_context_get): Initialise variable (#423064)


svn path=/branches/gtk-2-10/; revision=17605
2007-04-16 17:13:17 +00:00
Alexander Larsson bf27e8b0f3 Merged from trunk:
2007-04-16  Alexander Larsson  <alexl@redhat.com>

	Merged from trunk:

	* gtk/gtkprintoperation.c (gtk_print_operation_run):
	Make async print preview work by actually starting
	the print process in that case (#424168)


svn path=/branches/gtk-2-10/; revision=17604
2007-04-16 09:01:47 +00:00
Kostas Papadimas e3cb4f793f Updated Greek translation
svn path=/branches/gtk-2-10/; revision=17602
2007-04-15 10:17:37 +00:00
Chris Wilson 44eab2f9b2 s/g_hash_table_get_keys/hash_table_get_keys/ Avoid the naming conflict
2007-04-11  Chris Wilson  <chris@chris-wilson.co.uk>

    * gtk/gtkiconfactory.c (hash_table_get_keys),
    (_gtk_icon_factory_list_ids):
    * gtk/gtkstock.c (hash_table_get_keys), (gtk_stock_list_ids):
        s/g_hash_table_get_keys/hash_table_get_keys/
        Avoid the naming conflict with the recent GLib implementation
        of the similar function.


svn path=/branches/gtk-2-10/; revision=17598
2007-04-11 18:04:17 +00:00
Matthias Clasen 7d89a0f71d Change the XSettingsWatchFunc to return a Bool to indicate success. Update
2007-04-10  Matthias Clasen  <mclasen@redhat.com>

        * gdk/x11/xsettings-client.[hc]: Change the XSettingsWatchFunc
        to return a Bool to indicate success. Update callers and
        implementors. Based on a patch by Owen Taylor.

        * gdk/x11/gdkevents-x11.c (gdk_xsettings_watch_cb): Don't
        leak a reference to gdkwin.



svn path=/branches/gtk-2-10/; revision=17593
2007-04-10 23:25:34 +00:00
Matthias Clasen ba41627737 Duplicate the mime_type when storing it in a hash node, to avoid leaks.
2007-04-09  Matthias Clasen  <mclasen@redhat.com>

        * xdgmimeglob.c (_xdg_glob_hash_insert_text): Duplicate the
        mime_type when storing it in a hash node, to avoid leaks.
        Update all callers.


svn path=/branches/gtk-2-10/; revision=17590
2007-04-09 18:33:47 +00:00
Baris Cicek b23bad70a4 Updated Turkish Translation
svn path=/branches/gtk-2-10/; revision=17587
2007-04-07 18:04:19 +00:00
Baris Cicek 867f167d76 Updated Turkish Translation
svn path=/branches/gtk-2-10/; revision=17586
2007-04-07 17:27:27 +00:00
Vincent van Adrighem f57c7c34c9 Translation updated by Tino Meinen.
2007-04-03  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Tino Meinen.

svn path=/branches/gtk-2-10/; revision=17581
2007-04-03 15:11:03 +00:00
Loïc Minier fa7d94bbc9 Merge r17579 from trunk:
2007-04-03  Loïc Minier  <lool@dooz.org>

	* gdk/x11/gdkscreen-x11.c: (check_xfree_xinerama): Revert to
	non-xinerama mode when XineramaQueryScreens returns NULL; patch from
	Simon McVittie; #425786.

svn path=/branches/gtk-2-10/; revision=17580
2007-04-03 13:51:44 +00:00
Cody Russell fb180cf79b Fix leaked pixbuf in tab rendering
svn path=/branches/gtk-2-10/; revision=17577
2007-04-01 20:07:38 +00:00
Cody Russell db866825a6 Fix bottom-oriented notebook tabs on Win32. #399253
svn path=/branches/gtk-2-10/; revision=17576
2007-04-01 18:51:22 +00:00
Inaki Larranaga Murgoitio 2dc21cefe9 Updated Basque translation.
2007-03-30  Inaki Larranaga Murgoitio  <dooteo@euskalgnu.org>

	* eu.po: Updated Basque translation.


svn path=/branches/gtk-2-10/; revision=17573
2007-03-30 15:49:47 +00:00
Inaki Larranaga Murgoitio 03cac4dfac Updated Basque translation.
2007-03-30  Inaki Larranaga Murgoitio  <dooteo@euskalgnu.org>

	* eu.po: Updated Basque translation.


svn path=/branches/gtk-2-10/; revision=17572
2007-03-30 15:46:48 +00:00
Matthias Clasen b781e516b7 Merge from trunk:
2007-03-28  Matthias Clasen  <mclasen@redhat.com>

        Merge from trunk:

        * modules/printbackends/cups/gtkcupsutils.[hc]:
        * modules/printbackends/cups/gtkprintbackendcups.c: Apply
        a patch by John Palmieri to make the cups print backend support
        raw printers.



svn path=/branches/gtk-2-10/; revision=17569
2007-03-28 15:59:14 +00:00
Ignacio Casal Quinteiro d8be56f631 Updated Galician Translation
svn path=/branches/gtk-2-10/; revision=17563
2007-03-25 20:26:00 +00:00
Matthias Clasen d3bfae523d Add a keybinding (C-h) to toggle whether to show hidden files. (#344657,
2007-03-23  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkfilechooserdefault.c: Add a keybinding (C-h) to
        toggle whether to show hidden files.  (#344657,
        Wouter Bolsterlee, Priit Laes, et al)



svn path=/branches/gtk-2-10/; revision=17558
2007-03-23 05:18:15 +00:00
Matthias Clasen b5cdeeb0af Add a keybinding to toggle the visibility of the location entry. (#383354,
2007-03-23  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkfilechooserdefault.c: Add a keybinding to
        toggle the visibility of the location entry.  (#383354,
        John Pye, patch by Carlos Garnacho)



svn path=/branches/gtk-2-10/; revision=17556
2007-03-23 05:08:31 +00:00
Matthias Clasen 1c395cc860 Freeze property notification. Handle the gtk-color-scheme xsetting being
2007-03-22  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtksettings.c (merge_color_scheme): Freeze property
        notification.
        * gtk/gtksettings.c (_gtk_settings_handle_event): Handle
        the gtk-color-scheme xsetting being unset.

        * gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): Handle
        recursion locally.



svn path=/branches/gtk-2-10/; revision=17554
2007-03-22 21:59:29 +00:00
Matthias Clasen 17f4c4f0e6 Remove debug spew
svn path=/branches/gtk-2-10/; revision=17552
2007-03-22 02:44:22 +00:00
Laurent Dhima dd5501d9c5 Updated Albanian translation.
svn path=/branches/gtk-2-10/; revision=17548
2007-03-21 11:26:17 +00:00
Matthias Clasen a5077a64bd Ensure that the prefix is valid UTF-8. (#419568, Nickolay V. Shmyrev)
2007-03-18  Matthias Clasen <mclasen@redhat.com> 

        * gtk/gtkentrycompletion.c (gtk_entry_completion_compute_prefix):
        Ensure that the prefix is valid UTF-8.  (#419568, Nickolay V. Shmyrev)



svn path=/branches/gtk-2-10/; revision=17544
2007-03-19 04:31:00 +00:00
Claudio Saavedra 271a642bc8 Updated Spanish translation.
2007-03-19  Claudio Saavedra  <csaavedra@alumnos.utalca.cl>

        * es.po: Updated Spanish translation.


svn path=/branches/gtk-2-10/; revision=17542
2007-03-19 04:06:28 +00:00
Chris Wilson bcfedec385 Change whitespace in ChangeLog entry for consistency.
svn path=/branches/gtk-2-10/; revision=17540
2007-03-17 20:27:17 +00:00
Chris Wilson edec9a1879 Initialise nxvisuals to 0 in order to handle XGetVisualInfo() failures
2007-03-17  Chris Wilson  <chris@chris-wilson.co.uk>

	* gdk/x11/gdkvisual-x11.c (_gdk_visual_init):
		Initialise nxvisuals to 0 in order to handle
		XGetVisualInfo() failures gracefully. (#419171)


svn path=/branches/gtk-2-10/; revision=17537
2007-03-17 18:50:20 +00:00
Matthias Clasen bbeddb712a Scroll to make the selected printer visible. (#418403, Nickolay V.
2007-03-16  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintunixdialog.c (printer_added_cb): Scroll to
        make the selected printer visible.  (#418403, Nickolay V. Shmyrev,
        patch by Christian Persch)



svn path=/branches/gtk-2-10/; revision=17532
2007-03-16 05:17:25 +00:00
Federico Mena Quintero e89926da22 PANGO_PIXELS() gives us device units, which are *points* in pangocairo's
2007-03-15  Federico Mena Quintero  <federico@novell.com>

	* gtk/gtkfilechooserdefault.c (find_good_size_from_style):
	PANGO_PIXELS() gives us device units, which are *points* in
	pangocairo's parlance, but we want actual pixels.  So, get the
	screen's resolution to compute the actual number of pixels.
	Fixes bug #418585.

svn path=/branches/gtk-2-10/; revision=17529
2007-03-16 00:51:18 +00:00
Alessio Frusciante c3f89db45d Updated Italian translation.
svn path=/branches/gtk-2-10/; revision=17528
2007-03-15 21:21:45 +00:00
Emmanuele Bassi cb2d6f74a1 Merge from trunk:
2007-03-15  Emmanuele Bassi  <ebassi@gnome.org>

	Merge from trunk:

	* gtk/gtkrecentmanager.c (gtk_recent_manager_add_item): Remove
	unused GError; do not allocate GtkRecentData and use a variable
	on the stack. (#418673, Morten Welinder)

svn path=/branches/gtk-2-10/; revision=17526
2007-03-15 19:58:22 +00:00
Chris Wilson 98abcb41fb Protect ensure_valid_themes() from recursion, which can happen for example
2007-03-15  Chris Wilson  <chris@chris-wilson.co.uk>

	* gtk/gtkicontheme.c (ensure_valid_themes), (rescan_themes),
	(gtk_icon_theme_rescan_if_needed): Protect ensure_valid_themes()
	from recursion, which can happen for example if the app tries to
	reload an icon from within a theme-changed handler. (#418531)


svn path=/branches/gtk-2-10/; revision=17522
2007-03-15 18:35:38 +00:00
Emmanuele Bassi ef85b08765 Merge from trunk:
2007-03-15  Emmanuele Bassi  <ebassi@gnome.org>

	Merge from trunk:

	* gtk/gtkrecentmanager.c: Fix documentation errors. (Morten
	Welinder)

svn path=/branches/gtk-2-10/; revision=17520
2007-03-15 17:13:53 +00:00
Emmanuele Bassi 3bf09b727b Merge from trunk:
2007-03-15  Emmanuele Bassi  <ebassi@gnome.org>

	Merge from trunk:

	* gtk/gtkrecentchooserprivate.h:
	* gtk/gtkrecentchooserutils.c: Share between the widgets
	the recent chooser function for getting the filtered, sorted
	and clamped list of recent files from the manager. (#418219)

	* gtk/gtkrecentchoosermenu.c: Use the newly defined
	_gtk_recent_chooser_get_items() function; remove some
	pointer indirections.

	* gtk/gtkrecentchooserdefault.c: Reload the items every time
	a property affecting the view is changed; move the objects
	unref and the source removal into the dispose function; use
	the newly defined _gtk_recent_chooser_get_items()
	function. (see #338843)

svn path=/branches/gtk-2-10/; revision=17517
2007-03-15 10:44:34 +00:00
Matthias Clasen 674031d980 2.10.11
svn path=/branches/gtk-2-10/; revision=17513
2007-03-14 05:50:11 +00:00
Matthias Clasen 34d73266b9 2.10.11
svn path=/branches/gtk-2-10/; revision=17511
2007-03-14 05:45:35 +00:00
Ihar Hrachyshka 91b9577c84 Updated Belarusian Latin translation (some fixes).
svn path=/branches/gtk-2-10/; revision=17509
2007-03-13 20:35:18 +00:00
Ihar Hrachyshka 62de23c993 Added actual Belarusian Latin translation.
svn path=/branches/gtk-2-10/; revision=17507
2007-03-13 16:56:09 +00:00
Matthias Clasen 345ab456ae Fix tabbed browsing in epiphany. (#413664, Christian Persch)
2007-03-13  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtknotebook.c (gtk_notebook_real_insert_page):
        Fix tabbed browsing in epiphany.  (#413664, Christian Persch)



svn path=/branches/gtk-2-10/; revision=17506
2007-03-13 15:17:05 +00:00
Ray Strode 11ffd10823 add newline to test svn locking feature
svn path=/branches/gtk-2-10/; revision=17504
2007-03-12 18:42:21 +00:00
Matthias Clasen 1f434a8f7a Bump version
svn path=/branches/gtk-2-10/; revision=17503
2007-03-12 18:35:32 +00:00
Matthias Clasen 0b7fbf24d9 2.10.10
svn path=/branches/gtk-2-10/; revision=17501
2007-03-12 18:33:44 +00:00
Takeshi AIHANA dbbbfbe092 Updated Japanese translation.
2007-03-13  Takeshi AIHANA <takeshi.aihana@gmail.com>

        * ja.po: Updated Japanese translation.

svn path=/branches/gtk-2-10/; revision=17500
2007-03-12 15:35:06 +00:00
Felix I 856ad7b1f2 Updated Translation
svn path=/branches/gtk-2-10/; revision=17499
2007-03-12 08:10:40 +00:00
Matthias Clasen 47523436d5 Set the background of the panel window on style changes. (#402144,
2007-03-12  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkspinbutton.c (gtk_spin_button_style_set): Set
        the background of the panel window on style changes. (#402144,
        Benjamin Berg)



svn path=/branches/gtk-2-10/; revision=17493
2007-03-12 05:52:23 +00:00
Matthias Clasen 0f9ed45c85 Updates
svn path=/branches/gtk-2-10/; revision=17490
2007-03-12 05:40:12 +00:00
Matthias Clasen b041ad4c3b Handle the row reference path being NULL. (#410565, Joe Markus Clarke,
2007-03-12  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkfilechooserbutton.c (change_icon_theme_get_info_cb):
        Handle the row reference path being NULL.  (#410565, Joe Markus
        Clarke, patch by Chris Wilson)



svn path=/branches/gtk-2-10/; revision=17488
2007-03-12 04:12:02 +00:00
Matthias Clasen 27e04bea15 Handle Menu key presses without crash. (#385637, Christian Persch)
2007-03-11  Matthias Clasen  <mclasen@redhat.com>

        * tests/testiconview.c: Handle Menu key presses without
        crash.  (#385637, Christian Persch)



svn path=/branches/gtk-2-10/; revision=17486
2007-03-12 03:15:23 +00:00
Matthias Clasen 5847ef42e3 Don't crash if active_tips_data is NULL. (#382904, Li Yuan)
2007-03-11  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktooltips.c (gtk_tooltips_get_info_from_tip_window):
        Don't crash if active_tips_data is NULL.  (#382904, Li Yuan)



svn path=/branches/gtk-2-10/; revision=17484
2007-03-12 02:54:04 +00:00
Matthias Clasen 2c3a8b5f34 Set first_para_mark to NULL. (#396805, Colin Leroy, patch by Mariano
2007-03-11  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_set_buffer): Set first_para_mark
        to NULL.  (#396805, Colin Leroy, patch by Mariano Suárez-Alvarez)



svn path=/branches/gtk-2-10/; revision=17482
2007-03-12 02:35:08 +00:00
Kristian Rietveld 876fd96900 Merge from trunk:
2007-03-12  Kristian Rietveld  <kris@gtk.org>

	Merge from trunk:

	* gtk/gtkfilechooserdefault.c (check_save_entry): immediately
	bail out if current_folder is NULL. (#350988, lots of reporters,
	modified patch by Jan Darmochwal).


svn path=/branches/gtk-2-10/; revision=17480
2007-03-12 00:14:28 +00:00
Christian Persch 510a815d20 Don't make the Location: label bold. Bug #372449.
2007-03-12  Christian Persch  <chpe@gnome.org>

	* gtk/gtkfilechooserdefault.c: (browse_widgets_create): Don't make the
	Location: label bold. Bug #372449.

svn path=/branches/gtk-2-10/; revision=17478
2007-03-11 23:22:07 +00:00
Christian Persch b780ec99f7 Don't make the Location: label bold. Bug #372449.
2007-03-12  Christian Persch  <chpe@gnome.org>

	* gtk/gtkfilechooserdefault.c: (browse_widgets_create): Don't make the
	Location: label bold. Bug #372449.

svn path=/branches/gtk-2-10/; revision=17477
2007-03-11 23:17:37 +00:00
Raphael Higino 28bdea09f5 Updated Brazilian Portuguese translation
svn path=/branches/gtk-2-10/; revision=17475
2007-03-11 18:49:11 +00:00
Goran Rakic 39228b229a Updated Serbian translation
svn path=/branches/gtk-2-10/; revision=17472
2007-03-11 17:06:30 +00:00
Guillaume Savaton 0909673719 filled revision date (prevented correct compilation)
2007-03-11 Guillaume Savaton <llumeao@gmail.com>

   * eo.po: filled revision date (prevented correct compilation)


svn path=/branches/gtk-2-10/; revision=17471
2007-03-11 17:01:02 +00:00
Guillaume Savaton de0d6575ed Filled revision date in eo.po (prevented correct compilation)
2007-03-11 Guillaume Savaton <llumeao@gmail.com>

   * Filled revision date in eo.po (prevented correct compilation)


svn path=/branches/gtk-2-10/; revision=17470
2007-03-11 16:58:54 +00:00
Mugurel Tudor af66649dfe Updated Romanian translation by Mişu Moldovan <dumol@gnome.ro>
2007-03-11  Mugurel Tudor  <mugurelu@gnome.ro>

	* ro.po: Updated Romanian translation by
	Mişu Moldovan <dumol@gnome.ro>

svn path=/branches/gtk-2-10/; revision=17469
2007-03-10 23:10:38 +00:00
Mugurel Tudor 0371110ac5 Updated Romanian translation by Mişu Moldovan <dumol@gnome.ro>
2007-03-11  Mugurel Tudor  <mugurelu@gnome.ro>

	* ro.po: Updated Romanian translation by
	Mişu Moldovan <dumol@gnome.ro>

svn path=/branches/gtk-2-10/; revision=17468
2007-03-10 23:10:13 +00:00
Kristian Rietveld e46cc9a2a8 Updated fix for #356515, merged from trunk:
2007-03-10  Kristian Rietveld  <kris@gtk.org>

	Updated fix for #356515, merged from trunk:

	* gtk/gtktreeview.c (gtk_tree_view_search_dialog_hide): send
	a focus-in event to the tree view after hiding the search dialog;
	only hide the search dialog and send the focus events when the
	dialog is currently visible.


svn path=/branches/gtk-2-10/; revision=17465
2007-03-10 22:47:38 +00:00
Kristian Rietveld 5806be0247 Merge from trunk:
2007-03-10  Kristian Rietveld  <kris@gtk.org>

	Merge from trunk:

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_ref_node),
	(gtk_tree_model_sort_real_unref_node): when (un)reffing an
	element, also (un)ref its parent elements. (Fixes #364946,
	reported by many, testcase by Andreas Koehler).


svn path=/branches/gtk-2-10/; revision=17458
2007-03-10 17:26:38 +00:00
Kristian Rietveld cb9b825d87 Merge from trunk:
2007-03-10  Kristian Rietveld  <kris@gtk.org>

	Merge from trunk:

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_changed),
	(gtk_tree_model_sort_sort_level): ref count nodes the proper way,
	(gtk_tree_model_sort_ref_node), (gtk_tree_model_sort_real_unref_node),
	(gtk_tree_model_sort_free_level): bring zero ref count loops in
	sync,
	(gtk_tree_model_sort_free_level): free child levels before
	decreasing the zero ref count of the current level,
	(gtk_tree_model_sort_clear_cache): only clear cache if zero_ref_count
	is > 0.


svn path=/branches/gtk-2-10/; revision=17456
2007-03-10 17:20:07 +00:00
Tor Lillqvist 953a688f1c Cosmetics.
svn path=/branches/gtk-2-10/; revision=17455
2007-03-10 09:04:22 +00:00
Matthias Clasen 5d3d5f4f66 Initialize the do_preview field of PrintResponseData. (#396703, Christian
2007-03-10  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtkprintoperation-unix.c: Initialize the do_preview
        field of PrintResponseData.  (#396703, Christian Persch)



svn path=/branches/gtk-2-10/; revision=17454
2007-03-10 06:58:35 +00:00
Matthias Clasen f96e2457d2 Plug some leaks
svn path=/branches/gtk-2-10/; revision=17451
2007-03-10 05:51:24 +00:00
Matthias Clasen 0b92a6f503 Get rid of the unused event argument. Update all callers.
2007-03-09  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_end_selection_drag):
        Get rid of the unused event argument. Update all callers.

        * gtk/gtktextview.c (gtk_text_view_focus_out): Call
        gtk_text_view_end_selection_drag.  (#351671, Boyd Timothy)



svn path=/branches/gtk-2-10/; revision=17450
2007-03-10 03:53:15 +00:00
Ihar Hrachyshka 6c78828eea be@latin.po: Fixes in Belarusian Latin translation.
svn path=/branches/gtk-2-10/; revision=17448
2007-03-10 00:15:36 +00:00
Matthias Clasen 4fa3722492 Don't commit modifier-adorned characters. (#331369, #335796, Lin Ma and
2007-03-09  Matthias Clasen <mclasen@redhat.com>

        * modules/input/gtkimcontextxim.c 
        (gtk_im_context_xim_filter_keypress): Don't commit
        modifier-adorned characters.  (#331369, #335796, Lin Ma
        and others)



svn path=/branches/gtk-2-10/; revision=17447
2007-03-09 23:39:11 +00:00
Matthias Clasen 2a1c14354d Fix the build
svn path=/branches/gtk-2-10/; revision=17445
2007-03-09 22:17:58 +00:00
Matthias Clasen c450c2e8b1 Remove C99isms. (#416525, Kazuki Iwamoto)
2007-03-09  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtkfilesystemwin32.c (get_icon_path): Remove
        C99isms.  (#416525, Kazuki Iwamoto)



svn path=/branches/gtk-2-10/; revision=17443
2007-03-09 21:31:58 +00:00
Tor Lillqvist 5707117d1a Update.
2007-03-09  Tor Lillqvist  <tml@novell.com>

	* README.win32: Update.


svn path=/branches/gtk-2-10/; revision=17440
2007-03-09 09:49:34 +00:00
Leonardo Ferreira Fontenelle 0c55ef70fb Fixes in Brazilian Portuguese translation for better consistency.
2007-03-09  Leonardo Ferreira Fontenelle  <leonardof@svn.gnome.org>

	* pt_BR.po: Fixes in Brazilian Portuguese translation for better
	consistency.

svn path=/branches/gtk-2-10/; revision=17439
2007-03-09 06:42:24 +00:00
Matthias Clasen 744a9b476a Updates
svn path=/branches/gtk-2-10/; revision=17438
2007-03-09 05:56:38 +00:00
Matthias Clasen 3477836885 Defer the callbacks to an idle to avoid deadlock with xcb-ified libX11.
2007-03-08  Matthias Clasen <mclasen@redhat.com>

        * gdk/x11/gdkasync.c (send_event_handler): Defer the callbacks
        to an idle to avoid deadlock with xcb-ified libX11.  (#413032,
        Sebastian Dröge)



svn path=/branches/gtk-2-10/; revision=17437
2007-03-09 05:29:46 +00:00
Matthias Clasen d09c0ec912 Set child visibility to FALSE here; it will be turned back on in
2007-03-08  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtknotebook.c (gtk_notebook_real_insert_page):
        Set child visibility to FALSE here; it will be turned
        back on in switch_page.  (#413664, Carlos Garnacho)



svn path=/branches/gtk-2-10/; revision=17435
2007-03-09 04:54:12 +00:00
Josep Puigdemont i Casamajó fc154cbcc1 Updated Catalan translation.
svn path=/branches/gtk-2-10/; revision=17433
2007-03-09 00:21:24 +00:00
Laurent Dhima 79b6639882 Updated Albanian translation.
svn path=/branches/gtk-2-10/; revision=17432
2007-03-08 18:45:39 +00:00
Kristian Rietveld 8823b06c62 Revert revision 17315:
2007-03-08  Kristian Rietveld  <kris@gtk.org>

	Revert revision 17315:

	* gtk/gtktreeview.c (gtk_tree_view_search_dialog_hide): send
	a focus-in event to the tree view after hiding the search dialog.
	(#356515, Rich Burridge, Peter Parente).


svn path=/branches/gtk-2-10/; revision=17431
2007-03-08 18:24:04 +00:00
Pema Geyleg e505dac799 Corrected Dzongkha Translation (Bug: 348790)
svn path=/branches/gtk-2-10/; revision=17428
2007-03-08 04:56:32 +00:00
Pema Geyleg 3243103e95 Corrected Dzongkha Translation (Bug: 355815)
svn path=/branches/gtk-2-10/; revision=17427
2007-03-08 04:50:22 +00:00
Tor Lillqvist 6e75dc235e Add Novell and tbf as copyright holders
svn path=/branches/gtk-2-10/; revision=17424
2007-03-07 23:41:39 +00:00
Mathias Hasselmann e66030c5ce Use Windows shell icons. Icons are stored in the current theme with the
2007-03-08  Mathias Hasselmann <mathias.hasselmann@gmx.de>

	* gtk/gtkfilesystemwin32.c: Use Windows shell icons. Icons are
	stored in the current theme with the name
	"gtk-win32-shell-icon;PATH;INDEX". PATH and INDEX reference shell
	icons as reported by SHGetFileInfoW. (#412221)


svn path=/branches/gtk-2-10/; revision=17422
2007-03-07 23:32:36 +00:00
Matthias Clasen d0a231c04d Draw the focus around the arrow if there is no label widget. (#124045,
2007-03-07  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtkexpander.c (gtk_expander_paint_focus): Draw the
        focus around the arrow if there is no label widget.
        (#124045, Cody Russell)



svn path=/branches/gtk-2-10/; revision=17420
2007-03-07 21:36:52 +00:00
Matthias Clasen e29723c10c Set names on the popup widgets to make them themable. (#414975, Benjamin
2007-03-07  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtkcombo.c: (gtk_combo_init):
        * gtk/gtkcombobox.c: (gtk_combo_box_set_popup_widget),
        (gtk_combo_box_menu_setup):
        Set names on the popup widgets to make them themable. (#414975,
        Benjamin Berg)



svn path=/branches/gtk-2-10/; revision=17418
2007-03-07 21:14:57 +00:00
Simos Xenitellis 796ef01c6f Updated Greek translation.
svn path=/branches/gtk-2-10/; revision=17416
2007-03-07 19:01:51 +00:00
Guillaume Savaton 5813ecb405 Added Esperanto (eo) translation in po/ Added Esperanto (eo) translation
2007-03-07  Guillaume Savaton <llumeao@gmail.com>

   * Added Esperanto (eo) translation in po/
   * Added Esperanto (eo) translation stub in po-properties/
   * Added eo to ALL_LINGUAS in configure.in


svn path=/branches/gtk-2-10/; revision=17415
2007-03-07 18:53:24 +00:00
Simos Xenitellis e5b6e6ebf7 Updated Greek translation
svn path=/branches/gtk-2-10/; revision=17414
2007-03-07 16:39:28 +00:00
Michael Natterer b349b6a420 Merge from trunk:
2007-03-07  Michael Natterer  <mitch@imendio.com>

	Merge from trunk:

	* gtk/gtkcellrendereraccel.c: use multihead safe ungrab functions
	instead of gdk_keyboard_ungrab() and gdk_pointer_ungrab(), remove
	empty finalize() implementation, some cosmetic cleanup
	(bug #415645).


svn path=/branches/gtk-2-10/; revision=17413
2007-03-07 14:20:03 +00:00
Simos Xenitellis 38927acffc Updated Greek translation.
svn path=/branches/gtk-2-10/; revision=17411
2007-03-07 13:31:44 +00:00
Ani Peter 2f9ffd0e92 Updated malayalam translation
svn path=/branches/gtk-2-10/; revision=17410
2007-03-07 12:11:59 +00:00
Ani Peter 57480254d6 Updated malayalam translation
svn path=/branches/gtk-2-10/; revision=17409
2007-03-07 11:22:21 +00:00
Ani Peter b2a19c3577 Updated malayalam translation
svn path=/branches/gtk-2-10/; revision=17408
2007-03-07 11:21:28 +00:00
Simos Xenitellis bff6a6e358 Updated Greek translation.
svn path=/branches/gtk-2-10/; revision=17407
2007-03-07 08:52:06 +00:00
Simos Xenitellis 6f96e0146f Updated Greek translation
svn path=/branches/gtk-2-10/; revision=17406
2007-03-07 05:31:57 +00:00
Artur Flinta d541c17e6b Updated Polish translation by GNOME PL Team.
2007-03-07  Artur Flinta  <aflinta@svn.gnome.org>

	* pl.po: Updated Polish translation by GNOME PL Team.


svn path=/branches/gtk-2-10/; revision=17405
2007-03-06 23:25:54 +00:00
Chris Wilson eaf4d6d4d1 Be careful not to trigger a style reset before we have loaded any icon
2007-03-06  Chris Wilson  <chris@chris-wilson.co.uk>

	* gtk/gtkicontheme.c (update_current_theme), (gtk_icon_theme_init),
	(do_theme_change), (gtk_icon_theme_set_custom_theme),
	(load_themes):
		Be careful not to trigger a style reset before we have loaded
		any icon themes. (#414875).


svn path=/branches/gtk-2-10/; revision=17403
2007-03-06 18:19:28 +00:00
Hendrik Richter 332daf6f79 Updated German translation.
2007-03-06  Hendrik Richter  <hendrikr@gnome.org>

	* de.po: Updated German translation.

svn path=/branches/gtk-2-10/; revision=17400
2007-03-06 17:01:39 +00:00
Laurent Dhima dc3a11250c Updated Albanian translation.
svn path=/branches/gtk-2-10/; revision=17399
2007-03-06 11:09:52 +00:00
Jovan Naumovski ec50520ceb 2007-03-06 Jovan Naumovski <jovanna@svn.gnome.org> *mk.po: Updated Macedonian translation.
svn path=/branches/gtk-2-10/; revision=17398
2007-03-06 10:31:13 +00:00
Tor Lillqvist d096ea1a90 gdk/Makefile.am gdk-pixbuf/Makefile.am Further fixes for building on Win32
2007-03-06  Tor Lillqvist  <tml@novell.com>

	* gdk/Makefile.am
	* gdk-pixbuf/Makefile.am
	* gtk/Makefile.am: Further fixes for building on Win32 outside
	srcdir. (#413492, Mathias Hasselmann)


svn path=/branches/gtk-2-10/; revision=17396
2007-03-06 09:58:06 +00:00
Matthias Clasen 66677703ea Flip more images
svn path=/branches/gtk-2-10/; revision=17394
2007-03-06 04:21:29 +00:00
Ihar Hrachyshka ad082adfeb Fixed problems with be@latin.
svn path=/branches/gtk-2-10/; revision=17391
2007-03-05 13:34:12 +00:00
Claudio Saavedra b205ca38d7 Removed be@latin from ALL_LINGUAS, as it's currently breaking the build.
2007-03-04  Claudio Saavedra  <csaavedra@alumnos.utalca.cl>

        * configure.in: Removed be@latin from ALL_LINGUAS, as it's currently
        breaking the build.


svn path=/branches/gtk-2-10/; revision=17389
2007-03-05 00:49:24 +00:00
Ihar Hrachyshka aa4dc7d07f be@latin.po: Added Belarusian Latin translation by Ales Navicki.
svn path=/branches/gtk-2-10/; revision=17384
2007-03-04 13:36:41 +00:00
Pema Geyleg fbdfec43be Updated Dzongkha Trnslation
svn path=/branches/gtk-2-10/; revision=17383
2007-03-04 06:47:58 +00:00
Chao-Hsiung Liao b9f45be30a Updated Traditional Chinese translation(Hong Kong). Updated Traditional
2007-03-04  Chao-Hsiung Liao  <j_h_liau@yahoo.com.tw>

	* zh_HK.po: Updated Traditional Chinese translation(Hong Kong).
	* zh_TW.po: Updated Traditional Chinese translation(Taiwan).


svn path=/branches/gtk-2-10/; revision=17382
2007-03-04 00:23:22 +00:00
Vincent van Adrighem 3b83f95ce1 Translation updated by Tino Meinen.
2007-03-03  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Tino Meinen.

svn path=/branches/gtk-2-10/; revision=17381
2007-03-03 21:12:39 +00:00
Leonid Kanter 543642501d Updated Russian translation
svn path=/branches/gtk-2-10/; revision=17378
2007-03-03 18:27:16 +00:00
Leonid Kanter e30093b50d Updated Russian translation
svn path=/branches/gtk-2-10/; revision=17377
2007-03-03 18:22:33 +00:00
Funda Wang dd70f458f7 Updated Simplified Chinese translation.
svn path=/branches/gtk-2-10/; revision=17376
2007-03-03 10:00:21 +00:00
Funda Wang a7dffb89d1 Updated Simplified Chinese translation.
svn path=/branches/gtk-2-10/; revision=17375
2007-03-03 09:59:33 +00:00
Amanpreet Singh Alam 4ddc45d7f2 updatingfor Punjabi by alam
svn path=/branches/gtk-2-10/; revision=17374
2007-03-03 09:56:06 +00:00
Ankitkumar Rameshchandra Patel 06a2e90d4c Updated Translation
svn path=/branches/gtk-2-10/; revision=17373
2007-03-02 07:16:22 +00:00
Murray Cumming 7355017883 Fix the build, by converting the case statement to an if else. I am only
2007-03-01  Murray Cumming  <murrayc@murrayc.com>

        * gtk/gtksettings.c: (gtk_settings_get_property): Fix the build, by 
        converting the case statement to an if else. I am only guessing that 
        this is the desired logic.

svn path=/branches/gtk-2-10/; revision=17372
2007-03-01 14:42:29 +00:00
Matthias Clasen 75cb95adde Always store gtk-color-scheme values from all sources in the
2007-03-01  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtksettings.c: Always store gtk-color-scheme
        values from all sources in the ColorSchemeData struct
        and ignore the property_value for gtk-color-scheme.
        This fixes #412596, reported by Thomas Wood.



svn path=/branches/gtk-2-10/; revision=17371
2007-03-01 06:49:21 +00:00
Daniel Nylander c8da579f84 sv.po: Swedish translation updated
svn path=/branches/gtk-2-10/; revision=17368
2007-02-28 21:40:11 +00:00
Matthias Clasen 1d507cb560 Make color scheme update properly when changing themes. (#402131, Benjamin
2007-02-28  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtksettings.c: Make color scheme update properly
        when changing themes.  (#402131, Benjamin Berg)


svn path=/branches/gtk-2-10/; revision=17367
2007-02-28 19:49:34 +00:00
Matthias Clasen f01351d17e Don't leak references to the color-hash gotten from GtkSettings. (#409357,
2007-02-28  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtkrc.c: Don't leak references to the color-hash
        gotten from GtkSettings.  (#409357, Benjamin Berg)



svn path=/branches/gtk-2-10/; revision=17365
2007-02-28 17:16:27 +00:00
Hendrik Richter e1b41e3afc Updated German translation.
2007-02-28  Hendrik Richter  <hendrikr@gnome.org>

	* de.po: Updated German translation.

svn path=/branches/gtk-2-10/; revision=17362
2007-02-28 10:35:34 +00:00
Felix Riemann eb0b44f770 Add image/x-ico to supported mime types. Fixes bug #393599.
2007-02-27  Felix Riemann  <friemann@svn.gnome.org>

	* io-ico.c: (fill_info): Add image/x-ico to supported mime types.
	Fixes bug #393599.

svn path=/branches/gtk-2-10/; revision=17360
2007-02-27 19:25:22 +00:00
Matthias Clasen 3e82928d30 Apply a patch by Carlos Garnacho to fix several problems with filechooser
2007-02-26  Matthias Clasen <mclasen@redhat.com>

        Apply a patch by Carlos Garnacho to fix several problems
        with filechooser size handling (#325477, #151169, 143213,
        #153785)

        * gtk/gtkfilechooserdefault.c: Increase NUM_LINES slightly.
        (browse_widgets_create): Don't force the paned position to 200.
        (find_good_size_from_style): Take the size of the extra widget
        into account.

        * gtk/gtkfilechooserdialog.c (file_chooser_widget_update_hints):
        Accept a minimal width parameter. Update all callers.


svn path=/branches/gtk-2-10/; revision=17358
2007-02-26 19:53:04 +00:00
Matthias Clasen 4290028313 Make folder selection work for print-to-file
svn path=/branches/gtk-2-10/; revision=17355
2007-02-26 14:58:39 +00:00
Chris Wilson 7884da3b1a Bug 409101 – invalid read to gtkicontheme.c insert_theme(), might cause
2007-02-26  Chris Wilson  <chris@chris-wilson.co.uk>

	Bug 409101 – invalid read to gtkicontheme.c insert_theme(), might cause gnome-panel crash

	* gtk/gtkicontheme.c: (scan_directory):
		Reorder the replacement of the shared base_name key, so that we
		avoid dereferencing the string in the icon_theme->all_icon
		hash table after freeing it from the dir->icons hash table.


svn path=/branches/gtk-2-10/; revision=17352
2007-02-26 14:05:31 +00:00
Ilkka Tuohela 507e28c958 Updated Finnish translation
svn path=/branches/gtk-2-10/; revision=17349
2007-02-25 16:13:30 +00:00
Kjartan Maraas 3274293566 Updated Norwegian bokmål translation.
2007-02-25  Kjartan Maraas  <kmaraas@gnome.org>

	* nb.po: Updated Norwegian bokmål translation.

svn path=/branches/gtk-2-10/; revision=17348
2007-02-25 12:53:48 +00:00
Gabor Kelemen 25a59510f8 Translation updated.
2007-02-25  Gabor Kelemen  <kelemeng@gnome.hu>

	* hu.po: Translation updated.

svn path=/branches/gtk-2-10/; revision=17347
2007-02-24 22:59:44 +00:00
Matic Žgur 4be559970c Updated Slovenian translation.
svn path=/branches/gtk-2-10/; revision=17346
2007-02-24 20:00:56 +00:00
Kjartan Maraas f0fdcb5c18 Updated Norwegian bokmål translation.
2007-02-24  Kjartan Maraas  <kmaraas@gnome.org>

	* nb.po: Updated Norwegian bokmål translation.

svn path=/branches/gtk-2-10/; revision=17345
2007-02-24 14:34:46 +00:00
Gintautas Miliauskas a7ac778c27 Updated Lithuanian translation (rinkmena -> failas).
2007-02-22  Gintautas Miliauskas  <gintas@akl.lt>

	* lt.po: Updated Lithuanian translation (rinkmena -> failas).



svn path=/branches/gtk-2-10/; revision=17343
2007-02-22 11:42:13 +00:00
Ilkka Tuohela 86baad2569 Updated Finnish translation
svn path=/branches/gtk-2-10/; revision=17338
2007-02-20 05:29:18 +00:00
Ilkka Tuohela 2a7731d588 Updated Finnish translation
svn path=/branches/gtk-2-10/; revision=17337
2007-02-20 05:27:50 +00:00
Leonardo Ferreira Fontenelle c9b047c17d Fixed missing update info about pt_BR
svn path=/branches/gtk-2-10/; revision=17336
2007-02-20 00:39:53 +00:00
Leonardo Ferreira Fontenelle f4843b0e92 Updated Brazilian Portuguese translation.
2007-02-19  Leonardo Ferreira Fontenelle  <leonardof@svn.gnome.org>

	* pt_BR.po: Updated Brazilian Portuguese translation.

svn path=/branches/gtk-2-10/; revision=17335
2007-02-20 00:36:59 +00:00
Nguyen Thai Ngoc Duy 0f7a5b2dcd updated vi.po
svn path=/branches/gtk-2-10/; revision=17334
2007-02-19 09:00:54 +00:00
Artur Flinta 1770430667 Updated Polish translation by GNOME PL Team.
2007-02-18  Artur Flinta  <aflinta@cvs.gnome.org>

	* pl.po: Updated Polish translation by GNOME PL Team.


svn path=/branches/gtk-2-10/; revision=17331
2007-02-18 21:18:08 +00:00
Matthias Clasen 7d2b5ec234 Ignore invisible text when going to end of the previous line. (#382565)
2007-02-18  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextlayout.c (gtk_text_layout_move_iter_visually):
        Ignore invisible text when going to end of the previous line.
        (#382565)


svn path=/branches/gtk-2-10/; revision=17330
2007-02-18 16:50:45 +00:00
Amanpreet Singh Alam 1214848172 updating for Punjabi by AP S Alam
svn path=/branches/gtk-2-10/; revision=17329
2007-02-18 16:42:29 +00:00
Amanpreet Singh Alam feaeb1ddbb updating for Punjabi by AP S Alam
svn path=/branches/gtk-2-10/; revision=17327
2007-02-18 15:44:23 +00:00
Alexander Shopov fae90ca7f8 Updated Bulgarian translation by Alexander Shopov <ash@contact.bg>
2007-02-17  Alexander Shopov  <ash@contact.bg>

	* bg.po: Updated Bulgarian translation by
	Alexander Shopov <ash@contact.bg>

svn path=/branches/gtk-2-10/; revision=17322
2007-02-17 20:54:19 +00:00
Alexander Shopov f6994f580f Updated Bulgarian translation by Alexander Shopov <ash@contact.bg>
2007-02-17  Alexander Shopov  <ash@contact.bg>

	* bg.po: Updated Bulgarian translation by
	Alexander Shopov <ash@contact.bg>

svn path=/branches/gtk-2-10/; revision=17319
2007-02-17 20:49:34 +00:00
Changwoo Ryu 0d2265cba8 Updated Korean translation.
2007-02-17  Changwoo Ryu  <cwryu@debian.org>

	* ko.po: Updated Korean translation.

svn path=/branches/gtk-2-10/; revision=17318
2007-02-17 12:26:33 +00:00
Kristian Rietveld d6c817be4c Merged from trunk:
2007-02-16  Kristian Rietveld  <kris@gtk.org>

	Merged from trunk:

	* gtk/gtktreeview.c (gtk_tree_view_search_dialog_hide): send
	a focus-in event to the tree view after hiding the search dialog.
	(#356515, Rich Burridge, Peter Parente).


svn path=/branches/gtk-2-10/; revision=17315
2007-02-16 21:25:31 +00:00
Maxim V. Dziumanenko 3562b3f667 Maxim Dziumanenko <dziumanenko@gmail.com>
* Update Ukrainian translation

svn path=/branches/gtk-2-10/; revision=17311
2007-02-16 12:35:45 +00:00
Matthias Clasen 04ebc430df Fix a small leak
svn path=/branches/gtk-2-10/; revision=17309
2007-02-16 06:13:15 +00:00
Matthias Clasen 37b0d5d7c8 Plug a leak in an error path
svn path=/branches/gtk-2-10/; revision=17307
2007-02-16 05:34:27 +00:00
Matthias Clasen a498525e1a Be more careful when checking for ButtonRelease events that end implicit
2007-02-15  Matthias Clasen  <mclasen@redhat.com>

        * gdk/x11/gdmain-x11.c (_gdk_xgrab_check_button_event): Be more
        careful when checking for ButtonRelease events that end implicit
        grabs.  (#386618, Christof Krüger)



svn path=/branches/gtk-2-10/; revision=17305
2007-02-16 04:04:44 +00:00
Matthias Clasen dd83258aaf Free the lines even if there are no views. (#408018, Albert Huang)
2007-02-15  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextbtree.c (_gtk_text_btree_delete): Free the lines
        even if there are no views.  (#408018, Albert Huang)



svn path=/branches/gtk-2-10/; revision=17303
2007-02-15 20:44:28 +00:00
Cody Russell a4d9b7b14e Fix Win32 window resizing/repainting and widget flickering, backport from trunk
svn path=/branches/gtk-2-10/; revision=17300
2007-02-15 18:42:26 +00:00
Daniel Nylander c5a3348008 sv.po: Swedish translation updated
svn path=/branches/gtk-2-10/; revision=17296
2007-02-14 23:02:38 +00:00
Theppitak Karoonboonyanan f17a7840bd Updated Thai translation.
* th.po: Updated Thai translation.


svn path=/branches/gtk-2-10/; revision=17288
2007-02-11 04:47:51 +00:00
Stéphane Raimbault 32f8ec9c74 Updated French translation.
2007-02-11  Stéphane Raimbault  <stephane.raimbault@gmail.com>

	* fr.po: Updated French translation.

svn path=/branches/gtk-2-10/; revision=17287
2007-02-11 02:57:17 +00:00
Duarte Loreto 7276aa4d00 Updated Portuguese translation.
2007-02-10  Duarte Loreto <happyguy_pt@hotmail.com>

	* pt.po: Updated Portuguese translation.

svn path=/branches/gtk-2-10/; revision=17286
2007-02-10 13:34:27 +00:00
Emmanuele Bassi 62d75a2813 Backport from trunk:
2007-02-09  Emmanuele Bassi  <ebassi@gnome.org>

	Backport from trunk:

	* gtk/gtkrecentchoosermenu.c (idle_populate_func): Keep count
	of the displayed items to build the menu items mnemonic instead
	of the overall item count. (#377164)

	(idle_populate_clean_up): Append a menu item if all the items
	got filtered in the idle populate function. (#405696)

	* tests/Makefile.am:
	* tests/testrecentchoosermenu.c: Add a test for the
	GtkRecentChooserMenu widget.

svn path=/branches/gtk-2-10/; revision=17285
2007-02-10 13:23:22 +00:00
Djihed Afifi 3fac8c321f Updated Arabic Translation.
svn path=/branches/gtk-2-10/; revision=17282
2007-02-09 17:40:19 +00:00
David Lodge 4676e6558e Updated (British) English translation
svn path=/branches/gtk-2-10/; revision=17280
2007-02-09 12:29:49 +00:00
Djihed Afifi f775006557 Updated Arabic Translation.
svn path=/branches/gtk-2-10/; revision=17278
2007-02-08 20:14:17 +00:00
Chris Wilson 53ac6707b2 Set the GError if the image is zero length. (#405327)
2007-02-07  Chris Wilson  <chris@chris-wilson.co.uk>

	* io-jpeg.c: (gdk_pixbuf__jpeg_image_load),
	(gdk_pixbuf__jpeg_image_load_increment): Set the GError
	if the image is zero length. (#405327)


svn path=/branches/gtk-2-10/; revision=17273
2007-02-07 14:50:39 +00:00
Theppitak Karoonboonyanan 05dbf5cabe Updated Thai translation by Neutron Soutmun <neo.neutron@gmail.com>.
* th.po: Updated Thai translation by
	Neutron Soutmun <neo.neutron@gmail.com>.


svn path=/branches/gtk-2-10/; revision=17271
2007-02-06 15:55:54 +00:00
Matthias Clasen 52cf72f132 Protect against stop_load begin broken. (#403255, Lucas Mazzardo Veloso)
2007-02-06  Matthias Clasen  <mclasen@redhat.com>

        * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Protect
        against stop_load begin broken.  (#403255, Lucas Mazzardo Veloso)

`

svn path=/branches/gtk-2-10/; revision=17268
2007-02-06 14:05:01 +00:00
Michael Natterer d01f466ee0 Merge from trunk:
2007-02-05  Michael Natterer  <mitch@imendio.com>

	Merge from trunk:

	* gtk/gtktextbuffer.h (enum GtkTextBufferTargetInfo): changed
	values from G_MAXUINT-0, -1, -2 to -1, -2, -3 so we stay within
	ansi C enum value limits. Fixes bug #46757.


svn path=/branches/gtk-2-10/; revision=17261
2007-02-05 10:37:04 +00:00
Tor Lillqvist bfc9c99ce0 Nitpick, define BITMAPV5HEADER also for w32api < 3.x. Not that I know
if gdk/win32 will compile with such an old beast.


svn path=/branches/gtk-2-10/; revision=17257
2007-02-04 00:31:20 +00:00
Tor Lillqvist 2c35024fd8 Don't define BITMAPV5HEADER on mingw with w32api >= 3.8, which has it in
2007-02-04  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkcursor-win32.c: Don't define BITMAPV5HEADER on
	mingw with w32api >= 3.8, which has it in wingdi.h. (#403896)


svn path=/branches/gtk-2-10/; revision=17255
2007-02-04 00:17:30 +00:00
Changwoo Ryu 11b9d1bab3 Updated Korean translation.
2007-02-04  Changwoo Ryu  <cwryu@debian.org>

	* ko.po: Updated Korean translation.

svn path=/branches/gtk-2-10/; revision=17254
2007-02-03 19:43:20 +00:00
Changwoo Ryu 8599aa445b Updated Korean translation.
2007-02-04  Changwoo Ryu  <cwryu@debian.org>

	* ko.po: Updated Korean translation.

svn path=/branches/gtk-2-10/; revision=17253
2007-02-03 19:36:40 +00:00
Mariano Suárez-Alvarez 2ddd4fc58c be a little more helpful with the docs on GtkCellRendererText:alignment.
2007-02-02  Mariano Suárez-Alvarez  <mariano@gnome.org>

	* gtk/gtkcellrenderertext.c(gtk_cell_renderer_text_class_init):
	be a little more helpful with the docs on GtkCellRendererText:alignment.
	Bug #403409.



svn path=/branches/gtk-2-10/; revision=17249
2007-02-02 03:47:19 +00:00
Duarte Loreto c6c190dcb9 Updated Portuguese translation.
2007-01-31  Duarte Loreto <happyguy_pt@hotmail.com>

	* pt.po: Updated Portuguese translation.

svn path=/branches/gtk-2-10/; revision=17245
2007-01-31 22:17:40 +00:00
Duarte Loreto de3255d09b Updated Portuguese translation.
2007-01-31  Duarte Loreto <happyguy_pt@hotmail.com>

	* pt.po: Updated Portuguese translation.

svn path=/branches/gtk-2-10/; revision=17244
2007-01-31 22:08:37 +00:00
Christian Persch 57a0ed7747 Hide the Credits button iff there are no credits to show. Bug #402806.
2007-01-31  Christian Persch  <chpe@svn.gnome.org>

	* gtk/gtkaboutdialog.c: (update_credits_button_visibility),
	(gtk_about_dialog_set_authors), (gtk_about_dialog_set_documenters),
	(gtk_about_dialog_set_artists),
	(gtk_about_dialog_set_translator_credits): Hide the Credits button iff
	there are no credits to show. Bug #402806.

svn path=/branches/gtk-2-10/; revision=17243
2007-01-31 18:41:21 +00:00
Tor Lillqvist 6cfd2ff7a3 New debugging function. (_gdk_input_wintab_init_check): Call it when
2007-01-31  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkinput-win32.c (print_cursor): New debugging
	function.
	(_gdk_input_wintab_init_check): Call it when debugging output is
	requested.
	(_gdk_input_wintab_init_check): Skip duplicated cursors for Wacom
	tablets. The Wacom driver reports duplicated cursors with
	physid==0. Fix verified by Robert *gren. (Sorry, should be
	U+00D6 there, but svn won't let me use UTF-8 in the commit
	log.)


svn path=/branches/gtk-2-10/; revision=17240
2007-01-30 23:21:42 +00:00
Felix Riemann e5f8b58d7b Fix leaked string. Fixes bug #402565.
2007-01-30  Felix Riemann  <friemann@svn.gnome.org>

	* modules/printbackends/file/gtkprintbackendfile.c:
	(file_printer_get_options): Fix leaked string. Fixes bug #402565.

svn path=/branches/gtk-2-10/; revision=17239
2007-01-30 20:21:37 +00:00
Matthias Clasen 3eaf016542 Be more careful about toplevel possibly being NULL. (#402453, Sebastian
2007-01-30  Matthias Clasen  <mclasen@redhat.com>

        * gdk/x11/gdkwindow-x11.c (gdk_x11_window_move_to_current_desktop):
        (gdk_x11_window_set_user_time): Be more careful about toplevel
        possibly being NULL.  (#402453, Sebastian Bacher)



svn path=/branches/gtk-2-10/; revision=17237
2007-01-30 18:39:01 +00:00
Takeshi AIHANA 108eaec8d7 Updated Japanese translation.
2007-01-27  Takeshi AIHANA <takeshi.aihana@gmail.com>

        * ja.po: Updated Japanese translation.

svn path=/branches/gtk-2-10/; revision=17226
2007-01-27 07:27:33 +00:00
Takeshi AIHANA 611c5685c4 Updated Japanese translation.
2007-01-27  Takeshi AIHANA <takeshi.aihana@gmail.com>

        * ja.po: Updated Japanese translation.

svn path=/branches/gtk-2-10/; revision=17225
2007-01-27 07:24:24 +00:00
Michael Natterer 2d9037d442 Merge from trunk:
2007-01-26  Michael Natterer  <mitch@imendio.com>

	Merge from trunk:

	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize):
	destroy the XIM only if it exists. While the code does look safe
	in general, there can be corner cases where the "reconnecting"
	boolean being FALSE does not correspond to the XIM being
	allocated (fixes #329450, fix taken from maemo-gtk).


svn path=/branches/gtk-2-10/; revision=17220
2007-01-26 23:59:14 +00:00
Matthias Clasen a37a18b1c9 Reduce locking overhead by not repeatedly getting the paintable iface.
2007-01-25  Matthias Clasen  <mclasen@redhat.com>

        * gdk/gdkwindow.c: Reduce locking overhead by not repeatedly getting
        the paintable iface.

2

svn path=/branches/gtk-2-10/; revision=17214
2007-01-25 14:55:11 +00:00
Michael Natterer 04b78248e9 Merge from trunk:
2007-01-24  Michael Natterer  <mitch@imendio.com>

	Merge from trunk:

	* gtk/gtkwidget.c (gtk_widget_set_state): revert generic disabling
	of PRELIGHT state for the reasons given in bug #135666. Widget
	states are sometimes abused or otherwise used wrongly for historic
	reasons, causing this part of the patch to break e.g. menu items.


svn path=/branches/gtk-2-10/; revision=17212
2007-01-24 16:16:05 +00:00
Roozbeh Pournader 6150cebb6c Remove mention of no-longer-existing PATCH keyword in bugzilla. (#396899)
2007-01-24  Roozbeh Pournader  <roozbeh@farsiweb.info>

	* README: Remove mention of no-longer-existing PATCH
	keyword in bugzilla. (#396899)

svn path=/branches/gtk-2-10/; revision=17210
2007-01-24 13:46:51 +00:00
Kjartan Maraas d439452e11 Revert the tilde patch I commited a while ago since it apparently doesn't
2007-01-24  Kjartan Maraas  <kmaraas@gnome.org>

	* gtk/gtkfilesystemunix.c: (expand_tilde):
	Revert the tilde patch I commited a while ago since it
	apparently doesn't work with later releases of gtk+ anyway.

svn path=/branches/gtk-2-10/; revision=17208
2007-01-24 08:35:29 +00:00
Carlos Garcia Campos a34b0ee3f2 Fix memory leak. Fixes bug #399907.
2007-01-23  Carlos Garcia Campos  <carlosgc@gnome.org>
	* gtk/gtkpagesetup.c
	(gtk_page_setup_set_paper_size_and_default_margins): Fix memory leak.
	Fixes bug #399907.

svn path=/branches/gtk-2-10/; revision=17207
2007-01-23 21:28:51 +00:00
Stéphane Raimbault facec3427c Updated French translation by Robert-André Mauchin and Stéphane
2007-01-23  Stéphane Raimbault  <stephane.raimbault@gmail.com>
        
        * po/fr.po: Updated French translation by Robert-André Mauchin
          and Stéphane Raimbault.

        * po-properties/fr.po: Updated French translation by
          Robert-André Mauchin.

svn path=/branches/gtk-2-10/; revision=17205
2007-01-23 19:57:47 +00:00
Murray Cumming 921d8fb377 gtk_tree_path_next(): Add a note to the documentation about the changed
2007-01-23  Murray Cumming  <murrayc@murrayc.com>

        * gtk/gtktreemodel.c: gtk_tree_path_next(): 
        Add a note to the documentation about the changed path being only a 
        path to a potential node, so you must check that it really exists.

svn path=/branches/gtk-2-10/; revision=17204
2007-01-23 14:55:30 +00:00
Matthias Clasen 2cf08cd118 Bump version
svn path=/branches/gtk-2-10/; revision=17202
2007-01-22 18:09:52 +00:00
Matthias Clasen ec0859064a 2.10.9
svn path=/branches/gtk-2-10/; revision=17200
2007-01-22 18:06:31 +00:00
Matthias Clasen d1ea7509d7 Fix error reporting in the gif loader
svn path=/branches/gtk-2-10/; revision=17198
2007-01-21 17:28:20 +00:00
Kjartan Maraas a897a5ec9a Updated Norwegian bokmål translation.
2007-01-20  Kjartan Maraas  <kmaraas@gnome.org>

	* nb.po: Updated Norwegian bokmål translation.

svn path=/branches/gtk-2-10/; revision=17196
2007-01-20 10:33:42 +00:00
Matthias Clasen e8629591a7 Fix build breakage
svn path=/branches/gtk-2-10/; revision=17194
2007-01-19 15:30:14 +00:00
Matthias Clasen 6e2e3329e6 Fix problems with the initial focus in GtkCalendar. (#397783, Vincent
2007-01-18  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkcalendar.c: Fix problems with the initial
        focus in GtkCalendar.  (#397783, Vincent Untz)



svn path=/branches/gtk-2-10/; revision=17191
2007-01-19 03:55:54 +00:00
Robert Oegren f74856bfdc Fix for bug #143460 - missed tablet clicks on Windows
2007-01-19  Robert Oegren  <gtk@roboros.com>

	Fix for bug #143460 - missed tablet clicks on Windows

	* gdk/win32/gdkinput-win32.c (_gdk_input_wintab_init_check):
	Request absolute reporting of tablet button state, and cut down
	the packet queue size a bit.
	(_gdk_input_other_event): Change button state handling
	accordingly. Also drop the no longer necessary code that detects
	missed clicks/releases for button 1. The switch to absolute button
	state should prevent missed events for all buttons. Additionally,
	swap button 2 and 3.
	(_gdk_input_grab_pointer): Don't reset button_state, that will only
	cause a new press event as soon as the next tablet packet arrives.


svn path=/branches/gtk-2-10/; revision=17189
2007-01-19 02:49:41 +00:00
Tor Lillqvist e483a177d3 gdk-pixbuf/Makefile.am gdk/Makefile.am gdk/win32/Makefile.am Fixes for
2007-01-18  Tor Lillqvist  <tml@novell.com>

	* gdk-pixbuf/Makefile.am
	* gdk/Makefile.am
	* gdk/win32/Makefile.am
	* gtk/Makefile.am: Fixes for building outside srcdir on
	Win32. (#336819, #340113) Drop distributing the handmade .la
	libtool wrappers for the wntab32x and ie55uid libraries. It's too
	much trouble making them work when building outside srcdir. Just
	link to these libraries direcly using -Wl,libfoo.a.


svn path=/branches/gtk-2-10/; revision=17184
2007-01-18 23:07:06 +00:00
Matthias Clasen 8b7373c303 Fix a typo
svn path=/branches/gtk-2-10/; revision=17181
2007-01-17 18:22:03 +00:00
Michael Natterer 121d21ee15 Patch taken from maemo-gtk (merged from trunk):
2007-01-17  Michael Natterer  <mitch@imendio.com>

	Patch taken from maemo-gtk (merged from trunk):

	* io-png.c (png_text_to_pixbuf_option): don't call g_convert() on
	ASCII strings.

	(png_info_callback): set an error when the size_func would scale
	the pixbuf away completely.


svn path=/branches/gtk-2-10/; revision=17180
2007-01-17 14:12:40 +00:00
Tor Lillqvist cacff6dc34 Typos.
svn path=/branches/gtk-2-10/; revision=17178
2007-01-17 13:16:18 +00:00
Matthias Clasen ea5acc6289 fix the build
svn path=/branches/gtk-2-10/; revision=17176
2007-01-17 13:14:57 +00:00
Tor Lillqvist 9c72102e37 Include also the COPYING file.
2007-01-17  Tor Lillqvist  <tml@novell.com>

	* gtk-zip.sh.in: Include also the COPYING file.


svn path=/branches/gtk-2-10/; revision=17173
2007-01-17 13:09:46 +00:00
Emmanuele Bassi 00a92312e2 Fix a wrong free() call. (Thanks to Thomas Wood for catching that)
2007-01-17  Emmanuele Bassi  <ebassi@gnome.org>

	* gtk/gtkrecentchoosermenu.c: Fix a wrong free() call. (Thanks
	to Thomas Wood for catching that)

svn path=/branches/gtk-2-10/; revision=17172
2007-01-17 12:30:18 +00:00
Matthias Clasen d5bdb44d81 Don't use httpGetFd() when building against cups 1.1
2007-01-17  Matthias Clasen  <mclasen@redhat.com>

        * modules/printbackends/cups/gtkprintbackendcups.c: Don't use
        httpGetFd() when building against cups 1.1



svn path=/branches/gtk-2-10/; revision=17171
2007-01-17 06:12:19 +00:00
Matthias Clasen f9639990ee 2.10.8
svn path=/branches/gtk-2-10/; revision=17169
2007-01-17 05:07:19 +00:00
Matthias Clasen b50b2ecfd3 2.10.8
svn path=/branches/gtk-2-10/; revision=17167
2007-01-17 05:02:33 +00:00
Matthias Clasen 11c47c1ece updates
svn path=/branches/gtk-2-10/; revision=17166
2007-01-17 04:33:32 +00:00
Matthias Clasen a439b755f5 Fix memory leaks in the error case
svn path=/branches/gtk-2-10/; revision=17164
2007-01-17 04:21:35 +00:00
Tor Lillqvist 4759035f4a Merge from trunk, for discussion see #396175:
2007-01-17  Tor Lillqvist  <tml@novell.com>

	Merge from trunk, for discussion see #396175:

	* gtk/gtkimmodule.c: Do the prefix corrections always on Win32,
	not just when GTK_LIBDIR is defined. i.e., until now they were
	done only in the autoconfiscated gcc builds. Hans needs to make
	sure GTK_LIBDIR and GTK_LOCALEDIR are defined also in MSVC builds
	now.
	(correct_localedir_prefix): New function, like
	correct_libdir_prefix(), but for GTK_LOCALEDIR, in case
	GTK_LOCALEDIR is not a descendant of GTK_LIBDIR.
	(gtk_im_module_initialize): Thus call correct_localedir_prefix()
	on the domain_dirname instead of correct_libdir_prefix().
	(_gtk_im_module_list): Call correct_localedir_prefix() on
	simple_context_info.domain_dirname.


svn path=/branches/gtk-2-10/; revision=17162
2007-01-17 01:24:47 +00:00
Matthias Clasen f44e1fa81c Queue a redraw when the grab changes. (#396470, Benjamin Berg)
2007-01-16  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkrange.c (range_grab_remove): Queue a redraw when the
        grab changes.  (#396470, Benjamin Berg)



svn path=/branches/gtk-2-10/; revision=17160
2007-01-16 14:19:04 +00:00
Matic Žgur 20922e75a9 Updated Slovenian translation.
svn path=/branches/gtk-2-10/; revision=17158
2007-01-16 10:51:28 +00:00
Emmanuele Bassi 1d1122b357 Backport from trunk.
2007-01-15  Emmanuele Bassi  <ebassi@gnome.org>

	Backport from trunk.

	* gtk/gtkrecentchoosermenu.c: Ellipsize the menu items label
	if they grow too much. (#357303)

svn path=/branches/gtk-2-10/; revision=17157
2007-01-15 13:09:58 +00:00
Yair Hershkovitz dc3fefed7c updated hebrew translation
svn path=/branches/gtk-2-10/; revision=17155
2007-01-15 08:43:33 +00:00
Matthias Clasen b70226dc94 When finding a matching non-scalable dir, keep going and look for a closer
2007-01-14  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkicontheme.c (theme_lookup_icon): When finding a matching
        non-scalable dir, keep going and look for a closer match.
        (#395830, Luca Ferretti)


svn path=/branches/gtk-2-10/; revision=17154
2007-01-15 02:58:13 +00:00
Alexander Shopov 4e64cf615c Updated Bulgarian translation by Alexander Shopov <ash@contact.bg>
2007-01-14  Alexander Shopov  <ash@contact.bg>

	* bg.po: Updated Bulgarian translation by
	Alexander Shopov <ash@contact.bg>

svn path=/branches/gtk-2-10/; revision=17151
2007-01-14 17:50:06 +00:00
Hans Breuer 547e0cbf48 Merge from trunk:
2007-01-14  Hans Breuer <hans@breuer.org>

	Merge from trunk:

	* gtk/gtktreeview.c : use g_snprintf instead of snprintf, which is
	not available everywhere

	* gtk/makefile.msc.in : updated


svn path=/branches/gtk-2-10/; revision=17150
2007-01-14 17:42:48 +00:00
Matthias Clasen 444380a570 Don't crash if menu or toolbar positions can't be found. (#396161, Hans
2007-01-13  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkuimanager.c: Don't crash if menu or toolbar
        positions can't be found.  (#396161, Hans Breuer)



svn path=/branches/gtk-2-10/; revision=17148
2007-01-14 05:33:41 +00:00
Matthias Clasen 171afc0d5c Plug memory leaks. (#396160, Carlos Garcia Campos)
2007-01-13  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkselection.c (_gtk_selection_request): Plug
        memory leaks.  (#396160, Carlos Garcia Campos)



svn path=/branches/gtk-2-10/; revision=17146
2007-01-14 05:17:09 +00:00
Matthias Clasen 23d0867f6c Link libgtk against Xfixes. (#396074, Tommi Komulainen)
2007-01-13  Matthias Clasen  <mclasen@redhat.com>

        * configure.in: Link libgtk against Xfixes.  (#396074,
        Tommi Komulainen)



svn path=/branches/gtk-2-10/; revision=17144
2007-01-14 05:02:56 +00:00
Matthias Clasen abe3d3f8a6 Avoid a compiler warning. (#395045, Chris Wilson)
2007-01-13  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkradiobutton.c (gtk_radio_button_focus): Avoid
        a compiler warning.  (#395045, Chris Wilson)



svn path=/branches/gtk-2-10/; revision=17142
2007-01-14 04:33:53 +00:00
Hans Breuer b577576981 Merge from trunk:
2007-01-13  Hans Breuer <hans@breuer.org>

	Merge from trunk:

	* gtk/gtkprintoperation-win32.c : take the custom tab label from
	gtk_print_operation_set_custom_tab_label() into account (bug #390746).

svn path=/branches/gtk-2-10/; revision=17140
2007-01-13 22:29:05 +00:00
Pascal Terjan 04f49bb8b1 Merge from trunk:
2007-01-13  Pascal Terjan  <pterjan@linuxfr.org>

	Merge from trunk:

	* gtk/gtknotebook.c (gtk_notebook_draw_focus): fix crasher if
	cur_page is NULL (bug #395326).


svn path=/branches/gtk-2-10/; revision=17138
2007-01-13 21:53:56 +00:00
Žygimantas Beručka bffd3ede71 Updated Lithuanian translation.
svn path=/branches/gtk-2-10/; revision=17136
2007-01-13 20:51:19 +00:00
Michael Natterer 057fd6e8bd Merge from trunk:
2007-01-12  Michael Natterer  <mitch@imendio.com>

	Merge from trunk:

	* gtk/gtkentry.c (gtk_entry_button_press): don't add
	entry->scroll_offset to entry->drag_start_y. Fixes the entry
	starting drags after ridiculously small mouse movements.


svn path=/branches/gtk-2-10/; revision=17135
2007-01-12 11:59:43 +00:00
Richard Hult ae710a1c6f Close the file after it's loaded (bug #395316).
2007-01-11  Richard Hult  <richard@imendio.com>

	* demos/gtk-demo/main.c: (load_file): Close the file after it's
	loaded (bug #395316).

svn path=/branches/gtk-2-10/; revision=17133
2007-01-11 14:28:51 +00:00
Kjartan Maraas 01a4cc3a06 Merge fix for making tilde go to $HOME in the location entry. Patch from
2007-01-11  Kjartan Maraas  <kmaraas@gnome.org>

	* gtk/gtkfilesystemunix.c: (expand_tilde): Merge fix
	for making tilde go to $HOME in the location entry.
	Patch from Yevgen Muntyan. Closes bug #334168.

svn path=/branches/gtk-2-10/; revision=17131
2007-01-11 00:55:43 +00:00
Kristian Rietveld e82ff9da5e refactor to initialize indicator_size to TOGGLE_WIDTH instead of the
2007-01-10  Kristian Rietveld  <kris@imendio.com>

	* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_init):
	refactor to initialize indicator_size to TOGGLE_WIDTH instead
	of the hardcoded value of 12.


svn path=/branches/gtk-2-10/; revision=17127
2007-01-10 17:31:22 +00:00
Matthias Clasen 15f27ded85 Fix the directfb cairo test. (#394855, Josselin Mouette)
2007-01-09  Matthias Clasen  <mclasen@redhat.com>

        * configure.in: Fix the directfb cairo test. (#394855,
        Josselin Mouette)



svn path=/branches/gtk-2-10/; revision=17126
2007-01-10 04:53:13 +00:00
Peter Teichman 2a082fb952 Merge from trunk.
* gtk/gtkfilechooserdefault.c:
* gtk/gtkfilechoosersettings.c:
* gtk/gtkfilechoosersettings.h:
Save the expanded state of the folder browser with the file
chooser settings.  Resolves the expander portions of (#153828,
Lemmit Kaplinski)

svn path=/branches/gtk-2-10/; revision=17122
2007-01-08 18:36:03 +00:00
Emmanuele Bassi a156d5382d Don't leak the icon pixbuf after setting it to the image menu item. Found
2007-01-08  Emmanuele Bassi  <ebassi@gnome.org>

	* gtk/gtkrecentchoosermenu.c (gtk_recent_chooser_menu_create_item):
	Don't leak the icon pixbuf after setting it to the image menu
	item.  Found by Paolo Borelli.

svn path=/branches/gtk-2-10/; revision=17120
2007-01-08 16:54:03 +00:00
Matthias Clasen 2d29a81ba1 Don't corrupt memory when faced with paths with ridiculously large
2007-01-08  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktreemodel.c (gtk_tree_path_to_string): Don't
        corrupt memory when faced with paths with ridiculously
        large indices. Found by the GTKVTS test suite.



svn path=/branches/gtk-2-10/; revision=17117
2007-01-08 15:08:47 +00:00
Matthias Clasen 41fb504bc1 Set default_display_opened before loading modules. (#393102, Brian
2007-01-08  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkmodules.c (_gtk_modules_init): Set
        default_display_opened before loading modules.  (#393102,
        Brian Cameron)
 

svn path=/branches/gtk-2-10/; revision=17115
2007-01-08 13:09:14 +00:00
Matthias Clasen e232d48a0e Don't return "" as match. (fd.o #9544, Yevgen Muntyan)
2007-01-07  Matthias Clasen  <mclasen@redhat.com>

	* xdgmimecache.c (cache_glob_node_lookup_suffix): Don't return "" 
	as match.  (fd.o #9544, Yevgen Muntyan)


svn path=/branches/gtk-2-10/; revision=17113
2007-01-08 04:23:19 +00:00
Matthias Clasen 1dda45b32b Fix several problems with this function. (fd.o #9560, Yevgen Muntyan)
2007-01-07  Matthias Clasen  <mclasen@redhat.com>

        * xdgmimecache.c (_xdg_mime_cache_list_mime_parents): Fix
        several problems with this function.  (fd.o #9560, Yevgen Muntyan)



svn path=/branches/gtk-2-10/; revision=17111
2007-01-08 03:41:23 +00:00
Matthias Clasen 3dadbc2b53 Correct the include for GdkPixdata. (#394000, Samuel Cormier-Iijima)
2007-01-07  Matthias Clasen  <mclasen@redhat.com>

        * gdk-pixbuf/gdk-pixbuf-sections.txt: Correct the include
        for GdkPixdata.  (#394000, Samuel Cormier-Iijima)



svn path=/branches/gtk-2-10/; revision=17109
2007-01-07 20:06:36 +00:00
Amanpreet Singh Alam b6f03ebf58 updatingfor bug 355790 by alam
svn path=/branches/gtk-2-10/; revision=17106
2007-01-07 15:58:10 +00:00
Guntupalli Karunakar 3981c32c50 Removed junk lines in header
svn path=/branches/gtk-2-10/; revision=17105
2007-01-07 13:22:37 +00:00
Matthias Clasen 14c5ed07c0 Call text_window_realize() with the correct parameters. (#393813, Yevgen
2007-01-07  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_set_border_window_size):
        Call text_window_realize() with the correct parameters.
        (#393813, Yevgen Muntyan)



svn path=/branches/gtk-2-10/; revision=17102
2007-01-07 07:21:02 +00:00
Matthias Clasen 6185460f07 Left-align menu labels. (#393255, Michail Crayson)
2007-01-05  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtknotebook.c (gtk_notebook_set_menu_label_text): Left-align
        menu labels.  (#393255, Michail Crayson)



svn path=/branches/gtk-2-10/; revision=17097
2007-01-06 03:13:28 +00:00
Tor Lillqvist 9c052181ad New file. Downloaded from freedesktop.org's webcvs. Slighly edited cursors
2007-01-06  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/cursor.bdf: New file. Downloaded from
	freedesktop.org's webcvs. Slighly edited cursors "crosshair",
	"diamond_cross", "draft_large", "gobbler" and "target" to fix
	#392504. It is possible that the same end result could have been
	achieved by tweaking bdfcursor.c instead.
	
	* gdk/win32/bdfcursor.c: Add optional debugging output.

	* gdk/win32/xcursors.h: Regenerated.


svn path=/branches/gtk-2-10/; revision=17094
2007-01-06 03:01:09 +00:00
Kristian Rietveld a2dcca137d Merge from HEAD.
2007-01-05  Kristian Rietveld  <kris@gtk.org>

	Merge from HEAD.

	* gtk/gtktreeview.c (gtk_tree_view_row_changed): do allow to
	invalidate nodes if the tree view is not realized. (#363147,
	Carlos Garnacho, Miguel Cabrera).


svn path=/branches/gtk-2-10/; revision=17090
2007-01-05 21:37:41 +00:00
Matthias Clasen bc938df68d Bump version
svn path=/branches/gtk-2-10/; revision=17088
2007-01-05 20:51:34 +00:00
Matthias Clasen eb5e19ee6e 2.10.7
svn path=/branches/gtk-2-10/; revision=17086
2007-01-05 20:46:07 +00:00
Matthias Clasen 6dfbc8d8a8 Take the scroll arrow into account when drawing the background. (#393166,
2007-01-05  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkmenu.c (gtk_menu_paint): Take the scroll arrow into
        account when drawing the background.  (#393166, Benjamin Berg)



svn path=/branches/gtk-2-10/; revision=17085
2007-01-05 18:25:56 +00:00
Behdad Esfahbod a67a600ef0 Fix broken width computation, again.
2007-01-05  Behdad Esfahbod  <behdad@gnome.org>

        * gtk/gtklabel.c (get_layout_location): Fix broken width computation, 
        again.


svn path=/branches/gtk-2-10/; revision=17082
2007-01-05 18:01:52 +00:00
Carlos Garnacho d36f24694e take into account both scroll arrows when calculating size request in
2007-01-05  Carlos Garnacho  <carlosg@gnome.org>

        * gtk/gtknotebook.c (gtk_notebook_size_request): take into account
        both scroll arrows when calculating size request in GTK_POS_LEFT or
        GTK_POS_RIGHT notebooks. (#393124, reported by Christian Persch)


svn path=/branches/gtk-2-10/; revision=17081
2007-01-05 17:31:12 +00:00
Michael Natterer 01ec5c12f4 Merged from HEAD:
2007-01-05  Michael Natterer  <mitch@imendio.com>

	Merged from HEAD:

	* gtk/gtkwindow.c (gtk_window_key_release_event): chain up to
	the right function (fix taken from maemo-gtk).


svn path=/branches/gtk-2-10/; revision=17079
2007-01-05 14:09:00 +00:00
Behdad Esfahbod 454a02e23c Avoid overflow when converting coordinates to Pango units. (#332266, Jody
2007-01-05  Behdad Esfahbod  <behdad@gnome.org>

        * gdk/gdkprivate.h:
        * gdk/gdkpango.c (gdk_draw_layout_line_with_colors),
        (gdk_draw_layout_with_colors):
        * gdk/gdkwindow.c (gdk_window_draw_glyphs_transformed):
        Avoid overflow when converting coordinates to Pango units. (#332266,
        Jody Goldberg)


svn path=/branches/gtk-2-10/; revision=17076
2007-01-05 06:28:00 +00:00
Matthias Clasen 33392c7cea move set_cursor after realization of the popup window, so clamp node
2007-01-04  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkcombobox.c (gtk_combo_box_popup): move set_cursor
        after realization of the popup window, so clamp node doesn't fail.
        (#346616, Tommi Komulainen, patch by Kristian Rietveld).



svn path=/branches/gtk-2-10/; revision=17074
2007-01-05 05:42:54 +00:00
Gustavo Noronha Silva c4fc34bcac Translation updated by Leonardo Ferreira Fontenelle
bug #357134

svn path=/branches/gtk-2-10/; revision=17072
2007-01-04 21:33:26 +00:00
Behdad Esfahbod 9991283b01 Fix uninitialized width variable.
2007-01-04  Behdad Esfahbod  <behdad@gnome.org>

        * gtk/gtklabel.c (get_layout_location): Fix uninitialized width
        variable.


svn path=/branches/gtk-2-10/; revision=17070
2007-01-04 16:26:42 +00:00
Matthias Clasen 163af5fdd8 Cross-compilation fixes. (#392646, Yevgen Muntyan)
2007-01-04  Matthias Clasen  <mclasen@redhat.com>

        * gtk/Makefile.am:
        * gdk-pixbuf/Makefile.am:
        * configure.in:
        * gdk/win32/rc/gdk.rc.in: Cross-compilation fixes.
        (#392646, Yevgen Muntyan)



svn path=/branches/gtk-2-10/; revision=17068
2007-01-04 15:08:54 +00:00
Matthias Clasen 07ed18bf49 Fix some compiler warnings.
2007-01-04  Matthias Clasen  <mclasen@redhat.com>

        * demos/gtk-demo/textscroll.c:
        * gtk/gtkiconview.c:
        * gtk/gtkicontheme.c:
        * gtk/gtkhandlebox.c:
        * gtk/gtkfilechooserentry.c:
        * gtk/gtkentrycompletion.c:
        * gtk/gtkcolorsel.c: Fix some compiler warnings.



svn path=/branches/gtk-2-10/; revision=17064
2007-01-04 14:48:03 +00:00
Matthias Clasen 50cccdc0b8 Fix a compiler warning
svn path=/branches/gtk-2-10/; revision=17060
2007-01-04 14:16:49 +00:00
Clytie Siddall 44a6f7a773 vi.po: Updated Vietnamese translation.
svn path=/branches/gtk-2-10/; revision=17059
2007-01-04 12:02:03 +00:00
Clytie Siddall 4da9a3541c vi.po: Updated Vietnamese translation.
svn path=/branches/gtk-2-10/; revision=17058
2007-01-04 12:01:26 +00:00
Clytie Siddall 6487005fd5 Updated Vietnamese translation.
2007-01-04  Clytie Siddall <clytie@riverland.net.au>

	* vi.po: Updated Vietnamese translation.



svn path=/branches/gtk-2-10/; revision=17057
2007-01-04 11:48:46 +00:00
Clytie Siddall 1a0630d654 Updated Vietnamese translation.
2007-01-04  Clytie Siddall <clytie@riverland.net.au>

	* vi.po: Updated Vietnamese translation.


svn path=/branches/gtk-2-10/; revision=17056
2007-01-04 11:48:29 +00:00
Matthias Clasen 9c777969a0 Updates
svn path=/branches/gtk-2-10/; revision=17055
2007-01-04 06:21:39 +00:00
Matthias Clasen b34b9470a4 Fix #332604, reported by Joe Wreschnig, patch by Jan Arne Petersen and
2007-01-03  Matthias Clasen  <mclasen@redhat.com>

        Fix #332604, reported by Joe Wreschnig, patch
        by Jan Arne Petersen and Behdad Esfahbod.

        * gtk/gtklabel.c (gtk_label_size_allocate): Only
        set the width of the layout when necessary.
        (get_layout_location): Use pango_layout_get_pixel_extents()
        instead of pango_layout_get_width().



svn path=/branches/gtk-2-10/; revision=17053
2007-01-04 05:59:31 +00:00
Matthias Clasen 33b805ba1d Fix another memleak
svn path=/branches/gtk-2-10/; revision=17051
2007-01-04 05:10:14 +00:00
Matthias Clasen dd983a4f17 Fix another leak
svn path=/branches/gtk-2-10/; revision=17049
2007-01-04 04:50:56 +00:00
Matthias Clasen 100e652711 Exit early if we can't get file info - this happens if the iter points to
2007-01-03  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkfilechooserdefault.c (update_chooser_entry):
        Exit early if we can't get file info - this happens
        if the iter points to the row where we are editing
        the name for a newly created folder.  (#392191, Michael
        Partridge, patch by Kristian Rietveld)



svn path=/branches/gtk-2-10/; revision=17047
2007-01-04 01:46:22 +00:00
Matthias Clasen 61fa8ee0c7 Apply a patch by Chris Wilson to avoid spurious valgrind warnings from
2007-01-03  Matthias Clasen  <mclasen@redhat.com>

        * gtk/*.c:
        * gdk/x11/*.c: Apply a patch by Chris Wilson to
        avoid spurious valgrind warnings from XSendEvent()
        calls.  (#392532)



svn path=/branches/gtk-2-10/; revision=17045
2007-01-04 01:30:07 +00:00
Matthias Clasen 19bf71f064 Close the http connection after getting the PPD.
2007-01-03  Matthias Clasen  <mclasen@redhat.com>

        * modules/printbackends/cups/gtkprintbackendcups.c: Close
        the http connection after getting the PPD.

 

svn path=/branches/gtk-2-10/; revision=17043
2007-01-04 00:13:19 +00:00
Djihed Afifi 4a2ef11414 Updated Arabic Translation.
svn path=/branches/gtk-2-10/; revision=17041
2007-01-03 22:01:52 +00:00
Matthias Clasen 5520c08fb3 Fix memory leaks.
2007-01-03  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprinteroptionwidget.c (filesave_changed_cb):
        Fix memory leaks.


svn path=/branches/gtk-2-10/; revision=17040
2007-01-03 21:25:09 +00:00
Matthias Clasen b8b207d7d1 If the current page is removed, always pick a different one. (#392457,
2007-01-03  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkassistant.c (remove_page): If the current page
        is removed, always pick a different one.  (#392457,
        Colin Watson)



svn path=/branches/gtk-2-10/; revision=17038
2007-01-03 20:52:11 +00:00
Kristian Rietveld b5796a17f5 Merged from HEAD.
2007-01-03  Kristian Rietveld  <kris@gtk.org>

	Merged from HEAD.

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_focus_out_event):
	cancel editing (ie. don't accept changes) when the entry loses
	focus. (Fixes #164494, reported by Chris Rouch).


svn path=/branches/gtk-2-10/; revision=17035
2007-01-03 19:33:57 +00:00
Matthias Clasen 989b254636 Export SED to make sourcing of libtool work. Tighten up the directfb
2007-01-03  Matthias Clasen  <mclasen@redhat.com>

        * configure.in: Export SED to make sourcing of
        libtool work. Tighten up the directfb pkgconfig check.



svn path=/branches/gtk-2-10/; revision=17034
2007-01-03 17:57:31 +00:00
Matthias Clasen 69d0f944a3 Work when the entry is not realized. (#392315, Yevgen Muntyan)
2007-01-03  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkentry.c (get_text_area_size): Work when the
        entry is not realized.  (#392315, Yevgen Muntyan)

        * gtk/gtkentry.c (gtk_entry_queue_draw): Use
        GTK_WIDGET_DRAWABLE() here.  (#392227, Chris Wilson)

        * gtk/gtkentry.c (cursor_blinks): Don't get settings
        unnecessarily.  (#392227)



svn path=/branches/gtk-2-10/; revision=17031
2007-01-03 16:17:03 +00:00
Matthias Clasen aca50fd386 Only process updates on the window at hand, not on all windows, to avoid
2007-01-02  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkwindow.c (gtk_window_move_resize): Only process
        updates on the window at hand, not on all windows, to
        avoid violating resize/redraw ordering constraints.
        (#362406, Owen Taylor)
 

svn path=/branches/gtk-2-10/; revision=17029
2007-01-03 02:45:35 +00:00
Matthias Clasen 1b1d17dcfa Updates
svn path=/branches/gtk-2-10/; revision=17025
2007-01-02 23:00:20 +00:00
Matthias Clasen c098a03e31 Try to fix #315732, reported by Luke Hutchinson:
2007-01-02  Matthias Clasen  <mclasen@redhat.com>

        Try to fix #315732, reported by Luke Hutchinson:

        * gdk/x11/xsettings-client.[hc]:
        * gdk/x11/gdkdevents-x11.c: Don't assume that ref'ing a GdkWindow
        will guarantee that it can be looked up in the xid hash later.
        Also, use the nesting server grab function during the xsettings
        client initialization. Finally, make xsettings client not
        eat DestroyNotifys so that GDK can do its regular cleanup.



svn path=/branches/gtk-2-10/; revision=17023
2007-01-02 19:25:33 +00:00
Tor Lillqvist 25ba11ac50 Fix typo.
2007-01-02  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkrecentchoosermenu.c (gtk_recent_chooser_menu_dispose):
	Fix typo.


svn path=/branches/gtk-2-10/; revision=17019
2007-01-02 15:23:37 +00:00
Matthias Clasen 3bd8ce6e16 Center in the frame. (#304482, Rob Staudinger, patch by Richard
2007-01-02  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkentry.c (get_text_area_size): Center in the frame.
        (#304482, Rob Staudinger, patch by  Richard Stellingwerff)



svn path=/branches/gtk-2-10/; revision=17016
2007-01-02 14:26:07 +00:00
Matthias Clasen 449593fe6b Only handle key bindings for scrolling if the scrollbars are visible.
2007-01-01  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkscrolledwindow.h:
        * gtk/gtkscrolledwindow.c: Only handle key bindings
        for scrolling if the scrollbars are visible.
        (#340135, Christian Persch)



svn path=/branches/gtk-2-10/; revision=17013
2007-01-02 07:12:40 +00:00
Matthias Clasen 1bd0239ef6 Remove forgotten debug spew
svn path=/branches/gtk-2-10/; revision=17010
2007-01-02 06:46:27 +00:00
Matthias Clasen d2d46af26a Only handle key bindings for tab reordering if the tabs are shown and
2007-01-01  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtknotebook.h:
        * gtk/gtknotebook.c: Only handle key bindings for
        tab reordering if the tabs are shown and reorderable.
        (#390468, Yevgen Muntyan)

        * gtk/gtkmarshalers.list: Add required marshaler



svn path=/branches/gtk-2-10/; revision=17009
2007-01-02 06:24:26 +00:00
Matthias Clasen 3fc2ebe388 Waste less time with non-directories. (#391725, Chris Wilson)
2007-01-01  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkicontheme.c (load_themes): Waste less time
        with non-directories.  (#391725, Chris Wilson)



svn path=/branches/gtk-2-10/; revision=17006
2007-01-02 04:31:41 +00:00
Matthias Clasen c10ada4a26 Fix some IPP compliance issues. (#391523, Albrecht Dress)
2007-01-01  Matthias Clasen  <mclasen@redhat.com>

        Fix some IPP compliance issues.  (#391523, Albrecht Dress)

        * modules/printbackends/cups/gtkcupsutils.c
        (gtk_cups_request_encode_option): Use IPP_TAG_JOB, not
        IPP_TAG_OPERATION.
        * modules/printbackends/cups/gtkprintbackendcups.c
        (gtk_print_backend_cups_print_stream): Don't add the
        requesting-user-name attribute a second time.



svn path=/branches/gtk-2-10/; revision=17003
2007-01-01 23:57:03 +00:00
Matthias Clasen 7f8f32df71 Fix en/em dash confusion. (#378462)
2007-01-01  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkimcontextsimple.c: Fix en/em dash confusion.  (#378462)



svn path=/branches/gtk-2-10/; revision=17001
2007-01-01 05:42:24 +00:00
Emmanuele Bassi 908b773c12 Move the signal and idle disconnections into the dispose function, as well
2006-12-31  Emmanuele Bassi  <ebassi@gnome.org>

	* gtk/gtkrecentchoosermenu.c: Move the signal and idle
	disconnections into the dispose function, as well as
	the object unrefs; reset every handler id and the
	pointers. (suggested by Paolo Borelli, #390873)

	(set_recent_manager): Use the right object when disconnecting
	from the GtkRecentManager::changed signal; save us a few
	indirections.

svn path=/branches/gtk-2-10/; revision=16998
2006-12-31 16:49:35 +00:00
Matthias Clasen d657db200d Include windows.h (#391229, Kazuki Iwamoto)
2006-12-31  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintoperation-win32.c: Include windows.h (#391229,
        Kazuki Iwamoto)



svn path=/branches/gtk-2-10/; revision=16996
2006-12-31 15:51:44 +00:00
Matthias Clasen b423e964ea Remove the scroll timeout. (#390872, Yevgen Muntyan)
2006-12-30  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_destroy): Remove the
        scroll timeout.  (#390872, Yevgen Muntyan)



svn path=/branches/gtk-2-10/; revision=16994
2006-12-31 06:02:34 +00:00
Matthias Clasen 69ee164fee Redraw assistant on reallocate to avoid rendering glitches. (#343956,
2006-12-30  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkassistant.c: Redraw assistant on reallocate
        to avoid rendering glitches.  (#343956, Christian
        Persch, Carlos Garnacho)



svn path=/branches/gtk-2-10/; revision=16991
2006-12-31 05:22:46 +00:00
Matthias Clasen 1936dc99a7 Correctly handle min size. (#320465, Philipp Langdale)
2006-12-30  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkwindow.c (gtk_window_compute_configure_request_size):
        Correctly handle min size. (#320465, Philipp Langdale)



svn path=/branches/gtk-2-10/; revision=16987
2006-12-31 01:39:53 +00:00
Matthias Clasen 9ae01e7f7d Don't install cursors on insensitive widgets. (#358864, Jan Schampera)
2006-12-30  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkentry.c:
        * gtk/gtklabel.c:
        * gtk/gtkpaned.c:
        * gtk/gtkstatusbar.c:
        * gtk/gtktextview.c: Don't install cursors on insensitive
        widgets.  (#358864, Jan Schampera)

svn path=/branches/gtk-2-10/; revision=16984
2006-12-31 00:46:35 +00:00
Matthias Clasen fa8e83c42c Don't die in an assertion if focus went missing. Just warn, clean up and
2006-12-29  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkentry.c (blink_cb):
        * gtk/gtktextview.c (blink_cb): Don't die in an assertion
        if focus went missing. Just warn, clean up and continue.
        (#374378)
2006-12-29 19:21:36 +00:00
Carlos Garnacho 4b9fdf8fcf return if the widget that originally received the event is a notebook
2006-12-29  Carlos Garnacho  <carlosg@gnome.org>

        * gtk/gtknotebook.c (gtk_notebook_scroll): return if the widget that
        originally received the event is a notebook page. (#315440, reported
        by Mateusz Stefek)
2006-12-29 19:12:51 +00:00
David Lodge f5249206c5 Updated English (British) translation
2006-12-29  David Lodge <dave@cirt.net>

	* en_GB.po: Updated English (British) translation
2006-12-29 07:04:44 +00:00
Matthias Clasen e72dd2d625 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:17:22 +00:00
Tor Lillqvist 44db12e7ca 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:35:01 +00:00
Matthias Clasen 6d2ffa0435 Close the io channel on unref. (#390159, Joe Markus Clarke)
2006-12-27  Matthias Clasen  <mclasen@redhat.com>

        * modules/printbackends/lpr/gtkprintbackendlpr.c
        (gtk_print_backend_lpr_print_stream): Close the io channel
        on unref.  (#390159, Joe Markus Clarke)
2006-12-28 04:24:30 +00:00
Tor Lillqvist db65dc6f84 Implement gtk_status_icon_position_menu() on Windows. Keep track of where
2006-12-27  Tor Lillqvist  <tml@novell.com>

	* 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)
2006-12-27 15:58:42 +00:00
Matthias Clasen 3f41594aef 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:14:39 +00:00
Matthias Clasen 42d669dced Use getters for http fields where available. (#364866, Björn Lindqvist)
2006-12-27  Matthias Clasen  <mclasen@redhat.com>

        * modules/printbackends/cups/gtkcupsutils.c:
        * modules/printbackends/cups/gtkprintbackendcups.c: Use
        getters for http fields where available.  (#364866,
        Björn Lindqvist)
2006-12-27 06:52:05 +00:00
Matthias Clasen a040aa76b8 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:44:09 +00:00
Matthias Clasen c8f7fb02e4 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:36:06 +00:00
Matthias Clasen 17e04c2d90 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:04:11 +00:00
Kristian Rietveld 53567b754e Merged from HEAD.
2006-12-26  Kristian Rietveld  <kris@gtk.org>

	Merged from HEAD.

	* 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:18:35 +00:00
Christian Persch 811bb06548 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:59:28 +00:00
Carlos Garnacho 2861291a26 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:04:05 +00:00
Carlos Garnacho e7d602a2a8 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:33:27 +00:00
Matthias Clasen 316ff42f25 Avoid spurious redraws.
2006-12-26  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkrange.c (stop_scrolling): Avoid spurious
        redraws.
2006-12-26 06:50:27 +00:00
Christian Persch bcccfb13b6 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:25 +00:00
Guntupalli Karunakar 3d3dcfb761 Fix translation bug #389296 2006-12-25 05:02:21 +00:00
Matthias Clasen 46394d0631 Improve the DND scrolling behaviour. (#92387, Carlos Garnacho Parro)
2006-12-24  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextview.c: Improve the DND scrolling
        behaviour.  (#92387, Carlos Garnacho Parro)
2006-12-25 02:54:07 +00:00
Djihed Afifi db4f2f6080 Updated Arabic Translation. 2006-12-24 17:59:18 +00:00
Bastien Nocera 6b7b50e6e0 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:51 +00:00
Carlos Garcia Campos 5e1f733d75 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:29:54 +00:00
Matthias Clasen 198d225950 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)
2006-12-24 06:33:36 +00:00
Matthias Clasen a12c1d3e1f 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:04:32 +00:00
Matthias Clasen a98ecdfb4c 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:36:29 +00:00
Matthias Clasen f58038c88f 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:15:48 +00:00
Matthias Clasen 078dcb6fe1 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)
2006-12-23 21:23:58 +00:00
Matthias Clasen 113e639550 Allow composing l with stroke. (#349638, Daniel Lublin)
* gtk/gtkimcontextsimple.c: Allow composing l with
        stroke.  (#349638, Daniel Lublin)
2006-12-23 21:09:55 +00:00
Matthias Clasen 6b494f476b 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 20:59:41 +00:00
Djihed Afifi d2c46f9c95 Updated Arabic Translation. 2006-12-23 20:30:36 +00:00
Matthias Clasen 51d3b8dce3 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:36:38 +00:00
Matthias Clasen 38056de0ae Fix some leaks. (#348108, Chris Wilson)
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        * demos/gtk-demo/*.c: Fix some leaks.  (#348108, Chris
        Wilson)
2006-12-22 22:09:26 +00:00
Matthias Clasen be9aef056c 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:19:54 +00:00
Djihed Afifi a281fbb398 Updated Arabic Translation. Translation by Ahmad Farghal and Khaled Hosny 2006-12-22 09:54:19 +00:00
Matthias Clasen d13987b8f6 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:28:13 +00:00
Matthias Clasen fc478c3bd8 Handle bmps with more than 8 bits per channel. (#172584, David Costanzo)
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        * io-bmp.c (decode_bitmasks): Handle bmps
        with more than 8 bits per channel.  (#172584,
        David Costanzo)
2006-12-22 06:16:55 +00:00
Matthias Clasen 916cc01caa Handle offsets more carefully. (#172188, David Costanzo)
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        * io-bmp.c: Handle offsets more carefully. (#172188,
        David Costanzo)

        * io-bmp.c: Handle v5 and OS/2 v2 bmps.

        * io-bmp.c: Handle alpha masks in v4 and v5 bmps.
2006-12-22 06:00:17 +00:00
Matthias Clasen 660b45b988 Emit the closed signal when closing the loader, pointed out by David
2006-12-21  Matthias Clasen  <mclasen@redhat.com>

        * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Emit
        the closed signal when closing the loader, pointed out
        by David Nečas.
2006-12-22 03:11:30 +00:00
Matthias Clasen 6a3479037a Handle invalid gif animations a little bit more robustly. (#357974,
2006-12-21  Matthias Clasen  <mclasen@redhat.com>

        * io-gif.c (gif_get_lzw): Handle invalid gif animations
        a little bit more robustly.  (#357974, Vassilis Pandis,
        patch by Felix Riemann)
2006-12-21 23:10:51 +00:00
Matthias Clasen f135f99ce0 Remove redundant size checks, and document that width, height must be > 0.
2006-12-21  Matthias Clasen  <mclasen@redhat.com>

        * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
        * gdk-pixbuf.c (gdk_pixbuf_new): Remove redundant size
        checks, and document that width, height must be > 0.
2006-12-21 20:37:44 +00:00
Matthias Clasen 67baa8188b Link against GLib. (#341158, Alexey Rusakov)
2006-12-21  Matthias Clasen  <mclasen@redhat.com>

        * Makefile.am: Link against GLib.  (#341158, Alexey Rusakov)
2006-12-21 16:59:21 +00:00
Matthias Clasen fce09ac1be Typo fix. (#388123, Murray Cumming)
2006-12-21  Matthias Clasen  <mclasen@redhat.com>

         * gtk/gtkfilechooserembed.c (_gtk_file_chooser_embed_set_delegate()):
        Typo fix.  (#388123, Murray Cumming)
2006-12-21 16:49:43 +00:00
Matthias Clasen e23b9104be Generate double-click events. (#380421, Tommi Komulainen)
* gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event):
        Generate double-click events.  (#380421, Tommi Komulainen)
2006-12-21 16:32:44 +00:00
Matthias Clasen f4c0231b44 Correct return_if_fail checks. (#379803, Tommi Komulainen)
* gdk/x1/gdkinput-xfree.c (_gdk_input_configure_event):
        (_gdk_input_enter_event): Correct return_if_fail checks.
        (#379803, Tommi Komulainen)
2006-12-21 16:27:37 +00:00
Matthias Clasen 07634150a8 Improve docs. (#353438, Mariano Suárez-Alvarez)
* gdk/gdkdisplay.c (gdk_display_beep): Improve docs.
        (#353438, Mariano Suárez-Alvarez)
2006-12-21 16:18:56 +00:00
Matthias Clasen 507f1c5620 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:17:51 +00:00
Matthias Clasen a2f2335b3c 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:55:37 +00:00
Matthias Clasen 754063e465 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:50 +00:00
Felix I 7f98725ec8 Gnome gtk+ file corrected and updated 2006-12-20 10:19:16 +00:00
Matthias Clasen 466d95138d Add a tooltip explaining the format of page ranges, and improve the page
2006-12-19  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintunixdialog.c: Add a tooltip explaining the
        format of page ranges, and improve the page sequence icon
        for the case of n_copies == 1.
2006-12-20 05:11:10 +00:00
Matthias Clasen 67b34c7a59 silence gdk_pixbuf_loader_close 2006-12-19 20:43:09 +00:00
Alessio Frusciante 5ba73b21ae Updated Italian translation. 2006-12-19 07:06:51 +00:00
Josep Puigdemont i Casamajó 5e4035595f Updated Catalan translation. 2006-12-19 06:40:26 +00:00
Amitakhya Phukan eaf86d78bb updated assamese translation 2006-12-18 06:16:01 +00:00
Adam Weinberger 3089bf69e5 Updated Canadian English translation.
2006-12-17  Adam Weinberger  <adamw@gnome.org>

	* en_CA.po: Updated Canadian English translation.
2006-12-17 19:39:40 +00:00
Gabor Kelemen 8fb2838e19 Translation updated.
2006-12-17  Gabor Kelemen  <kelemeng@gnome.hu>

	* hu.po: Translation updated.
2006-12-17 13:26:14 +00:00
Tristan Van Berkom 9492ce6045 Fixed a bug in set_property() (setting "window-placement-set" could result
* gtk/gtkscrolledwindow.c: Fixed a bug in set_property()
	(setting "window-placement-set" could result in a crash because
	of boolean/enum mixup)
2006-12-16 20:38:10 +00:00
Djihed Afifi f7a47e6f96 Updated Arabic Translation. 2006-12-15 20:59:34 +00:00
Federico Mena Quintero 741f8d21dc Don't try to optimize for the case where the new title is the same as the
2006-12-15  Federico Mena Quintero  <federico@novell.com>

	* gtk/gtkmenu.c (gtk_menu_set_title): Don't try to optimize for
	the case where the new title is the same as the old title, to
	preserve the behavior from GTK+ 2.8 (NULL and "" titles are not
	equivalent).  Handle the case where title == priv->title.  This
	was found by the LSB compatibility tests:
	https://bugzilla.novell.com/show_bug.cgi?id=223882

2006-12-14  Ankit Patel  <ankit644@yahoo.com>
2006-12-15 20:09:13 +00:00
Gabor Kelemen 7f92b2662f Translation updated.
2006-12-15  Gabor Kelemen  <kelemeng@gnome.hu>

	* hu.po: Translation updated.
2006-12-15 16:11:32 +00:00
Francisco Javier F. Serrador fb9ae62626 Updated Spanish translation.
2006-12-15  Francisco Javier F. Serrador  <serrador@openshine.com>

	* es/es.po: Updated Spanish translation.
2006-12-14 23:19:56 +00:00
Kjartan Maraas fc1fbaeb42 Add stub since this is missing and breaking the build 2006-12-14 14:16:55 +00:00
Ankitkumar Rameshchandra Patel 63d7cd1ae9 Added sinhala translation on behalf of Tyronne 2006-12-14 13:43:44 +00:00
Carlos Garnacho e982a87be8 draw arrows pointing to the right correctly placed inside their GdkWindow.
2006-12-14  Carlos Garnacho  <carlosg@gnome.org>

        * gtk/gtkcalendar.c: draw arrows pointing to the right correctly
        placed inside their GdkWindow. Bug #385672.
2006-12-14 13:16:47 +00:00
Rahul Bhalerao a833049e4a Updated Marathi Translation 2006-12-14 06:29:24 +00:00
Subhransu Behera c7cf2e7f66 Updated Oriya Translation 2006-12-14 06:22:02 +00:00
Amitakhya Phukan 99c5433698 added assamese translation 2006-12-14 06:07:17 +00:00
Dom Lachowicz c75bf4a1d7 Bug 351679 - Notebooks drawn with extra line below tab in MS-Windows
2006-12-13  Dom Lachowicz <domlachowicz@gmail.com>

	* src/modules/engines/ms-windows/msw_style.c: Bug 351679 - Notebooks
	drawn with extra line below tab in MS-Windows theme. Patch by
	Cody Russell
2006-12-14 02:09:12 +00:00
Rahul Bhalerao 08afc3b312 Updated Marathi Translation 2006-12-13 16:27:42 +00:00
Subhransu Behera 00c3b45902 Updated Oriya Translation 2006-12-13 14:25:03 +00:00
Amanpreet Singh Alam e3fc745939 update translation for Punjabi (Gurmukhi) by apbrar gmail com 2006-12-13 07:50:34 +00:00
Runa Bhattacharjee 54622f65fe Added Entry for Bengali India Translation Updation 2006-12-13 04:05:16 +00:00
Runa Bhattacharjee 705b81f415 Updated Bengali India Translation 2006-12-13 04:04:52 +00:00
Rajesh Ranjan a158f66670 Updated Translation 2006-12-12 11:34:29 +00:00
Jovan Naumovski 294f794445 2006-12-12 Jovan Naumovski <jovanna@cvs.gnome.org> *mk.po: Updated Macedonian translation 2006-12-12 11:08:03 +00:00
Daniel Nylander 1239da0ac0 Updated Swedish translation.
2006-12-12  Daniel Nylander <po@danielnylander.se>

	* sv.po: Updated Swedish translation.
2006-12-12 08:07:32 +00:00
Runa Bhattacharjee 6941c09946 Added Entry for Bengali India Translation Updation 2006-12-12 07:46:25 +00:00
Runa Bhattacharjee 0c8b37f9af Updated Bengali India Translation 2006-12-12 07:46:08 +00:00
Ankitkumar Rameshchandra Patel b6fc39dcbd Updated Gujarati Translations 2006-12-12 07:33:39 +00:00
Rajesh Ranjan 7cfb9a26ce Updated Translation 2006-12-12 07:23:52 +00:00
Rajesh Ranjan 1c994d2862 Updated Translation 2006-12-12 07:23:20 +00:00
Runa Bhattacharjee bda8b20d88 Added Entry for Bengali India Translation Updation 2006-12-12 05:26:46 +00:00
Runa Bhattacharjee b5220ef931 Updated Bengali India Translation:12/12 2006-12-12 05:23:34 +00:00
Vincent van Adrighem 3091ba8857 Translation updated by Tino Meinen.
2006-12-05  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Tino Meinen.
2006-12-11 19:29:04 +00:00
Matthias Clasen 769c845d95 Be more careful when overdrawing antialiased text. (#352435, Alex Jones,
2006-12-11  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprogressbar.c (gtk_progress_bar_paint_text): Be more
        careful when overdrawing antialiased text.  (#352435, Alex Jones,
        patch by Benjamin Otte)
2006-12-11 15:23:24 +00:00
Rajesh Ranjan 8f17636f84 Updated Translation 2006-12-11 12:41:37 +00:00
Rajesh Ranjan ed6009324e Updated Translation 2006-12-11 12:41:01 +00:00
Kjartan Maraas b8b82e07df Update some. Updated Norwegian bokmål translation.
2006-12-11  Kjartan Maraas  <kmaraas@gnome.org>

	* POTFILES.in: Update some.
	* nb.po: Updated Norwegian bokmål translation.
2006-12-11 11:25:25 +00:00
Ankitkumar Rameshchandra Patel 6c63fc72d5 Updated Translation 2006-12-11 10:51:01 +00:00
Kjartan Maraas 7abcb08b71 Updated Norwegian bokmål translation.
2006-12-11  Kjartan Maraas  <kmaraas@gnome.org>

	* nb.po: Updated Norwegian bokmål translation.
2006-12-11 07:51:09 +00:00
Matthias Clasen 3541830336 Change the way in which color scheme information is merged to correctly
2006-12-11  Matthias Clasen  <mclasen@redhat.com>

	* gtksettings.c: Change the way in which color scheme information
	is merged to correctly handle vanishing colors.  (#374420,
	Benjamin Berg, patch by Callum McKenzie)
	Also allow to separate entries in color schemes by ';'
	instead of newline.
2006-12-11 06:14:45 +00:00
Felix I 9cd4e34be9 Gtk+ module for tamil in gnome updated 2006-12-11 06:11:59 +00:00
Ani Peter 01f24bbe19 Updated Malayalam translation 2006-12-11 05:18:44 +00:00
Matthias Clasen d7f7046a5c Properly pass multi-value options to cups. (#355350, Jürg Billeter)
2006-12-10  Matthias Clasen  <mclasen@redhat.com>

        * modules/printbackends/cups/gtkcupsutils.c (gtk_cups_request_encode_option):
        Properly pass multi-value options to cups.  (#355350, Jürg Billeter)
2006-12-11 04:01:44 +00:00
Andre Klapper 4b223186ea committing Michael Natterer's patch for HEAD (committed 2006-09-04) also
2006-12-10  Andre Klapper  <a9016009@gmx.de>

	* hy.po: committing Michael Natterer's patch for HEAD (committed
        2006-09-04) also to gtk-2-10 branch. Fixes bug #377204.
2006-12-10 19:49:11 +00:00
Daniel Nylander 043a19bfb1 Updated Swedish translation.
2006-12-10  Daniel Nylander <po@danielnylander.se>

	* sv.po: Updated Swedish translation.
2006-12-10 18:33:10 +00:00
Matthias Clasen dd67027b32 Check for crt_extern.h and _NSGetEnviron. Fix compilation on Darwin where
2006-12-10  Matthias Clasen  <mclasen@redhat.com>

        * configure.in: Check for crt_extern.h and _NSGetEnviron.
        * gdk/x11/gdkspawn-x11.c: Fix compilation on Darwin where
        environ is not available.  (#384168, Min Sik Kim)
2006-12-10 06:29:05 +00:00
Matthias Clasen 9460c56aed Fix gdk_pixbuf_loader_write error handling 2006-12-10 04:24:28 +00:00
Jovan Naumovski 4bc1b4036f 2006-12-09 Jovan Naumovski <jovanna@cvs.gnome.org> *mk.po: Updated Macedonian translation 2006-12-09 16:35:45 +00:00
Ilkka Tuohela 0790613866 Updated Finnish Translation 2006-12-09 03:49:41 +00:00
Francisco Javier F. Serrador 94d04f979b Updated Spanish translation.
2006-12-08  Francisco Javier F. Serrador  <serrador@openshine.com>

	* es.po: Updated Spanish translation.
2006-12-08 20:39:56 +00:00
Amanpreet Singh Alam d19337b53c update translation for Punjabi (Gurmukhi) by apbrar gmail com 2006-12-08 10:53:41 +00:00
Paolo Maggi 7395fdc7b3 Fixes bug #383407
2006-12-07  Paolo Maggi  <paolo@gnome.org>

	Fixes bug #383407

	* gtk/gtkentry.c (gtk_entry_set_text): check for
	completion->priv->changed_id > 0 before calling
	g_signal_handler_[un]block.
	(gtk_entry_completion_key_press): does not block/unblock the
"changed"
	signal before calling gtk_entry_set_text.
2006-12-07 16:55:03 +00:00
Matthias Clasen 7f5d798a20 Fix clipping of accelerator underlines 2006-12-07 14:38:59 +00:00
Ankitkumar Rameshchandra Patel 7aa1b22051 Updated Translation 2006-12-07 06:41:21 +00:00
Matthias Clasen bb82172ae9 better sensitivity updates in the print dialog 2006-12-06 14:56:41 +00:00
Theppitak Karoonboonyanan cc6aea1005 Replace modules/input/imthai-broken.c with imthai.c. Updated Thai
2006-12-06  Theppitak Karoonboonyanan  <thep@linux.thai.net>

	* POTFILES.in: Replace modules/input/imthai-broken.c with imthai.c.
	* th.po: Updated Thai translation.
2006-12-06 14:56:09 +00:00
Felix I 3e7d132880 gtk+ translation corrected and updated 2006-12-05 10:32:01 +00:00
Rahul Bhalerao 61df6d30bc Updated Marathi translation 2006-12-05 08:09:01 +00:00
Rajesh Ranjan 660b5b2cac Updated Translation 2006-12-05 08:03:05 +00:00
Rajesh Ranjan 93c054a31d Updated Translation 2006-12-05 08:02:33 +00:00
Rajesh Ranjan 81ce2f42bd Updated Translation 2006-12-05 07:54:44 +00:00
Rajesh Ranjan a2fc284631 Updated Translation 2006-12-05 07:54:14 +00:00
Rajesh Ranjan b693be6fc9 Updated Translation 2006-12-05 07:48:54 +00:00
Rajesh Ranjan 54c8982ae4 Updated Translation 2006-12-05 07:48:18 +00:00
Christian Persch 84995c213e Don't leak the old page size when setting a new one. Bug #382314.
2006-12-04  Christian Persch  <chpe@cvs.gnome.org>

	* gtk/gtkpagesetup.c: (gtk_page_setup_get_paper_size),
	(gtk_page_setup_set_paper_size): Don't leak the old page size when
	setting a new one. Bug #382314.
2006-12-04 17:56:22 +00:00
Matthias Clasen 05a9fd07a4 Fix an a11y regression in message dialogs 2006-12-04 17:53:30 +00:00
Kristian Rietveld 6a6c34ab63 Merge from HEAD.
2006-12-03  Kristian Rietveld  <kris@gtk.org>

	Merge from HEAD.

	* gtk/gtktreeview.c (validate_visible_area): when not using an
	explicit alignment, use the full area of the row (not just dy)
	to determine how to implicitly align it.  (Fixes #363191, reported
	by Federico Mena Quintero).
2006-12-03 15:36:02 +00:00
Matthias Clasen ed7c79ad30 Fix a crash with icon themes 2006-12-02 19:47:40 +00:00
Dom Lachowicz 446c67c19f Bug 351678 - Notebooks not with PositionType.Top drawn incorrectly. Patch
2006-12-02  Dom Lachowicz <domlachowicz@gmail.com>

	* src/modules/engines/ms-windows/msw_style.c: Bug 351678 - Notebooks
	not with PositionType.Top drawn incorrectly. Patch by Cody Russell
2006-12-02 16:35:40 +00:00
Djihed Afifi b3e330454e Updated Arabic Translation. 2006-12-01 11:08:29 +00:00
Behdad Esfahbod afed8ee147 Remove the broken Thai input method and add a functional Thai and Lao
2006-11-28  Behdad Esfahbod  <behdad@gnome.org>

        Remove the broken Thai input method and add a functional Thai and Lao
        input method by Theppitak Karoonboonyanan. (#81031)

        * modules/input/imthai.c:
        * modules/input/gtkimcontextthai.c:
        * modules/input/gtkimcontextthai.h:
        * modules/input/thai-charprop.c:
        * modules/input/thai-charprop.h:
        Added.

        * modules/input/imthai-broken.c:
        Removed.

        * modules/input/Makefile.am:
        Updated.
2006-11-29 19:48:05 +00:00
Benjamin Berg 08bd23daa1 Protect against NULL widget. (#379503)
2006-11-26  Benjamin Berg  <benjamin@sipsolutions.net>

	* gtk/gtkstyle.c: (gtk_default_draw_flat_box): Protect against NULL
	  widget. (#379503)
2006-11-26 19:42:15 +00:00
Laurent Dhima d7a270020f Updated Albanian Translation.
* sq.po: Updated Albanian Translation.
2006-11-25 17:25:53 +00:00
Matthias Clasen c2d702d625 fix a problem in the cups backend 2006-11-25 05:11:02 +00:00
Djihed Afifi 34ccc9a06d Updated Arabic Translation. Updated + QA'ed 2006-11-24 14:08:53 +00:00
Emmanuele Bassi f42718d6fd g_filename_from_uri() might fail; catch the failure and fall back to the
2006-11-22  Emmanuele Bassi  <ebassi@gnome.org>

	* gtk/gtkrecentmanager.c:
	(get_uri_shortname_for_display): g_filename_from_uri() might
	fail; catch the failure and fall back to the non-local URI
	case. (#363437)
2006-11-22 09:14:08 +00:00
Pawan Chitrakar 2bc2998344 Updated Nepali Translation 2006-11-21 06:38:54 +00:00
Matic Zgur c855572421 Updated Slovenian translation.
2006-11-19  Matic Zgur  <mr.zgur@gmail.com>

	* sl.po: Updated Slovenian translation.
2006-11-19 19:35:42 +00:00
Duarte Loreto af9968364c Updated Portuguese translation.
2006-11-19  Duarte Loreto <happyguy_pt@hotmail.com>

	* pt.po: Updated Portuguese translation.
2006-11-19 16:51:10 +00:00
Yair Hershkovitz 939538409f updated hebrew translation 2006-11-19 16:08:48 +00:00
Djihed Afifi 729c2cfa0a Updated Arabic Translation. 2006-11-19 15:56:24 +00:00
Djihed Afifi d0457e6224 Updated Arabic Translation. QA'ed by Khaled Hosny 2006-11-18 20:38:24 +00:00
Matic Zgur 78d6672c1d Updated Polish translation by GNOME PL Team.
2006-11-18  Matic Zgur  <mr.zgur@gmail.com>

	* pl.po: Updated Polish translation by GNOME PL Team.
2006-11-18 18:52:10 +00:00
Matthias Clasen 1fc4da804f Fix problems with drag cancellation. (#376535, Michael Natterer)
2006-11-17  Matthias Clasen  <mclasen@redhat.com>

        Fix problems with drag cancellation. (#376535, Michael Natterer)

        * gtk/gtkdnd.c (gtk_drag_source_info_destroy): Disconnect signal
        handlers before emitting drag-end.
        (gtk_drag_end): Disconnect signal handlers before removing
        the grab.
2006-11-18 04:44:11 +00:00
Mariano Suárez-Alvarez 8ad2314da3 add gtk-doc blurb on GtkCellRendererText::edited (#376094)
2006-11-16  Mariano Suárez-Alvarez <mariano@gnome.org>

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
	add gtk-doc blurb on GtkCellRendererText::edited (#376094)
2006-11-16 21:25:32 +00:00
Emmanuele Bassi 38fbbaad72 Apply the tip only if we have a displayable name for the item. (#365031,
2006-11-16  Emmanuele Bassi  <ebassi@gnome.org>

	* gtk/gtkrecentchoosermenu.c:
	(gtk_recent_chooser_menu_add_tip): Apply the tip only
	if we have a displayable name for the item. (#365031,
	patch by padraig.obriain(at)sun.com)
2006-11-16 10:13:01 +00:00
Emmanuele Bassi 165b491846 Provide a fast path returning NULL when the limit is set to 0.
2006-11-16  Emmanuele Bassi  <ebassi@gnome.org>

	* gtk/gtkrecentmanager.c: Provide a fast path returning
	NULL when the limit is set to 0.

	* gtk/gtkrecentchooserdefault.c:
	* gtk/gtkrecentchoosermenu.c: Add the same fast path
	inside the RecentChooser implementation; add a check
	in the list clamping code. (#373466 and duplicates)
2006-11-16 09:34:53 +00:00
Djihed Afifi 9903b0e10a Updated Arabic Translation. 2006-11-15 20:25:18 +00:00
Matthias Clasen 46e22ea38e Don't pass NULL to strncpy. (#359537, patch by Carlos Garcia Campos)
2006-11-15  Matthias Clasen  <mclasen@redhat.com>

	* modules/printbackends/cups/gtkprintbackendcups.c (cups_printer_get_options):
	Don't pass NULL to strncpy.  (#359537, patch by  Carlos Garcia Campos)
2006-11-15 19:35:49 +00:00
Djihed Afifi bf48fd123d Updated Arabic Translation. 2006-11-15 00:49:36 +00:00
Behdad Esfahbod f71c706e82 Make libtool magic robust. (#352795)
2006-11-14  Behdad Esfahbod  <behdad@gnome.org>

        * configure.in: Make libtool magic robust. (#352795)
2006-11-14 20:07:29 +00:00
Paolo Borelli 114d36203e plug small memory leak (#370395)
2006-11-13  Paolo Borelli  <pborelli@katamail.com>

	* gtk/gtkrc.c (gtk_rc_parse_icon_source): plug small memory
	leak (#370395)
2006-11-13 20:05:35 +00:00
Priit Laes 0e43758a99 Translation updated by Ivar Smolin.
2006-11-12  Priit Laes  <plaes@cvs.gnome.org>

	* et.po: Translation updated by Ivar Smolin.
2006-11-12 08:37:23 +00:00
Djihed Afifi 5ad70e6ebe Updated Arabic Translation. 2006-11-11 12:46:33 +00:00
Kristian Rietveld c402e38fb2 Merge from HEAD.
2006-11-09  Kristian Rietveld  <kris@imendio.com>

	Merge from HEAD.

	* gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): disable
	don't move cursor case for SELECTION_NONE. (#371756, John Ellis).
2006-11-09 17:11:30 +00:00
Carlos Garnacho 3a00093197 Fix parenthesis confusion.
2006-11-09  Carlos Garnacho  <carlosg@gnome.org>

        * gtk/gtkpathbar.c (on_slider_unmap): Fix parenthesis confusion.
2006-11-09 16:54:29 +00:00
Carlos Garnacho 6ffcb87abd added, do not leave the scroll timeout running if the slider buttons are
2006-11-08  Carlos Garnacho  <carlosg@gnome.org>

        * gtk/gtkpathbar.c (on_slider_unmap): added, do not leave the scroll
        timeout running if the slider buttons are hidden. (#372527)
2006-11-08 19:49:29 +00:00
Carlos Garnacho a76975388a make non-focused tabs xthickness/ythickness thinner. (#353962)
2006-11-07  Carlos Garnacho  <carlosg@gnome.org>

        * gtk/gtknotebook.c (gtk_notebook_calculate_tabs_allocation): make
        non-focused tabs xthickness/ythickness thinner. (#353962)
2006-11-07 16:57:16 +00:00
Paolo Borelli abffc3be79 avoid memory corruption (#357050).
2006-11-07  Paolo Borelli  <pborelli@katamail.com>

	* gtk/gtktextbtree.c (_gtk_text_btree_delete): avoid memory
	corruption (#357050).
2006-11-07 15:41:13 +00:00
Alexander Larsson 54d50a276d Cancel drag when the grab is shadowed. (#122688)
2006-11-06  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkdnd.c: (gtk_drag_begin_internal),
	(gtk_drag_source_info_destroy), (gtk_drag_end),
	(gtk_drag_grab_notify_cb):
	Cancel drag when the grab is shadowed. (#122688)
2006-11-06 17:15:52 +00:00
Priit Laes 6436dd8fab Translation updated by Ivar Smolin.
2006-11-05  Priit Laes  <plaes@cvs.gnome.org>

	* et.po: Translation updated by Ivar Smolin.
2006-11-05 08:55:23 +00:00
Yair Hershkovitz defcd18bb2 updated hebrew translation 2006-11-04 19:08:44 +00:00
Christophe Merlet 8115123e21 Updated French translation. 2006-11-02 11:47:47 +00:00
Priit Laes c1a26cf778 Translation updated by Ivar Smolin.
2006-11-01  Priit Laes  <plaes@cvs.gnome.org>

	* et.po: Translation updated by Ivar Smolin.
2006-11-01 17:25:37 +00:00
Kristian Rietveld c01b67e37a Merge from HEAD
2006-10-30  Kristian Rietveld  <kris@gtk.org>

	Merge from HEAD

	* gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): don't
	forget to queue a draw for the new cursor node. (Fixes #366548,
	reported by Sven Herzberg).
2006-10-30 22:08:41 +00:00
Michael Natterer f4373f4696 Merge from HEAD
2006-10-30  Michael Natterer  <mitch@imendio.com>

	Merge from HEAD

	* gtk/gtkrange.c (gtk_range_key_press): consume the Escape key
	only if we actually cancel a drag. Fixes bug #58389.
2006-10-30 13:43:10 +00:00
Kristian Rietveld 7afe19b46a Merge from HEAD
2006-10-30  Kristian Rietveld  <kris@gtk.org>

	Merge from HEAD

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button): draw
	the indicator if the column has a sort column id (and the model is
	sortable) or if the user explicitly requested the indicator
	to be shown.  (Fixes #352738, Chris Vine).
2006-10-30 12:27:41 +00:00
Kristian Rietveld f3aa436d78 Merge from HEAD
2006-10-29  Kristian Rietveld  <kris@gtk.org>

	Merge from HEAD

	* gtk/gtktreeview.c (gtk_tree_view_real_expand_row): guard against
	child removal in row-expanded callback. (#366782, John Ellis).
2006-10-29 15:51:31 +00:00
Kristian Rietveld cf2cb36329 Merge from HEAD
2006-10-28  Kristian Rietveld  <kris@gtk.org>

	Merge from HEAD

	* gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): if the tree view
	has already been realized; scroll to background area instead of
	cell area. (Fixes #330683, Johan Dahlin, Tommi Komulainen).
2006-10-29 15:27:19 +00:00
Kristian Rietveld 3088eb6584 Merge from HEAD
2006-10-28  Kristian Rietveld  <kris@gtk.org>

	Merge from HEAD

	* gtk/gtktreeview.c (gtk_tree_view_set_grid_lines): only attempt
	to create the GCs if the widget is realized. (Fixes #357578).
2006-10-29 15:23:35 +00:00
Kristian Rietveld c8decbce3c Merge from HEAD.
2006-10-28  Kristian Rietveld  <kris@imendio.com>

	Merge from HEAD.

	2006-09-15  Michael Natterer  <mitch@imendio.com>

	* gtk/gtktreeview.c (gtk_tree_view_key_press): refactored column
	header navigation/resizing/reordering to be more readable and lose
	one level of nesting.

	2006-09-15  Kristian Rietveld  <kris@imendio.com>

	* gtk/gtktreeview.c (gtk_tree_view_key_press): actually directly
	return after handling column button focus; we disable wrap around
	with this (which actually happened via a really weird code path).
	(Michael Natterer)

	2006-09-15  Kristian Rietveld  <kris@imendio.com>

	* gtk/gtktreeview.c (gtk_tree_view_key_press): make column resizing
	code RTL aware, also break from the loops after we have seen the
	focussed column button (Michael Natterer).
2006-10-29 15:19:04 +00:00
Tor Lillqvist 630e2087ab Improve handling of the small icon of the window class. (#152620, Kazuki
2006-10-29  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkwindow-win32.c (RegisterGdkClass): Improve handling
	of the small icon of the window class. (#152620, Kazuki Iwamoto)
2006-10-29 00:10:58 +00:00
Tor Lillqvist fcdff95011 Implement for B&W cursors, for instance the built-in GDK ones.
2006-10-29  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkcursor-win32.c
	(gdk_win32_icon_to_pixbuf_libgtk_only): Implement for B&W cursors,
	for instance the built-in GDK ones.
2006-10-29 00:09:25 +00:00
Tor Lillqvist 125c0281e7 pixbufloader_*.def Remove pixbufloader_*.def, they are not used. (#365388)
2006-10-29  Tor Lillqvist  <tml@novell.com>

	* pixbufloader_*.def
	* Makefile.am (EXTRA_DIST): Remove pixbufloader_*.def, they are
	not used. (#365388) They were all identical, and exported just two
	symbols, so if somebody needs them for a MSVC build that doesn't
	use built-in modules it's trivial to hack makefile.msc to produce
	a common .def file for the loaders. The two symbols that need to
	be exported are fill_info and fill_vtable.
2006-10-28 23:27:33 +00:00
Kristian Rietveld 30f4d86da4 Merge from HEAD.
2006-10-27  Kristian Rietveld  <kris@gtk.org>

	Merge from HEAD.

	* gtk/gtktreeview.c (validate_visible_area): rework the area_above == 0
	case to not overwrite the variables in the lower scope (which are
	used later on ...), get the path correctly and bail out when there
	isn't a node above us. (#359231).
2006-10-27 20:02:17 +00:00
Christian Persch 90e4cf03ff Put initial focus on Close button (#337261).
2006-10-26  Christian Persch  <chpe@cvs.gnome.org>

	* gtk/gtkaboutdialog.c: Put initial focus on Close button (#337261).
2006-10-26 12:22:36 +00:00
Priit Laes 802f750ca6 Translation updated by Ivar Smolin.
2006-10-24  Priit Laes  <plaes@cvs.gnome.org>

	* et.po: Translation updated by Ivar Smolin.
2006-10-24 19:41:31 +00:00
Priit Laes 56fbfa6c95 Translation updated by Ivar Smolin.
2006-10-24  Priit Laes  <plaes@cvs.gnome.org>

	* et.po: Translation updated by Ivar Smolin.
2006-10-23 21:12:45 +00:00
Dom Lachowicz 373ba3ea35 Remember to free GDI Pen resources, introduced by bug 340201.(#364514)
2006-10-23  Dom Lachowicz <domlachowicz@gmail.com>

        * modules/engines/ms-windows/msw_style.c (draw_expander): Remember
        to free GDI Pen resources, introduced by bug 340201.(#364514)
2006-10-23 20:29:33 +00:00
Christophe Merlet c44c9e0c4a Updated French translation. 2006-10-22 09:28:06 +00:00
Josep Puigdemont i Casamajó 9586e39ec4 Updated Catalan translation. 2006-10-21 22:01:55 +00:00
Paolo Borelli f726c3380e plug memory leak. Fixes bug #362439.
2006-10-15  Paolo Borelli  <pborelli@katamail.com>

	* gtk/gtkicontheme.c (pixbuf_supports_svg): plug memory leak.
	Fixes bug #362439.
2006-10-15 22:58:32 +00:00
Francisco Javier F. Serrador e676512b76 Updated Spanish translation.
2006-10-15  Francisco Javier F. Serrador  <serrador@openshine.com>

	* es.po: Updated Spanish translation.
2006-10-15 00:25:42 +00:00
Francisco Javier F. Serrador f8c66f8219 Updated Spanish translation.
2006-10-15  Francisco Javier F. Serrador  <serrador@openshine.com>

	* es.po: Updated Spanish translation.
2006-10-15 00:03:33 +00:00
Vladimer Sichinava fea601376c Fixed some errors 2006-10-14 00:15:31 +00:00
Gabor Kelemen 605bcdf3ed Translation updated by Kelemen Gábor.
2006-10-13  Gabor Kelemen  <kelemeng@gnome.hu>

	* hu.po: Translation updated by Kelemen Gábor.
2006-10-13 19:24:43 +00:00
Vladimer Sichinava ea35d2ca2e Updated Georgian translation 2006-10-13 00:35:49 +00:00
Matthias Clasen 0a45289c32 Fix a typo. (#359542, Ghee Teo)
2006-10-08  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkprintunixdialog.c (update_dialog_from_capabilities): Fix
	a typo.  (#359542, Ghee Teo)
2006-10-08 19:38:21 +00:00
Matthias Clasen 9245a4eca6 Only reorder tabs if the focus is in the tab. (#350342, Carlos Garnacho
2006-10-08 Matthias Clasen <mclasen@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_reorder_tab): Only
	reorder tabs if the focus is in the tab.  (#350342, Carlos
	Garnacho Parro)
2006-10-08 19:03:00 +00:00
Tor Lillqvist cb2fec0248 Remove stray CVS conflict indicator. 2006-10-08 17:24:42 +00:00
Tor Lillqvist c60f1996b6 Small fix to the code committed earlier today.
2006-10-08  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkmain.c (do_pre_parse_initialization): Small fix to the
	code committed earlier today.
2006-10-08 07:55:50 +00:00
Matthias Clasen 5a177560b6 Fix a leak 2006-10-08 05:26:04 +00:00
Tor Lillqvist 8c169ce529 On Win32, if environment variable LC_ALL or LANG is set, set the Win32
2006-10-08  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkmain.c (do_pre_parse_initialization): On Win32, if
	environment variable LC_ALL or LANG is set, set the Win32 thread
	locale to the corresponding locale. Then call the C library
	setlocale() to set the C library locale accordingly. The
	inconsistency mentioned below is gone. (#339756) Do some special
	casing for Serbia and Montenegro. Handle the Latin and Cyrillic
	scripts for Azeri, Uzbek and Serbian.
	(enum_locale_proc): Helper function for the above functionality.

	* gtk/gtkcalendar.c (gtk_calendar_init): No longer need to check
	if the environment variables are set here, as they have already
	been taken into account and the Win32 thread locale has been
	set.
2006-10-08 01:39:09 +00:00
Tor Lillqvist 1f37777588 Use the Win32 thread locale's first day of week setting on Win32.
2006-10-07  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkcalendar.c (gtk_calendar_init): Use the Win32 thread
	locale's first day of week setting on Win32. (#339752, Bogdan
	Nicula) Don't do this if one of the environment variables that
	affect gettext is set, though. In that case use the week start day
	from the corresponding message catalog.

	Unfortunately the same logic isn't possible in the weekday and
	month name lookup; there even if you have set one of the
	aforementioned environment variables, you still get the weekday
	and month names from the Win32 thread locale. Yes, this is
	inconsistent.
2006-10-07 21:28:23 +00:00
Matthias Clasen 0d90bfe851 fix docs 2006-10-06 19:16:21 +00:00
Matthias Clasen bb48a1efc7 Don't set the background of the window in a no-window widget. (#359581,
2006-10-06  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkcellview.c: Don't set the background of the
        window in a no-window widget.  (#359581, Xan Lopez)
2006-10-06 18:35:57 +00:00
Behdad Esfahbod 418f80e294 Propagate srcdir into the test correctly. (#359845)
2006-10-05  Behdad Esfahbod  <behdad@gnome.org>

        * gtk/Makefile.am, gtk/aliasfilescheck.sh:  Propagate srcdir into the
        test correctly. (#359845)
2006-10-05 15:53:42 +00:00
Matthias Clasen 9b8834d075 Fix interaction of GtkEntryCompletion with input methods. (#354495, Diego
2006-10-03  Matthias Clasen  <mclasen@redhat.com>

        Fix interaction of GtkEntryCompletion with input
        methods.  (#354495, Diego Escalante Urrelo)

        * gtk/gtkentry.c (gtk_entry_completion_key_press): Only reset
        the im context if we actually handle the key event.

        * gtk/gtkentrycompletion.c: Also propagate key release events
        to the entry.
2006-10-04 03:24:36 +00:00
Matthias Clasen 6cede96218 bump version 2006-10-03 21:07:03 +00:00
Matthias Clasen 29a965afa8 broken pipe 2006-10-03 20:57:35 +00:00
Matthias Clasen e445684813 2.10.6 2006-10-03 20:33:18 +00:00
Matthias Clasen 680fc7c5d2 updates 2006-10-03 16:52:16 +00:00
Matthias Clasen 88f75cf309 reduce relocations 2006-10-03 15:51:47 +00:00
Matthias Clasen 8340b819fc Complete the fix for bug 357280.
2006-10-03  Matthias Clasen  <mclasen@redhat.com>

        * modules/printbackends/cups/gtkprintbackendcups.c: Complete
        the fix for bug 357280.
2006-10-03 14:48:54 +00:00
Behdad Esfahbod 31bca0f00c Fix typo in file name. (#358931)
2006-10-02  Behdad Esfahbod  <behdad@gnome.org>

        * gtk/Makefile.am: Fix typo in file name.  (#358931)
2006-10-02 17:27:53 +00:00
Matthias Clasen ee8628b3a6 2.10.5 2006-10-02 06:56:01 +00:00
Matthias Clasen c246b5f740 Only use the group name field if cups is new enough. (#357280)
2006-10-02  Matthias Clasen  <mclasen@redhat.com>

	* modules/printbackends/cups/gtkprintbackendcups.c (available_choices):
	Only use the group name field if cups is new enough.  (#357280)
2006-10-02 05:37:59 +00:00
Matthias Clasen 43c3c79029 Make sure that the quarks are initialized before using them. (#353736)
2006-10-02  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtksizegroup.c: Make sure that the quarks are
	initialized before using them.  (#353736)
2006-10-02 05:21:34 +00:00
Priit Laes 775539ef1d Translation updated by Ivar Smolin.
2006-10-02  Priit Laes  <plaes@cvs.gnome.org>

	* et.po: Translation updated by Ivar Smolin.
2006-10-02 05:10:55 +00:00
Matthias Clasen e1447f1f95 Use rm instead of ln -f to replace existing links. (#354849, James Evans)
2006-10-02  Matthias Clasen  <mclasen@redhat.com>

	* gtk/Makefile.am (stamp-icons): Use rm instead of ln -f to
	replace existing links.  (#354849, James Evans)
2006-10-02 04:06:53 +00:00
Matthias Clasen a122c33eda Make the event_window large enough to cover the full height of the
2006-10-01  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkexpander.c (gtk_expander_realize)
	(gtk_expander_size_allocate): Make the event_window large
	enough to cover the full height of the label_widget.  (#358351,
	Scott Horowitz)
2006-10-02 03:49:29 +00:00
Matthias Clasen 8bf4caf83c Set model in all cases. (#357791, Andreas Köhler)
2006-10-01  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
	Set model in all cases.  (#357791, Andreas Köhler)
2006-10-02 01:27:25 +00:00
Tor Lillqvist 26366d713d Same change as to gtkfilesystemunix.c.
2006-10-01  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkfilesystemwin32.c: Same change	as to gtkfilesystemunix.c.
2006-10-01 19:24:27 +00:00
Matthias Clasen 60d34ea94f Protect against base_path being NULL. (#358405, many reporters)
2006-09-30  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkfilechooserbutton.c (update_combo_box): Protect
        against base_path being NULL.  (#358405, many reporters)
2006-09-30 13:27:15 +00:00
Matthias Clasen f06c2a4daa Avoid a deadlock 2006-09-29 14:17:01 +00:00
Pema Geyleg 9daaf9022b *** empty log message *** 2006-09-29 09:14:04 +00:00
Vladimer Sichinava d0a6ca795c updated Georgian translation 2006-09-26 11:37:37 +00:00
Vladimer Sichinava 6b6cbd183d updated Georgian translation 2006-09-26 00:31:25 +00:00
Ignacio Casal Quinteiro 4001a629d7 *** empty log message *** 2006-09-25 21:58:20 +00:00
Matthias Clasen 9660d080a4 Don't leak the list of children (#357454, Paolo Borelli)
2006-09-25  Matthias Clasen  <mclasen@redhat.com>
        * gtk/gtkuimanager.c (_gtk_menu_is_empty): Don't leak
        the list of children (#357454, Paolo Borelli)
2006-09-25 13:34:52 +00:00
Michael Natterer 5956de6e07 free display->input_windows with g_free(), not g_object_unref() (#357566,
2006-09-25  Michael Natterer  <mitch@imendio.com>

	* gdk/x11/gdkdisplay-x11.c (gdk_display_x11_finalize): free
	display->input_windows with g_free(), not g_object_unref()
	(#357566, Tommi Komulainen).
2006-09-25 09:57:01 +00:00
Tor Lillqvist a9dcd9f0a9 Use EXEEXT.
2006-09-23  Tor Lillqvist  <tml@novell.com>

	* gtk/Makefile.am: Use EXEEXT.
2006-09-23 07:28:31 +00:00
Matthias Clasen 11cfcef2b5 Bump version 2006-09-23 05:29:06 +00:00
Matthias Clasen 3f7a54b141 2.10.4 2006-09-23 05:23:00 +00:00
Matthias Clasen 48a616d351 Updates 2006-09-23 02:51:51 +00:00
Michael Natterer 101a718279 also copy icon factories and color hashes. Fixes bug #357132.
2006-09-22  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkstyle.c (gtk_style_real_copy): also copy icon factories
	and color hashes. Fixes bug #357132.
2006-09-22 20:39:35 +00:00
Matthias Clasen 34b99286d5 updates 2006-09-22 18:51:12 +00:00
Matthias Clasen 8620115255 make it build 2006-09-22 17:48:24 +00:00
Matthias Clasen 84742b9f0b Apply a patch to fix some typos. (#355961, Claudio Saavedra)
2006-09-22  Matthias Clasen  <mclasen@redhat.com>
        * gtk/tmpl/gtkpagesetup.sgml: Apply a patch
        to fix some typos.  (#355961, Claudio Saavedra)
2006-09-22 16:37:20 +00:00
Matthias Clasen 63ef81fdc9 Make remote bookmarks work better (#354887)
2006-09-22  Matthias Clasen  <mclasen@redhat.com>

	Make remote bookmarks work better (#354887)

	* gtk/gtkfilechooserdefault.c (shortcuts_reload_icons):
	(shortcuts_insert_path):
	* gtk/gtkfilechooserbutton.c (change_icon_theme):
	(model_add_bookmarks):
	(model_update_current_folder):
	(update_label_and_image):
	If the bookmark points to a remote file, don't call get_info(),
	since that may a) take a long time and b) pop up an auth dialog.
	Instead, just use a folder icon and create a display name
	from the uri.

	* gtk/gtkfilechooserdefault.c (_gtk_file_chooser_label_for_uri):
	New function to create a suitable display name for a remote
	uri. This should really be done in GtkFileSystem.
2006-09-22 16:33:04 +00:00
Francisco Javier F. Serrador 80d2f3ffc8 Updated Spanish translation.
2006-09-22  Francisco Javier F. Serrador  <serrador@openshine.com>

	* es.po: Updated Spanish translation.
2006-09-22 10:16:34 +00:00
Priit Laes 124473aa06 Translation updated by Ivar Smolin.
2006-09-21  Priit Laes  <plaes@cvs.gnome.org>

	* et.po: Translation updated by Ivar Smolin.
2006-09-21 16:30:44 +00:00
Hendrik Richter 6fc802603e Updated German translation.
2006-09-21  Hendrik Richter  <hendrikr@gnome.org>

	* de.po: Updated German translation.
2006-09-21 15:30:54 +00:00
Behnam Esfahbod a8d1216f40 just check the first shift-level of keyboard layout for RTL and LTR
2006-09-20  Behnam Esfahbod <behnam@zwnj.org>
	* gdk/x11/gdkkeys-x11.c:
	  (get_direction): just check the first shift-level of keyboard
	layout for RTL and LTR keysyms() (compliment to #116626)

Apply the missing patch of the previous commit.
2006-09-20 18:17:17 +00:00
Behnam Esfahbod 4f481fd16a just check the first shift-level of keyboard layout for RTL and LTR
2006-09-20  Behnam Esfahbod <behnam@zwnj.org>
	* gdk/x11/gdkkeys-x11.c:
	  (get_direction): just check the first shift-level of keyboard
	layout for RTL and LTR keysyms() (compliment to #116626)
2006-09-20 18:00:42 +00:00
Vladimer Sichinava 14ae061932 Added Georgian translation of gcalctool 2006-09-20 02:30:44 +00:00
Matthias Clasen 1363f15ffb Display an error when we come to the root.
2006-09-19  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilechooserdefault.c (update_current_folder_get_info_cb):
	Display an error when we come to the root.
2006-09-19 14:15:38 +00:00
Priit Laes 1f09278371 Translation updated by Ivar Smolin.
2006-09-18  Priit Laes  <plaes@cvs.gnome.org>

	* et.po: Translation updated by Ivar Smolin.
2006-09-18 05:25:32 +00:00
Åsmund Skjæveland d322b8ee97 Updated Norwegian Nynorsk translation.
2006-09-17  Åsmund Skjæveland  <aasmunds@fys.uio.no>

	* nn.po: Updated Norwegian Nynorsk translation.
2006-09-17 18:54:45 +00:00
Matthias Clasen 510e51ec63 Use bookmark labels in the combobox.
2006-09-17  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilechooserbutton.c: Use bookmark labels in
	the combobox.
2006-09-17 04:19:05 +00:00
Matthias Clasen c6d7d38bfd Don't add remote volumes and bookmarks to the model in local-only mode, to
2006-09-16  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilechooserbutton.c: Don't add remote volumes and
	bookmarks to the model in local-only mode, to avoid
	authentication dialogs pop up for invisible bookmarks, and
	to fix issues with separators not being hidden when
	they should.  (#354887, Dennis Cranston)
2006-09-17 03:32:40 +00:00
Vincent van Adrighem 2a9b1d0ec8 Translation updated by Tino Meinen.
2006-09-16  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Tino Meinen.
2006-09-16 11:11:13 +00:00
Matthias Clasen cf6bf669f0 Unref the treeview use in list mode. (#355732, Richard Hult)
2006-09-16  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkcombobox.c (gtk_combo_box_finalize): Unref the
        treeview use in list mode.  (#355732, Richard Hult)
2006-09-16 05:12:30 +00:00
Matthias Clasen d2b4ac86a8 Send change notification for the right property. (#355308, Torsten
2006-09-16  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktreeview.c (gtk_tree_view_set_grid_lines): Send
        change notification for the right property.  (#355308,
        Torsten Schoenfeld)
2006-09-16 04:37:08 +00:00
Theppitak Karoonboonyanan b84cd44c43 Updated Thai translation.
2006-09-16  Theppitak Karoonboonyanan  <thep@linux.thai.net>

	* th.po: Updated Thai translation.
2006-09-16 04:20:53 +00:00
Matic Zgur 4c63cd580b Updated Slovenian translation.
2006-09-15  Matic Zgur  <mr.zgur@gmail.com>

	* sl.po: Updated Slovenian translation.
2006-09-15 10:37:41 +00:00
Kostas Papadimas 7a66a31427 Updated Greek translation 2006-09-14 06:46:36 +00:00
Ankitkumar Rameshchandra Patel 0e21c332c9 Updated Translation 2006-09-14 05:41:55 +00:00
Alexander Shopov 76b94bdffa Updated Bulgarian translation by Alexander Shopov <ash@contact.bg>
2006-09-14  Alexander Shopov  <ash@contact.bg>

	* bg.po: Updated Bulgarian translation by
	Alexander Shopov <ash@contact.bg>
2006-09-14 05:15:24 +00:00
Jovan Naumovski bb517d5994 2006-09-13 Jovan Naumovski <jovanna@cvs.gnome.org> * mk.po: Updated Macedonian translation 2006-09-13 21:13:08 +00:00
David Lodge 1b970b5d1b Updated English (British) translation
2006-09-13  David Lodge <dave@cirt.net>

	* en_GB.po: Updated English (British) translation
2006-09-13 19:47:39 +00:00
Matthias Clasen 641da23dbc Use a GtkWindow instead of a GtkInvisible for the grab widget, to make the
2006-09-13 Matthias Clasen <mclasen@redhat.com>
        * gtk/gtkcolorsel.c: Use a GtkWindow instead of a GtkInvisible
        for the grab widget, to make the color picker work with window
        groups.
2006-09-13 17:32:48 +00:00
Nickolay V. Shmyrev 166287cfa7 Updated Russian translation.
2006-09-13  Nickolay V. Shmyrev  <nshmyrev@yandex.ru>

	* ru.po: Updated Russian translation.
2006-09-13 16:10:06 +00:00
Felix I 5919606776 Tamil Translation updated 2006-09-13 08:13:02 +00:00
Runa Bhattacharjee 4a2b65ba47 Added Entry for Bengali India Translation Updation 2006-09-13 05:41:12 +00:00
Runa Bhattacharjee a162b00071 Updated Bengali India Translation 2006-09-13 05:40:56 +00:00
Rajesh Ranjan 716cc206ab updated gtk for context translation error 2006-09-13 05:26:54 +00:00
Ilkka Tuohela 8e61150ee6 Updated Finnish translation 2006-09-13 04:32:57 +00:00
Vladimer Sichinava 1643096a72 Error correction 2006-09-13 00:33:45 +00:00
Gintautas Miliauskas 0777d8b0f8 Updated Lithuanian translation 2006-09-12 19:17:24 +00:00
Kjartan Maraas 642bc4ea02 Add two binaries here 2006-09-12 14:34:07 +00:00
Hong Jen Yee 40c8c6e7d1 signed off by: Dom Lachowicz
2006-09-12 Hong Jen Yee <pcman.tw@gmail.com>

	signed off by: Dom Lachowicz

	* modules/engines/ms-windows/msw_style.c: Bug 340201. This contains
	a large number of improvements to the Microsoft Windows theme engine
	which are fully described in the bug report.
2006-09-12 11:50:11 +00:00
Jovan Naumovski cc8974213b 2006-09-12 Jovan Naumovski <jovanna@cvs.gnome.org> * mk.po: Updated Macedonian translation 2006-09-12 11:09:05 +00:00
Ankitkumar Rameshchandra Patel c6b51549a6 Updated Translation 2006-09-11 12:32:20 +00:00
Daniel Nylander c3a804c24b Updated Swedish translation.
2006-09-11  Daniel Nylander <po@danielnylander.se>

	* sv.po: Updated Swedish translation.
2006-09-11 11:11:59 +00:00
Matthias Clasen 69eec539a0 Request the display name too, otherwise "Desktop" does not appear in the
2006-09-10  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilechooserbutton.c (model_add_special): Request
	the display name too, otherwise "Desktop" does not appear
	in the file chooser button.
2006-09-11 02:33:57 +00:00
Kjartan Maraas e3ab5e9c55 Updated Norwegian bokml translation.
2006-09-10  Kjartan Maraas  <kmaraas@gnome.org>

	* nb.po: Updated Norwegian bokml translation.
2006-09-10 18:25:43 +00:00
Priit Laes 953750da7f Translation updated by Ivar Smolin.
2006-09-10  Priit Laes  <plaes@cvs.gnome.org>

	* et.po: Translation updated by Ivar Smolin.
2006-09-10 16:03:12 +00:00
Ilkka Tuohela a743b14354 Updated Finnish translation 2006-09-10 08:11:35 +00:00
Ilkka Tuohela 72d3fbc7c9 Updated Finnish translation 2006-09-10 08:10:24 +00:00
Ilkka Tuohela 57b08805e3 Updated Finnish translation 2006-09-10 08:01:40 +00:00
David Lodge 3e2a24892a Updated English (British) translation.
2006-09-10  David Lodge <dave@cirt.net>

	* en_GB.po: Updated English (British) translation.
2006-09-10 07:11:46 +00:00
David Lodge a1eb50a2ab Updated English (British) translation.
2006-09-09  David Lodge <dave@cirt.net>

	* en_GB.po: Updated English (British) translation.
2006-09-10 06:59:39 +00:00
Matthias Clasen da05f10d2d add new files 2006-09-10 06:36:11 +00:00
Matthias Clasen 40fd8e6cc3 Commit a patch by Behdad to fix typos, omissions and other errors in the
2006-09-10  Matthias Clasen  <mclasen@redhat.com>

        * Commit a patch by Behdad to fix typos, omissions and other
        errors in the symbol aliasing, and add checks for local PLT
        entries.  (#354687, Behdad Esfahbod)
2006-09-10 06:33:17 +00:00
Matthias Clasen aa08e0d9cc Renew the flush timeout. (#354043, Nelson Benitez)
2006-09-10  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_search_scroll_event): Renew
	the flush timeout.  (#354043, Nelson Benitez)
2006-09-10 05:27:59 +00:00
Matthias Clasen 5af3a64c9e Fix a typo. String change! (#355134, David Lodge)
2006-09-10  Matthias Clasen  <mclasen@redhat.com>

	* gtk/paper_names_offsets.c: Fix a typo. String change! (#355134,
	David Lodge)
2006-09-10 04:55:37 +00:00
Matthias Clasen 4dc8359235 Fix small theoretical memory leaks. (#353916, Chris Wilson)
2006-09-09  Matthias Clasen <mclasen@redhat.com>

        * gdk/x11/gdkfonts-x11.c: Fix small theoretical memory leaks.
        (#353916, Chris Wilson)
2006-09-09 05:33:42 +00:00
Matthias Clasen 5087ef4102 Don't leak the to_reset list. (#353914, Chris Wilson)
2006-09-09  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtksettings.c (_gtk_settings_reset_rc_values):
        Don't leak the to_reset list.  (#353914, Chris Wilson)
2006-09-09 05:24:29 +00:00
Matthias Clasen 174da39bc4 Don't unnecessarily reset the im context when deleting the selection.
* gtk/gtkentry.c: Don't unnecessarily reset the im context
        when deleting the selection.  (#353803, Alex Larsson)

2
2006-09-09 05:14:47 +00:00
Matthias Clasen c9b15d54f9 Add docs for the parent-set signal. (#353772, Mariano Suárez-Alvarez)
2006-09-09  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtkwidget.c: Add docs for the parent-set signal.
        (#353772, Mariano Suárez-Alvarez)
2006-09-09 05:07:07 +00:00
Jamil Ahmed f2775b533c bn.po: Updated Bengali translation. 2006-09-08 22:30:35 +00:00
Matthias Clasen 4ea89f0897 fix a slypheed crash 2006-09-08 20:05:04 +00:00
Raivis Dejus a193fda540 Updated Latvian translation.
2006-09-08  Raivis Dejus  <orvils@gmail.com>

        * lv.po: Updated Latvian translation.
2006-09-08 08:02:32 +00:00
Vladimer Sichinava 746aed53f8 Updated Georgian trasnaltion 2006-09-08 02:34:56 +00:00
Jamil Ahmed 6cd79b7b8f Updated Bengali Translations. 2006-09-07 11:26:14 +00:00
Pema Geyleg 72146b2f04 *** empty log message *** 2006-09-07 03:05:03 +00:00
Tor Lillqvist 894a2429b9 Merged from HEAD:
2006-09-06  Tor Lillqvist  <tml@novell.com>

	Merged from HEAD:

	* gtk/gtkfilesystemwin32.c: Copy what Kris did to
	gtkfilesystemunix.c
2006-09-06 19:27:13 +00:00
Josep Puigdemont i Casamajó b956599653 Updated Catalan translation. 2006-09-06 16:56:06 +00:00
Matthias Clasen 18ae687952 fix the build 2006-09-06 14:20:02 +00:00
Subhransu Behera 773873d9e7 Updated Oriya Translation 2006-09-06 07:30:58 +00:00
Subhransu Behera 24b3f069bf Added Strings for Updated Oriya Translation 2006-09-06 07:30:36 +00:00
Matthias Clasen d667d39aa2 Simplify and fix reading of ASCII images.
2006-09-06  Matthias Clasen  <mclasen@redhat.com>

	* io-pnm.c: Simplify and fix reading of ASCII images.
2006-09-06 05:07:49 +00:00
Ahmad Riza H Nst 2fc7eb5f8b Updated.
2006-09-06  Ahmad Riza H Nst  <rizahnst@eriagempita.co.id>

        * id.po: Updated.
2006-09-06 03:16:35 +00:00
Subhransu Behera c7fd94f84d Updated Oriya Translation 2006-09-05 11:35:49 +00:00
Subhransu Behera be92f481e8 Added Strings for Updated Oriya Translation 2006-09-05 11:34:08 +00:00
Felix I fd08669049 Tamil Translation updated 2006-09-05 06:14:44 +00:00
Matthias Clasen ed167226a0 bump version 2006-09-05 05:41:34 +00:00
Matthias Clasen 791828790a 2.10.3 2006-09-05 05:36:21 +00:00
Kristian Rietveld 66fa3d512e Merged from HEAD:
2006-09-04  Kristian Rietveld  <kris@imendio.com>

	Merged from HEAD:

	* gtk/gtkfilechooserdefault.c (update_current_folder_get_info_cb):
	if setting the given folder failed, try setting the parent folder
	until we succeed; display an error box at the end.
2006-09-04 21:02:44 +00:00
Kristian Rietveld 37da199d52 Merged from HEAD:
2006-09-04  Kristian Rietveld  <kris@imendio.com>

	Merged from HEAD:

	* gtk/gtkpathbar.c (gtk_path_bar_dispose): don't cancel the
	operations spawned by buttons here,
	(set_button_image_get_info_cb): bail out if button is NULL, but
	do free button_data,
	(button_data_free): only free the data if non NULL (since this
	function can be called multiple times for the same data), cancel
	handle if pending but don't free button_data in this case (will
	happen in the callback).
2006-09-04 20:57:45 +00:00
Kristian Rietveld eba91c5800 Merged from HEAD:
2006-09-04  Kristian Rietveld  <kris@imendio.com>

	Merged from HEAD:

	* 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-04 20:54:41 +00:00
Kristian Rietveld 90fae608af Merged from HEAD:
2006-09-04  Kristian Rietveld  <kris@imendio.com>

	Merged from HEAD:

	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-04 20:49:21 +00:00
Alessio Frusciante 84a0d8c855 Updated Italian translation 2006-09-04 19:45:56 +00:00
Danilo Šegan 1e78692f9f Updated Serbian by Goran Rakić. 2006-09-04 19:43:34 +00:00
Josep Puigdemont i Casamajó 5555e27619 Updated Catalan translation. 2006-09-04 16:23:25 +00:00
Michael Natterer 0a07b6b912 Merged from HEAD:
2006-09-04  Michael Natterer  <mitch@imendio.com>

	Merged from HEAD:

	* gtk/gtkrc.c (rc_parse_token_or_compound)
	(gtk_rc_parse_assignment): serialize floating point values using
	locale-independent functions. (#346751, Frederic Crozat)
2006-09-04 11:25:17 +00:00
Michael Natterer dfd717aacd ja.po msgfmt 0.15 chokes on excess plural forms, remove them.
2006-09-04  Michael Natterer  <mitch@imendio.com>

	* ja.po
	* tr.po: msgfmt 0.15 chokes on excess plural forms, remove them.
2006-09-04 11:16:23 +00:00
Josep Puigdemont i Casamajó efa03b3777 Fixed typos and stuff in Catalan translation. 2006-09-04 10:56:01 +00:00
Kostas Papadimas 4c841fdbf3 Updated Greek translation 2006-09-04 09:46:38 +00:00
Josep Puigdemont i Casamajó 661fa8a11a Updated Catalan translation. 2006-09-04 09:30:33 +00:00
Josep Puigdemont i Casamajó 1c5403b23e Updated Catalan translation. 2006-09-04 09:23:22 +00:00
Mugurel Tudor 676cf00c82 Updated Romanian translation by Mişu Moldovan <dumol@gnome.ro>
2006-09-04  Mugurel Tudor  <mugurelu@gnome.ro>

	* ro.po: Updated Romanian translation by
	Mişu Moldovan <dumol@gnome.ro>
2006-09-04 07:39:12 +00:00
Rajesh Ranjan 2c52434bee udapted hindi 2006-09-04 07:22:06 +00:00
Rahul Bhalerao d893111cd7 Updated translation 2006-09-04 05:55:37 +00:00
Subhransu Behera fa466a8dba Updated Oriya Translation 2006-09-04 05:54:49 +00:00
Subhransu Behera 6bcfa449c3 Added Strings for Updated Oriya Translation 2006-09-04 05:54:28 +00:00
Lucas Rocha 41e5a93efa Updated Brazilian Portuguese translation by Leonardo Ferreira Fontenelle
2006-09-04  Lucas Rocha  <lucasr@gnome.org>

	* pt_BR.po: Updated Brazilian Portuguese translation
	by Leonardo Ferreira Fontenelle <leo.fontenelle@gmail.com>
2006-09-04 05:05:30 +00:00
Subhransu Behera 3b887ee70a Updated Oriya Translation 2006-09-04 04:38:51 +00:00
Subhransu Behera 16ad4f3158 Added Strings for Updated Oriya Translation 2006-09-04 04:33:40 +00:00
Felix I 63165f9e76 Tamil Translation updated 2006-09-04 04:28:33 +00:00
Subhransu Behera 4381382c31 Updated Oriya Translation 2006-09-04 03:36:12 +00:00
Subhransu Behera 4592936719 Added Strings for Updated Oriya Translation 2006-09-04 03:35:52 +00:00
Josep Puigdemont i Casamajó b910aefe38 Updated Catalan translation. 2006-09-03 23:57:52 +00:00
Subhransu Behera d8605bd70a Updated Oriya Translation 2006-09-03 20:44:54 +00:00
Subhransu Behera f7572cc6ec Added Strings for Updated Oriya Translation 2006-09-03 20:44:27 +00:00
Christophe Merlet 28310575d4 Updated French translation. 2006-09-03 18:48:16 +00:00
Kwok-Koon Cheung 1d7fcdaf6c Updated Chinese (Hong Kong) translation. Updated Chinese (Taiwan)
* zh_HK.po: Updated Chinese (Hong Kong) translation.
	* zh_TW.po: Updated Chinese (Taiwan) translation.
2006-09-03 18:21:42 +00:00
Subhransu Behera 90038e9f1b Updated Oriya Translation 2006-09-03 15:36:41 +00:00
Subhransu Behera 2902ac2b7b Added Strings for Updated Oriya Translation 2006-09-03 15:35:50 +00:00
Runa Bhattacharjee 13e73a97eb Added Entry for Bengali India Translation Updation 2006-09-03 14:16:51 +00:00
Runa Bhattacharjee ca6415e2e5 Updated Bengali India Translation 2006-09-03 14:16:13 +00:00
Ani Peter 3bfbc93228 Updated Malayalam translation 2006-09-03 11:51:32 +00:00
Hendrik Richter 001078df1e Updated German translation.
2006-09-03  Hendrik Richter  <hendrikr@gnome.org>

	* de.po: Updated German translation.
2006-09-03 10:14:10 +00:00
Kostas Papadimas 34199573d7 Updated Greek translation 2006-09-03 07:04:11 +00:00
Matthias Clasen 3dc068d85e Fix a typo. (#354035, Mariano Suárez-Alvarez)
2006-09-03  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_class_init): Fix a typo.
	(#354035, Mariano Suárez-Alvarez)
2006-09-03 06:07:20 +00:00
Matthias Clasen d86048284d handle displayname being NULL in some error paths 2006-09-03 05:31:21 +00:00
Åsmund Skjæveland 91afef3a6e Updated Norwegian Nynorsk translation.
2006-09-02  Åsmund Skjæveland  <aasmunds@fys.uio.no>

	* nn.po: Updated Norwegian Nynorsk translation.
2006-09-02 23:46:23 +00:00
Åsmund Skjæveland 8b1ac94b61 Updated Norwegian Nynorsk translation.
2006-09-03  Åsmund Skjæveland  <aasmunds@fys.uio.no>

	* nn.po: Updated Norwegian Nynorsk translation.
2006-09-02 23:42:02 +00:00
Åsmund Skjæveland 7b984a6b13 Updated Norwegian Nynorsk translation.
2006-09-02  Åsmund Skjæveland  <aasmunds@fys.uio.no>

	* nn.po: Updated Norwegian Nynorsk translation.
2006-09-02 18:15:48 +00:00
Kostas Papadimas 2ca3e82651 Updated Greek translation 2006-09-02 10:10:07 +00:00
Inaki Larranaga 585efae27e Updated Basque translation.
2006-09-02  Inaki Larranaga  <dooteo@euskalgnu.org>

	* eu.po: Updated Basque translation.
2006-09-02 09:13:37 +00:00
Subhransu Behera 4180f905ac Updated Oriya Translation 2006-09-02 02:58:36 +00:00
Subhransu Behera 67373466d0 Added Strings for Updated Oriya Translation 2006-09-02 02:56:26 +00:00
Abel Cheung 64c0648248 Added 'ang' 'dz' to ALL_LINGUAS.
2006-09-01  Abel Cheung  <abel@oaka.org>

	* configure.in: Added 'ang' 'dz' to ALL_LINGUAS.
2006-09-01 18:11:19 +00:00
Kwok-Koon Cheung 44356c97a6 Resurrected from gtk-2-4 branch.
* ang.po: Resurrected from gtk-2-4 branch.
2006-09-01 17:34:43 +00:00
Runa Bhattacharjee a60bbbd8c5 Added Entry for Bengali India Translation Updation 2006-09-01 15:31:51 +00:00
Runa Bhattacharjee 8140a1f0d0 Updated Bengali India Translation 2006-09-01 15:31:35 +00:00
Runa Bhattacharjee 02c8458ba9 Added Entry for Bengali India Translation Updation 2006-09-01 04:39:14 +00:00
Runa Bhattacharjee c4b0735767 Updated Bengali India Translation 2006-09-01 04:38:59 +00:00
Matthias Clasen e130d50bdf Send printer-list-done on error.
2006-08-31  Matthias Clasen  <mclasen@redhat.com>

	* modules/printbackends/cups/gtkprintbackendcups.c (cups_request_printer_list_cb): Send printer-list-done on error.
2006-08-31 17:51:01 +00:00
Ani Peter a203bebe44 Updated Malayalam translation 2006-08-31 11:15:41 +00:00
Felix I c4474c62c4 Tamil Translation updated 2006-08-31 05:52:06 +00:00
Ani Peter f06a9cb837 Updated Malayalam 2006-08-31 04:52:00 +00:00
Matic Zgur b12c1748d8 Updated Slovenian translation.
2006-08-31  Matic Zgur  <mr.zgur@gmail.com>

	* sl.po: Updated Slovenian translation.
2006-08-30 22:33:02 +00:00
Gabor Kelemen 1e04b9eb04 Translation updated.
2006-08-30  Gabor Kelemen  <kelemeng@gnome.hu>

	* hu.po: Translation updated.
2006-08-30 12:53:34 +00:00
Lucas Rocha a033828c62 Small fix on Brazilian Portuguese translation.
2006-08-30  Lucas Rocha  <lucasr@gnome.org>

	* pt_BR.po: Small fix on Brazilian Portuguese translation.
2006-08-30 12:46:46 +00:00
Daniel Nylander b72141606f Updated Swedish translation (again).
2006-08-29  Daniel Nylander <po@danielnylander.se>

	* sv.po: Updated Swedish translation (again).
2006-08-29 19:27:02 +00:00
Emmanuele Bassi e0e8a51964 Backport from HEAD
2006-08-29  Emmanuele Bassi  <ebassi@gnome.org>

	Backport from HEAD

	* gtk/gtkrecentchoosermenu.c
	(gtk_recent_chooser_menu_set_current_uri): Break when an item
	is found and activated. (#353449, based on a patch from Jan Arne
	Petersen)
2006-08-29 18:48:46 +00:00
Paolo Borelli aa3340afa1 add this file from HEAD to fix the build.
2006-08-29  Paolo Borelli  <pborelli@katamail.com>

	* tests/autotestfilesystem.c: add this file from HEAD to fix
	the build.
2006-08-29 15:36:37 +00:00
Daniel Nylander 2f080857e0 Updated Swedish translation.
2006-08-29  Daniel Nylander <po@danielnylander.se>

	* sv.po: Updated Swedish translation.
2006-08-29 06:17:25 +00:00
Matthias Clasen 78789a5e0a fix printer list polling 2006-08-28 17:52:35 +00:00
Michael Natterer ced0be686f Merged from HEAD:
2006-08-28  Michael Natterer  <mitch@imendio.com>

	Merged from HEAD:

	* 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-28 16:36:51 +00:00
Christophe Merlet a66016df2c Updated French translation. 2006-08-27 23:40:37 +00:00
Hendrik Richter c3b3696b5c Updated German translation.
2006-08-27  Hendrik Richter  <hendrikr@gnome.org>

	* de.po: Updated German translation.
2006-08-27 18:51:31 +00:00
Gintautas Miliauskas 3d99a27f0e Updated Lithuanian translation. 2006-08-27 13:11:30 +00:00
Josep Puigdemont i Casamajó dc91cce4c2 Updated Catalan translation. 2006-08-26 21:39:40 +00:00
Theppitak Karoonboonyanan 4f9d9ef3bd Fixed plural strings.
2006-08-26  Theppitak Karoonboonyanan  <thep@linux.thai.net>

	* th.po: Fixed plural strings.
2006-08-26 16:40:25 +00:00
Matthias Clasen 2b343d143f Don't leak pixbufs. (#352264, Ross Burton)
2006-08-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkstatusicon.c (gtk_status_icon_reset_image_data):
	Don't leak pixbufs.  (#352264, Ross Burton)
2006-08-26 06:26:05 +00:00
Matthias Clasen 2b0c63edda Don't leak PangoAttributes. (#352391, Paolo Borelli)
2006-08-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtklinkbutton.c (set_link_underline): Don't leak
	PangoAttributes.  (#352391, Paolo Borelli)
2006-08-26 06:16:12 +00:00
Matthias Clasen fc092f6f08 Query range style properties only on range widgets. (#352277, Benjamin
2006-08-26  Matthias Clasen  <mclasen@redhat.com>

	* pixbuf-draw.c (reverse_engineer_stepper_box):
	Query range style properties only on range
	widgets.  (#352277, Benjamin Otte)
2006-08-26 06:00:58 +00:00
Matthias Clasen 482f74d636 Add an example of automatic scrolling, thanks to Yevgen Muntyan. (#351206)
2006-08-25  Matthias Clasen  <mclasen@redhat.com>

	* demos/gtk-demo/Makefile.am:
	* demos/gtk-demo/textscroll.c: Add an example of automatic
	scrolling, thanks to Yevgen Muntyan.  (#351206)
2006-08-26 02:44:39 +00:00
Artur Flinta 063ff75ae5 Updated Polish translation by GNOME PL Team.
2006-08-25  Artur Flinta  <aflinta@cvs.gnome.org>

	* pl.po: Updated Polish translation by GNOME PL Team.
2006-08-25 09:24:08 +00:00
Ilkka Tuohela fdf9274476 Updated Finnish translation 2006-08-25 09:08:37 +00:00
Leonid Kanter 809358f3fa Updated Russian translation 2006-08-24 16:50:53 +00:00
Josep Puigdemont i Casamajó 152cb78d4d Updated Catalan translation. 2006-08-24 00:34:15 +00:00
Tor Lillqvist 67b2f9bdac Slight edit of my last entry. 2006-08-23 23:24:38 +00:00
Federico Mena Quintero f9f34aef79 Renamed to gtk_file_system_create() so that it will get exported and we
2006-08-23  Federico Mena Quintero  <federico@novell.com>

	* gtk/gtkfilesystem.[ch] (_gtk_file_system_create): Renamed to
	gtk_file_system_create() so that it will get exported and we can
	use it in the test program.

	* gtk/gtk.symbols: Added gtk_file_system_create.

	* gtk/gtkfilechooserdefault.c (set_file_system_backend): Use
	gtk_file_system_create().

	* tests/autotestfilesystem.c: New file with automatic tests for
	the async callbacks and cancelation policy of GtkFileSystem.

	* tests/Makefile.am: Added autotestfilesystem.
2006-08-23 21:59:18 +00:00
Matthias Clasen 12382e191a fix printer options 2006-08-23 19:34:21 +00:00
Tor Lillqvist 8dc75116e1 Revert accidental translatable string change, use same string for warning
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 08:50:27 +00:00
Tor Lillqvist 153bfe9617 Fix logic at the end of strings.
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 08:31:02 +00:00
Matthias Clasen e3a70e1790 Maintain a hash table of live handles and check that we have no
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 06:13:42 +00:00
Subhransu Behera 87fb4e55ba Updated Oriya Translation 2006-08-23 05:19:02 +00:00
Subhransu Behera 53c0a2e9e1 Added Strings for Updated Oriya Translation 2006-08-23 05:18:38 +00:00
480 changed files with 191844 additions and 130111 deletions
+2600
View File
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -4,7 +4,7 @@ Prerequisites
GTK+ requires the following packages:
- The GLib, Pango, ATK and cairo libraries, available at the same
location as GTK+. GTK+ 2.10.2 requires at least GLib 2.12,
location as GTK+. GTK+ 2.10.12 requires at least GLib 2.12,
Pango 1.13, ATK 1.9 and cairo 1.2.
- The TIFF, PNG, and JPEG image loading libraries. You most
@@ -18,8 +18,8 @@ GTK+ requires the following packages:
Simple install procedure
========================
% gzip -cd gtk+-2.10.2.tar.gz | tar xvf - # unpack the sources
% cd gtk+-2.10.2 # change to the toplevel directory
% gzip -cd gtk+-2.10.12.tar.gz | tar xvf - # unpack the sources
% cd gtk+-2.10.12 # change to the toplevel directory
% ./configure # run the `configure' script
% make # build GTK+
[ Become root if necessary ]
+5 -1
View File
@@ -134,7 +134,11 @@ gdk-$(GDKTARGET)-2.0-uninstalled.pc: gdk-2.0-uninstalled.pc
cp gdk-2.0-uninstalled.pc gdk-$(GDKTARGET)-2.0-uninstalled.pc
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA= gdk-pixbuf-2.0.pc gdk-$(GDKTARGET)-2.0.pc gtk+-$(GDKTARGET)-2.0.pc gtk+-unix-print-2.0.pc
pkgconfig_DATA= gdk-pixbuf-2.0.pc gdk-$(GDKTARGET)-2.0.pc gtk+-$(GDKTARGET)-2.0.pc
if OS_UNIX
pkgconfig_DATA += gtk+-unix-print-2.0.pc
endif
DISTCLEANFILES = \
gtk+-unix-print-2.0.pc \
+440
View File
@@ -1,3 +1,443 @@
Overview of Changes from GTK+ 2.10.11 to 2.10.12
================================================
* Fixed bugs:
379414 file chooser warnings when changing path in the entry
418585 GtkFileChooserDefault sizing code is not DPI independent
419568 Crash in search if start with special letter
435062 build dies with icon cache validation
379399 Segfault to call gtk_print_operation_run twice.
387889 cups backend has problems when there are too many printers
418531 invalid read to gtkicontheme.c gtk_icon_theme_lookup_icon...
423916 crash in color scheme code
424042 Segmentation fault while quickly pressing Alt+arrows
415260 Protect against negative indices when setting values in G...
419171 XGetVisualInfo() may not set nxvisuals
128852 Gdk cursors don't look good on win32
344657 Ctrl-H doesn't toggle "Show Hidden Files" setting
345345 PrintOperation::paginate is not emitted for class handler
347567 GtkPrintOperation::end-print is not emitted if it's cance...
369112 gtk_ui_manager_add_ui should accept unnamed separator
392015 Selected menu item invisible on Windows Vista
399253 MS-Windows Theme Bottom Tab placement rendering glitches
399425 gtk_input_dialog_fill_axes() adds child to gtkscrolledwin...
403251 [patch] little memory leak in GtkPrintJob
403267 [patch] memory leak in GtkPageSetupUnixDialog
403470 MS-Windows Theme tab placement other than on top leaks a ...
404506 Windows system fonts that have multi-byte font names cann...
405089 Incorrect window placement for GtkEventBox private window
405515 Minor leak in gtkfilesystemmodel.c
405539 gdk_pixbuf_save() for PNG saver can return FALSE without ...
415681 gdk_window_clear_area includes an extra line and column o...
418219 GtkRecentChooser should apply filter before sorting and c...
418403 Scroll to printer after selecting it from settings
421985 _gtk_print_operation_platform_backend_launch_preview
421990 gtk_print_job_get_surface
421993 gtk_print_operation_init
423064 Conditional jump or move depends on uninitialised value(s...
423722 Fix printing header in gtk-demo
424168 gtk_print_operation_run on async preview
425655 Don't install gtk+-unix-print-2.0.pc on non-UNIX platforms
425786 GDK segfaults if XineramaQueryScreens fails
428665 Lpr Backend gets stuck in infinite loop during gtk_enumer...
429902 GtkPrintOperation leaks cairo contextes
431997 First delay of GdkPixbufAnimationIter is wrong
433242 Inconsistent scroll arrow position calculations
433972 Placing gtk.Expander inside a gtk.TextView() changes gtk....
434261 _gtk_toolbar_elide_underscores incorrectly handles some s...
383354 ctrl-L should make 'Location' entry disappear
418673 gtk_recent_manager_add_item
429732 gtk_accel_group_finalize accesses invalid memory
435028 WM_CLIENT_LEADER is wrong on the leader_window
431067 Background of the header window is not updated
338843 add recent files support inside the ui manager
148535 add drop shadow to menus, tooltips, etc. under Windows XP
* Updated translations:
Belarusian Latin (be@latin)
Dzonka (dz)
Greek (el)
Spanish (es)
Basque (eu)
Italian (it)
Galego (gl)
Dutch (nl)
Turkish (tr)
Overview of Changes from GTK+ 2.10.10 to 2.10.11
================================================
* Redo a GtkNotebook change that broke tabbed
browsing in Epiphany
Overview of Changes from GTK+ 2.10.9 to 2.10.10
===============================================
* Bugs fixed:
329450 Crash on IM switch ... (was already reported earlier)
406757 crash in Movie Player: Souhaite lire un DVD ave...
382565 GtkTextView invisible text crash
402453 crash to IA__gdk_x11_window_set_user_time
409101 invalid read to gtkicontheme.c insert_theme(), might caus...
413032 Locking issue with xcb in IA__gdk_display_sync
402131 Theme color scheme is sometimes ignored on theme switches
405327 io-jpeg can return FALSE without setting a GError
124045 GtkExpander should draw the focus around the arrow when t...
143213 shorcut selector on gtkfilechooser use too much horizonta...
151169 Filechooser comes up too big
153785 Filechooser expands horizontally
347106 tga images upside down
356515 [a11y] Orca unable to read items in Evolution "Select a F...
377164 Strange numbers in GtkRecentChooserMenu
386618 Resizing columns need focusing first
389765 Win32: Resizing a window does not repaint it often enough...
393599 Previous and Next menus not active in a folder with *.ico...
399907 Memory leak in gtk_page_setup dialog
402565 [PATCH]GtkPrintBackendFile leaks string
402806 GtkAboutDialog showing empty "contributors"
403139 Leak reported by valgrind
403255 gdk_pixbuf_loader_close returns TRUE but sets *error
403409 Add a helpful comment on GtkCellRendererText:alignment
403896 gtk+-2.10.9 fails to compile against win32api-3.8 due to ...
405539 gdk_pixbuf_save() for PNG saver can return FALSE without ...
405696 Make parent menu item insensitive if no items are to be s...
409357 leak in color scheme code
412221 Icons not working with Win32 file-system backend.
412596 Setting the colour scheme property of GtkSettings has no ...
413492 Minor build tweaks
413664 Dragging tab greys out chat windows
415645 Fix and clean up GtkCellRendererAccel
310522 Buttons flicker and redraw slowly
396899 glib mentions non-existing PATCH bugzilla keyword
408018 GtkTextBuffer memory leak
414875 Rendering the first icon triggers a style reset
325477 Just make File Chooser window bigger
414975 the popped up menu cannot have special theming
331369 Menu short cuts do not work
350988 crash with File Open in non-exisiting directory
364946 crash in gtk_tree_model: Adding new account, or entering ...
351671 textview should stop selecting when losing focus
382904 Application crashed in gtk+
385637 crash in testiconview
396703 crash in testnouiprint
396805 GtkTextView: crash on unsetting the GtkTextBuffer when in...
410565 gnome-terminal crashes editing current profile
335796 Gtk accelerator key event can't be passed to other widget...
356515 [a11y] Orca unable to read items in Evolution "Select a F...
416525 gtkfilesystemwin32.c: C99 declaration
372449 no need to emphasise the "Location" label
402144 spinbutton window background not reset on theme switch
* New and updated translations (ar,be@latin,bg,ca,de,
dz,el,en_GB,eo,fi,fr,gu,hu,ja,ko,lt,mk,ml,nb,nl,pl,
pt,pt_BR,ro,ru,sl,sq,sr,sr@Latn,sv,ta,th,uk,vi,zh_CN,
zh_HK,zh_TW)
Overview of Changes from GTK+ 2.10.8 to 2.10.9
==============================================
* Printing support:
- Fix build with cups 1.1
* Recent menu support:
- Fix a double-free bug that causes panel crashes
* Bugs fixed:
394190 crash when opening a gif with a manipulated header
363437 gnome-panel crash to gtkrecentmanager code
143460 Missed tablet button click/release events on win32 (wintab)
336819 GTK won't compile with mingw on linux
397330 GTK+ 2.10.7 source release does not have 'gtksocket-stub....
397581 Build is failing (typo)
397621 io-png.c: Don't load iconv for ASCII text chunks
397783 Initial focus in calendar
Overview of Changes from GTK+ 2.10.7 to 2.10.8
==============================================
* Bugs fixed:
393102 _gtk_modules_init assumes display is not opened instead o...
395326 Gedit crashed no open text documents
394855 impossible to build the directfb version
396161 GtkUIManager crashing on unknown action in ui-file
334168 Single '~' in location entry doesn't go to $HOME
363147 GTKFileChoser Does not Show Desktop and Home after Uncol...
390746 Custom tab title not set correctly on Microsoft Windows
393813 Segfault in gtk_text_view_set_border_window_size()
395316 File leak in gtk-demo
395830 Wrong named icon lookup when requested size matches two s...
396074 libgtk should link against Xfixes
396160 Memory leak in gtkselection
396175 wrong GtkWarning: Input method gtk-im-context-simple shou...
396470 Missing slider redraw in GtkRange if activate-slider is set
153828 Filechooser does not remember state
357303 Gnome Main Menu Recent Documents extended by long file na...
394000 Documentation error for GdkPixdata
392504 The crosshair mouse cursor look a bit funny
393255 GtkNotebook: Menu label centered instead of left aligned
395045 gtk_radio_button_focus: Harmless compiler warning
* Updated translations (bg,lt,sl)
Overview of Changes from GTK+ 2.10.6 to 2.10.7
==============================================
* GtkNotebook
- Tab reordering is a less intrusive
- Rendering fixes on win32
* GtkTreeView
- Column resizing works correctly in right-to-left languages
- Many scrolling bugs have been fixed
* GtkTextView:
- Improved scrolling during DND.
* GtkRecentManager is more robust against bad URIs
* Print support:
- The cups backend works with 'BrowseShortNames Off'
in the cups configuration
- Multi-valued options are properly passed to cups
- Fix build with cups 1.3
- A few IPP compliance issues have been fixed
- Make the lpr backend work on BSD
* Input methods:
- GtkEntryCompletion works with input methods
- The Thai input method has been replace by a functional
Thai and Lao input method based on libthai
* Accessibility support:
- GtkMessageDialog sets accessible name role explicitly
* Theme support:
- The semantics of the gtk-color-scheme setting has been
slightly changed. Values from rc files are still merged
together, but the X setting just overrides the prior table.
* GdkPixbuf:
- gdk_pixbuf_loader_write() now closes the loader when
returning FALSE, as documented
- The BMP loader supports more BMP variants, including
transparency and 10-bit channels.
* Bugs fixed:
122688 modal dialog popup + drag in progress = mouse freeze
315732 gnome-session crash on login
335622 Click Description field causes Evolution to crash.
357050 Crash replacing \n\n with \n or undoing after paste
359537 printing custom page
373466 crash in Text Editor:
388041 crash in Open Folder: nada
390873 crash in Text Editor: I had just opened it up ...
367529 gtk_combo_box_set_model(combo, NULL) generates warning wh...
381499 xdgmime requires getc_unlocked, darwin 6 lacks
349119 GtkUIManager crashes on wrong action names in an XML file
363437 gnome-panel crash to gtkrecentmanager code
366782 GtkTreeView "expand_all" can crash if a node's children a...
374378 Crash as GTK tries to blink cursor in defocused spinbutto...
381236 apps crash when using a mouse cursor theme as icon theme
320465 gtk_window_parse_geometry is almost completely broken
355350 Page Setup, Range and Copy information ignored
387170 Fairly large leak in gtk+
390159 printing with BSD lpr does not work properly
64998 GtkEntry - gtk_entry_set_text emits "changed" twice
92387 unfriendly drag-n-drop in textview - scrolls too fast
172188 io-bmp.c should sanity check the size given by the OffBit...
304482 GtkComboBoxEntry editable entry should be centered vertic...
315440 Problem with gtkpaned inside gtknotebook(mouse wheel over...
317064 GtkTextBuffer signals documentation
317080 Incorrect gtk.immodules might make GTK+ lose its translation
330683 Changing selection by up/down does not move to top/bottom.
335473 gtk_file_chooser_button_new_with_dialog() is too strict
337261 about dialogue initial focus
339752 Please use LOCALE_IFIRSTDAYOFWEEK for GtkCalendar on Windows
339756 LANG and LC_* environment variables should affect the C r...
349638 Cannot Compose (multi_key) polish l (or L) with stroke, "ł"
350342 Alt+Left/Right reorders tabs if not swallowed by Gecko
351678 Notebooks not with PositionType.Top drawn incorrectly
351679 Notebooks drawn with extra line below tab in MS-Windows t...
352276 Location of G_GNUC_INTERNAL breaks Solaris build
352435 GtkProgressBar text rendering errors
352738 gtk_tree_view_column_set_sort_indicator() fails to show a...
352795 configure.in: Bug in "checking Whether to write dependenc...
353438 Add tiny extra docs to gdk_beep
353709 GtkEntry shift-click inside selected text can behave funny
354495 Compose key doesn't work on location entry
357578 No grid lines are drawn
357974 Crashes (failed assertatin)
359231 validate_visible_area() sometimes passes mismatches (tree...
359542 scale capability for Unix print dialog box can not be set...
359581 GtkCellView clobbers parent's GdkWindow on style-set
360350 leak in gtk_radio_button_focus
362439 gtkicontheme::pixbuf_supports_svg leaks GList
362614 gtk_widget_show does not check for NULL arg
363191 gtk_tree_view_set_cursor() does not make row fully visible
364514 gtk leaks GDI objects on the win32 classic look and feel
364866 CUPS http_t type is becoming opaque
364868 GDI resource leak in GtkStatusIcon on win32
365031 gedit crashes with .recently-used.xbel file
365047 GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT is never used in Gt...
365388 gdk-pixbuf/Makefile.am: pixbufloader_pcx.def is not distr...
366548 Clicking removed Focus frame
370395 leak in gtk_rc_parse_icon_source
374420 symbolic colors not reset correctly
376094 Add gtk-doc on GtkCellRendererText::edited
376535 crashes in gtk_drag_source_info_destroy()
377349 gtk_status_icon_position_menu is not implemented for Win32
378852 Fixes for notebook tab detaching
379503 possible crash in gtk_default_draw_flat_box
379803 Bad g_return_if_fail in gdkinput-xfree.c
380421 Enabling extension events stops GDK_2BUTTON_PRESS
382314 gtkpagesetup leaks when setting new paper size
382369 some builtin papers have wrong display names
383373 child properties getter returns not-NULL array, but no sp...
383407 gtk_entry_set_text does not check for completion->priv->c...
383435 expose improvements to GtkNotebook
384168 gdk x11 backend doesn't build on Darwin
386694 set_active_iter is called on rows with children
388123 _gtk_file_chooser_embed_set_delegate() docs typo.
389183 Typo in API docs (s/expansive/expensive)
389194 mem leaks in gtkpagesetupunixdialog
390468 Unbreak GtkNotebook keybindings
390872 Scroll timeout isn't removed when widget destroyed
391229 gtkprintoperation-win32.c: windows.h with WIN32_LEAN_AND_...
172584 32 bpp windows bitmap files with 10-11-10 RGB masks are d...
323146 gtk_button_grab_notify clears button->in_button (shouldn't)
340135 page switching with keynav 'stuck'
341158 Gdk-pixbuf programs need glib, but are not linked with it
343330 gdk_pixbuf_new has redundant size checks
343956 drawing problem in gtkassistant
345094 gtk_notebook_insert_page can return wrong position
353962 Tabs are all the same height
360112 Wrong documentation for gtk_file_chooser_set_select_multiple
365364 gtksettings doesn't list printpreview settings
371756 GtkTreeView cursor not easily moved when set to GTK_SELEC...
378462 En Dash Compose Keystrokes Yield an Em Dash Character
389581 The interactive search window disappears during typing
358864 Shows "xterm" cursor when insensitive
385672 calendars draw arrows pointing to the right sligthly misp...
391523 IPP glitches in GtkPrint
391725 gtkicontheme::load_themes attempts to open dir after ENOENT
58389 Add some method of cancellation to GtkRange?
81031 immodules for Thai
152620 Small icon (hIconSm member)
159764 handles of GtkHandleBox are always drawn vertically
348108 Refleaks in gtk-demo
392227 GtkEntry::recompute_idle_func operates on widget->window=...
164494 Create folder text entry widget creates the folder when i...
332604 GtkLabel cannot have an alignment and be ellipsized in 2....
362406 Breakage from process_all_updates() in gtkwindow.c
392191 GtkFileChooser outputs assertions when create folder butt...
392315 gdk_drawable_get_size() call in unrealized GtkEntry
392457 GtkAssistant sometimes forgets to reset current_page whil...
392532 valgrindify use of XSendEvent
332266 gdk_draw_layout fails for coordinates >= 2^21
346616 Selected item not visible in the popup in list mode
392646 Fix cross-compilation
393124 misdrawing of tabs
393166 background box of the "bin_window" not placed correctly
* Updated translations (ar,as,bn_IN,ca,en_CA,en_GB,
es,et,fi,fr,gu,he,hi,hy,hu,ka,mk,ml,mr,nb,nl,
or,pl,pt,si,sq,sv,ta,th)
Overview of Changes from GTK+ 2.10.5 to 2.10.6
==============================================
* Bugs fixed:
358931 2.10.5 build issue due to a typo
357280 Compile crashes
359053 Reduce relocations
359052 gtk_print_settings_get_duplex() return wrong
value for one of vertical setting
Overview of Changes from GTK+ 2.10.4 to 2.10.5
==============================================
* Bugs fixed:
358405 gtk_file_chooser_button_new
353736 crash in Document Viewer: I had just viewed the pr...
354849 Unable to build gtk+ under Solaris 9
357280 Compile crashes
357454 leak in _gtk_menu_is_empty()
357566 [x11] Invalid unref for input windows
357791 gtk_tree_selection_get_selected_rows does not always fill model
358351 expander with multi-line label doesn't properly respond to mouse
* Updated translations (dz,et,gl,ka)
Overview of Changes from GTK+ 2.10.3 to 2.10.4
==============================================
* GtkFileChooser works better with remote bookmarks
* Windows theme engine improvements
* Bugs fixed:
116626 Use keyboard map contents to detect RTL groups
353772 Add doc blurb for GtkWidget::parent-set
353803 GtkEntry unneccesarily resets im context at commit
353914 Leak of to_reset list from _gtk_settings_reset_rc_values
354043 Renew the typeahead search timeout when using scrollwheel
354687 PLT-reduction stuff not quite working
354887 GtkFileChooserButton displays unnecessary authentication
dialogs
355308 gtk_tree_view_set_grid_lines notifies wrong property
355732 Combobox leaks treeview in list mode
355134 Type in string
355961 Typo in documentation for GtkPrintContext
340201 Enhancement of Wimp theme engine.
357132 Setting an RGBA colormap using gtk_widget_set_colormap()
on any widget at application start (before other widgets
are used) causes the running app to revert to the stock
icon theme
* Updated translations (bg,bn,bn_IN,de,dz,el,
en_GB,et,fi,gu,hi,id,ka,lt,lv,mk,nb,nl,nn,or,
ru,sl,sv,ta,th)
Overview of Changes from GTK+ 2.10.2 to 2.10.3
==============================================
* GtkFileChooser:
- Fix several Win32-specific problems
- Add automated tests for GtkFileSystem
- Make overwrite confirmation work again
* Printing support:
- Fix confusion between names and values in combo boxes
- Poll for printer list updates in the cups backend
* Add an automatic scrolling example to gtk-demo
* Bugs fixed:
354004 Use of g_warning("%s", NULL) after failing to
open a display
346751 symbolic colors can't be use in properties
352264 gtk_status_icon_set_from_pixbuf leaks the old
pixbuf
352391 small link button leak
353449 A break is missing in
gtk_recent_chooser_menu_set_current_uri
329604 do not scroll on copy to clipboard
354035 Typo in the GtkWidget::drag-drop doc blurb
* Translation updates (ang,bn_IN,ca,de,dz,el,eu,fi,
fr,hi,hu,it,ja,lt,ml,mr,nn,or,pl,pt_BR,ro,ru,sl,
sr,sr@Latn,sv,ta,th,tr,vi,zh_CN,zh_HK,zh_TW)
Overview of Changes from GTK+ 2.10.1 to 2.10.2
==============================================
+1 -1
View File
@@ -1,7 +1,7 @@
General Information
===================
This is GTK+ version 2.10.2. GTK+ is a multi-platform toolkit for
This is GTK+ version 2.10.12. GTK+ is a multi-platform toolkit for
creating graphical user interfaces. Offering a complete set of widgets,
GTK+ is suitable for projects ranging from small one-off projects to
complete application suites.
+80 -45
View File
@@ -1,45 +1,79 @@
The Win32 backend in GTK+ is not as stable or correct as the X11
one.
The Win32 backend in GTK+ is not as stable or correct as the X11 one.
For prebuilt runtime and developer packages see
http://www.gimp.org/win32/downloads.html .
There is also a gtk-1-3-win32-production branch of GTK+ that was
branched off from before the addition of the no-flicker and other
functionality that was new in GTK+ 2.0.0. The vesion number used for
that branch is 1.3.0. It corresponds most closely to GTK 1.2.7 on
Unix. For new code, you shouldn't be using that.
http://ftp.gnome.org/pub/gnome/binaries/win32/
Building GTK+ on Win32
======================
There are two ways to build GTK+ for win32.
First you obviously need developer packages for the compile-time
dependencies: Pango, atk, glib, gettext-runtime, libiconv, libpng,
zlib, libtiff at least. See
http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies .
1) Use the autoconf-generated configure script, and the resulting
Makefiles (which use libtool and gcc to do the compilation). I use
this myself, but it can be hard to setup correctly.
After installing the dependencies, there are two ways to build GTK+
for win32.
Personally I run configure with:
CC='gcc -mpentium -fnative-struct' CPPFLAGS='-I/target/include' CFLAGS=-O2 LDFLAGS='-L/target/lib' ./configure --disable-static --prefix=/target --with-gdktarget=win32 --with-wintab=/src/wtkit126 --with-ie55=/src/workshop/ie55_lib --host=i386-pc-mingw32
1) GNU tools, ./configure && make install
-----------------------------------------
Then, in theory, you can just say "make", like on Unix. In reality,
there are a few hickups that require manual intervention, and it's
best to run make separately in each subdirectory. At least for me,
when libtool creates an .exe file, it puts the real .exe in the .libs
directory, and leaves a wrapper .exe in the work directory. For some
reason that wrapper doesn't work for me, it doesn't do anything. So, I
always do a "cp .libs/*.exe ." after running a make that has produced
some exes.
This requires you have mingw and MSYS.
Another issue is with the gdk-pixbuf.loaders file. It's probably best
to do a "make install" in the gdk-pixbuf directory, and let that set
up a mostly correct gdk-pixbuf.loaders in the target directory. Then
copy that back to the source directory. It's needed in gtk/stock-icons
where make runs gdk-pixbuf-csource.
Use the configure script, and the resulting Makefiles (which use
libtool and gcc to do the compilation). I use this myself, but it can
be hard to setup correctly.
Etc, you get the idea. It can be a bit of a pain.
The full script I run to build GTK+ 2.10 unpacked from a source
distribution is as below. This is from bulding GTK+ 2.10.9
2) Use the Microsoft compiler, cl and Make, nmake. Say nmake -f
MOD=gtk+
VER=2.10.9
THIS=$MOD-$VER
HEX=`echo $THIS | md5sum | cut -d' ' -f1`
TARGET=c:/devel/target/$HEX
DEPS="`/devel/src/tml/latest.sh glib atk cairo pango`"
sed -e 's/need_relink=yes/need_relink=no # no way --tml/' <ltmain.sh >ltmain.temp && mv ltmain.temp ltmain.sh
usedev
usemsvs6
MY_PKG_CONFIG_PATH=""
for D in $DEPS; do
PATH=/devel/dist/$D/bin:$PATH
MY_PKG_CONFIG_PATH=/devel/dist/$D/lib/pkgconfig:$MY_PKG_CONFIG_PATH
done
PKG_CONFIG_PATH=$MY_PKG_CONFIG_PATH:$PKG_CONFIG_PATH CC='gcc -mtune=pentium3 -mthreads' CPPFLAGS='-I/opt/gnu/include -I/opt/gnuwin32/include -I/opt/misc/include' LDFLAGS='-L/opt/gnu/lib -L/opt/gnuwin32/lib -L/opt/misc/lib -Wl,--enable-auto-image-base' LIBS=-lintl CFLAGS=-O2 ./configure --with-gdktarget=win32 --with-wintab=/devel/src/wtkit126 --with-ie55=/devel/src/workshop/ie55_lib --enable-debug=yes --disable-gtk-doc --disable-static --prefix=$TARGET &&
libtoolcacheize &&
unset MY_PKG_CONFIG_PATH &&
PATH=/devel/target/$HEX/bin:.libs:$PATH make install &&
(cd $TARGET/bin; strip --strip-unneeded *.dll *.exe) &&
(cd $TARGET/lib/gtk-2.0/2.10.0/loaders; strip --strip-unneeded *.dll) &&
(cd $TARGET/lib/gtk-2.0/2.10.0/immodules; strip --strip-unneeded *.dll) &&
(cd $TARGET/lib/gtk-2.0/2.10.0/engines; strip --strip-unneeded *.dll) &&
PATH=$TARGET/bin:$PATH gdk-pixbuf-query-loaders >$TARGET/etc/gtk-2.0/gdk-pixbuf.loaders &&
grep -v -E 'Automatically generated|Created by|LoaderDir =' <$TARGET/etc/gtk-2.0/gdk-pixbuf.loaders >$TARGET/etc/gtk-2.0/gdk-pixbuf.loaders.temp &&
mv $TARGET/etc/gtk-2.0/gdk-pixbuf.loaders.temp $TARGET/etc/gtk-2.0/gdk-pixbuf.loaders &&
grep -v -E 'Automatically generated|Created by|ModulesPath =' <$TARGET/etc/gtk-2.0/gtk.immodules >$TARGET/etc/gtk-2.0/gtk.immodules.temp &&
mv $TARGET/etc/gtk-2.0/gtk.immodules.temp $TARGET/etc/gtk-2.0/gtk.immodules &&
./gtk-zip.sh &&
(cd /devel/src/tml && zip /tmp/$MOD-dev-$VER.zip make/$THIS.make) &&
manifestify /tmp/$MOD*-$VER.zip
You should not just copy the above blindly. There are some things in
the script that are very specific to *my* build setup on *my* current
machine. For instance the "latest.sh" script, the "usedev" and
"usemsvs6" shell functions, the /devel/dist folder. The above script
is really just meant for reference, to give an idea. You really need
to understand what things like PKG_CONFIG_PATH are and set them up
properly after installing the dependencies before building GTK+.
As you see above, after running configure, one can just say "make
install", like on Unix. A post-build fix is needed, running
gdk-pixbuf-query-loaders once more to get a correct gdk-pixbuf.loaders
file.
2) Microsoft's tools
--------------------
Use the Microsoft compiler, cl and Make, nmake. Say nmake -f
makefile.msc in gdk and gtk. Be prepared to manually edit various
makefile.msc files, and the makefile snippets in build/win32.
@@ -47,10 +81,10 @@ Alternative 1 also generates Microsoft import libraries (.lib), if you
have lib.exe available. It might also work for cross-compilation from
Unix.
Note that I use method 1 myself. Hans Breuer has been taking care of
the MSVC makefiles. At times, we disagree a bit about various issues,
and for instance the makefile.msc files will not produce identically
named DLLs and import libraries as the "autoconfiscated" makefiles and
I use method 1 myself. Hans Breuer has been taking care of the MSVC
makefiles. At times, we disagree a bit about various issues, and for
instance the makefile.msc files might not produce identically named
DLLs and import libraries as the "autoconfiscated" makefiles and
libtool do. If this bothers you, you will have to fix the makefiles.
Using GTK+ on Win32
@@ -78,16 +112,17 @@ flag to configure if you use that. If you use nmake and you don't care
for Wintab, undefine HAVE_WINTAB in config.h.win32 and remove
references to the wntab32x library from the makefile before building.
ActiveIMM
=========
Active IMM
==========
If you want to build a GTK+ that supports ActiveIMM (the Input Method
Manager for non-EastAsia locales that can be used on Win9x/NT4), you
need the dimm.h header file. That is somewhat difficult to find, but
http://msdn.microsoft.com/downloads/samples/internet/wizard/ seems to
be a good place to look nowadays. If you use "autoconfiscated" build,
pass the --with-ie55 flag to configure specifying the location of the
ie55_lib directory created by downloading the IE5.5 headers and libs
from the above URL.
If you want to build a GTK+ that supports Active IMM (the Input Method
Manager than can be used in non-EastAsian versions of NT4 or Win9x),
you need the dimm.h header file. But that is rather pointless now as
both Win9x or NT4 have reached their end of life. Active IMM developer
bits are somewhat difficult to find, they were last found at
http://msdn.microsoft.com/downloads/samples/internet/wizard/ . If you
use "autoconfiscated" build, pass the --with-ie55 flag to configure
specifying the location of the ie55_lib directory created by
downloading the IE5.5 headers and libs from the above URL.
--Tor Lillqvist <tml@iki.fi>
--Tor Lillqvist <tml@iki.fi>, <tml@novell.com>
+19 -10
View File
@@ -12,10 +12,10 @@ AC_PREREQ(2.54)
m4_define([gtk_major_version], [2])
m4_define([gtk_minor_version], [10])
m4_define([gtk_micro_version], [3])
m4_define([gtk_micro_version], [12])
m4_define([gtk_version],
[gtk_major_version.gtk_minor_version.gtk_micro_version])
m4_define([gtk_interface_age], [3])
m4_define([gtk_interface_age], [12])
m4_define([gtk_binary_age],
[m4_eval(100 * gtk_minor_version + gtk_micro_version)])
# This is the X.Y used in -lgtk-FOO-X.Y
@@ -370,7 +370,8 @@ AC_ARG_ENABLE(explicit-deps,
AC_MSG_CHECKING([Whether to write dependencies into .pc files])
case $enable_explicit_deps in
auto)
deplibs_check_method=`(./libtool --config; echo eval echo \\$deplibs_check_method) | sh`
export SED
deplibs_check_method=`(./libtool --config; echo 'eval echo $deplibs_check_method') | sh`
if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then
enable_explicit_deps=yes
else
@@ -402,7 +403,7 @@ if test "x$enable_rebuilds" = "xyes" && \
fi
AC_SUBST(REBUILD)
AC_CHECK_FUNCS(lstat mkstemp flockfile)
AC_CHECK_FUNCS(lstat mkstemp flockfile getc_unlocked)
# _NL_TIME_FIRST_WEEKDAY is an enum and not a define
AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY])
@@ -469,7 +470,7 @@ fi
# sure that both po/ and po-properties/ have .po files that correspond
# to your language. If you only add one to po/, the build will break
# in po-properties/.
ALL_LINGUAS="af am ar az az_IR be bg bn bn_IN br bs ca cs cy da de el en_CA en_GB es et eu fa fi fr ga gl gu he hi hr hu hy ia id is it ja ka ko ku li lt lv mi mk ml mn mr ms nb ne nl nn nso or pa pl pt pt_BR ro ru rw sk sl sq sr sr@Latn sr@ije sv ta te th tk tr tt uk ur uz uz@Latn vi wa xh yi zh_CN zh_HK zh_TW"
ALL_LINGUAS="af am ang ar as az az_IR be be@latin bg bn bn_IN br bs ca cs cy da de dz el en_CA en_GB eo es et eu fa fi fr ga gl gu he hi hr hu hy ia id is it ja ka ko ku li lt lv mi mk ml mn mr ms nb ne nl nn nso or pa pl pt pt_BR ro ru rw si sk sl sq sr sr@Latn sr@ije sv ta te th tk tr tt uk ur uz uz@Latn vi wa xh yi zh_CN zh_HK zh_TW"
AM_GLIB_GNU_GETTEXT
LIBS="$LIBS $INTLLIBS"
AC_OUTPUT_COMMANDS([case "$CONFIG_FILES" in *po-properties/Makefile.in*)
@@ -728,6 +729,10 @@ fi
AC_MSG_RESULT($gtk_uxtheme_h)
# Checks for gdkspawn
AC_CHECK_HEADERS(crt_externs.h)
AC_CHECK_FUNCS(_NSGetEnviron)
##################################################
# Checks for gdk-pixbuf
##################################################
@@ -1032,7 +1037,8 @@ AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
if test $cross_compiling = yes; then
AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
if test x$GDK_PIXBUF_CSOURCE = xno; then
AC_PATH_PROG(GTK_UPDATE_ICON_CACHE, gtk-update-icon-cache, no)
if test x$GTK_UPDATE_ICON_CACHE = xno; then
REBUILD_PNGS=#
fi
fi
@@ -1042,7 +1048,7 @@ if test ! -f $srcdir/gtk/gtkbuiltincache.h &&
AC_MSG_ERROR([
*** gtkbuiltincache.h is not in the tree, and cannot be built
*** because you don't have libpng, or (when cross-compiling) you
*** don't have a prebuilt gdk-pixbuf-csource on the host system.])
*** don't have a prebuilt gtk-update-icon-cache on the build system.])
fi
AC_SUBST(REBUILD_PNGS)
@@ -1343,6 +1349,7 @@ if test "x$gdktarget" = "xx11"; then
AC_DEFINE(HAVE_XFIXES, 1, Have the XFIXES X extension)
X_PACKAGES="$X_PACKAGES xfixes"
GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xfixes"
fi
if $have_base_x_pc ; then
@@ -1413,14 +1420,15 @@ if test "x$gdktarget" = "xdirectfb"; then
DIRECTFB_REQUIRED_VERSION=0.9.24
AC_MSG_CHECKING(for DirectFB)
if $PKG_CONFIG --atleast-version $DIRECTFB_REQUIRED_VERSION directfb ; then
if $PKG_CONFIG --atleast-version $DIRECTFB_REQUIRED_VERSION directfb && $PKG_CONFIG --exists cairo-directfb ; then
AC_MSG_RESULT(found)
GDK_EXTRA_CFLAGS="`$PKG_CONFIG --cflags cairo-directfb` $GDK_EXTRA_CFLAGS"
GDK_EXTRA_LIBS="`$PKG_CONFIG --libs cairo-directfb` $GDK_EXTRA_LIBS"
else
AC_MSG_ERROR([
*** DirectFB $DIRECTFB_REQUIRED_VERSION or newer is required. The latest
*** version of DirectFB is always available from http://www.directfb.org/.
*** DirectFB $DIRECTFB_REQUIRED_VERSION or newer and the cairo backend
*** are required. The latest version of DirectFB is always available
*** from http://www.directfb.org/.
])
fi
@@ -1593,6 +1601,7 @@ CPPFLAGS="$gtk_save_cppflags"
#
# We are using gmodule-no-export now, but I'm leaving the stripping
# code in place for now, since pango and atk still require gmodule.
export SED
export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
if test -n "$export_dynamic"; then
GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"`
+40
View File
@@ -1,3 +1,43 @@
2007-05-02 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.12 ===
2007-03-14 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.11 ===
2007-03-12 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.10 ===
2007-01-22 Matthias Clasen <mclasen@redhat.com>
* === 2.10.9 ===
2007-01-17 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.8 ===
2007-01-05 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.7 ===
2006-10-03 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.6 ===
2006-10-02 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.5 ===
2006-09-22 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.4 ===
2006-09-04 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.3 ===
2006-08-17 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.2 ===
+1
View File
@@ -31,6 +31,7 @@ demos = \
sizegroup.c \
stock_browser.c \
textview.c \
textscroll.c \
tree_store.c \
ui_manager.c
+1
View File
@@ -467,6 +467,7 @@ do_appwindow (GtkWidget *do_widget)
"stock-id", GTK_STOCK_OPEN,
NULL);
gtk_action_group_add_action (action_group, open_action);
g_object_unref (open_action);
gtk_action_group_add_actions (action_group,
entries, n_entries,
window);
+12
View File
@@ -300,6 +300,8 @@ display_changed_cb (GtkTreeSelection *selection,
GtkTreeModel *model;
GtkTreeIter iter;
if (info->current_display)
g_object_unref (info->current_display);
if (gtk_tree_selection_get_selected (selection, &model, &iter))
gtk_tree_model_get (model, &iter,
DISPLAY_COLUMN_DISPLAY, &info->current_display,
@@ -320,6 +322,8 @@ screen_changed_cb (GtkTreeSelection *selection,
GtkTreeModel *model;
GtkTreeIter iter;
if (info->current_screen)
g_object_unref (info->current_screen);
if (gtk_tree_selection_get_selected (selection, &model, &iter))
gtk_tree_model_get (model, &iter,
SCREEN_COLUMN_SCREEN, &info->current_screen,
@@ -562,6 +566,14 @@ destroy_info (ChangeDisplayInfo *info)
g_slist_free (tmp_list);
g_object_unref (info->size_group);
g_object_unref (info->display_model);
g_object_unref (info->screen_model);
if (info->current_display)
g_object_unref (info->current_display);
if (info->current_screen)
g_object_unref (info->current_screen);
g_free (info);
}
+1
View File
@@ -74,6 +74,7 @@ create_stock_icon_store (void)
PIXBUF_COL, pixbuf,
TEXT_COL, label,
-1);
g_object_unref (pixbuf);
g_free (label);
}
else
+11 -6
View File
@@ -218,6 +218,16 @@ checkerboard_expose (GtkWidget *da,
return TRUE;
}
static void
close_window (void)
{
window = NULL;
if (pixmap)
g_object_unref (pixmap);
pixmap = NULL;
}
GtkWidget *
do_drawingarea (GtkWidget *do_widget)
{
@@ -233,7 +243,7 @@ do_drawingarea (GtkWidget *do_widget)
gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "Drawing Area");
g_signal_connect (window, "destroy", G_CALLBACK (gtk_widget_destroyed), &window);
g_signal_connect (window, "destroy", G_CALLBACK (close_window), NULL);
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
@@ -309,14 +319,9 @@ do_drawingarea (GtkWidget *do_widget)
}
if (!GTK_WIDGET_VISIBLE (window))
{
gtk_widget_show_all (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}
+13 -1
View File
@@ -243,6 +243,18 @@ home_clicked (GtkToolItem *item,
TRUE);
}
static void close_window(void)
{
gtk_widget_destroy (window);
window = NULL;
g_object_unref (file_pixbuf);
file_pixbuf = NULL;
g_object_unref (folder_pixbuf);
folder_pixbuf = NULL;
}
GtkWidget *
do_iconview (GtkWidget *do_widget)
{
@@ -258,7 +270,7 @@ do_iconview (GtkWidget *do_widget)
gtk_window_set_title (GTK_WINDOW (window), "GtkIconView demo");
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
G_CALLBACK (close_window), NULL);
error = NULL;
if (!load_pixbufs (&error))
+11 -4
View File
@@ -575,6 +575,8 @@ load_file (const gchar *filename)
}
}
fclose (file);
fontify ();
g_string_free (buffer, TRUE);
@@ -782,6 +784,8 @@ create_tree (void)
gtk_widget_grab_focus (tree_view);
g_object_unref (model);
return box;
}
@@ -865,7 +869,7 @@ main (int argc, char **argv)
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "GTK+ Code Demos");
g_signal_connect (window, "destroy",
g_signal_connect_after (window, "destroy",
G_CALLBACK (gtk_main_quit), NULL);
hbox = gtk_hbox_new (FALSE, 0);
@@ -881,13 +885,15 @@ main (int argc, char **argv)
create_text (&info_buffer, FALSE),
gtk_label_new_with_mnemonic ("_Info"));
tag = gtk_text_buffer_create_tag (info_buffer, "title",
"font", "Sans 18",
NULL);
g_object_unref (info_buffer);
gtk_notebook_append_page (GTK_NOTEBOOK (notebook),
create_text (&source_buffer, TRUE),
gtk_label_new_with_mnemonic ("_Source"));
tag = gtk_text_buffer_create_tag (info_buffer, "title",
"font", "Sans 18",
NULL);
tag = gtk_text_buffer_create_tag (source_buffer, "comment",
"foreground", "DodgerBlue",
@@ -910,6 +916,7 @@ main (int argc, char **argv)
"weight", PANGO_WEIGHT_BOLD,
"foreground", "DarkGoldenrod4",
NULL);
g_object_unref (source_buffer);
gtk_window_set_default_size (GTK_WINDOW (window), 600, 400);
gtk_widget_show_all (window);
+16 -11
View File
@@ -61,8 +61,9 @@ draw_page (GtkPrintOperation *operation,
PrintData *data = (PrintData *)user_data;
cairo_t *cr;
PangoLayout *layout;
gdouble width, text_height;
gint line, i, layout_height;
gint text_width, text_height;
gdouble width;
gint line, i;
PangoFontDescription *desc;
gchar *page_str;
@@ -85,21 +86,25 @@ draw_page (GtkPrintOperation *operation,
pango_font_description_free (desc);
pango_layout_set_text (layout, data->filename, -1);
pango_layout_set_width (layout, width);
pango_layout_set_alignment (layout, PANGO_ALIGN_CENTER);
pango_layout_get_size (layout, NULL, &layout_height);
text_height = (gdouble)layout_height / PANGO_SCALE;
pango_layout_get_pixel_size (layout, &text_width, &text_height);
cairo_move_to (cr, width / 2, (HEADER_HEIGHT - text_height) / 2);
if (text_width > width)
{
pango_layout_set_width (layout, width);
pango_layout_set_ellipsize (layout, PANGO_ELLIPSIZE_START);
pango_layout_get_pixel_size (layout, &text_width, &text_height);
}
cairo_move_to (cr, (width - text_width) / 2, (HEADER_HEIGHT - text_height) / 2);
pango_cairo_show_layout (cr, layout);
page_str = g_strdup_printf ("%d/%d", page_nr + 1, data->num_pages);
pango_layout_set_text (layout, page_str, -1);
g_free (page_str);
pango_layout_set_alignment (layout, PANGO_ALIGN_RIGHT);
cairo_move_to (cr, width - 2, (HEADER_HEIGHT - text_height) / 2);
pango_layout_set_width (layout, -1);
pango_layout_get_pixel_size (layout, &text_width, &text_height);
cairo_move_to (cr, width - text_width - 4, (HEADER_HEIGHT - text_height) / 2);
pango_cairo_show_layout (cr, layout);
g_object_unref (layout);
+200
View File
@@ -0,0 +1,200 @@
/* Text Widget/Automatic scrolling
*
* This example demonstrates how to use the gravity of
* GtkTextMarks to keep a text view scrolled to the bottom
* while appending text.
*/
#include <gtk/gtk.h>
#include "demo-common.h"
/* Scroll to the end of the buffer.
*/
static gboolean
scroll_to_end (GtkTextView *textview)
{
GtkTextBuffer *buffer;
GtkTextIter iter;
GtkTextMark *mark;
char *spaces;
static int count;
buffer = gtk_text_view_get_buffer (textview);
/* Get "end" mark. It's located at the end of buffer because
* of right gravity
*/
mark = gtk_text_buffer_get_mark (buffer, "end");
gtk_text_buffer_get_iter_at_mark (buffer, &iter, mark);
/* and insert some text at its position, the iter will be
* revalidated after insertion to point to the end of inserted text
*/
spaces = g_strnfill (count++, ' ');
gtk_text_buffer_insert (buffer, &iter, "\n", -1);
gtk_text_buffer_insert (buffer, &iter, spaces, -1);
gtk_text_buffer_insert (buffer, &iter,
"Scroll to end scroll to end scroll "
"to end scroll to end ",
-1);
g_free (spaces);
/* Now scroll the end mark onscreen.
*/
gtk_text_view_scroll_mark_onscreen (textview, mark);
/* Emulate typewriter behavior, shift to the left if we
* are far enough to the right.
*/
if (count > 150)
count = 0;
return TRUE;
}
/* Scroll to the bottom of the buffer.
*/
static gboolean
scroll_to_bottom (GtkTextView *textview)
{
GtkTextBuffer *buffer;
GtkTextIter iter;
GtkTextMark *mark;
char *spaces;
static int count;
buffer = gtk_text_view_get_buffer (textview);
/* Get end iterator */
gtk_text_buffer_get_end_iter (buffer, &iter);
/* and insert some text at it, the iter will be revalidated
* after insertion to point to the end of inserted text
*/
spaces = g_strnfill (count++, ' ');
gtk_text_buffer_insert (buffer, &iter, "\n", -1);
gtk_text_buffer_insert (buffer, &iter, spaces, -1);
gtk_text_buffer_insert (buffer, &iter,
"Scroll to bottom scroll to bottom scroll "
"to bottom scroll to bottom",
-1);
g_free (spaces);
/* Move the iterator to the beginning of line, so we don't scroll
* in horizontal direction
*/
gtk_text_iter_set_line_offset (&iter, 0);
/* and place the mark at iter. the mark will stay there after we
* insert some text at the end because it has right gravity.
*/
mark = gtk_text_buffer_get_mark (buffer, "scroll");
gtk_text_buffer_move_mark (buffer, mark, &iter);
/* Scroll the mark onscreen.
*/
gtk_text_view_scroll_mark_onscreen (textview, mark);
/* Shift text back if we got enough to the right.
*/
if (count > 40)
count = 0;
return TRUE;
}
static guint
setup_scroll (GtkTextView *textview,
gboolean to_end)
{
GtkTextBuffer *buffer;
GtkTextIter iter;
buffer = gtk_text_view_get_buffer (textview);
gtk_text_buffer_get_end_iter (buffer, &iter);
if (to_end)
{
/* If we want to scroll to the end, including horizontal scrolling,
* then we just create a mark with right gravity at the end of the
* buffer. It will stay at the end unless explicitely moved with
* gtk_text_buffer_move_mark.
*/
gtk_text_buffer_create_mark (buffer, "end", &iter, FALSE);
/* Add scrolling timeout. */
return g_timeout_add (50, (GSourceFunc) scroll_to_end, textview);
}
else
{
/* If we want to scroll to the bottom, but not scroll horizontally,
* then an end mark won't do the job. Just create a mark so we can
* use it with gtk_text_view_scroll_mark_onscreen, we'll position it
* explicitely when needed. Use left gravity so the mark stays where
* we put it after inserting new text.
*/
gtk_text_buffer_create_mark (buffer, "scroll", &iter, TRUE);
/* Add scrolling timeout. */
return g_timeout_add (100, (GSourceFunc) scroll_to_bottom, textview);
}
}
static void
remove_timeout (GtkWidget *window,
gpointer timeout)
{
g_source_remove (GPOINTER_TO_UINT (timeout));
}
static void
create_text_view (GtkWidget *hbox,
gboolean to_end)
{
GtkWidget *swindow;
GtkWidget *textview;
guint timeout;
swindow = gtk_scrolled_window_new (NULL, NULL);
gtk_box_pack_start_defaults (GTK_BOX (hbox), swindow);
textview = gtk_text_view_new ();
gtk_container_add (GTK_CONTAINER (swindow), textview);
timeout = setup_scroll (GTK_TEXT_VIEW (textview), to_end);
/* Remove the timeout in destroy handler, so we don't try to
* scroll destroyed widget.
*/
g_signal_connect (textview, "destroy",
G_CALLBACK (remove_timeout),
GUINT_TO_POINTER (timeout));
}
GtkWidget *
do_textscroll (GtkWidget *do_widget)
{
static GtkWidget *window = NULL;
if (!window)
{
GtkWidget *hbox;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
gtk_window_set_default_size (GTK_WINDOW (window), 600, 400);
hbox = gtk_hbox_new (TRUE, 6);
gtk_container_add (GTK_CONTAINER (window), hbox);
create_text_view (hbox, TRUE);
create_text_view (hbox, FALSE);
}
if (!GTK_WIDGET_VISIBLE (window))
gtk_widget_show_all (window);
else
gtk_widget_destroy (window);
return window;
}
+3
View File
@@ -183,10 +183,12 @@ do_ui_manager (GtkWidget *do_widget)
ui = gtk_ui_manager_new ();
gtk_ui_manager_insert_action_group (ui, actions, 0);
g_object_unref (actions);
gtk_window_add_accel_group (GTK_WINDOW (window),
gtk_ui_manager_get_accel_group (ui));
gtk_window_set_title (GTK_WINDOW (window), "UI Manager");
gtk_container_set_border_width (GTK_CONTAINER (window), 0);
if (!gtk_ui_manager_add_ui_from_string (ui, ui_info, -1, &error))
{
@@ -223,6 +225,7 @@ do_ui_manager (GtkWidget *do_widget)
gtk_widget_grab_default (button);
gtk_widget_show_all (window);
g_object_unref (ui);
}
else
{
+56
View File
@@ -1,3 +1,59 @@
2007-05-02 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.12 ===
2007-03-14 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.11 ===
2007-03-12 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.10 ===
2007-01-22 Matthias Clasen <mclasen@redhat.com>
* === 2.10.9 ===
2007-01-17 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.8 ===
2007-01-07 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf/gdk-pixbuf-sections.txt: Correct the include
for GdkPixdata. (#394000, Samuel Cormier-Iijima)
2007-01-05 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.7 ===
2006-10-03 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.6 ===
2006-10-02 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.5 ===
2006-09-22 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.4 ===
2006-09-22 Matthias Clasen <mclasen@redhat.com>
* gtk/tmpl/gtkprintcontext.sgml:
* gtk/tmpl/gtkpagesetup.sgml: Apply a patch
to fix some typos. (#355961, Claudio Saavedra)
2006-09-04 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.3 ===
2006-08-25 Matthias Clasen <mclasen@redhat.com>
* gtk/question_index.sgml: Rewrite the answer for
automatic scrolling.
2006-08-17 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.2 ===
@@ -89,6 +89,7 @@ gdk_pixbuf_copy
</SECTION>
<SECTION>
<INCLUDE>gdk-pixbuf/gdk-pixdata.h</INCLUDE>
<FILE>inline</FILE>
GdkPixdata
GdkPixdataType
+2
View File
@@ -237,6 +237,7 @@ Attributes to use for a newly-created window.
@wmclass_name: don't use (see gtk_window_set_wmclass())
@wmclass_class: don't use (see gtk_window_set_wmclass())
@override_redirect: %TRUE to bypass the window manager
@type_hint: a hint of the function of the window
<!-- ##### ENUM GdkWindowAttributesType ##### -->
<para>
@@ -256,6 +257,7 @@ corresponding flag in #GdkWindowAttributesType.
@GDK_WA_VISUAL: Honor the visual field
@GDK_WA_WMCLASS: Honor the wmclass_class and wmclass_name fields
@GDK_WA_NOREDIR: Honor the override_redirect field
@GDK_WA_TYPE_HINT: Honor the type_hint field
<!-- ##### FUNCTION gdk_window_new ##### -->
<para>
+11 -8
View File
@@ -757,18 +757,21 @@ How do I make a text view scroll to the end of the buffer automatically ?
<answer>
<para>
The "insert" <link linkend="GtkTextMark">mark</link> marks the insertion point
where gtk_text_buffer_insert() inserts new text into the buffer. The text is inserted
<emphasis>before</emphasis> the "insert" mark, so that it generally stays
at the end of the buffer. If it gets explicitly moved to some other position,
e.g. when the user selects some text, use gtk_text_buffer_move_mark() to set it to
the desired location before inserting more text. The "insert" mark of a buffer can be
obtained with gtk_text_buffer_get_insert().
A good way to keep a text buffer scrolled to the end is to place a
<link linkend="GtkTextMark">mark</link> at the end of the buffer, and
give it right gravity. The gravity has the effect that text inserted
at the mark gets inserted <emphasis>before</emphasis>, keeping the mark
at the end.
</para>
<para>
To ensure that the end of the buffer remains visible, use
gtk_text_view_scroll_to_mark() to scroll to the "insert" mark after inserting new text.
gtk_text_view_scroll_to_mark() to scroll to the mark after
inserting new text.
</para>
<para>
The gtk-demo application contains an example of this technique.
</para>
</answer>
</qandaentry>
+126
View File
@@ -877,12 +877,78 @@ You may not attach these to signals created with the
</para>
<!-- ##### ARG GtkFileChooser:action ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:do-overwrite-confirmation ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:extra-widget ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:file-system ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:file-system-backend ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:filter ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:local-only ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:preview-widget ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:preview-widget-active ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:select-multiple ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:show-hidden ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:use-preview-label ##### -->
<para>
</para>
<!-- ##### ENUM GtkFontFilterType ##### -->
<para>
A set of bit flags used to specify the filter being set
@@ -1164,6 +1230,66 @@ after other user handlers and the default handler.
</para>
<!-- ##### ARG GtkRecentChooser:filter ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:limit ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:local-only ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:recent-manager ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:select-multiple ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:show-icons ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:show-not-found ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:show-private ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:show-tips ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:sort-type ##### -->
<para>
</para>
<!-- ##### ARG GtkScrolledWindow:shadow ##### -->
<para>
@@ -672,61 +672,6 @@ gtk_widget_destroy (chooser);
@filechooser: the object which received the signal.
<!-- ##### ARG GtkFileChooser:action ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:do-overwrite-confirmation ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:extra-widget ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:file-system-backend ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:filter ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:local-only ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:preview-widget ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:preview-widget-active ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:select-multiple ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:show-hidden ##### -->
<para>
</para>
<!-- ##### ARG GtkFileChooser:use-preview-label ##### -->
<para>
</para>
<!-- ##### ENUM GtkFileChooserAction ##### -->
<para>
Describes whether a #GtkFileChooser is being used to open
+2
View File
@@ -46,6 +46,7 @@ will be a popup menu allowing the users to switch pages.
@notebook: the object which received the signal.
@arg1:
@Returns:
<!-- ##### SIGNAL GtkNotebook::focus-tab ##### -->
<para>
@@ -99,6 +100,7 @@ will be a popup menu allowing the users to switch pages.
@notebook: the object which received the signal.
@arg1:
@Param3:
@Returns:
<!-- ##### SIGNAL GtkNotebook::select-page ##### -->
<para>
+1 -1
View File
@@ -8,7 +8,7 @@ Stores page setup information
<para>
A GtkPageSetup object stores the page size, orientation and margins.
The idea is that you can get one of these from the page setup dialog
and then pass it to the #GtkPrittntOperation when printing.
and then pass it to the #GtkPrintOperation when printing.
The benefit of splitting this out of the #GtkPrintSettings is that
these affect the actual layout of the page, and thus need to be set
long before user prints.
+1 -1
View File
@@ -29,7 +29,7 @@ draw_page (GtkPrintOperation *operation,
PangoLayout *layout;
PangoFontDescription *desc;
cr = gtk_print_context_get_cairo (context);
cr = gtk_print_context_get_cairo_context (context);
/* Draw a red rectangle, as wide as the paper (inside the margins) */
cairo_set_source_rgb (cr, 1.0, 0, 0);
@@ -45,56 +45,6 @@ Recently used files are supported since GTK+ 2.10.
@recentchooser: the object which received the signal.
<!-- ##### ARG GtkRecentChooser:filter ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:limit ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:local-only ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:recent-manager ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:select-multiple ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:show-icons ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:show-not-found ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:show-private ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:show-tips ##### -->
<para>
</para>
<!-- ##### ARG GtkRecentChooser:sort-type ##### -->
<para>
</para>
<!-- ##### STRUCT GtkRecentChooserIface ##### -->
<para>
@@ -95,6 +95,7 @@ only be accessed using the functions below.
@scrolledwindow: the object which received the signal.
@arg1:
@arg2:
@Returns:
<!-- ##### ARG GtkScrolledWindow:hadjustment ##### -->
<para>
-1
View File
@@ -66,7 +66,6 @@ low-level functions for accessing the underlying windowing functions
(Xlib in the case of the X windows system), and gdk-pixbuf, a library for
client-side image manipulation.</para>
</para>
<para>GTK is essentially an object oriented application programmers
interface (API). Although written completely in C, it is implemented
using the idea of classes and callback functions (pointers to
+178
View File
@@ -1,3 +1,181 @@
2007-05-02 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.12 ===
2007-04-29 Matthias Clasen <mclasen@redhat.com>
* io-jpeg.c: Remove a pointless check from the previous
commit that added a new string.
2007-04-28 Matthias Clasen <mclasen@redhat.com>
Merge from trunk:
* io-png.c:
* io-jpeg.c: Accept unknown parameters with a warning
when saving. (#405539, Daniel Atallah)
2007-04-25 Matthias Clasen <mclasen@redhat.com>
Merge from trunk:
* gdk-pixbuf-simple-anim.c (gdk_pixbuf_simple_anim_add_frame):
Don't double the delay time of the first frame. (#431997,
Björn Lindqvist)
2007-03-14 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.11 ===
2007-03-12 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.10 ===
2007-03-06 Tor Lillqvist <tml@novell.com>
* Makefile.am: Further fixes for building on Win32 outside
srcdir. (#413492, Mathias Hasselmann)
2007-03-05 Matthias Clasen <mclasen@redhat.com>
Merge from trunk:
* io-tga.c: (gdk_pixbuf__tga_stop_load): Flip rle-encoded
images even if they haven't been completely loaded. (#347106)
2007-02-27 Felix Riemann <friemann@svn.gnome.org>
* io-ico.c: (fill_info): Add image/x-ico to supported mime types.
Fixes bug #393599.
2007-02-16 Matthias Clasen <mclasen@redhat.com>
Merged from trunk:
* io-png.c: Don't leak in the error path. (#405539, Daniel Atallah)
2007-02-07 Chris Wilson <chris@chris-wilson.co.uk>
* io-jpeg.c: (gdk_pixbuf__jpeg_image_load),
(gdk_pixbuf__jpeg_image_load_increment): Set the GError
if the image is zero length. (#405327)
2007-02-06 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Protect
against stop_load begin broken. (#403255, Lucas Mazzardo Veloso)
2007-01-22 Matthias Clasen <mclasen@redhat.com>
* === 2.10.9 ===
2007-01-21 Matthias Clasen <mclasen@redhat.com>
* io-gif.c (gdk_pixbuf__gif_image_stop_load): Return an
error if we didn't successfully load a frame. (#394190,
Felix Riemann)
2007-01-17 Michael Natterer <mitch@imendio.com>
Patch taken from maemo-gtk (merged from trunk):
* io-png.c (png_text_to_pixbuf_option): don't call g_convert() on
ASCII strings.
(png_info_callback): set an error when the size_func would scale
the pixbuf away completely.
2007-01-17 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.8 ===
2007-01-16 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Just
call gdk_pixbuf_loader_close to close the loader in
the error case. Fixes memory leaks in the error case,
pointed out by David Ne¿as.
2007-01-05 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.7 ===
2007-01-04 Matthias Clasen <mclasen@redhat.com>
* io-bmp.c (OneLine32): Fix a warning
2006-12-22 Matthias Clasen <mclasen@redhat.com>
* io-bmp.c (decode_bitmasks): Handle bmps
with more than 8 bits per channel. (#172584,
David Costanzo)
* io-bmp.c: Handle offsets more carefully. (#172188,
David Costanzo)
* io-bmp.c: Handle v5 and OS/2 v2 bmps.
* io-bmp.c: Handle alpha masks in v4 and v5 bmps.
2006-12-21 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Emit
the closed signal when closing the loader, pointed out
by David Necas.
2006-12-21 Matthias Clasen <mclasen@redhat.com>
* io-gif.c (gif_get_lzw): Handle invalid gif animations
a little bit more robustly. (#357974, Vassilis Pandis,
patch by Felix Riemann)
* gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
* gdk-pixbuf.c (gdk_pixbuf_new): Remove redundant size
checks, and document that width, height must be > 0.
(#343330, Felix Riemann)
* Makefile.am: Link against GLib. (#341158, Alexey Rusakov)
2006-12-19 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Don't
spew a warning if the printer is already closed.
2006-12-09 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Behave as
documented and close the loader when returning FALSE.
2006-10-29 Tor Lillqvist <tml@novell.com>
* pixbufloader_*.def
* Makefile.am (EXTRA_DIST): Remove pixbufloader_*.def, they are
not used. (#365388) They were all identical, and exported just two
symbols, so if somebody needs them for a MSVC build that doesn't
use built-in modules it's trivial to hack makefile.msc to produce
a common .def file for the loaders. The two symbols that need to
be exported are fill_info and fill_vtable.
2006-10-03 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.6 ===
2006-10-02 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.5 ===
2006-09-22 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.4 ===
2006-09-06 Matthias Clasen <mclasen@redhat.com>
* io-pnm.c: Simplify and fix reading of ASCII images.
2006-09-04 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.3 ===
2006-08-17 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.2 ===
+8 -21
View File
@@ -6,19 +6,19 @@ no_undefined = -no-undefined
endif
if OS_WIN32
gdk_pixbuf_def = $(srcdir)/gdk_pixbuf.def
gdk_pixbuf_symbols = -export-symbols $(gdk_pixbuf_def)
gdk_pixbuf_def = gdk_pixbuf.def
gdk_pixbuf_symbols = -export-symbols gdk_pixbuf.def
gdk_pixbuf_win32_res = gdk_pixbuf-win32-res.o
gdk_pixbuf_win32_res_ldflag = -Wl,$(gdk_pixbuf_win32_res)
gdk_pixbuf_win32_res_ldflag = -Wl,gdk_pixbuf-win32-res.o
gdk_pixbuf-win32-res.o : gdk_pixbuf.rc
$(WINDRES) gdk_pixbuf.rc $@
install-def-file:
$(INSTALL) $(gdk_pixbuf_def) $(DESTDIR)$(libdir)/gdk_pixbuf-2.0.def
$(INSTALL) gdk_pixbuf.def $(DESTDIR)$(libdir)/gdk_pixbuf-$(GTK_API_VERSION).def
uninstall-def-file:
-rm $(DESTDIR)$(libdir)/gdk_pixbuf-2.0.def
-rm $(DESTDIR)$(libdir)/gdk_pixbuf-$(GTK_API_VERSION).def
else
install-def-file:
uninstall-def-file:
@@ -50,7 +50,7 @@ gdk-pixbuf-aliasdef.c: gdk-pixbuf.symbols
$(PERL) $(srcdir)/makegdkpixbufalias.pl -def < $(srcdir)/gdk-pixbuf.symbols > gdk-pixbuf-aliasdef.c
if OS_LINUX
TESTS = abicheck.sh
TESTS = abicheck.sh pltcheck.sh
endif
lib_LTLIBRARIES = \
@@ -273,7 +273,6 @@ INCLUDES = \
-DGTK_SYSCONFDIR=\"$(sysconfdir)\" \
-DGTK_VERSION=\"$(GTK_VERSION)\" \
-DGTK_BINARY_VERSION=\"$(GTK_BINARY_VERSION)\" \
-DGDK_PIXBUF_DISABLE_DEPRECATED \
-DGTK_PREFIX=\"$(prefix)\" \
$(INCLUDED_LOADER_DEFINE) \
$(GTK_DEBUG_FLAGS) \
@@ -281,7 +280,7 @@ INCLUDES = \
-DGDK_PIXBUF_ENABLE_BACKEND
AM_CPPFLAGS = "-DPIXBUF_LIBDIR=\"$(loaderdir)\"" "-DBUILT_MODULES_DIR=\"$(srcdir)/.libs\""
LDADDS = libgdk_pixbuf-$(GTK_API_VERSION).la
LDADDS = libgdk_pixbuf-$(GTK_API_VERSION).la $(GLIB_LIBS)
noinst_PROGRAMS = test-gdk-pixbuf
test_gdk_pixbuf_LDADD = $(LDADDS)
@@ -433,23 +432,11 @@ EXTRA_DIST = \
gdk-pixbuf.symbols \
makegdkpixbufalias.pl \
abicheck.sh \
pltcheck.sh \
gdk_pixbuf.def \
gdk_pixbuf.rc \
gdk-pixbuf-marshal.c \
gdk-pixbuf-marshal.list \
pixbufloader_ico.def \
pixbufloader_ani.def \
pixbufloader_pnm.def \
pixbufloader_xpm.def \
pixbufloader_bmp.def \
pixbufloader_jpeg.def \
pixbufloader_ras.def \
pixbufloader_gif.def \
pixbufloader_png.def \
pixbufloader_tiff.def \
pixbufloader_wbmp.def \
pixbufloader_xbm.def \
pixbufloader_tga.def \
gen-color-table.pl
if CROSS_COMPILING
+1 -1
View File
@@ -2,4 +2,4 @@
cpp -DINCLUDE_VARIABLES -P -DALL_FILES ${srcdir:-.}/gdk-pixbuf.symbols | sed -e '/^$/d' -e 's/ G_GNUC.*$//' -e 's/ PRIVATE$//' | sort > expected-abi
nm -D -g --defined-only .libs/libgdk_pixbuf-2.0.so | cut -d ' ' -f 3 | sort > actual-abi
diff -u expected-abi actual-abi && rm expected-abi actual-abi
diff -u expected-abi actual-abi && rm -f expected-abi actual-abi
+9 -9
View File
@@ -31,16 +31,16 @@
/**
* gdk_pixbuf_new_from_data:
* @data: Image data in 8-bit/sample packed format.
* @colorspace: Colorspace for the image data.
* @has_alpha: Whether the data has an opacity channel.
* @bits_per_sample: Number of bits per sample.
* @width: Width of the image in pixels.
* @height: Height of the image in pixels.
* @rowstride: Distance in bytes between row starts.
* @data: Image data in 8-bit/sample packed format
* @colorspace: Colorspace for the image data
* @has_alpha: Whether the data has an opacity channel
* @bits_per_sample: Number of bits per sample
* @width: Width of the image in pixels, must be > 0
* @height: Height of the image in pixels, must be > 0
* @rowstride: Distance in bytes between row starts
* @destroy_fn: Function used to free the data when the pixbuf's reference count
* drops to zero, or %NULL if the data should not be freed.
* @destroy_fn_data: Closure data to pass to the destroy notification function.
* drops to zero, or %NULL if the data should not be freed
* @destroy_fn_data: Closure data to pass to the destroy notification function
*
* Creates a new #GdkPixbuf out of in-memory image data. Currently only RGB
* images with 8 bits per sample are supported.
-4
View File
@@ -2277,7 +2277,3 @@ gdk_pixbuf_get_formats (void)
#define __GDK_PIXBUF_IO_C__
#include "gdk-pixbuf-aliasdef.c"
+15 -14
View File
@@ -455,10 +455,7 @@ gdk_pixbuf_loader_write (GdkPixbufLoader *loader,
eaten = gdk_pixbuf_loader_eat_header_write (loader, buf, count, error);
if (eaten <= 0)
{
gdk_pixbuf_loader_ensure_error (loader, error);
return FALSE;
}
goto fail;
count -= eaten;
buf += eaten;
@@ -466,16 +463,18 @@ gdk_pixbuf_loader_write (GdkPixbufLoader *loader,
if (count > 0 && priv->image_module->load_increment)
{
gboolean retval;
retval = priv->image_module->load_increment (priv->context, buf, count,
error);
if (!retval)
gdk_pixbuf_loader_ensure_error (loader, error);
return retval;
if (!priv->image_module->load_increment (priv->context, buf, count,
error))
goto fail;
}
return TRUE;
fail:
gdk_pixbuf_loader_ensure_error (loader, error);
gdk_pixbuf_loader_close (loader, NULL);
return FALSE;
}
/**
@@ -693,8 +692,8 @@ gdk_pixbuf_loader_close (GdkPixbufLoader *loader,
priv = loader->priv;
/* we expect it's not closed */
g_return_val_if_fail (priv->closed == FALSE, TRUE);
if (priv->closed)
return TRUE;
/* We have less the LOADER_HEADER_SIZE bytes in the image.
* Flush it, and keep going.
@@ -712,8 +711,10 @@ gdk_pixbuf_loader_close (GdkPixbufLoader *loader,
if (priv->image_module && priv->image_module->stop_load && priv->context)
{
if (!priv->image_module->stop_load (priv->context, error))
GError *tmp = NULL;
if (!priv->image_module->stop_load (priv->context, &tmp) || tmp)
{
g_propagate_error (error, tmp);
gdk_pixbuf_loader_ensure_error (loader, error);
retval = FALSE;
}
+1 -1
View File
@@ -426,7 +426,7 @@ gdk_pixbuf_simple_anim_add_frame (GdkPixbufSimpleAnim *animation,
g_return_if_fail (animation != NULL);
g_return_if_fail (pixbuf != NULL);
nframe = g_list_length (animation->frames) + 1;
nframe = g_list_length (animation->frames);
frame = g_new0 (GdkPixbufFrame, 1);
frame->delay_time = (gint) (1000 / animation->rate);
+8 -14
View File
@@ -30,6 +30,9 @@
#define GDK_PIXBUF_COMPILATION
#include "gdk-pixbuf.h"
#include "gdk-pixbuf-private.h"
/* Include the marshallers */
#include <glib-object.h>
#include "gdk-pixbuf-marshal.c"
#include "gdk-pixbuf-alias.h"
static void gdk_pixbuf_finalize (GObject *object);
@@ -221,11 +224,11 @@ free_buffer (guchar *pixels, gpointer data)
/**
* gdk_pixbuf_new:
* @colorspace: Color space for image.
* @has_alpha: Whether the image should have transparency information.
* @bits_per_sample: Number of bits per color sample.
* @width: Width of image in pixels.
* @height: Height of image in pixels.
* @colorspace: Color space for image
* @has_alpha: Whether the image should have transparency information
* @bits_per_sample: Number of bits per color sample
* @width: Width of image in pixels, must be > 0
* @height: Height of image in pixels, must be > 0
*
* Creates a new #GdkPixbuf structure and allocates a buffer for it. The
* buffer has an optimal rowstride. Note that the buffer is not cleared;
@@ -251,9 +254,6 @@ gdk_pixbuf_new (GdkColorspace colorspace,
g_return_val_if_fail (width > 0, NULL);
g_return_val_if_fail (height > 0, NULL);
if (width <= 0 || height <= 0)
return NULL;
channels = has_alpha ? 4 : 3;
rowstride = width * channels;
if (rowstride / channels != width || rowstride + 3 < 0) /* overflow */
@@ -753,11 +753,5 @@ gdk_pixbuf_get_property (GObject *object,
}
}
/* Include the marshallers */
#include <glib-object.h>
#include "gdk-pixbuf-marshal.c"
#define __GDK_PIXBUF_C__
#include "gdk-pixbuf-aliasdef.c"
+1 -1
View File
@@ -17,9 +17,9 @@
* Boston, MA 02111-1307, USA.
*/
#include <config.h>
#include "gdk-pixdata.h"
#include "gdk-pixbuf-private.h"
#include "gdk-pixdata.h"
#include "gdk-pixbuf-alias.h"
#include <string.h>
+123 -19
View File
@@ -159,6 +159,7 @@ struct bmp_progressive_state {
guchar *buff;
guint BufferSize;
guint BufferPadding;
guint BufferDone;
guchar (*Colormap)[3];
@@ -181,6 +182,7 @@ struct bmp_progressive_state {
int r_mask, r_shift, r_bits;
int g_mask, g_shift, g_bits;
int b_mask, b_shift, b_bits;
int a_mask, a_shift, a_bits;
GdkPixbuf *pixbuf; /* Our "target" */
};
@@ -245,6 +247,11 @@ static gboolean grow_buffer (struct bmp_progressive_state *State,
return TRUE;
}
static gboolean
decode_bitmasks (guchar *buf,
struct bmp_progressive_state *State,
GError **error);
static gboolean DecodeHeader(unsigned char *BFH, unsigned char *BIH,
struct bmp_progressive_state *State,
GError **error)
@@ -252,7 +259,6 @@ static gboolean DecodeHeader(unsigned char *BFH, unsigned char *BIH,
gint clrUsed;
/* FIXME this is totally unrobust against bogus image data. */
if (State->BufferSize < lsb_32 (&BIH[0]) + 14) {
State->BufferSize = lsb_32 (&BIH[0]) + 14;
if (!grow_buffer (State, error))
@@ -265,17 +271,32 @@ static gboolean DecodeHeader(unsigned char *BFH, unsigned char *BIH,
#endif
State->Header.size = lsb_32 (&BIH[0]);
if (State->Header.size == 108) {
if (State->Header.size == 124) {
/* BMP v5 */
State->Header.width = lsb_32 (&BIH[4]);
State->Header.height = lsb_32 (&BIH[8]);
State->Header.depth = lsb_16 (&BIH[14]);
State->Compressed = lsb_32 (&BIH[16]);
} else if (State->Header.size == 108) {
/* BMP v4 */
State->Header.width = lsb_32 (&BIH[4]);
State->Header.height = lsb_32 (&BIH[8]);
State->Header.depth = lsb_16 (&BIH[14]);
State->Compressed = lsb_32 (&BIH[16]);
} else if (State->Header.size == 64) {
/* BMP OS/2 v2 */
State->Header.width = lsb_32 (&BIH[4]);
State->Header.height = lsb_32 (&BIH[8]);
State->Header.depth = lsb_16 (&BIH[14]);
State->Compressed = lsb_32 (&BIH[16]);
} else if (State->Header.size == 40) {
/* BMP v3 */
State->Header.width = lsb_32 (&BIH[4]);
State->Header.height = lsb_32 (&BIH[8]);
State->Header.depth = lsb_16 (&BIH[14]);
State->Compressed = lsb_32 (&BIH[16]);
} else if (State->Header.size == 12) {
/* BMP OS/2 */
State->Header.width = lsb_16 (&BIH[4]);
State->Header.height = lsb_16 (&BIH[6]);
State->Header.depth = lsb_16 (&BIH[10]);
@@ -297,9 +318,9 @@ static gboolean DecodeHeader(unsigned char *BFH, unsigned char *BIH,
if (clrUsed != 0)
State->Header.n_colors = clrUsed;
else
State->Header.n_colors = 1 << State->Header.depth;
State->Header.n_colors = (1 << State->Header.depth);
if (State->Header.n_colors > 1 << State->Header.depth) {
if (State->Header.n_colors > (1 << State->Header.depth)) {
g_set_error (error,
GDK_PIXBUF_ERROR,
GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
@@ -417,8 +438,19 @@ static gboolean DecodeHeader(unsigned char *BFH, unsigned char *BIH,
State->BufferDone = 0;
if (State->Type <= 8) {
gint samples;
State->read_state = READ_STATE_PALETTE;
State->BufferSize = lsb_32 (&BFH[10]) - 14 - State->Header.size;
/* Allocate enough to hold the palette */
samples = (State->Header.size == 12 ? 3 : 4);
State->BufferSize = State->Header.n_colors * samples;
/* Skip over everything between the palette and the data.
This protects us against a malicious BFH[10] value.
*/
State->BufferPadding = (lsb_32 (&BFH[10]) - 14 - State->Header.size) - State->BufferSize;
} else if (State->Compressed == BI_RGB) {
if (State->BufferSize < lsb_32 (&BFH[10]))
{
@@ -433,8 +465,19 @@ static gboolean DecodeHeader(unsigned char *BFH, unsigned char *BIH,
State->BufferSize = State->LineWidth;
}
} else if (State->Compressed == BI_BITFIELDS) {
State->read_state = READ_STATE_BITMASKS;
State->BufferSize = 12;
if (State->Header.size == 108 || State->Header.size == 124)
{
/* v4 and v5 have the bitmasks in the header */
if (!decode_bitmasks (&BIH[40], State, error)) {
State->read_state = READ_STATE_ERROR;
return FALSE;
}
}
else
{
State->read_state = READ_STATE_BITMASKS;
State->BufferSize = 12;
}
} else {
g_set_error (error,
GDK_PIXBUF_ERROR,
@@ -511,12 +554,13 @@ find_bits (int n, int *lowest, int *n_set)
}
}
/* Decodes the 3 shorts that follow for the bitmasks for BI_BITFIELDS coding */
/* Decodes the bitmasks for BI_BITFIELDS coding */
static gboolean
decode_bitmasks (guchar *buf,
struct bmp_progressive_state *State,
GError **error)
{
State->a_mask = State->a_shift = State->a_bits = 0;
State->r_mask = buf[0] | (buf[1] << 8) | (buf[2] << 16) | (buf[3] << 24);
buf += 4;
@@ -529,17 +573,55 @@ decode_bitmasks (guchar *buf,
find_bits (State->g_mask, &State->g_shift, &State->g_bits);
find_bits (State->b_mask, &State->b_shift, &State->b_bits);
if (State->r_bits == 0 || State->g_bits == 0 || State->b_bits == 0) {
State->r_mask = 0x7c00;
State->r_shift = 10;
State->g_mask = 0x03e0;
State->g_shift = 5;
State->b_mask = 0x001f;
State->b_shift = 0;
/* v4 and v5 have an alpha mask */
if (State->Header.size == 108 || State->Header.size == 124) {
buf += 4;
State->a_mask = buf[0] | (buf[1] << 8) | (buf[2] << 16) | (buf[3] << 24);
find_bits (State->a_mask, &State->a_shift, &State->a_bits);
}
State->r_bits = State->g_bits = State->b_bits = 5;
if (State->r_bits == 0 || State->g_bits == 0 || State->b_bits == 0) {
if (State->Type == 16) {
State->r_mask = 0x7c00;
State->r_shift = 10;
State->g_mask = 0x03e0;
State->g_shift = 5;
State->b_mask = 0x001f;
State->b_shift = 0;
State->r_bits = State->g_bits = State->b_bits = 5;
}
else {
State->r_mask = 0x00ff0000;
State->r_shift = 16;
State->g_mask = 0x0000ff00;
State->g_shift = 8;
State->b_mask = 0x000000ff;
State->b_shift = 0;
State->a_mask = 0xff000000;
State->a_shift = 24;
State->r_bits = State->g_bits = State->b_bits = State->a_bits = 8;
}
}
if (State->r_bits > 8) {
State->r_shift += State->r_bits - 8;
State->r_bits = 8;
}
if (State->g_bits > 8) {
State->g_shift += State->g_bits - 8;
State->g_bits = 8;
}
if (State->b_bits > 8) {
State->b_shift += State->b_bits - 8;
State->b_bits = 8;
}
if (State->a_bits > 8) {
State->a_shift += State->a_bits - 8;
State->a_bits = 8;
}
State->read_state = READ_STATE_DATA;
State->BufferDone = 0;
State->BufferSize = State->LineWidth;
@@ -573,6 +655,7 @@ gdk_pixbuf__bmp_image_begin_load(GdkPixbufModuleSizeFunc size_func,
context->read_state = READ_STATE_HEADERS;
context->BufferSize = 26;
context->BufferPadding = 0;
context->buff = g_malloc(26);
context->BufferDone = 0;
/* 14 for the BitmapFileHeader, 12 for the BitmapImageHeader */
@@ -644,28 +727,35 @@ static void OneLine32(struct bmp_progressive_state *context)
int r_lshift, r_rshift;
int g_lshift, g_rshift;
int b_lshift, b_rshift;
int a_lshift, a_rshift;
r_lshift = 8 - context->r_bits;
g_lshift = 8 - context->g_bits;
b_lshift = 8 - context->b_bits;
a_lshift = 8 - context->a_bits;
r_rshift = context->r_bits - r_lshift;
g_rshift = context->g_bits - g_lshift;
b_rshift = context->b_bits - b_lshift;
a_rshift = context->a_bits - a_lshift;
for (i = 0; i < context->Header.width; i++) {
int v, r, g, b;
int v, r, g, b, a;
v = src[0] | (src[1] << 8) | (src[2] << 16);
v = src[0] | (src[1] << 8) | (src[2] << 16) | (src[3] << 24);
r = (v & context->r_mask) >> context->r_shift;
g = (v & context->g_mask) >> context->g_shift;
b = (v & context->b_mask) >> context->b_shift;
a = (v & context->a_mask) >> context->a_shift;
*pixels++ = (r << r_lshift) | (r >> r_rshift);
*pixels++ = (g << g_lshift) | (g >> g_rshift);
*pixels++ = (b << b_lshift) | (b >> b_rshift);
*pixels++ = 0xff;
if (context->a_bits)
*pixels++ = 0xff - ((a << a_lshift) | (a >> a_rshift));
else
*pixels++ = 0xff;
src += 4;
}
@@ -1078,6 +1168,7 @@ gdk_pixbuf__bmp_image_load_increment(gpointer data,
(struct bmp_progressive_state *) data;
gint BytesToCopy;
gint BytesToRemove;
if (context->read_state == READ_STATE_DONE)
return TRUE;
@@ -1103,6 +1194,19 @@ gdk_pixbuf__bmp_image_load_increment(gpointer data,
break;
}
/* context->buff is full. Now we discard all "padding" */
if (context->BufferPadding != 0) {
BytesToRemove = context->BufferPadding - size;
if (BytesToRemove > size) {
BytesToRemove = size;
}
size -= BytesToRemove;
context->BufferPadding -= BytesToRemove;
if (context->BufferPadding != 0)
break;
}
switch (context->read_state) {
case READ_STATE_HEADERS:
if (!DecodeHeader (context->buff,
+6 -1
View File
@@ -908,6 +908,11 @@ gif_get_lzw (GifContext *context)
/* Only call prepare_func for the first frame */
if (context->animation->frames->next == NULL) {
if (context->animation->width == 0 )
context->animation->width = gdk_pixbuf_get_width(context->frame->pixbuf);
if (context->animation->height == 0)
context->animation->height = gdk_pixbuf_get_height (context->frame->pixbuf);
if (context->prepare_func)
(* context->prepare_func) (context->frame->pixbuf,
GDK_PIXBUF_ANIMATION (context->animation),
@@ -1521,7 +1526,7 @@ gdk_pixbuf__gif_image_stop_load (gpointer data, GError **error)
GifContext *context = (GifContext *) data;
gboolean retval = TRUE;
if (context->state != GIF_DONE) {
if (context->state != GIF_DONE || context->animation->frames == NULL) {
g_set_error (error,
GDK_PIXBUF_ERROR,
GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
+1
View File
@@ -1205,6 +1205,7 @@ MODULE_ENTRY (ico, fill_info) (GdkPixbufFormat *info)
};
static gchar * mime_types[] = {
"image/x-icon",
"image/x-ico",
NULL
};
static gchar * extensions[] = {
+9 -7
View File
@@ -307,6 +307,8 @@ gdk_pixbuf__jpeg_image_load (FILE *f, GError **error)
g_object_unref (pixbuf);
jpeg_destroy_decompress (&cinfo);
/* error should have been set by fatal_error_handler () */
return NULL;
}
@@ -715,8 +717,13 @@ gdk_pixbuf__jpeg_image_load_increment (gpointer data,
height = cinfo->image_height;
if (context->size_func) {
(* context->size_func) (&width, &height, context->user_data);
if (width == 0 || height == 0)
if (width == 0 || height == 0) {
g_set_error (error,
GDK_PIXBUF_ERROR,
GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
_("Transformed JPEG has zero width or height."));
return FALSE;
}
}
for (cinfo->scale_denom = 2; cinfo->scale_denom <= 8; cinfo->scale_denom *= 2) {
@@ -944,9 +951,7 @@ real_save_jpeg (GdkPixbuf *pixbuf,
return FALSE;
}
} else {
g_warning ("Bad option name '%s' passed to JPEG saver",
*kiter);
return FALSE;
g_warning ("Unrecognized parameter (%s) passed to JPEG saver.", *kiter);
}
++kiter;
@@ -959,10 +964,7 @@ real_save_jpeg (GdkPixbuf *pixbuf,
w = gdk_pixbuf_get_width (pixbuf);
h = gdk_pixbuf_get_height (pixbuf);
/* no image data? abort */
pixels = gdk_pixbuf_get_pixels (pixbuf);
g_return_val_if_fail (pixels != NULL, FALSE);
/* Allocate a small buffer to convert image data,
* and a larger buffer if doing to_callback save.
+31 -15
View File
@@ -204,14 +204,24 @@ png_text_to_pixbuf_option (png_text text_ptr,
gchar **key,
gchar **value)
{
if (text_ptr.text_length > 0) {
*value = g_convert (text_ptr.text, -1,
"UTF-8", "ISO-8859-1",
NULL, NULL, NULL);
}
else {
gboolean is_ascii = TRUE;
int i;
/* Avoid loading iconv if the text is plain ASCII */
for (i = 0; i < text_ptr.text_length; i++)
if (text_ptr.text[i] & 0x80) {
is_ascii = FALSE;
break;
}
if (is_ascii) {
*value = g_strdup (text_ptr.text);
} else {
*value = g_convert (text_ptr.text, -1,
"UTF-8", "ISO-8859-1",
NULL, NULL, NULL);
}
if (*value) {
*key = g_strconcat ("tEXt::", text_ptr.key, NULL);
return TRUE;
@@ -334,8 +344,8 @@ gdk_pixbuf__png_image_load (FILE *f, GError **error)
static void png_error_callback (png_structp png_read_ptr,
png_const_charp error_msg);
static void png_warning_callback(png_structp png_read_ptr,
png_const_charp warning_msg);
static void png_warning_callback (png_structp png_read_ptr,
png_const_charp warning_msg);
/* Called at the start of the progressive load */
static void png_info_callback (png_structp png_read_ptr,
@@ -602,6 +612,12 @@ png_info_callback (png_structp png_read_ptr,
if (w == 0 || h == 0) {
lc->fatal_error_occurred = TRUE;
if (lc->error && *lc->error == NULL) {
g_set_error (lc->error,
GDK_PIXBUF_ERROR,
GDK_PIXBUF_ERROR_FAILED,
_("Transformed PNG has zero width or height."));
}
return;
}
}
@@ -723,8 +739,8 @@ png_error_callback(png_structp png_read_ptr,
}
static void
png_warning_callback(png_structp png_read_ptr,
png_const_charp warning_msg)
png_warning_callback (png_structp png_read_ptr,
png_const_charp warning_msg)
{
LoadContext* lc;
@@ -845,9 +861,7 @@ static gboolean real_save_png (GdkPixbuf *pixbuf,
return FALSE;
}
} else {
g_warning ("Bad option name '%s' passed to PNG saver",
*kiter);
return FALSE;
g_warning ("Unrecognized parameter (%s) passed to PNG saver.", *kiter);
}
++kiter;
@@ -901,8 +915,10 @@ static gboolean real_save_png (GdkPixbuf *pixbuf,
error,
png_simple_error_callback,
png_simple_warning_callback);
g_return_val_if_fail (png_ptr != NULL, FALSE);
if (png_ptr == NULL) {
success = FALSE;
goto cleanup;
}
info_ptr = png_create_info_struct (png_ptr);
if (info_ptr == NULL) {
+67 -82
View File
@@ -527,109 +527,90 @@ pnm_read_raw_scanline (PnmLoaderContext *context)
}
static gint
pnm_read_ascii_scanline (PnmLoaderContext *context)
pnm_read_ascii_mono_scanline (PnmLoaderContext *context)
{
PnmIOBuffer *inbuf;
guint offset;
guint value, numval, i;
guchar data;
guchar mask;
guint value;
gint retval;
guchar *dptr;
gint max_length;
if (context->type == PNM_FORMAT_PBM)
max_length = 1;
else
max_length = -1;
inbuf = &context->inbuf;
context->dptr = context->pixels + context->output_row * context->rowstride;
dptr = context->dptr + context->output_col * 3;
while (TRUE) {
retval = pnm_read_next_value (inbuf, max_length, &value, context->error);
if (retval != PNM_OK)
return retval;
if (context->type == PNM_FORMAT_PBM) {
value = value ? 0 : 0xff;
}
else {
/* scale the color up or down to an 8-bit color depth */
if (value > context->maxval)
value = 255;
else
value = (guchar)(255 * value / context->maxval);
}
*dptr++ = value;
*dptr++ = value;
*dptr++ = value;
context->output_col++;
if (context->output_col == context->width) {
context->output_col = 0;
context->output_row++;
break;
}
}
return PNM_OK;
}
static gint
pnm_read_ascii_color_scanline (PnmLoaderContext *context)
{
PnmIOBuffer *inbuf;
guint value, i;
guchar *dptr;
gint retval;
gint max_length;
g_return_val_if_fail (context != NULL, PNM_FATAL_ERR);
data = mask = 0;
inbuf = &context->inbuf;
context->dptr = context->pixels + context->output_row * context->rowstride;
switch (context->type) {
case PNM_FORMAT_PBM:
max_length = 1;
numval = MIN (8, context->width - context->output_col);
offset = context->output_col / 8;
break;
case PNM_FORMAT_PGM:
max_length = -1;
numval = 1;
offset = context->output_col;
break;
case PNM_FORMAT_PPM:
max_length = -1;
numval = 3;
offset = context->output_col * 3;
break;
default:
g_set_error (context->error,
GDK_PIXBUF_ERROR,
GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
_("PNM image format is invalid"));
return PNM_FATAL_ERR;
}
dptr = context->dptr + offset + context->scan_state;
dptr = context->dptr + context->output_col * 3 + context->scan_state;
while (TRUE) {
if (context->type == PNM_FORMAT_PBM) {
mask = 0x80;
data = 0;
numval = MIN (8, context->width - context->output_col);
}
for (i = context->scan_state; i < numval; i++) {
retval = pnm_read_next_value (inbuf, max_length,
&value, context->error);
for (i = context->scan_state; i < 3; i++) {
retval = pnm_read_next_value (inbuf, -1, &value, context->error);
if (retval != PNM_OK) {
/* save state and return */
context->scan_state = i;
return retval;
}
switch (context->type) {
case PNM_FORMAT_PBM:
if (value)
data |= mask;
mask >>= 1;
break;
case PNM_FORMAT_PGM:
case PNM_FORMAT_PPM:
/* scale the color up or down to an 8-bit color depth */
if (value > context->maxval)
*dptr++ = 255;
else
*dptr++ = (guchar)(255 * value / context->maxval);
break;
default:
g_set_error (context->error,
GDK_PIXBUF_ERROR,
GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
_("PNM image format is invalid"));
return PNM_FATAL_ERR;
break;
}
if (value > context->maxval)
*dptr++ = 255;
else
*dptr++ = (guchar)(255 * value / context->maxval);
}
context->scan_state = 0;
if (context->type == PNM_FORMAT_PBM) {
*dptr++ = data;
context->output_col += numval;
} else {
context->output_col++;
}
context->output_col++;
if (context->output_col == context->width) {
if (context->type == PNM_FORMAT_PBM)
explode_bitmap_into_buf (context);
else if (context->type == PNM_FORMAT_PGM)
explode_gray_into_buf (context);
context->output_col = 0;
context->output_row++;
break;
@@ -659,8 +640,12 @@ pnm_read_scanline (PnmLoaderContext *context)
break;
case PNM_FORMAT_PBM:
case PNM_FORMAT_PGM:
retval = pnm_read_ascii_mono_scanline (context);
if (retval != PNM_OK)
return retval;
break;
case PNM_FORMAT_PPM:
retval = pnm_read_ascii_scanline (context);
retval = pnm_read_ascii_color_scanline (context);
if (retval != PNM_OK)
return retval;
break;
+12 -2
View File
@@ -504,8 +504,9 @@ static guint parse_rle_data_pseudocolor(TGAContext *ctx)
}
}
if (ctx->pbuf_bytes_done == ctx->pbuf_bytes)
if (ctx->pbuf_bytes_done == ctx->pbuf_bytes)
ctx->done = TRUE;
return n;
}
@@ -657,8 +658,10 @@ static gboolean parse_rle_data(TGAContext *ctx, GError **err)
* perfect, but doing it during the rle decoding in place
* is considerably more work.
*/
if (!(ctx->hdr->flags & TGA_ORIGIN_UPPER))
if (!(ctx->hdr->flags & TGA_ORIGIN_UPPER)) {
pixbuf_flip_vertically (ctx->pbuf);
ctx->hdr->flags |= TGA_ORIGIN_UPPER;
}
}
@@ -933,6 +936,13 @@ static gboolean gdk_pixbuf__tga_stop_load(gpointer data, GError **err)
TGAContext *ctx = (TGAContext *) data;
g_return_val_if_fail(ctx != NULL, FALSE);
if (!(ctx->hdr->flags & TGA_ORIGIN_UPPER) && ctx->run_length_encoded) {
pixbuf_flip_vertically (ctx->pbuf);
if (ctx->ufunc)
(*ctx->ufunc) (ctx->pbuf, 0, 0,
ctx->pbuf->width, ctx->pbuf->height,
ctx->udata);
}
if (ctx->hdr)
g_free (ctx->hdr);
if (ctx->cmap) {
-3
View File
@@ -1,3 +0,0 @@
EXPORTS
fill_vtable
fill_info
-3
View File
@@ -1,3 +0,0 @@
EXPORTS
fill_vtable
fill_info
-3
View File
@@ -1,3 +0,0 @@
EXPORTS
fill_vtable
fill_info
-3
View File
@@ -1,3 +0,0 @@
EXPORTS
fill_vtable
fill_info
-3
View File
@@ -1,3 +0,0 @@
EXPORTS
fill_vtable
fill_info
-3
View File
@@ -1,3 +0,0 @@
EXPORTS
fill_vtable
fill_info
-3
View File
@@ -1,3 +0,0 @@
EXPORTS
fill_vtable
fill_info
-3
View File
@@ -1,3 +0,0 @@
EXPORTS
fill_vtable
fill_info
-3
View File
@@ -1,3 +0,0 @@
EXPORTS
fill_vtable
fill_info
-3
View File
@@ -1,3 +0,0 @@
EXPORTS
fill_vtable
fill_info
-3
View File
@@ -1,3 +0,0 @@
EXPORTS
fill_vtable
fill_info
-3
View File
@@ -1,3 +0,0 @@
EXPORTS
fill_vtable
fill_info
-3
View File
@@ -1,3 +0,0 @@
EXPORTS
fill_vtable
fill_info
-3
View File
@@ -1,3 +0,0 @@
EXPORTS
fill_vtable
fill_info
+17
View File
@@ -0,0 +1,17 @@
#!/bin/sh
LANG=C
status=0
if ! which readelf 2>/dev/null >/dev/null; then
echo "'readelf' not found; skipping test"
exit 0
fi
for so in .libs/libgdk_pixbuf*.so; do
echo Checking $so for local PLT entries
readelf -r $so | grep 'JU\?MP_SLOT' | grep 'gdk_pixbuf' && status=1
done
exit $status
+6 -6
View File
@@ -16,7 +16,8 @@ EXTRA_DIST = \
gdk.symbols \
makegdkalias.pl \
gdkaliasdef.c \
abicheck.sh
abicheck.sh \
pltcheck.sh
INCLUDES = \
-DG_LOG_DOMAIN=\"Gdk\" \
@@ -24,8 +25,7 @@ INCLUDES = \
-I$(top_srcdir) \
-I$(top_builddir)/gdk \
-I$(top_srcdir)/gdk-pixbuf \
-DGDK_PIXBUF_DISABLE_DEPRECATED \
-DGDK_DISABLE_DEPRECATED \
-DGDK_PIXBUF_DISABLE_DEPRECATED \
$(GTK_DEBUG_FLAGS) \
$(GDK_DEP_CFLAGS)
@@ -160,10 +160,10 @@ libgdk_win32_2_0_la_LIBADD = win32/libgdk-win32.la $(GDK_DEP_LIBS) \
libgdk_win32_2_0_la_DEPENDENCIES = win32/libgdk-win32.la win32/rc/gdk-win32-res.o gdk.def
libgdk_win32_2_0_la_LDFLAGS = -Wl,win32/rc/gdk-win32-res.o -export-symbols gdk.def $(LDADD)
if HAVE_WINTAB
libgdk_win32_2_0_la_LIBADD += -Lwin32 -lwntab32x
libgdk_win32_2_0_la_LDFLAGS += -Wl,win32/libwntab32x.a
endif
if HAVE_IE55
libgdk_win32_2_0_la_LIBADD += -Lwin32 -lie55uuid
libgdk_win32_2_0_la_LDFLAGS += -Wl,win32/libie55uuid.a
endif
if OS_WIN32
@@ -202,7 +202,7 @@ gdkaliasdef.c: gdk.symbols
$(PERL) $(srcdir)/makegdkalias.pl -def < $(srcdir)/gdk.symbols > gdkaliasdef.c
if OS_LINUX
TESTS = abicheck.sh
TESTS = pltcheck.sh abicheck.sh
endif
+1 -1
View File
@@ -2,4 +2,4 @@
cpp -DINCLUDE_VARIABLES -P -DALL_FILES -DGDK_ENABLE_BROKEN -DGDK_WINDOWING_X11 ${srcdir:-.}/gdk.symbols | sed -e '/^$/d' -e 's/ G_GNUC.*$//' | sort | uniq > expected-abi
nm -D -g --defined-only .libs/libgdk-x11-2.0.so | cut -d ' ' -f 3 | sort > actual-abi
diff -u expected-abi actual-abi && rm expected-abi actual-abi
diff -u expected-abi actual-abi && rm -f expected-abi actual-abi
+3
View File
@@ -561,6 +561,9 @@ gdk_directfb_window_new (GdkWindow *parent,
gdk_directfb_event_windows_add (window);
}
if (attributes_mask & GDK_WA_TYPE_HINT)
gdk_window_set_type_hint (window, attributes->type_hint);
return window;
}
+2 -1
View File
@@ -328,7 +328,8 @@ gdk_init (int *argc, char ***argv)
{
if (!gdk_init_check (argc, argv))
{
g_warning ("cannot open display: %s", gdk_get_display_arg_name ());
const char *display_name = gdk_get_display_arg_name ();
g_warning ("cannot open display: %s", display_name ? display_name : "");
exit(1);
}
}
+7 -7
View File
@@ -137,15 +137,12 @@ gdk_threads_set_lock_functions
#endif
#if IN_HEADER(__GDK_H__)
#if IN_FILE(__GDK_INPUT_C__)
#if IN_FILE(__GDK_EVENTS_C__)
#ifndef GDK_DISABLE_DEPRECATED
gdk_input_add
gdk_input_remove
gdk_input_add_full
#endif
#ifdef GTK_COMPILATION
gdk_input_add_full
#endif
#endif
#endif
@@ -642,9 +639,6 @@ gdk_window_clear_area
gdk_window_clear_area_e
gdk_window_constrain_size
gdk_window_destroy
#ifndef GDK_DISABLE_DEPRECATED
gdk_window_destroy_notify
#endif
gdk_window_end_paint
gdk_window_foreign_new
gdk_window_freeze_updates
@@ -1091,6 +1085,12 @@ gdk_synthesize_window_state
#endif
#endif
#if IN_HEADER(__GDK_PRIVATE_H__)
#if IN_FILE(__GDK_WINDOW_X11_C__)
gdk_window_destroy_notify
#endif
#endif
#ifdef GDK_WINDOWING_WIN32
#if IN_HEADER(__GDK_WIN32_H__)
#if IN_FILE(__GDK_WIN32ID_C__)
+1 -1
View File
@@ -305,7 +305,7 @@ gdk_keyboard_ungrab (guint32 time)
/**
* gdk_beep:
*
* Emits a short beep.
* Emits a short beep on the default display.
**/
void
gdk_beep (void)
+1
View File
@@ -30,6 +30,7 @@
#include "gdktypes.h"
#include "gdkprivate.h"
#include "gdkalias.h"
guint _gdk_debug_flags = 0;
gint _gdk_error_code = 0;
+27 -4
View File
@@ -28,9 +28,8 @@
#include "gdkrgb.h"
#include "gdkprivate.h"
#include "gdkscreen.h"
#include "gdkalias.h"
#include "gdkintl.h"
#include "gdkalias.h"
#define GDK_INFO_KEY "gdk-info"
@@ -900,8 +899,22 @@ gdk_draw_layout_line_with_colors (GdkDrawable *drawable,
PangoMatrix tmp_matrix;
tmp_matrix = *matrix;
tmp_matrix.x0 = x;
tmp_matrix.y0 = y;
tmp_matrix.x0 += x;
tmp_matrix.y0 += y;
pango_renderer_set_matrix (renderer, &tmp_matrix);
x = 0;
y = 0;
}
/* Fall back to introduce a matrix if the coords would scale out of range.
* The x and y here will be added to in-layout coordinates. So we cannot
* support the entire range here safely. So, we just accept the middle half
* and use fallback for the rest. */
else if (GDK_PANGO_UNITS_OVERFLOWS (x, y))
{
PangoMatrix tmp_matrix = PANGO_MATRIX_INIT;
tmp_matrix.x0 += x;
tmp_matrix.y0 += y;
pango_renderer_set_matrix (renderer, &tmp_matrix);
x = 0;
@@ -1021,6 +1034,16 @@ gdk_draw_layout_with_colors (GdkDrawable *drawable,
tmp_matrix.y0 += y - rect.y;
pango_renderer_set_matrix (renderer, &tmp_matrix);
x = 0;
y = 0;
}
else if (GDK_PANGO_UNITS_OVERFLOWS (x, y))
{
PangoMatrix tmp_matrix = PANGO_MATRIX_INIT;
tmp_matrix.x0 = x;
tmp_matrix.y0 = y;
pango_renderer_set_matrix (renderer, &tmp_matrix);
x = 0;
y = 0;
}
+10
View File
@@ -50,6 +50,16 @@ void gdk_synthesize_window_state (GdkWindow *window,
GdkWindowState unset_flags,
GdkWindowState set_flags);
/* Tests whether a pair of x,y may cause overflows when converted to Pango
* units (multiplied by PANGO_SCALE). We don't allow the entire range, leave
* some space for additions afterwards, to be safe...
*/
#define GDK_PANGO_UNITS_OVERFLOWS(x,y) (G_UNLIKELY ( \
(y) >= PANGO_PIXELS (G_MAXINT-PANGO_SCALE)/2 || \
(x) >= PANGO_PIXELS (G_MAXINT-PANGO_SCALE)/2 || \
(y) <=-PANGO_PIXELS (G_MAXINT-PANGO_SCALE)/2 || \
(x) <=-PANGO_PIXELS (G_MAXINT-PANGO_SCALE)/2))
G_END_DECLS
#endif /* __GDK_PRIVATE_H__ */
+14 -8
View File
@@ -83,14 +83,20 @@ struct _GdkRegion
(idRect)->extents.y2 = (r)->y2;\
}
#define GROWREGION(reg, nRects){ \
if ((reg)->rects == &(reg)->extents) { \
(reg)->rects = g_new (GdkRegionBox, (nRects)); \
(reg)->rects[0] = reg->extents; \
} \
else \
(reg)->rects = g_renew (GdkRegionBox, (reg)->rects, (nRects)); \
(reg)->size = (nRects); \
#define GROWREGION(reg, nRects) { \
if ((nRects) == 0) { \
if ((reg)->rects != &(reg)->extents) { \
g_free ((reg)->rects); \
(reg)->rects = &(reg)->extents; \
} \
} \
else if ((reg)->rects == &(reg)->extents) { \
(reg)->rects = g_new (GdkRegionBox, (nRects)); \
(reg)->rects[0] = (reg)->extents; \
} \
else \
(reg)->rects = g_renew (GdkRegionBox, (reg)->rects, (nRects)); \
(reg)->size = (nRects); \
}
/*
+33 -14
View File
@@ -218,7 +218,7 @@ _gdk_paintable_get_type (void)
if (!paintable_type)
{
static const GTypeInfo paintable_info =
const GTypeInfo paintable_info =
{
sizeof (GdkPaintableIface), /* class_size */
NULL, /* base_init */
@@ -981,10 +981,13 @@ gdk_window_begin_paint_region (GdkWindow *window,
if (GDK_WINDOW_DESTROYED (window))
return;
if (GDK_IS_PAINTABLE (private->impl) &&
GDK_PAINTABLE_GET_IFACE (private->impl)->begin_paint_region)
if (GDK_IS_PAINTABLE (private->impl))
{
GDK_PAINTABLE_GET_IFACE (private->impl)->begin_paint_region (GDK_PAINTABLE (private->impl), region);
GdkPaintableIface *iface = GDK_PAINTABLE_GET_IFACE (private->impl);
if (iface->begin_paint_region)
iface->begin_paint_region ((GdkPaintable*)private->impl, region);
return;
}
@@ -1049,10 +1052,12 @@ gdk_window_end_paint (GdkWindow *window)
if (GDK_WINDOW_DESTROYED (window))
return;
if (GDK_IS_PAINTABLE (private->impl) &&
GDK_PAINTABLE_GET_IFACE (private->impl)->end_paint)
if (GDK_IS_PAINTABLE (private->impl))
{
GDK_PAINTABLE_GET_IFACE (private->impl)->end_paint (GDK_PAINTABLE (private->impl));
GdkPaintableIface *iface = GDK_PAINTABLE_GET_IFACE (private->impl);
if (iface->end_paint)
iface->end_paint ((GdkPaintable*)private->impl);
return;
}
@@ -1738,6 +1743,15 @@ gdk_window_draw_glyphs_transformed (GdkDrawable *drawable,
tmp_matrix.y0 -= y_offset;
matrix = &tmp_matrix;
}
else if (GDK_PANGO_UNITS_OVERFLOWS (x_offset, y_offset))
{
PangoMatrix identity = PANGO_MATRIX_INIT;
tmp_matrix = identity;
tmp_matrix.x0 -= x_offset;
tmp_matrix.y0 -= y_offset;
matrix = &tmp_matrix;
}
else
{
x -= x_offset * PANGO_SCALE;
@@ -2419,10 +2433,13 @@ gdk_window_process_updates (GdkWindow *window,
g_return_if_fail (window != NULL);
g_return_if_fail (GDK_IS_WINDOW (window));
if (GDK_IS_PAINTABLE (private->impl) &&
GDK_PAINTABLE_GET_IFACE (private->impl)->process_updates)
if (GDK_IS_PAINTABLE (private->impl))
{
GDK_PAINTABLE_GET_IFACE (private->impl)->process_updates (GDK_PAINTABLE (private->impl), update_children);
GdkPaintableIface *iface = GDK_PAINTABLE_GET_IFACE (private->impl);
if (iface->process_updates)
iface->process_updates ((GdkPaintable*)private->impl, update_children);
return;
}
@@ -2555,11 +2572,13 @@ gdk_window_invalidate_maybe_recurse (GdkWindow *window,
if (private->input_only || !GDK_WINDOW_IS_MAPPED (window))
return;
if (GDK_IS_PAINTABLE (private->impl) &&
GDK_PAINTABLE_GET_IFACE (private->impl)->invalidate_maybe_recurse)
if (GDK_IS_PAINTABLE (private->impl))
{
GDK_PAINTABLE_GET_IFACE (private->impl)->invalidate_maybe_recurse (GDK_PAINTABLE (private->impl), region,
child_func, user_data);
GdkPaintableIface *iface = GDK_PAINTABLE_GET_IFACE (private->impl);
if (iface->invalidate_maybe_recurse)
iface->invalidate_maybe_recurse ((GdkPaintable*)private->impl,
region, child_func, user_data);
return;
}
+10 -8
View File
@@ -85,14 +85,15 @@ typedef enum
*/
typedef enum
{
GDK_WA_TITLE = 1 << 1,
GDK_WA_X = 1 << 2,
GDK_WA_Y = 1 << 3,
GDK_WA_CURSOR = 1 << 4,
GDK_WA_COLORMAP = 1 << 5,
GDK_WA_VISUAL = 1 << 6,
GDK_WA_WMCLASS = 1 << 7,
GDK_WA_NOREDIR = 1 << 8
GDK_WA_TITLE = 1 << 1,
GDK_WA_X = 1 << 2,
GDK_WA_Y = 1 << 3,
GDK_WA_CURSOR = 1 << 4,
GDK_WA_COLORMAP = 1 << 5,
GDK_WA_VISUAL = 1 << 6,
GDK_WA_WMCLASS = 1 << 7,
GDK_WA_NOREDIR = 1 << 8,
GDK_WA_TYPE_HINT = 1 << 9
} GdkWindowAttributesType;
/* Size restriction enumeration.
@@ -213,6 +214,7 @@ struct _GdkWindowAttr
gchar *wmclass_name;
gchar *wmclass_class;
gboolean override_redirect;
GdkWindowTypeHint type_hint;
};
struct _GdkGeometry
+3
View File
@@ -268,6 +268,9 @@ gdk_window_new (GdkWindow *parent,
if (parent_private)
parent_private->children = g_list_prepend (parent_private->children, window);
if (attributes_mask & GDK_WA_TYPE_HINT)
gdk_window_set_type_hint (window, attributes->type_hint);
return window;
}
+17
View File
@@ -0,0 +1,17 @@
#!/bin/sh
LANG=C
status=0
if ! which readelf 2>/dev/null >/dev/null; then
echo "'readelf' not found; skipping test"
exit 0
fi
for so in .libs/lib*.so; do
echo Checking $so for local PLT entries
readelf -r $so | grep 'JU\?MP_SLOT' | grep -v 'gdk_pixbuf' | grep gdk && status=1
done
exit $status
+3
View File
@@ -691,6 +691,9 @@ gdk_window_new (GdkWindow *parent,
GDK_QUARTZ_RELEASE_POOL;
if (attributes_mask & GDK_WA_TYPE_HINT)
gdk_window_set_type_hint (window, attributes->type_hint);
return window;
}
+5 -7
View File
@@ -16,16 +16,16 @@ INCLUDES = \
LDADDS = $(GDK_DEP_LIBS)
if HAVE_WINTAB
libwntab32x_a = .libs/libwntab32x.a
libwntab32x_a = libwntab32x.a
.libs/libwntab32x.a: $(WINTAB_LIB)
libwntab32x.a: $(WINTAB_LIB)
cp $< $@
endif
if HAVE_IE55
libie55uuid_a = .libs/libie55uuid.a
libie55uuid_a = libie55uuid.a
.libs/libie55uuid.a: $(IE55_UUID_LIB)
libie55uuid.a: $(IE55_UUID_LIB)
cp $< $@
endif
@@ -37,9 +37,7 @@ SUBDIRS=rc
EXTRA_DIST = \
bdfcursor.c \
makefile.msc \
libie55uuid.la \
libwntab32x.la
makefile.msc
libgdk_win32_la_SOURCES = \
xcursors.h \
+22 -7
View File
@@ -47,7 +47,9 @@ typedef struct {
static GSList *fonts = NULL;
static GSList *cursors = NULL;
gint dw,dh;
static gint dw,dh;
static gboolean debug = FALSE;
#define HEX(c) (((c) >= '0' && (c) <= '9') ? \
((c) - '0') : (toupper(c) - 'A' + 10))
@@ -74,10 +76,11 @@ cursor_info_t *ci;
for (y = 0; y < ci->height; y++)
{
printf("/* ");
for (x = 0; x < ci->width; x++)
{
if (ci->hotx == x && ci->hoty == y)
printf ("o");
printf("o");
else
switch (ci->data[y*ci->width+x])
{
@@ -92,7 +95,7 @@ cursor_info_t *ci;
break;
}
}
printf("\n");
printf(" */\n");
}
}
@@ -144,6 +147,8 @@ gchar *fname;
{
font_info_t *nfi;
if (debug)
printf(" %*s*/\n", dw, "");
startchar = FALSE;
startbitmap = FALSE;
@@ -171,13 +176,19 @@ gchar *fname;
bitmap[px+cx] =
(mask & HEX(line[cx/4])) != 0;
/*printf(bitmap[px+cx] ? "X" : " ");*/
if (debug)
printf(bitmap[px+cx] ? "X" : " ");
}
py++;
/*printf("\n");*/
if (debug)
printf(" %*s*/\n/* %*s", dw-w, "", dw+dx, "");
}
else if (!strncasecmp("BBX ", line, 4))
{
sscanf(p+4, "%d %d %d %d", &w, &h, &x, &y);
if (debug)
printf("/* %s: */\n/* %*s", charname, dw+dx, "");
}
else if (!strncasecmp("ENCODING ", line, 9))
{
if (sscanf(p+9, "%d %d", &tmp, &id) != 2)
@@ -268,7 +279,7 @@ static void compose_cursors_from_fonts()
{
GSList *l;
for (l = g_slist_copy(fonts); l; l = g_slist_remove_link(l,l))
for (l = g_slist_copy (fonts); l; l = g_slist_delete_link (l,l))
{
font_info_t *fi = l->data;
gchar *name;
@@ -346,7 +357,8 @@ static int dump_cursors()
for (ptr = cursors; ptr; ptr = ptr->next)
{
/* print_cursor(ptr->data); */
if (debug)
print_cursor(ptr->data);
fprintf(f, "%s, \n", dump_cursor(ptr->data));
}
@@ -366,6 +378,9 @@ gchar **argv;
return -1;
}
if (g_getenv ("BDFCURSOR_DEBUG") != NULL)
debug = TRUE;
if (read_bdf_font(argv[1]) || !fonts)
{
printf("Error reading font\n");
+3290
View File
File diff suppressed because it is too large Load Diff
+129 -40
View File
@@ -25,9 +25,13 @@
#include "gdkcursor.h"
#include "gdkprivate-win32.h"
#ifdef __MINGW32__
#include <w32api.h>
#endif
#include "xcursors.h"
#if defined(__MINGW32__) || (defined(_MSC_VER) && (WINVER < 0x0500))
#if (defined(__MINGW32__) && (__W32API_MAJOR_VERSION < 3 || (__W32API_MAJOR_VERSION == 3 && __W32API_MINOR_VERSION < 8))) || (defined(_MSC_VER) && (WINVER < 0x0500))
typedef struct {
DWORD bV5Size;
LONG bV5Width;
@@ -71,6 +75,12 @@ _gdk_win32_data_to_wcursor (GdkCursorType cursor_type)
if (i >= G_N_ELEMENTS (cursors) || !cursors[i].name)
return NULL;
/* use real win32 cursor if possible */
if (cursors[i].builtin)
{
return LoadCursor (NULL, cursors[i].builtin);
}
w = GetSystemMetrics (SM_CXCURSOR);
h = GetSystemMetrics (SM_CYCURSOR);
@@ -421,7 +431,6 @@ gdk_win32_icon_to_pixbuf_libgtk_only (HICON hicon)
HDC hdc;
gchar *pixels, *bits, buf[32];
gint rowstride, x, y, w, h;
gboolean no_alpha;
if (!GDI_CALL (GetIconInfo, (hicon, &ii)))
return NULL;
@@ -435,55 +444,135 @@ gdk_win32_icon_to_pixbuf_libgtk_only (HICON hicon)
memset (&bmi, 0, sizeof (bmi));
bmi.bi.biSize = sizeof (bmi.bi);
if (!GDI_CALL (GetDIBits, (hdc, ii.hbmColor, 0, 1, NULL, (BITMAPINFO *)&bmi, DIB_RGB_COLORS)))
goto out1;
w = bmi.bi.biWidth;
h = bmi.bi.biHeight;
bmi.bi.biBitCount = 32;
bmi.bi.biCompression = BI_RGB;
bmi.bi.biHeight = -h;
bits = g_malloc0 (4 * w * h);
/* color data */
if (!GDI_CALL (GetDIBits, (hdc, ii.hbmColor, 0, h, bits, (BITMAPINFO *)&bmi, DIB_RGB_COLORS)))
goto out2;
pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, TRUE, 8, w, h);
pixels = gdk_pixbuf_get_pixels (pixbuf);
rowstride = gdk_pixbuf_get_rowstride (pixbuf);
no_alpha = TRUE;
for (y = 0; y < h; y++)
if (ii.hbmColor != NULL)
{
for (x = 0; x < w; x++)
{
pixels[2] = bits[(x+y*w) * 4];
pixels[1] = bits[(x+y*w) * 4 + 1];
pixels[0] = bits[(x+y*w) * 4 + 2];
pixels[3] = bits[(x+y*w) * 4 + 3];
if (no_alpha && pixels[3] > 0)
no_alpha = FALSE;
pixels += 4;
}
pixels += (w * 4 - rowstride);
}
/* Colour cursor */
/* mask */
if (no_alpha &&
GDI_CALL (GetDIBits, (hdc, ii.hbmMask, 0, h, bits, (BITMAPINFO *)&bmi, DIB_RGB_COLORS)))
{
gboolean no_alpha;
if (!GDI_CALL (GetDIBits, (hdc, ii.hbmColor, 0, 1, NULL, (BITMAPINFO *)&bmi, DIB_RGB_COLORS)))
goto out1;
w = bmi.bi.biWidth;
h = bmi.bi.biHeight;
bmi.bi.biBitCount = 32;
bmi.bi.biCompression = BI_RGB;
bmi.bi.biHeight = -h;
bits = g_malloc0 (4 * w * h);
/* color data */
if (!GDI_CALL (GetDIBits, (hdc, ii.hbmColor, 0, h, bits, (BITMAPINFO *)&bmi, DIB_RGB_COLORS)))
goto out2;
pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, TRUE, 8, w, h);
pixels = gdk_pixbuf_get_pixels (pixbuf);
rowstride = gdk_pixbuf_get_rowstride (pixbuf);
no_alpha = TRUE;
for (y = 0; y < h; y++)
{
for (x = 0; x < w; x++)
{
pixels[3] = 255 - bits[(x + y * w) * 4];
pixels[2] = bits[(x+y*w) * 4];
pixels[1] = bits[(x+y*w) * 4 + 1];
pixels[0] = bits[(x+y*w) * 4 + 2];
pixels[3] = bits[(x+y*w) * 4 + 3];
if (no_alpha && pixels[3] > 0)
no_alpha = FALSE;
pixels += 4;
}
pixels += (w * 4 - rowstride);
}
/* mask */
if (no_alpha &&
GDI_CALL (GetDIBits, (hdc, ii.hbmMask, 0, h, bits, (BITMAPINFO *)&bmi, DIB_RGB_COLORS)))
{
pixels = gdk_pixbuf_get_pixels (pixbuf);
for (y = 0; y < h; y++)
{
for (x = 0; x < w; x++)
{
pixels[3] = 255 - bits[(x + y * w) * 4];
pixels += 4;
}
pixels += (w * 4 - rowstride);
}
}
}
else
{
/* B&W cursor */
int bpl;
if (!GDI_CALL (GetDIBits, (hdc, ii.hbmMask, 0, 0, NULL, (BITMAPINFO *)&bmi, DIB_RGB_COLORS)))
goto out1;
w = bmi.bi.biWidth;
h = ABS (bmi.bi.biHeight) / 2;
bits = g_malloc0 (4 * w * h);
/* masks */
if (!GDI_CALL (GetDIBits, (hdc, ii.hbmMask, 0, h*2, bits, (BITMAPINFO *)&bmi, DIB_RGB_COLORS)))
goto out2;
pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, TRUE, 8, w, h);
pixels = gdk_pixbuf_get_pixels (pixbuf);
rowstride = gdk_pixbuf_get_rowstride (pixbuf);
bpl = ((w-1)/32 + 1)*4;
#if 0
for (y = 0; y < h*2; y++)
{
for (x = 0; x < w; x++)
{
const gint bit = 7 - (x % 8);
printf ("%c ", ((bits[bpl*y+x/8])&(1<<bit)) ? ' ' : 'X');
}
printf ("\n");
}
#endif
for (y = 0; y < h; y++)
{
const guchar *andp, *xorp;
if (bmi.bi.biHeight < 0)
{
andp = bits + bpl*y;
xorp = bits + bpl*(h+y);
}
else
{
andp = bits + bpl*(h-y-1);
xorp = bits + bpl*(h+h-y-1);
}
for (x = 0; x < w; x++)
{
const gint bit = 7 - (x % 8);
if ((*andp) & (1<<bit))
{
if ((*xorp) & (1<<bit))
pixels[2] = pixels[1] = pixels[0] = 0xFF;
else
pixels[2] = pixels[1] = pixels[0] = 0;
pixels[3] = 0xFF;
}
else
{
pixels[2] = pixels[1] = pixels[0] = 0;
pixels[3] = 0;
}
pixels += 4;
if (bit == 0)
{
andp++;
xorp++;
}
}
pixels += (w * 4 - rowstride);
}
}
g_snprintf (buf, sizeof (buf), "%ld", ii.xHotspot);
+1 -133
View File
@@ -1847,139 +1847,8 @@ handle_configure_event (MSG *msg,
append_event (event);
}
}
static void
erase_background (GdkWindow *window,
HDC hdc)
{
HDC bgdc = NULL;
HBRUSH hbr = NULL;
HPALETTE holdpal = NULL;
RECT rect;
COLORREF bg;
GdkColormap *colormap;
GdkColormapPrivateWin32 *colormap_private;
int x, y;
int x_offset, y_offset;
if (((GdkWindowObject *) window)->input_only ||
((GdkWindowObject *) window)->bg_pixmap == GDK_NO_BG ||
GDK_WINDOW_IMPL_WIN32 (((GdkWindowObject *) window)->impl)->position_info.no_bg)
{
return;
}
colormap = gdk_drawable_get_colormap (window);
if (colormap &&
(colormap->visual->type == GDK_VISUAL_PSEUDO_COLOR ||
colormap->visual->type == GDK_VISUAL_STATIC_COLOR))
{
int k;
colormap_private = GDK_WIN32_COLORMAP_DATA (colormap);
if (!(holdpal = SelectPalette (hdc, colormap_private->hpal, FALSE)))
WIN32_GDI_FAILED ("SelectPalette");
else if ((k = RealizePalette (hdc)) == GDI_ERROR)
WIN32_GDI_FAILED ("RealizePalette");
else if (k > 0)
GDK_NOTE (COLORMAP, g_print ("erase_background: realized %p: %d colors\n",
colormap_private->hpal, k));
}
x_offset = y_offset = 0;
while (window && ((GdkWindowObject *) window)->bg_pixmap == GDK_PARENT_RELATIVE_BG)
{
/* If this window should have the same background as the parent,
* fetch the parent. (And if the same goes for the parent, fetch
* the grandparent, etc.)
*/
x_offset += ((GdkWindowObject *) window)->x;
y_offset += ((GdkWindowObject *) window)->y;
window = GDK_WINDOW (((GdkWindowObject *) window)->parent);
}
if (GDK_WINDOW_IMPL_WIN32 (((GdkWindowObject *) window)->impl)->position_info.no_bg)
{
/* Improves scolling effect, e.g. main buttons of testgtk */
return;
}
GetClipBox (hdc, &rect);
if (((GdkWindowObject *) window)->bg_pixmap == NULL)
{
bg = _gdk_win32_colormap_color (GDK_DRAWABLE_IMPL_WIN32 (((GdkWindowObject *) window)->impl)->colormap,
((GdkWindowObject *) window)->bg_color.pixel);
if (!(hbr = CreateSolidBrush (bg)))
WIN32_GDI_FAILED ("CreateSolidBrush");
else if (!FillRect (hdc, &rect, hbr))
WIN32_GDI_FAILED ("FillRect");
if (hbr != NULL)
DeleteObject (hbr);
}
else if (((GdkWindowObject *) window)->bg_pixmap != GDK_NO_BG)
{
GdkPixmap *pixmap = ((GdkWindowObject *) window)->bg_pixmap;
GdkPixmapImplWin32 *pixmap_impl = GDK_PIXMAP_IMPL_WIN32 (GDK_PIXMAP_OBJECT (pixmap)->impl);
if (x_offset == 0 && y_offset == 0 &&
pixmap_impl->width <= 8 && pixmap_impl->height <= 8)
{
if (!(hbr = CreatePatternBrush (GDK_PIXMAP_HBITMAP (pixmap))))
WIN32_GDI_FAILED ("CreatePatternBrush");
else if (!FillRect (hdc, &rect, hbr))
WIN32_GDI_FAILED ("FillRect");
if (hbr != NULL)
DeleteObject (hbr);
}
else
{
HGDIOBJ oldbitmap;
if (!(bgdc = CreateCompatibleDC (hdc)))
{
WIN32_GDI_FAILED ("CreateCompatibleDC");
return;
}
if (!(oldbitmap = SelectObject (bgdc, GDK_PIXMAP_HBITMAP (pixmap))))
{
WIN32_GDI_FAILED ("SelectObject");
DeleteDC (bgdc);
return;
}
x = -x_offset;
while (x < rect.right)
{
if (x + pixmap_impl->width >= rect.left)
{
y = -y_offset;
while (y < rect.bottom)
{
if (y + pixmap_impl->height >= rect.top)
{
if (!BitBlt (hdc, x, y,
pixmap_impl->width, pixmap_impl->height,
bgdc, 0, 0, SRCCOPY))
{
WIN32_GDI_FAILED ("BitBlt");
SelectObject (bgdc, oldbitmap);
DeleteDC (bgdc);
return;
}
}
y += pixmap_impl->height;
}
}
x += pixmap_impl->width;
}
SelectObject (bgdc, oldbitmap);
DeleteDC (bgdc);
}
}
g_main_context_iteration (NULL, FALSE);
}
GdkRegion *
@@ -2968,7 +2837,6 @@ gdk_event_translate (MSG *msg,
if (GDK_WINDOW_DESTROYED (window))
break;
erase_background (window, (HDC) msg->wParam);
return_val = TRUE;
*ret_valp = 1;
break;
+183 -47
View File
@@ -40,7 +40,8 @@
#ifdef HAVE_WINTAB
#define PACKETDATA (PK_CONTEXT | PK_CURSOR | PK_BUTTONS | PK_X | PK_Y | PK_NORMAL_PRESSURE | PK_ORIENTATION)
#define PACKETMODE (PK_BUTTONS)
/* We want everything in absolute mode */
#define PACKETMODE (0)
#include <pktdef.h>
#define DEBUG_WINTAB 1 /* Verbose debug messages enabled */
@@ -192,6 +193,135 @@ print_lc(LOGCONTEXT *lc)
lc->lcSysSensX / 65536., lc->lcSysSensY / 65536.);
}
static void
print_cursor (int index)
{
int size;
int i;
char *name;
BOOL active;
WTPKT wtpkt;
BYTE buttons;
BYTE buttonbits;
char *btnnames;
char *p;
BYTE buttonmap[32];
BYTE sysbtnmap[32];
BYTE npbutton;
UINT npbtnmarks[2];
UINT *npresponse;
BYTE tpbutton;
UINT tpbtnmarks[2];
UINT *tpresponse;
DWORD physid;
UINT mode;
UINT minpktdata;
UINT minbuttons;
UINT capabilities;
size = WTInfo (WTI_CURSORS + index, CSR_NAME, NULL);
name = g_malloc (size + 1);
WTInfo (WTI_CURSORS + index, CSR_NAME, name);
g_print ("NAME: %s\n", name);
WTInfo (WTI_CURSORS + index, CSR_ACTIVE, &active);
g_print ("ACTIVE: %s\n", active ? "YES" : "NO");
WTInfo (WTI_CURSORS + index, CSR_PKTDATA, &wtpkt);
g_print ("PKTDATA: %#x:", (guint) wtpkt);
#define BIT(x) if (wtpkt & PK_##x) g_print (" " #x)
BIT (CONTEXT);
BIT (STATUS);
BIT (TIME);
BIT (CHANGED);
BIT (SERIAL_NUMBER);
BIT (BUTTONS);
BIT (X);
BIT (Y);
BIT (Z);
BIT (NORMAL_PRESSURE);
BIT (TANGENT_PRESSURE);
BIT (ORIENTATION);
BIT (ROTATION);
#undef BIT
g_print ("\n");
WTInfo (WTI_CURSORS + index, CSR_BUTTONS, &buttons);
g_print ("BUTTONS: %d\n", buttons);
WTInfo (WTI_CURSORS + index, CSR_BUTTONBITS, &buttonbits);
g_print ("BUTTONBITS: %d\n", buttonbits);
size = WTInfo (WTI_CURSORS + index, CSR_BTNNAMES, NULL);
g_print ("BTNNAMES:");
if (size > 0)
{
btnnames = g_malloc (size + 1);
WTInfo (WTI_CURSORS + index, CSR_BTNNAMES, btnnames);
p = btnnames;
while (*p)
{
g_print (" %s", p);
p += strlen (p) + 1;
}
}
g_print ("\n");
WTInfo (WTI_CURSORS + index, CSR_BUTTONMAP, buttonmap);
g_print ("BUTTONMAP:");
for (i = 0; i < buttons; i++)
g_print (" %d", buttonmap[i]);
g_print ("\n");
WTInfo (WTI_CURSORS + index, CSR_SYSBTNMAP, sysbtnmap);
g_print ("SYSBTNMAP:");
for (i = 0; i < buttons; i++)
g_print (" %d", sysbtnmap[i]);
g_print ("\n");
WTInfo (WTI_CURSORS + index, CSR_NPBUTTON, &npbutton);
g_print ("NPBUTTON: %d\n", npbutton);
WTInfo (WTI_CURSORS + index, CSR_NPBTNMARKS, npbtnmarks);
g_print ("NPBTNMARKS: %d %d\n", npbtnmarks[0], npbtnmarks[1]);
size = WTInfo (WTI_CURSORS + index, CSR_NPRESPONSE, NULL);
g_print ("NPRESPONSE:");
if (size > 0)
{
npresponse = g_malloc (size);
WTInfo (WTI_CURSORS + index, CSR_NPRESPONSE, npresponse);
for (i = 0; i < size / sizeof (UINT); i++)
g_print (" %d", npresponse[i]);
}
g_print ("\n");
WTInfo (WTI_CURSORS + index, CSR_TPBUTTON, &tpbutton);
g_print ("TPBUTTON: %d\n", tpbutton);
WTInfo (WTI_CURSORS + index, CSR_TPBTNMARKS, tpbtnmarks);
g_print ("TPBTNMARKS: %d %d\n", tpbtnmarks[0], tpbtnmarks[1]);
size = WTInfo (WTI_CURSORS + index, CSR_TPRESPONSE, NULL);
g_print ("TPRESPONSE:");
if (size > 0)
{
tpresponse = g_malloc (size);
WTInfo (WTI_CURSORS + index, CSR_TPRESPONSE, tpresponse);
for (i = 0; i < size / sizeof (UINT); i++)
g_print (" %d", tpresponse[i]);
}
g_print ("\n");
WTInfo (WTI_CURSORS + index, CSR_PHYSID, &physid);
g_print ("PHYSID: %#x\n", (guint) physid);
WTInfo (WTI_CURSORS + index, CSR_CAPABILITIES, &capabilities);
g_print ("CAPABILITIES: %#x:", capabilities);
#define BIT(x) if (capabilities & CRC_##x) g_print (" " #x)
BIT (MULTIMODE);
BIT (AGGREGATE);
BIT (INVERT);
#undef BIT
g_print ("\n");
if (capabilities & CRC_MULTIMODE)
{
WTInfo (WTI_CURSORS + index, CSR_MODE, &mode);
g_print ("MODE: %d\n", mode);
}
if (capabilities & CRC_AGGREGATE)
{
WTInfo (WTI_CURSORS + index, CSR_MINPKTDATA, &minpktdata);
g_print ("MINPKTDATA: %d\n", minpktdata);
WTInfo (WTI_CURSORS + index, CSR_MINBUTTONS, &minbuttons);
g_print ("MINBUTTONS: %d\n", minbuttons);
}
}
#endif
void
@@ -204,6 +334,7 @@ _gdk_input_wintab_init_check (void)
HCTX *hctx;
UINT ndevices, ncursors, ncsrtypes, firstcsr, hardware;
BOOL active;
DWORD physid;
AXIS axis_x, axis_y, axis_npressure, axis_or[3];
int i, k;
int devix, cursorix;
@@ -323,7 +454,7 @@ _gdk_input_wintab_init_check (void)
/* According to the specs, if the function fails we must try again */
/* with a smaller queue size */
GDK_NOTE (INPUT, g_print("Attempting to increase queue size\n"));
for (i = 128; i >= 1; i >>= 1)
for (i = 32; i >= 1; i >>= 1)
{
if (WTQueueSizeSet(*hctx, i))
{
@@ -335,11 +466,29 @@ _gdk_input_wintab_init_check (void)
GDK_NOTE (INPUT, g_print("Whoops, no queue size could be set\n"));
for (cursorix = firstcsr; cursorix < firstcsr + ncsrtypes; cursorix++)
{
#ifdef DEBUG_WINTAB
GDK_NOTE (INPUT, (g_print("Cursor %d:\n", cursorix), print_cursor (cursorix)));
#endif
active = FALSE;
WTInfo (WTI_CURSORS + cursorix, CSR_ACTIVE, &active);
if (!active)
continue;
/* Wacom tablets seem to report cursors corresponding to
* nonexistent pens or pucks. At least my ArtPad II
* reports six cursors: a puck, pressure stylus and
* eraser stylus, and then the same three again. I only
* have a pressure-sensitive pen. The puck instances,
* and the second instances of the styluses report
* physid zero. So at least for Wacom, skip cursors with
* physid zero.
*/
WTInfo (WTI_CURSORS + cursorix, CSR_PHYSID, &physid);
if (strcmp (devname, "WACOM Tablet") == 0 && physid == 0)
continue;
gdkdev = g_object_new (GDK_TYPE_DEVICE, NULL);
WTInfo (WTI_CURSORS + cursorix, CSR_NAME, csrname);
gdkdev->info.name = g_strconcat (devname, " ", csrname, NULL);
gdkdev->info.source = GDK_SOURCE_PEN;
@@ -712,6 +861,11 @@ _gdk_input_other_event (GdkEvent *event,
PACKET packet;
gint k;
gint x, y;
guint translated_buttons, button_diff, button_mask;
/* Translation from tablet button state to GDK button state for
* buttons 1-3 - swap button 2 and 3.
*/
static guint button_map[8] = {0, 1, 4, 5, 2, 3, 6, 7};
if (event->any.window != wintab_window)
{
@@ -777,23 +931,41 @@ _gdk_input_other_event (GdkEvent *event,
g_assert (k == gdkdev->info.num_axes);
if (HIWORD (packet.pkButtons) != TBN_NONE)
{
/* Gdk buttons are numbered 1.. */
event->button.button = 1 + LOWORD (packet.pkButtons);
translated_buttons = button_map[packet.pkButtons & 0x07] | (packet.pkButtons & ~0x07);
if (HIWORD (packet.pkButtons) == TBN_UP)
if (translated_buttons != gdkdev->button_state)
{
/* At least one button has changed state so produce a button event
* If more than one button has changed state (unlikely),
* just care about the first and act on the next the next time
* we get a packet
*/
button_diff = translated_buttons ^ gdkdev->button_state;
/* Gdk buttons are numbered 1.. */
event->button.button = 1;
for (button_mask = 1; button_mask != 0x80000000;
button_mask <<= 1, event->button.button++)
{
if (button_diff & button_mask)
{
/* Found a button that has changed state */
break;
}
}
if (!(translated_buttons & button_mask))
{
event->any.type = GDK_BUTTON_RELEASE;
masktest = GDK_BUTTON_RELEASE_MASK;
gdkdev->button_state &= ~(1 << LOWORD (packet.pkButtons));
}
else
{
event->any.type = GDK_BUTTON_PRESS;
masktest = GDK_BUTTON_PRESS_MASK;
gdkdev->button_state |= 1 << LOWORD (packet.pkButtons);
}
gdkdev->button_state ^= button_mask;
}
else
{
@@ -932,44 +1104,6 @@ _gdk_input_other_event (GdkEvent *event,
GDK_NOTE (EVENTS_OR_INPUT,
g_print ("WINTAB motion: %g,%g\n",
event->motion.x, event->motion.y));
/* Check for missing release or press events for the normal
* pressure button. At least on my ArtPadII I sometimes miss a
* release event?
*/
if ((gdkdev->pktdata & PK_NORMAL_PRESSURE
&& (event->motion.state & GDK_BUTTON1_MASK)
&& packet.pkNormalPressure <= MAX (0, (gint) gdkdev->npbtnmarks[0] - 2))
|| (gdkdev->pktdata & PK_NORMAL_PRESSURE
&& !(event->motion.state & GDK_BUTTON1_MASK)
&& packet.pkNormalPressure > gdkdev->npbtnmarks[1] + 2))
{
GdkEvent *event2 = gdk_event_copy (event);
if (event->motion.state & GDK_BUTTON1_MASK)
{
event2->button.type = GDK_BUTTON_RELEASE;
gdkdev->button_state &= ~1;
}
else
{
event2->button.type = GDK_BUTTON_PRESS;
gdkdev->button_state |= 1;
}
event2->button.state = ((gdkdev->button_state << 8)
& (GDK_BUTTON1_MASK | GDK_BUTTON2_MASK
| GDK_BUTTON3_MASK | GDK_BUTTON4_MASK
| GDK_BUTTON5_MASK))
| key_state;
event2->button.button = 1;
GDK_NOTE (EVENTS_OR_INPUT,
g_print ("WINTAB synthesized button %s: %d %g,%gg\n",
(event2->button.type == GDK_BUTTON_PRESS ?
"press" : "release"),
event2->button.button,
event2->button.x,
event2->button.y));
_gdk_event_queue_append (display, event2);
}
}
return TRUE;
@@ -1098,6 +1232,7 @@ _gdk_input_grab_pointer (GdkWindow *window,
else
{
x_grab_window = NULL;
#if 0
tmp_list = _gdk_input_devices;
while (tmp_list)
{
@@ -1114,6 +1249,7 @@ _gdk_input_grab_pointer (GdkWindow *window,
tmp_list = tmp_list->next;
}
#endif
}
#endif
+209 -29
View File
@@ -361,13 +361,15 @@ get_default_title (void)
* get its own class
*/
static ATOM
RegisterGdkClass (GdkWindowType wtype)
RegisterGdkClass (GdkWindowType wtype, GdkWindowTypeHint wtype_hint)
{
static ATOM klassTOPLEVEL = 0;
static ATOM klassDIALOG = 0;
static ATOM klassCHILD = 0;
static ATOM klassTEMP = 0;
static ATOM klassTOPLEVEL = 0;
static ATOM klassDIALOG = 0;
static ATOM klassCHILD = 0;
static ATOM klassTEMP = 0;
static ATOM klassTEMPSHADOW = 0;
static HICON hAppIcon = NULL;
static HICON hAppIconSm = NULL;
static WNDCLASSEX wcl;
ATOM klass = 0;
@@ -380,26 +382,37 @@ RegisterGdkClass (GdkWindowType wtype)
wcl.cbWndExtra = 0;
wcl.hInstance = _gdk_app_hmodule;
wcl.hIcon = 0;
wcl.hIconSm = 0;
/* initialize once! */
if (0 == hAppIcon)
if (0 == hAppIcon && 0 == hAppIconSm)
{
gchar sLoc [MAX_PATH+1];
if (0 != GetModuleFileName (_gdk_app_hmodule, sLoc, MAX_PATH))
{
hAppIcon = ExtractIcon (_gdk_app_hmodule, sLoc, 0);
if (0 == hAppIcon)
{
if (0 != GetModuleFileName (_gdk_dll_hinstance, sLoc, MAX_PATH))
hAppIcon = ExtractIcon (_gdk_dll_hinstance, sLoc, 0);
}
}
if (0 == hAppIcon)
hAppIcon = LoadIcon (NULL, IDI_APPLICATION);
{
ExtractIconEx (sLoc, 0, &hAppIcon, &hAppIconSm, 1);
if (0 == hAppIcon && 0 == hAppIconSm)
{
if (0 != GetModuleFileName (_gdk_dll_hinstance, sLoc, MAX_PATH))
ExtractIconEx (sLoc, 0, &hAppIcon, &hAppIconSm, 1);
}
}
if (0 == hAppIcon && 0 == hAppIconSm)
{
hAppIcon = LoadImage (NULL, IDI_APPLICATION, IMAGE_ICON,
GetSystemMetrics (SM_CXICON),
GetSystemMetrics (SM_CYICON), 0);
hAppIconSm = LoadImage (NULL, IDI_APPLICATION, IMAGE_ICON,
GetSystemMetrics (SM_CXSMICON),
GetSystemMetrics (SM_CYSMICON), 0);
}
}
if (0 == hAppIcon)
hAppIcon = hAppIconSm;
else if (0 == hAppIconSm)
hAppIconSm = hAppIcon;
wcl.lpszMenuName = NULL;
wcl.hIconSm = 0;
/* initialize once per class */
/*
@@ -409,7 +422,7 @@ RegisterGdkClass (GdkWindowType wtype)
*/
#define ONCE_PER_CLASS() \
wcl.hIcon = CopyIcon (hAppIcon); \
wcl.hIconSm = CopyIcon (hAppIcon); \
wcl.hIconSm = CopyIcon (hAppIconSm); \
wcl.hbrBackground = NULL; \
wcl.hCursor = LoadCursor (NULL, IDC_ARROW);
@@ -450,14 +463,33 @@ RegisterGdkClass (GdkWindowType wtype)
break;
case GDK_WINDOW_TEMP:
if (0 == klassTEMP)
if ((wtype_hint == GDK_WINDOW_TYPE_HINT_MENU) ||
(wtype_hint == GDK_WINDOW_TYPE_HINT_DROPDOWN_MENU) ||
(wtype_hint == GDK_WINDOW_TYPE_HINT_POPUP_MENU) ||
(wtype_hint == GDK_WINDOW_TYPE_HINT_TOOLTIP))
{
wcl.lpszClassName = "gdkWindowTemp";
wcl.style |= CS_SAVEBITS;
ONCE_PER_CLASS ();
klassTEMP = RegisterClassEx (&wcl);
if (klassTEMPSHADOW == 0)
{
wcl.lpszClassName = "gdkWindowTempShadow";
wcl.style |= CS_SAVEBITS;
if (_winver >= 0x0501) /* Windows XP (5.1) or above */
wcl.style |= 0x00020000; /* CS_DROPSHADOW */
ONCE_PER_CLASS ();
klassTEMPSHADOW = RegisterClassEx (&wcl);
}
klass = klassTEMPSHADOW;
}
else
{
if (0 == klassTEMP)
{
wcl.lpszClassName = "gdkWindowTemp";
wcl.style |= CS_SAVEBITS;
ONCE_PER_CLASS ();
klassTEMP = RegisterClassEx (&wcl);
}
klass = klassTEMP;
}
klass = klassTEMP;
break;
default:
@@ -672,10 +704,15 @@ gdk_window_new_internal (GdkWindow *parent,
private->event_mask = GDK_STRUCTURE_MASK | attributes->event_mask;
if (attributes_mask & GDK_WA_TYPE_HINT)
impl->type_hint = attributes->type_hint;
else
impl->type_hint = GDK_WINDOW_TYPE_HINT_NORMAL;
if (private->parent)
private->parent->children = g_list_prepend (private->parent->children, window);
klass = RegisterGdkClass (private->window_type);
klass = RegisterGdkClass (private->window_type, impl->type_hint);
mbtitle = g_locale_from_utf8 (title, -1, NULL, NULL, NULL);
@@ -1409,6 +1446,139 @@ gdk_window_reparent (GdkWindow *window,
_gdk_window_init_position (GDK_WINDOW (window_private));
}
static void
erase_background (GdkWindow *window,
HDC hdc)
{
HDC bgdc = NULL;
HBRUSH hbr = NULL;
HPALETTE holdpal = NULL;
RECT rect;
COLORREF bg;
GdkColormap *colormap;
GdkColormapPrivateWin32 *colormap_private;
int x, y;
int x_offset, y_offset;
if (((GdkWindowObject *) window)->input_only ||
((GdkWindowObject *) window)->bg_pixmap == GDK_NO_BG ||
GDK_WINDOW_IMPL_WIN32 (((GdkWindowObject *) window)->impl)->position_info.no_bg)
{
return;
}
colormap = gdk_drawable_get_colormap (window);
if (colormap &&
(colormap->visual->type == GDK_VISUAL_PSEUDO_COLOR ||
colormap->visual->type == GDK_VISUAL_STATIC_COLOR))
{
int k;
colormap_private = GDK_WIN32_COLORMAP_DATA (colormap);
if (!(holdpal = SelectPalette (hdc, colormap_private->hpal, FALSE)))
WIN32_GDI_FAILED ("SelectPalette");
else if ((k = RealizePalette (hdc)) == GDI_ERROR)
WIN32_GDI_FAILED ("RealizePalette");
else if (k > 0)
GDK_NOTE (COLORMAP, g_print ("erase_background: realized %p: %d colors\n",
colormap_private->hpal, k));
}
x_offset = y_offset = 0;
while (window && ((GdkWindowObject *) window)->bg_pixmap == GDK_PARENT_RELATIVE_BG)
{
/* If this window should have the same background as the parent,
* fetch the parent. (And if the same goes for the parent, fetch
* the grandparent, etc.)
*/
x_offset += ((GdkWindowObject *) window)->x;
y_offset += ((GdkWindowObject *) window)->y;
window = GDK_WINDOW (((GdkWindowObject *) window)->parent);
}
if (GDK_WINDOW_IMPL_WIN32 (((GdkWindowObject *) window)->impl)->position_info.no_bg)
{
/* Improves scolling effect, e.g. main buttons of testgtk */
return;
}
GetClipBox (hdc, &rect);
if (((GdkWindowObject *) window)->bg_pixmap == NULL)
{
bg = _gdk_win32_colormap_color (GDK_DRAWABLE_IMPL_WIN32 (((GdkWindowObject *) window)->impl)->colormap,
((GdkWindowObject *) window)->bg_color.pixel);
if (!(hbr = CreateSolidBrush (bg)))
WIN32_GDI_FAILED ("CreateSolidBrush");
else if (!FillRect (hdc, &rect, hbr))
WIN32_GDI_FAILED ("FillRect");
if (hbr != NULL)
DeleteObject (hbr);
}
else if (((GdkWindowObject *) window)->bg_pixmap != GDK_NO_BG)
{
GdkPixmap *pixmap = ((GdkWindowObject *) window)->bg_pixmap;
GdkPixmapImplWin32 *pixmap_impl = GDK_PIXMAP_IMPL_WIN32 (GDK_PIXMAP_OBJECT (pixmap)->impl);
if (x_offset == 0 && y_offset == 0 &&
pixmap_impl->width <= 8 && pixmap_impl->height <= 8)
{
if (!(hbr = CreatePatternBrush (GDK_PIXMAP_HBITMAP (pixmap))))
WIN32_GDI_FAILED ("CreatePatternBrush");
else if (!FillRect (hdc, &rect, hbr))
WIN32_GDI_FAILED ("FillRect");
if (hbr != NULL)
DeleteObject (hbr);
}
else
{
HGDIOBJ oldbitmap;
if (!(bgdc = CreateCompatibleDC (hdc)))
{
WIN32_GDI_FAILED ("CreateCompatibleDC");
return;
}
if (!(oldbitmap = SelectObject (bgdc, GDK_PIXMAP_HBITMAP (pixmap))))
{
WIN32_GDI_FAILED ("SelectObject");
DeleteDC (bgdc);
return;
}
x = -x_offset;
while (x < rect.right)
{
if (x + pixmap_impl->width >= rect.left)
{
y = -y_offset;
while (y < rect.bottom)
{
if (y + pixmap_impl->height >= rect.top)
{
if (!BitBlt (hdc, x, y,
pixmap_impl->width, pixmap_impl->height,
bgdc, 0, 0, SRCCOPY))
{
WIN32_GDI_FAILED ("BitBlt");
SelectObject (bgdc, oldbitmap);
DeleteDC (bgdc);
return;
}
}
y += pixmap_impl->height;
}
}
x += pixmap_impl->width;
}
SelectObject (bgdc, oldbitmap);
DeleteDC (bgdc);
}
}
}
void
_gdk_windowing_window_clear_area (GdkWindow *window,
gint x,
@@ -1435,8 +1605,9 @@ _gdk_windowing_window_clear_area (GdkWindow *window,
GDK_WINDOW_HWND (window),
width, height, x, y));
hdc = GetDC (GDK_WINDOW_HWND (window));
IntersectClipRect (hdc, x, y, x + width + 1, y + height + 1);
SendMessage (GDK_WINDOW_HWND (window), WM_ERASEBKGND, (WPARAM) hdc, 0);
IntersectClipRect (hdc, x, y, x + width, y + height);
erase_background (window, hdc);
GDI_CALL (ReleaseDC, (GDK_WINDOW_HWND (window), hdc));
}
}
@@ -1452,6 +1623,7 @@ _gdk_windowing_window_clear_area_e (GdkWindow *window,
if (!GDK_WINDOW_DESTROYED (window))
{
HDC hdc;
RECT rect;
GDK_NOTE (MISC, g_print ("_gdk_windowing_window_clear_area_e: %p: "
@@ -1459,10 +1631,18 @@ _gdk_windowing_window_clear_area_e (GdkWindow *window,
GDK_WINDOW_HWND (window),
width, height, x, y));
/* The background should be erased before the expose event is
generated */
hdc = GetDC (GDK_WINDOW_HWND (window));
IntersectClipRect (hdc, x, y, x + width, y + height);
erase_background (window, hdc);
GDI_CALL (ReleaseDC, (GDK_WINDOW_HWND (window), hdc));
rect.left = x;
rect.right = x + width + 1;
rect.right = x + width;
rect.top = y;
rect.bottom = y + height + 1;
rect.bottom = y + height;
GDI_CALL (InvalidateRect, (GDK_WINDOW_HWND (window), &rect, TRUE));
UpdateWindow (GDK_WINDOW_HWND (window));
}
+1 -1
View File
@@ -1,6 +1,6 @@
#include <winver.h>
GTK_ICON ICON "gtk.ico"
GTK_ICON ICON "@srcdir@/gtk.ico"
VS_VERSION_INFO VERSIONINFO
FILEVERSION @GTK_MAJOR_VERSION@,@GTK_MINOR_VERSION@,@GTK_MICRO_VERSION@,0
+102 -102
View File
@@ -1,357 +1,357 @@
static const struct { const gchar *name; gint type; guchar width; guchar height; guchar hotx; guchar hoty; guchar *data; } cursors[] = {
{ "X_cursor", 0, 16, 16, 7, 7,
static const struct { const gchar *name; const gchar *builtin; gint type; guchar width; guchar height; guchar hotx; guchar hoty; guchar *data; } cursors[] = {
{ "X_cursor", NULL, 0, 16, 16, 7, 7,
"\125\000\000\125\152\100\001\251\152\220\006\251\152\244\032\251"
"\032\251\152\244\006\252\252\220\001\252\252\100\000\152\251\000"
"\000\152\251\000\001\252\252\100\006\252\252\220\032\251\152\244"
"\152\244\032\251\152\220\006\251\152\100\001\251\125\000\000\125" },
{ "arrow", 2, 16, 16, 14, 1,
{ "arrow", IDC_ARROW, 2, 16, 16, 14, 1,
"\000\000\000\025\000\000\001\151\000\000\026\251\000\001\152\244"
"\000\026\252\244\001\152\252\220\006\252\252\220\005\126\252\100"
"\000\032\252\100\000\152\151\000\001\251\151\000\006\244\144\000"
"\032\220\144\000\152\100\020\000\031\000\000\000\004\000\000\000" },
{ "based_arrow_down", 4, 10, 12, 4, 10,
{ "based_arrow_down", NULL, 4, 10, 12, 4, 10,
"\125\125\126\252\251\125\125\126\252\251\125\245\120\032\100\001"
"\244\001\132\124\031\246\101\152\224\005\245\000\025\100" },
{ "based_arrow_up", 6, 10, 12, 4, 10,
{ "based_arrow_up", NULL, 6, 10, 12, 4, 10,
"\000\120\000\032\100\026\251\101\232\144\025\245\100\032\100\001"
"\244\005\132\125\152\252\225\125\125\152\252\225\125\125" },
{ "boat", 8, 16, 9, 14, 4,
{ "boat", NULL, 8, 16, 9, 14, 4,
"\000\026\000\000\000\152\240\000\201\225\150\000\252\252\252\252"
"\125\125\126\225\125\125\131\125\125\125\145\100\252\252\244\000"
"\125\125\120\000" },
{ "bogosity", 10, 15, 16, 7, 7,
{ "bogosity", NULL, 10, 15, 16, 7, 7,
"\125\105\105\125\251\031\032\225\144\144\145\101\221\221\220\126"
"\126\126\125\252\252\252\226\145\145\146\131\221\221\231\146\106"
"\106\145\231\131\131\226\252\252\252\125\225\225\225\006\106\106"
"\101\131\031\031\126\244\144\152\125\121\121\125" },
{ "bottom_left_corner", 12, 16, 16, 1, 14,
{ "bottom_left_corner", IDC_SIZENESW, 12, 16, 16, 1, 14,
"\125\000\000\000\151\000\000\000\151\025\000\120\151\031\001\220"
"\151\031\006\100\151\031\031\000\151\031\144\000\151\031\220\000"
"\151\032\125\120\151\032\252\220\151\025\125\120\151\000\000\000"
"\151\125\125\125\152\252\252\251\152\252\252\251\125\125\125\125" },
{ "bottom_right_corner", 14, 16, 16, 14, 14,
{ "bottom_right_corner", IDC_SIZENWSE, 14, 16, 16, 14, 14,
"\000\000\000\125\000\000\000\151\005\000\124\151\006\100\144\151"
"\001\220\144\151\000\144\144\151\000\031\144\151\000\006\144\151"
"\005\125\244\151\006\252\244\151\005\125\124\151\000\000\000\151"
"\125\125\125\151\152\252\252\251\152\252\252\251\125\125\125\125" },
{ "bottom_side", 16, 15, 16, 7, 14,
{ "bottom_side", IDC_SIZENS, 16, 15, 16, 7, 14,
"\000\005\100\000\000\031\000\000\000\144\000\000\001\220\000\000"
"\006\100\000\000\031\000\000\120\144\024\001\221\221\220\001\226"
"\131\000\001\231\220\000\001\251\000\000\001\220\000\125\125\125"
"\125\252\252\252\226\252\252\252\125\125\125\125" },
{ "bottom_tee", 18, 16, 12, 8, 10,
{ "bottom_tee", NULL, 18, 16, 12, 8, 10,
"\000\005\120\000\000\006\220\000\000\006\220\000\000\006\220\000"
"\000\006\220\000\000\006\220\000\000\006\220\000\000\006\220\000"
"\125\126\225\125\152\252\252\251\152\252\252\251\125\125\125\125" },
{ "box_spiral", 20, 16, 16, 8, 8,
{ "box_spiral", NULL, 20, 16, 16, 8, 8,
"\252\252\252\251\225\125\125\125\232\252\252\251\231\125\125\131"
"\231\252\252\231\231\225\125\231\231\232\251\231\231\231\131\231"
"\231\231\231\231\231\232\231\231\231\225\131\231\231\252\251\231"
"\231\125\125\231\232\252\252\231\225\125\125\131\252\252\252\251" },
{ "center_ptr", 22, 12, 16, 5, 1,
{ "center_ptr", IDC_UPARROW, 22, 12, 16, 5, 1,
"\000\125\000\000\151\000\001\151\100\001\252\100\005\252\120\006"
"\252\220\026\252\224\032\252\244\132\252\245\151\151\151\145\151"
"\131\124\151\025\000\151\000\000\151\000\000\151\000\000\125\000" },
{ "circle", 24, 16, 16, 8, 8,
{ "circle", NULL, 24, 16, 16, 8, 8,
"\000\025\124\000\001\132\245\100\005\252\252\120\026\252\252\224"
"\032\245\132\244\132\220\006\245\152\100\001\251\152\100\001\251"
"\152\100\001\251\152\100\001\251\132\220\006\245\032\245\132\244"
"\026\252\252\224\005\252\252\120\001\132\245\100\000\025\124\000" },
{ "clock", 26, 15, 16, 6, 3,
{ "clock", IDC_APPSTARTING, 26, 15, 16, 6, 3,
"\032\252\252\101\241\252\012\112\030\132\112\141\206\222\111\206"
"\251\131\046\006\124\220\232\006\251\012\132\252\252\244\142\032"
"\110\221\210\151\042\106\041\244\211\030\232\246\044\242\032\110"
"\246\250\024\052\232\252\252\252\152\252\252\251" },
{ "coffee_mug", 28, 16, 16, 7, 9,
{ "coffee_mug", NULL, 28, 16, 16, 7, 9,
"\002\252\252\000\011\125\125\200\051\125\125\151\046\125\126\231"
"\145\252\251\131\245\125\125\131\245\125\125\131\145\125\125\131"
"\045\125\125\131\046\226\126\231\151\231\231\231\251\232\231\231"
"\246\231\226\231\145\125\125\131\045\125\125\131\012\252\252\240" },
{ "cross", 30, 16, 16, 7, 7,
"\000\025\120\000\000\031\220\000\000\031\220\000\000\031\220\000"
"\000\031\220\000\125\131\225\125\125\131\225\125\252\251\252\252"
"\125\125\125\125\252\251\252\252\000\031\220\000\000\031\220\000"
"\000\031\220\000\000\031\220\000\000\031\220\000\000\031\220\000" },
{ "cross_reverse", 32, 16, 15, 7, 7,
{ "cross", IDC_CROSS, 30, 16, 15, 7, 7,
"\000\031\220\000\000\031\220\000\000\031\220\000\000\031\220\000"
"\000\031\220\000\125\131\225\125\252\251\252\252\125\125\125\125"
"\252\251\252\252\125\131\225\125\000\031\220\000\000\031\220\000"
"\000\031\220\000\000\031\220\000\000\031\220\000" },
{ "cross_reverse", NULL, 32, 16, 15, 7, 7,
"\044\030\220\140\211\030\221\211\142\130\226\044\030\230\230\220"
"\006\050\242\100\125\210\211\125\252\240\052\252\000\001\000\000"
"\252\240\052\252\125\210\211\125\006\050\242\100\030\230\230\220"
"\142\130\226\044\211\030\221\211\044\030\220\140" },
{ "crosshair", 34, 16, 16, 7, 7,
"\000\005\100\000\000\006\100\000\000\006\100\000\000\006\100\000"
"\000\006\100\000\000\006\100\000\125\126\125\125\125\126\125\125"
"\252\251\252\252\000\006\100\000\000\006\100\000\000\006\100\000"
"\000\006\100\000\000\006\100\000\000\006\100\000\000\006\100\000" },
{ "diamond_cross", 36, 16, 16, 7, 7,
"\000\025\120\000\000\131\224\000\001\151\245\000\005\211\211\100"
"\026\011\202\120\130\011\200\224\145\131\225\145\252\250\252\251"
"\125\125\125\125\250\011\200\250\045\011\201\140\011\111\205\200"
"\002\131\226\000\000\231\230\000\000\051\240\000\000\011\200\000" },
{ "dot", 38, 12, 12, 6, 6,
{ "crosshair", IDC_CROSS, 34, 16, 15, 7, 7,
"\000\006\100\000\000\006\100\000\000\006\100\000\000\006\100\000"
"\000\006\100\000\000\006\100\000\125\126\125\125\252\251\252\252"
"\125\126\125\125\000\006\100\000\000\006\100\000\000\006\100\000"
"\000\006\100\000\000\006\100\000\000\006\100\000" },
{ "diamond_cross", NULL, 36, 15, 15, 7, 7,
"\000\031\220\000\001\246\220\000\031\231\220\001\222\141\220\031"
"\011\201\221\220\046\001\232\252\232\252\225\125\025\125\252\251"
"\252\251\220\046\001\221\220\230\031\001\222\141\220\001\231\231"
"\000\001\246\220\000\001\231\000\000" },
{ "dot", NULL, 38, 12, 12, 6, 6,
"\001\125\100\025\252\124\032\252\244\132\252\245\152\252\251\152"
"\252\251\152\252\251\152\252\251\132\252\245\032\252\244\025\252"
"\124\001\125\100" },
{ "dotbox", 40, 14, 14, 7, 6,
{ "dotbox", NULL, 40, 14, 14, 7, 6,
"\125\125\125\126\252\252\251\145\125\125\226\100\000\031\144\000"
"\001\226\101\124\031\144\032\101\226\101\244\031\144\025\101\226"
"\100\000\031\144\000\001\226\125\125\131\152\252\252\225\125\125"
"\125" },
{ "double_arrow", 42, 12, 16, 6, 8,
{ "double_arrow", IDC_SIZENS, 42, 12, 16, 6, 8,
"\000\125\000\001\151\100\005\252\120\026\252\224\132\151\245\151"
"\151\151\125\151\125\000\151\000\000\151\000\125\151\125\151\151"
"\151\132\151\245\026\252\224\005\252\120\001\151\100\000\125\000" },
{ "draft_large", 44, 15, 16, 14, 0,
"\000\000\000\024\000\000\005\140\000\001\132\100\000\126\250\000"
"\025\252\200\005\152\252\001\132\252\240\006\252\252\200\000\026"
"\250\000\001\146\240\000\026\032\000\001\140\150\000\026\001\200"
"\001\140\006\000\006\000\000\000\040\000\000\000" },
{ "draft_small", 46, 15, 15, 14, 0,
{ "draft_large", NULL, 44, 15, 15, 14, 0,
"\000\000\000\030\000\000\006\220\000\001\252\100\000\152\244\000"
"\032\252\200\006\252\251\001\252\252\240\005\125\252\100\000\031"
"\250\000\001\226\220\000\031\032\000\001\220\144\000\031\001\200"
"\001\220\005\000\011\000\000\000\000" },
{ "draft_small", NULL, 46, 15, 15, 14, 0,
"\000\000\000\030\000\000\006\220\000\001\252\000\000\152\244\000"
"\032\252\200\000\125\251\000\000\031\240\000\001\226\100\000\031"
"\030\000\001\220\100\000\031\000\000\001\220\000\000\031\000\000"
"\001\220\000\000\011\000\000\000\000" },
{ "draped_box", 48, 14, 14, 7, 6,
{ "draped_box", NULL, 48, 14, 14, 7, 6,
"\125\125\125\126\252\252\251\140\145\220\226\032\132\111\146\220"
"\151\226\244\121\251\145\032\105\226\121\244\131\152\105\032\226"
"\151\006\231\141\245\244\226\006\131\011\152\252\252\225\125\125"
"\125" },
{ "exchange", 50, 16, 16, 7, 7,
{ "exchange", NULL, 50, 16, 16, 7, 7,
"\120\025\124\000\144\152\251\000\151\252\252\100\152\245\126\220"
"\145\220\001\220\145\245\000\120\152\251\000\000\125\125\000\000"
"\000\000\125\125\000\000\152\251\005\000\032\131\006\100\006\131"
"\006\225\132\251\001\252\252\151\000\152\251\031\000\025\124\005" },
{ "fleur", 52, 16, 16, 8, 8,
{ "fleur", IDC_SIZEALL, 52, 16, 16, 8, 8,
"\000\005\120\000\000\006\224\000\000\032\244\000\000\152\251\000"
"\001\026\224\100\006\106\221\220\132\126\225\245\152\252\252\251"
"\152\252\252\251\132\126\225\245\006\106\221\220\001\026\224\100"
"\000\152\251\000\000\032\244\000\000\006\220\000\000\005\120\000" },
{ "gobbler", 54, 16, 16, 14, 3,
"\000\000\152\220\000\000\152\120\220\000\132\132\226\252\232\125"
"\252\252\252\125\252\251\132\120\252\245\132\120\151\125\132\220"
"\125\125\252\120\126\252\251\120\025\225\125\100\001\225\125\000"
"\001\220\000\000\001\220\000\000\006\251\000\000\005\125\000\000" },
{ "gumby", 56, 16, 16, 2, 0,
{ "gobbler", NULL, 54, 16, 16, 14, 2,
"\000\000\125\120\000\000\152\220\120\000\152\125\225\125\132\132"
"\226\252\232\125\252\252\252\120\252\251\132\120\252\245\132\120"
"\151\125\132\220\125\125\252\120\026\252\251\100\001\225\125\000"
"\001\220\000\000\001\220\000\000\005\225\000\000\006\251\000\000" },
{ "gumby", NULL, 56, 16, 16, 2, 0,
"\012\252\000\000\122\125\200\000\244\225\140\000\251\231\230\000"
"\244\225\130\000\244\232\231\120\252\225\132\244\132\225\132\252"
"\005\225\130\152\000\225\130\152\000\226\131\252\000\226\130\152"
"\000\226\130\025\002\126\126\000\011\126\125\200\012\250\252\200" },
{ "hand1", 58, 13, 16, 12, 0,
{ "hand1", IDC_HAND, 58, 13, 16, 12, 0,
"\000\000\006\200\000\032\240\000\152\220\000\152\220\000\152\220"
"\000\152\251\001\152\252\221\232\252\224\252\252\251\046\252\252"
"\105\132\252\101\126\252\100\226\145\100\051\131\000\006\231\000"
"\000\151\000\000" },
{ "hand2", 60, 16, 16, 0, 1,
{ "hand2", IDC_HAND, 60, 16, 16, 0, 1,
"\025\125\100\000\152\252\220\000\225\125\144\000\152\251\131\000"
"\026\125\126\100\001\251\126\100\006\125\126\100\001\251\131\220"
"\006\125\145\144\001\245\225\131\000\132\125\144\000\031\145\220"
"\000\006\126\100\000\001\231\000\000\000\144\000\000\000\020\000" },
{ "heart", 62, 15, 14, 6, 8,
{ "heart", NULL, 62, 15, 14, 6, 8,
"\012\250\252\200\245\152\126\212\100\144\006\244\000\100\006\220"
"\000\000\032\100\000\000\151\000\104\001\251\000\100\032\051\000"
"\001\240\051\000\032\000\051\001\240\000\051\132\000\000\051\240"
"\000\000\052\000\000" },
{ "icon", 64, 16, 16, 8, 8,
{ "icon", NULL, 64, 16, 16, 8, 8,
"\252\252\252\252\246\146\146\146\231\231\231\232\246\146\146\146"
"\231\125\125\232\246\125\125\146\231\125\125\232\246\125\125\146"
"\231\125\125\232\246\125\125\146\231\125\125\232\246\125\125\146"
"\231\231\231\232\246\146\146\146\231\231\231\232\252\252\252\252" },
{ "iron_cross", 66, 16, 16, 8, 7,
{ "iron_cross", NULL, 66, 16, 16, 8, 7,
"\005\125\125\120\032\252\252\244\026\252\252\224\145\252\252\131"
"\151\152\251\151\152\132\245\251\152\226\226\251\152\252\252\251"
"\152\252\252\251\152\226\226\251\152\132\245\251\151\152\251\151"
"\145\252\252\131\026\252\252\224\032\252\252\244\005\125\125\120" },
{ "left_ptr", 68, 10, 16, 1, 1,
{ "left_ptr", IDC_ARROW, 68, 10, 16, 1, 1,
"\120\000\006\100\000\151\000\006\244\000\152\220\006\252\100\152"
"\251\006\252\244\152\252\226\252\125\151\244\006\106\220\120\151"
"\000\001\244\000\032\100\000\120" },
{ "left_side", 70, 16, 15, 1, 7,
{ "left_side", IDC_SIZEWE, 70, 16, 15, 1, 7,
"\125\000\000\000\151\000\000\000\151\000\120\000\151\001\220\000"
"\151\006\100\000\151\031\000\000\151\145\125\125\151\252\252\251"
"\151\145\125\125\151\031\000\000\151\006\100\000\151\001\220\000"
"\151\000\120\000\151\000\000\000\125\000\000\000" },
{ "left_tee", 72, 12, 16, 1, 8,
{ "left_tee", NULL, 72, 12, 16, 1, 8,
"\125\000\000\151\000\000\151\000\000\151\000\000\151\000\000\151"
"\000\000\151\125\125\152\252\251\152\252\251\151\125\125\151\000"
"\000\151\000\000\151\000\000\151\000\000\151\000\000\125\000\000" },
{ "leftbutton", 74, 16, 16, 8, 8,
{ "leftbutton", NULL, 74, 16, 16, 8, 8,
"\025\125\125\120\152\252\252\244\152\252\252\244\145\145\145\144"
"\145\146\146\144\145\146\146\144\145\146\146\144\145\146\146\144"
"\145\145\145\144\152\252\252\244\152\252\252\244\152\252\252\244"
"\152\252\252\244\152\252\252\244\152\252\252\244\025\125\125\120" },
{ "ll_angle", 76, 12, 12, 1, 10,
{ "ll_angle", NULL, 76, 12, 12, 1, 10,
"\125\000\000\151\000\000\151\000\000\151\000\000\151\000\000\151"
"\000\000\151\000\000\151\000\000\151\125\125\152\252\251\152\252"
"\251\125\125\125" },
{ "lr_angle", 78, 12, 12, 10, 10,
{ "lr_angle", NULL, 78, 12, 12, 10, 10,
"\000\000\125\000\000\151\000\000\151\000\000\151\000\000\151\000"
"\000\151\000\000\151\000\000\151\125\125\151\152\252\251\152\252"
"\251\125\125\125" },
{ "man", 80, 16, 16, 14, 5,
{ "man", NULL, 80, 16, 16, 14, 5,
"\001\132\224\000\006\251\252\000\005\131\225\100\220\006\100\004"
"\144\032\220\052\031\145\145\232\006\246\152\105\001\146\145\000"
"\000\045\144\000\000\031\220\000\000\145\144\000\001\226\131\000"
"\006\131\226\100\026\144\146\120\152\220\032\245\252\220\032\252" },
{ "middlebutton", 82, 16, 16, 8, 8,
{ "middlebutton", NULL, 82, 16, 16, 8, 8,
"\025\125\125\120\152\252\252\244\152\252\252\244\145\145\145\144"
"\146\145\146\144\146\145\146\144\146\145\146\144\146\145\146\144"
"\145\145\145\144\152\252\252\244\152\252\252\244\152\252\252\244"
"\152\252\252\244\152\252\252\244\152\252\252\244\025\125\125\120" },
{ "mouse", 84, 16, 16, 4, 1,
{ "mouse", NULL, 84, 16, 16, 4, 1,
"\000\125\100\000\001\124\000\000\000\152\000\000\000\045\000\000"
"\025\151\125\100\125\132\125\120\152\252\252\225\225\125\125\145"
"\232\132\132\151\232\132\132\151\232\132\132\151\225\125\125\151"
"\005\125\125\051\001\125\124\000\000\225\140\000\000\052\200\000" },
{ "pencil", 86, 13, 16, 11, 15,
{ "pencil", NULL, 86, 13, 16, 11, 15,
"\132\220\000\031\131\000\006\126\220\000\145\230\000\012\246\100"
"\001\225\140\000\031\131\000\002\125\200\000\145\144\000\012\126"
"\000\001\225\220\000\031\131\000\001\252\100\000\032\220\000\001"
"\244\000\000\031" },
{ "pirate", 88, 16, 16, 7, 12,
{ "pirate", IDC_NO, 88, 16, 16, 7, 12,
"\000\152\220\000\001\252\244\000\006\252\251\000\032\132\132\100"
"\032\132\132\100\006\252\251\000\001\252\244\000\100\152\220\001"
"\200\152\220\045\220\152\220\151\145\032\101\220\032\200\052\100"
"\000\052\200\000\026\252\250\011\252\125\132\251\225\000\005\144" },
{ "plus", 90, 12, 12, 5, 6,
{ "plus", NULL, 90, 12, 12, 5, 6,
"\000\125\000\000\151\000\000\151\000\000\151\000\125\151\125\152"
"\252\251\152\252\251\125\151\125\000\151\000\000\151\000\000\151"
"\000\000\125\000" },
{ "question_arrow", 92, 11, 16, 5, 8,
{ "question_arrow", IDC_HELP, 92, 11, 16, 5, 8,
"\002\252\000\052\252\002\245\152\032\125\151\152\001\245\151\012"
"\221\124\251\101\152\224\001\251\100\006\144\000\031\220\002\246"
"\240\026\232\120\026\245\000\026\120\000\025\000" },
{ "right_ptr", 94, 10, 16, 8, 1,
{ "right_ptr", NULL, 94, 10, 16, 8, 1,
"\000\000\120\000\031\000\006\220\001\251\000\152\220\032\251\006"
"\252\221\252\251\152\252\225\132\251\001\246\220\151\031\006\220"
"\121\244\000\032\100\000\120\000" },
{ "right_side", 96, 16, 15, 14, 7,
{ "right_side", IDC_SIZEWE, 96, 16, 15, 14, 7,
"\000\000\000\125\000\000\000\151\000\005\000\151\000\006\100\151"
"\000\001\220\151\000\000\144\151\125\125\131\151\152\252\252\151"
"\125\125\131\151\000\000\144\151\000\001\220\151\000\006\100\151"
"\000\005\000\151\000\000\000\151\000\000\000\125" },
{ "right_tee", 98, 12, 16, 10, 8,
{ "right_tee", NULL, 98, 12, 16, 10, 8,
"\000\000\125\000\000\151\000\000\151\000\000\151\000\000\151\000"
"\000\151\125\125\151\152\252\251\152\252\251\125\125\151\000\000"
"\151\000\000\151\000\000\151\000\000\151\000\000\151\000\000\125" },
{ "rightbutton", 100, 16, 16, 8, 8,
{ "rightbutton", NULL, 100, 16, 16, 8, 8,
"\025\125\125\120\152\252\252\244\152\252\252\244\145\145\145\144"
"\146\146\145\144\146\146\145\144\146\146\145\144\146\146\145\144"
"\145\145\145\144\152\252\252\244\152\252\252\244\152\252\252\244"
"\152\252\252\244\152\252\252\244\152\252\252\244\025\125\125\120" },
{ "rtl_logo", 102, 16, 16, 7, 7,
{ "rtl_logo", NULL, 102, 16, 16, 7, 7,
"\125\125\125\125\152\252\252\251\145\125\131\131\144\000\031\031"
"\145\125\131\031\152\252\251\031\145\145\131\031\144\144\031\031"
"\144\144\031\031\144\145\131\131\144\152\252\251\144\145\125\131"
"\144\144\000\031\145\145\125\131\152\252\252\251\125\125\125\125" },
{ "sailboat", 104, 16, 16, 8, 0,
{ "sailboat", NULL, 104, 16, 16, 8, 0,
"\000\000\120\000\000\000\124\000\000\001\144\000\000\005\145\000"
"\000\006\151\000\000\026\151\000\000\032\151\100\000\132\152\100"
"\000\152\152\100\001\152\152\120\001\252\152\220\005\252\152\220"
"\006\252\152\225\026\252\152\245\132\251\132\200\025\125\124\000" },
{ "sb_down_arrow", 106, 9, 16, 4, 15,
{ "sb_down_arrow", NULL, 106, 9, 16, 4, 15,
"\005\124\001\231\000\146\100\031\220\006\144\001\231\000\146\100"
"\031\220\006\144\001\231\005\146\125\131\225\052\252\002\252\000"
"\052\000\002\000" },
{ "sb_h_double_arrow", 108, 15, 9, 7, 4,
{ "sb_h_double_arrow", IDC_SIZEWE, 108, 15, 9, 7, 4,
"\001\100\005\000\031\000\031\001\245\125\151\032\252\252\251\252"
"\125\126\251\252\252\252\221\245\125\151\001\220\001\220\001\100"
"\005\000" },
{ "sb_left_arrow", 110, 16, 9, 0, 4,
{ "sb_left_arrow", NULL, 110, 16, 9, 0, 4,
"\000\120\000\000\001\220\000\000\006\225\125\125\032\252\252\252"
"\152\225\125\125\032\252\252\252\006\225\125\125\001\220\000\000"
"\000\120\000\000" },
{ "sb_right_arrow", 112, 16, 9, 15, 4,
{ "sb_right_arrow", NULL, 112, 16, 9, 15, 4,
"\000\000\005\000\000\000\006\100\125\125\126\220\252\252\252\244"
"\125\125\126\251\252\252\252\244\125\125\126\220\000\000\006\100"
"\000\000\005\000" },
{ "sb_up_arrow", 114, 9, 16, 4, 0,
{ "sb_up_arrow", NULL, 114, 9, 16, 4, 0,
"\000\200\000\250\000\252\200\252\250\126\145\125\231\120\146\100"
"\031\220\006\144\001\231\000\146\100\031\220\006\144\001\231\000"
"\146\100\025\120" },
{ "sb_v_double_arrow", 116, 9, 15, 4, 7,
{ "sb_v_double_arrow", IDC_SIZENS, 116, 9, 15, 4, 7,
"\001\220\001\251\001\252\221\252\251\126\145\101\231\000\146\100"
"\031\220\006\144\001\231\005\146\125\252\251\032\251\001\251\000"
"\031\000" },
{ "shuttle", 118, 16, 16, 11, 0,
{ "shuttle", NULL, 118, 16, 16, 11, 0,
"\000\000\006\100\000\000\032\220\000\000\152\244\000\000\251\252"
"\000\030\251\252\000\144\251\252\001\224\251\252\001\224\251\252"
"\001\224\251\252\001\224\251\252\006\224\251\252\032\224\251\252"
"\152\250\251\252\025\244\145\144\000\120\032\244\000\000\006\220" },
{ "sizing", 120, 16, 16, 8, 8,
{ "sizing", IDC_SIZENWSE, 120, 16, 16, 8, 8,
"\125\125\120\000\152\252\220\000\145\125\120\000\144\000\000\000"
"\144\125\125\000\144\152\251\000\144\145\131\025\144\144\031\031"
"\144\144\031\031\124\145\131\031\000\152\251\031\000\125\126\131"
"\000\000\001\231\000\005\125\151\000\006\252\251\000\005\125\125" },
{ "spider", 122, 16, 16, 6, 7,
{ "spider", NULL, 122, 16, 16, 6, 7,
"\030\000\002\100\006\000\011\000\002\000\010\000\001\200\044\000"
"\100\225\140\001\220\152\220\152\050\152\222\220\006\252\251\000"
"\006\252\250\000\050\152\226\200\220\152\220\152\100\225\140\001"
"\001\200\040\000\002\100\030\000\006\000\011\000\030\000\002\100" },
{ "spraycan", 124, 12, 16, 10, 2,
{ "spraycan", NULL, 124, 12, 16, 10, 2,
"\000\000\012\001\100\205\006\230\112\012\244\205\032\144\112\152"
"\251\000\145\131\000\152\131\000\146\131\000\152\131\000\146\131"
"\000\152\131\000\152\131\000\145\131\000\145\131\000\152\251\000" },
{ "star", 126, 16, 16, 7, 7,
{ "star", NULL, 126, 16, 16, 7, 7,
"\000\002\000\000\000\011\200\000\000\011\200\000\000\030\220\000"
"\000\044\140\000\000\140\044\000\001\140\045\100\132\202\012\224"
"\240\000\000\051\132\200\012\224\005\202\011\100\006\011\202\100"
"\030\044\140\220\030\220\030\220\032\100\006\220\031\000\001\220" },
{ "target", 128, 16, 14, 7, 7,
"\000\032\220\000\000\252\250\000\002\245\152\000\012\120\026\200"
"\051\000\001\240\244\002\000\150\240\011\200\051\240\024\120\051"
"\140\005\100\045\130\001\000\224\026\000\002\120\005\240\051\100"
"\001\132\225\000\000\025\120\000" },
{ "tcross", 130, 15, 15, 7, 7,
{ "target", NULL, 128, 16, 15, 7, 7,
"\000\025\120\000\000\132\224\000\001\252\251\000\006\240\052\100"
"\032\000\002\220\150\001\000\244\240\006\100\051\240\030\220\051"
"\240\006\100\051\150\001\000\244\032\000\002\220\006\240\052\100"
"\001\252\251\000\000\132\224\000\000\025\120\000" },
{ "tcross", IDC_CROSS, 130, 15, 15, 7, 7,
"\000\005\100\000\000\031\000\000\000\144\000\000\001\220\000\000"
"\006\100\000\000\031\000\005\125\145\125\132\252\252\251\125\126"
"\125\124\000\031\000\000\000\144\000\000\001\220\000\000\006\100"
"\000\000\031\000\000\000\124\000\000" },
{ "top_left_arrow", 132, 16, 16, 1, 1,
{ "top_left_arrow", NULL, 132, 16, 16, 1, 1,
"\124\000\000\000\151\100\000\000\152\224\000\000\032\251\100\000"
"\032\252\224\000\006\252\251\120\006\252\252\220\001\252\225\120"
"\001\252\220\000\000\151\144\000\000\151\031\000\000\031\006\100"
"\000\031\001\220\000\025\000\144\000\000\000\031\000\000\000\005" },
{ "top_left_corner", 134, 16, 16, 1, 1,
{ "top_left_corner", IDC_SIZENWSE, 134, 16, 16, 1, 1,
"\125\125\125\125\152\252\252\251\152\252\252\251\151\125\125\125"
"\151\000\000\000\151\025\125\120\151\032\252\220\151\032\125\120"
"\151\031\220\000\151\031\144\000\151\031\031\000\151\031\006\100"
"\151\031\001\220\151\025\000\120\151\000\000\000\125\000\000\000" },
{ "top_right_corner", 136, 16, 16, 14, 1,
{ "top_right_corner", IDC_SIZENESW, 136, 16, 16, 14, 1,
"\125\125\125\125\152\252\252\251\152\252\252\251\125\125\125\151"
"\000\000\000\151\005\125\124\151\006\252\244\151\005\125\244\151"
"\000\006\144\151\000\031\144\151\000\144\144\151\001\220\144\151"
"\006\100\144\151\005\000\124\151\000\000\000\151\000\000\000\125" },
{ "top_side", 138, 15, 16, 7, 1,
{ "top_side", IDC_SIZENS, 138, 15, 16, 7, 1,
"\125\125\125\125\252\252\252\226\252\252\252\125\125\125\125\000"
"\006\100\000\000\152\100\000\006\146\100\000\145\226\100\006\106"
"\106\100\024\031\005\000\000\144\000\000\001\220\000\000\006\100"
"\000\000\031\000\000\000\144\000\000\001\120\000" },
{ "top_tee", 140, 16, 12, 8, 1,
{ "top_tee", NULL, 140, 16, 12, 8, 1,
"\125\125\125\125\152\252\252\251\152\252\252\251\125\126\225\125"
"\000\006\220\000\000\006\220\000\000\006\220\000\000\006\220\000"
"\000\006\220\000\000\006\220\000\000\006\220\000\000\005\120\000" },
{ "trek", 142, 9, 16, 4, 0,
{ "trek", NULL, 142, 9, 16, 4, 0,
"\001\220\000\124\000\152\100\152\244\152\252\132\232\226\252\244"
"\152\244\006\244\004\144\106\152\145\246\151\145\226\131\021\226"
"\104\145\220\031" },
{ "ul_angle", 144, 12, 12, 1, 1,
{ "ul_angle", NULL, 144, 12, 12, 1, 1,
"\125\125\125\152\252\251\152\252\251\151\125\125\151\000\000\151"
"\000\000\151\000\000\151\000\000\151\000\000\151\000\000\151\000"
"\000\125\000\000" },
{ "umbrella", 146, 16, 16, 8, 2,
{ "umbrella", NULL, 146, 16, 16, 8, 2,
"\001\025\024\124\121\125\125\105\105\225\226\120\025\131\131\225"
"\145\226\231\140\131\152\245\225\126\006\102\124\000\006\100\000"
"\000\006\100\000\000\006\100\000\000\006\100\000\000\006\124\000"
"\000\006\124\000\000\006\144\000\000\006\144\000\000\001\220\000" },
{ "ur_angle", 148, 12, 12, 10, 1,
{ "ur_angle", NULL, 148, 12, 12, 10, 1,
"\125\125\125\152\252\251\152\252\251\125\125\151\000\000\151\000"
"\000\151\000\000\151\000\000\151\000\000\151\000\000\151\000\000"
"\151\000\000\125" },
{ "watch", 150, 16, 16, 15, 9,
{ "watch", IDC_WAIT, 150, 16, 16, 15, 9,
"\006\252\251\000\006\252\251\000\006\252\251\000\032\252\252\100"
"\151\126\126\220\245\126\125\245\225\126\125\152\225\132\225\152"
"\225\132\225\152\225\145\125\152\245\225\125\245\151\125\126\220"
"\032\252\252\100\006\252\251\000\006\252\251\000\006\252\251\000" },
{ "xterm", 152, 9, 16, 4, 8,
{ "xterm", IDC_IBEAM, 152, 9, 16, 4, 8,
"\125\025\132\232\225\152\124\026\120\001\220\000\144\000\031\000"
"\006\100\001\220\000\144\000\031\000\006\100\005\224\025\251\126"
"\246\245\124\125" },
-1
View File
@@ -9,7 +9,6 @@ INCLUDES = \
-I$(top_srcdir)/gdk \
-I$(top_builddir)/gdk \
-DGDK_PIXBUF_DISABLE_DEPRECATED \
-DGDK_DISABLE_DEPRECATED \
$(GTK_DEBUG_FLAGS) \
$(GDK_DEP_CFLAGS)
+17 -3
View File
@@ -112,6 +112,22 @@ struct _SetInputFocusState
gulong get_input_focus_req;
};
static gboolean
callback_idle (gpointer data)
{
SendEventState *state;
GDK_THREADS_ENTER ();
state = (SendEventState *)data;
state->callback (state->window, !state->have_error, state->data);
g_free (state);
GDK_THREADS_LEAVE ();
return FALSE;
}
static Bool
send_event_handler (Display *dpy,
xReply *rep,
@@ -147,12 +163,10 @@ send_event_handler (Display *dpy,
}
if (state->callback)
state->callback (state->window, !state->have_error, state->data);
g_idle_add (callback_idle, state);
DeqAsyncHandler(state->dpy, &state->async);
g_free (state);
return (rep->generic.type != X_Error);
}
+11 -10
View File
@@ -785,7 +785,7 @@ gdk_display_x11_finalize (GObject *object)
g_list_free (display_x11->input_devices);
/* input GdkWindow list */
g_list_foreach (display_x11->input_windows, (GFunc) g_object_unref, NULL);
g_list_foreach (display_x11->input_windows, (GFunc) g_free, NULL);
g_list_free (display_x11->input_windows);
/* Free all GdkScreens */
@@ -996,24 +996,25 @@ broadcast_xmessage (GdkDisplay *display,
message_type_begin);
{
XEvent xevent;
XClientMessageEvent xclient;
const char *src;
const char *src_end;
char *dest;
char *dest_end;
xevent.xclient.type = ClientMessage;
xevent.xclient.message_type = type_atom_begin;
xevent.xclient.display =xdisplay;
xevent.xclient.window = xwindow;
xevent.xclient.format = 8;
memset(&xclient, 0, sizeof (xclient));
xclient.type = ClientMessage;
xclient.message_type = type_atom_begin;
xclient.display =xdisplay;
xclient.window = xwindow;
xclient.format = 8;
src = message;
src_end = message + strlen (message) + 1; /* +1 to include nul byte */
while (src != src_end)
{
dest = &xevent.xclient.data.b[0];
dest = &xclient.data.b[0];
dest_end = dest + 20;
while (dest != dest_end &&
@@ -1034,9 +1035,9 @@ broadcast_xmessage (GdkDisplay *display,
xroot_window,
False,
PropertyChangeMask,
&xevent);
(XEvent *)&xclient);
xevent.xclient.message_type = type_atom;
xclient.message_type = type_atom;
}
}
+39 -21
View File
@@ -18,7 +18,7 @@
*/
/*
* Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
* Modified by the GTK+ Team and others 1997-2007. See the AUTHORS
* file for a list of people on the GTK+ Team. See the ChangeLog
* files for a list of changes. These files are distributed with
* GTK+ at ftp://ftp.gtk.org/pub/gtk/.
@@ -110,7 +110,7 @@ static GdkFilterReturn gdk_wm_protocols_filter (GdkXEvent *xev,
static GSource *gdk_display_source_new (GdkDisplay *display);
static gboolean gdk_check_xpending (GdkDisplay *display);
static void gdk_xsettings_watch_cb (Window window,
static Bool gdk_xsettings_watch_cb (Window window,
Bool is_start,
long mask,
void *cb_data);
@@ -176,15 +176,13 @@ _gdk_x11_events_init_screen (GdkScreen *screen)
/* Keep a flag to avoid extra notifies that we don't need
*/
screen_x11->xsettings_in_init = TRUE;
screen_x11->xsettings_client = xsettings_client_new (screen_x11->xdisplay,
screen_x11->screen_num,
gdk_xsettings_notify_cb,
gdk_xsettings_watch_cb,
screen);
xsettings_client_set_grab_func (screen_x11->xsettings_client,
refcounted_grab_server);
xsettings_client_set_ungrab_func (screen_x11->xsettings_client,
refcounted_ungrab_server);
screen_x11->xsettings_client = xsettings_client_new_with_grab_funcs (screen_x11->xdisplay,
screen_x11->screen_num,
gdk_xsettings_notify_cb,
gdk_xsettings_watch_cb,
screen,
refcounted_grab_server,
refcounted_ungrab_server);
screen_x11->xsettings_in_init = FALSE;
}
@@ -2192,13 +2190,13 @@ gdk_wm_protocols_filter (GdkXEvent *xev,
!_gdk_x11_display_is_root_window (display,
xevent->xclient.window))
{
XEvent xev = *xevent;
XClientMessageEvent xclient = xevent->xclient;
xev.xclient.window = GDK_WINDOW_XROOTWIN (win);
xclient.window = GDK_WINDOW_XROOTWIN (win);
XSendEvent (GDK_WINDOW_XDISPLAY (win),
xev.xclient.window,
xclient.window,
False,
SubstructureRedirectMask | SubstructureNotifyMask, &xev);
SubstructureRedirectMask | SubstructureNotifyMask, (XEvent *)&xclient);
return GDK_FILTER_REMOVE;
}
@@ -2993,7 +2991,7 @@ gdk_xsettings_client_event_filter (GdkXEvent *xevent,
return GDK_FILTER_CONTINUE;
}
static void
static Bool
gdk_xsettings_watch_cb (Window window,
Bool is_start,
long mask,
@@ -3006,19 +3004,39 @@ gdk_xsettings_watch_cb (Window window,
if (is_start)
{
if (!gdkwin)
gdkwin = gdk_window_foreign_new_for_display (gdk_screen_get_display (screen), window);
else
if (gdkwin)
g_object_ref (gdkwin);
else
{
gdkwin = gdk_window_foreign_new_for_display (gdk_screen_get_display (screen), window);
/* gdk_window_foreign_new_for_display() can fail and return NULL if the
* window has already been destroyed.
*/
if (!gdkwin)
return False;
}
gdk_window_add_filter (gdkwin, gdk_xsettings_client_event_filter, screen);
}
else
{
g_assert (gdkwin);
if (!gdkwin)
{
/* gdkwin should not be NULL here, since if starting the watch succeeded
* we have a reference on the window. It might mean that the caller didn't
* remove the watch when it got a DestroyNotify event. Or maybe the
* caller ignored the return value when starting the watch failed.
*/
g_warning ("gdk_xsettings_watch_cb(): Couldn't find window to unwatch");
return False;
}
gdk_window_remove_filter (gdkwin, gdk_xsettings_client_event_filter, screen);
g_object_unref (gdkwin);
}
return True;
}
#define __GDK_EVENTS_X11_C__
+5 -2
View File
@@ -67,7 +67,8 @@ gdk_font_name_hash_get (GdkDisplay *display)
if (!result)
{
result = g_hash_table_new (g_str_hash, g_str_equal);
g_object_set_qdata (G_OBJECT (display), font_name_quark, result);
g_object_set_qdata_full (G_OBJECT (display),
font_name_quark, result, (GDestroyNotify) g_hash_table_destroy);
}
return result;
@@ -87,7 +88,9 @@ gdk_fontset_name_hash_get (GdkDisplay *display)
if (!result)
{
result = g_hash_table_new (g_str_hash, g_str_equal);
g_object_set_qdata (G_OBJECT (display), fontset_name_quark, result);
g_object_set_qdata_full (G_OBJECT (display),
fontset_name_quark, result, (GDestroyNotify) g_hash_table_destroy);
}
return result;
+1
View File
@@ -29,6 +29,7 @@
#include "gdktypes.h"
#include "gdkprivate-x11.h"
#include "gdkalias.h"
gboolean _gdk_use_xshm = TRUE; /* used as a cmd line arg */
Display *gdk_display = NULL;
+4
View File
@@ -579,6 +579,10 @@ _gdk_input_common_other_event (GdkEvent *event,
event->button.state = gdk_input_translate_state(xdbe->state,xdbe->device_state);
event->button.button = xdbe->button;
if (event->button.type == GDK_BUTTON_PRESS)
_gdk_event_button_generate (gdk_drawable_get_display (event->button.window),
event);
GDK_NOTE (EVENTS,
g_print ("button %s:\t\twindow: %ld device: %ld x,y: %f %f button: %d\n",
(event->button.type == GDK_BUTTON_PRESS) ? "press" : "release",
+3 -3
View File
@@ -150,7 +150,7 @@ _gdk_input_configure_event (XConfigureEvent *xevent,
gint root_x, root_y;
input_window = _gdk_input_window_find(window);
g_return_if_fail (window != NULL);
g_return_if_fail (input_window != NULL);
_gdk_input_get_root_relative_geometry(GDK_WINDOW_XDISPLAY (window),
GDK_WINDOW_XWINDOW (window),
@@ -168,7 +168,7 @@ _gdk_input_enter_event (XCrossingEvent *xevent,
gint root_x, root_y;
input_window = _gdk_input_window_find (window);
g_return_if_fail (window != NULL);
g_return_if_fail (input_window != NULL);
gdk_input_check_proximity(GDK_WINDOW_DISPLAY (window));
@@ -192,7 +192,7 @@ _gdk_input_other_event (GdkEvent *event,
GdkDisplayX11 *display_impl = GDK_DISPLAY_X11 (GDK_WINDOW_DISPLAY (window));
input_window = _gdk_input_window_find(window);
g_return_val_if_fail (window != NULL, FALSE);
g_return_val_if_fail (input_window != NULL, FALSE);
/* This is a sort of a hack, as there isn't any XDeviceAnyEvent -
but it's potentially faster than scanning through the types of
+14 -18
View File
@@ -561,27 +561,23 @@ get_direction (XkbDescRec *xkb,
for (code = xkb->min_key_code; code <= xkb->max_key_code; code++)
{
gint width = XkbKeyGroupWidth (xkb, code, group);
gint level;
for (level = 0; level < width; level++)
{
KeySym sym = XkbKeySymEntry (xkb, code, level, group);
PangoDirection dir = pango_unichar_direction (gdk_keyval_to_unicode (sym));
gint level = 0;
KeySym sym = XkbKeySymEntry (xkb, code, level, group);
PangoDirection dir = pango_unichar_direction (gdk_keyval_to_unicode (sym));
switch (dir)
{
case PANGO_DIRECTION_RTL:
rtl_minus_ltr++;
break;
case PANGO_DIRECTION_LTR:
rtl_minus_ltr--;
break;
default:
break;
}
switch (dir)
{
case PANGO_DIRECTION_RTL:
rtl_minus_ltr++;
break;
case PANGO_DIRECTION_LTR:
rtl_minus_ltr--;
break;
default:
break;
}
}
if (rtl_minus_ltr > 0)
return PANGO_DIRECTION_RTL;
else
+11 -2
View File
@@ -504,6 +504,12 @@ _gdk_xgrab_check_destroy (GdkWindow *window)
}
}
#define GDK_ANY_BUTTON_MASK (GDK_BUTTON1_MASK | \
GDK_BUTTON2_MASK | \
GDK_BUTTON3_MASK | \
GDK_BUTTON4_MASK | \
GDK_BUTTON5_MASK)
/**
* _gdk_xgrab_check_button_event:
* @window: a #GdkWindow
@@ -533,7 +539,7 @@ _gdk_xgrab_check_button_event (GdkWindow *window,
case ButtonRelease:
if (display_x11->pointer_xgrab_window &&
display_x11->pointer_xgrab_implicit &&
(xevent->xbutton.state & ~(GDK_BUTTON1_MASK << (xevent->xbutton.button - 1))) == 0)
(xevent->xbutton.state & GDK_ANY_BUTTON_MASK & ~(GDK_BUTTON1_MASK << (xevent->xbutton.button - 1))) == 0)
{
display_x11->pointer_xgrab_window = NULL;
}
@@ -804,7 +810,10 @@ _gdk_send_xevent (GdkDisplay *display,
propagate, event_mask, event_send);
XSync (GDK_DISPLAY_XDISPLAY (display), False);
return result && gdk_error_trap_pop() == Success;
if (gdk_error_trap_pop ())
return FALSE;
return result;
}
void
+9 -5
View File
@@ -600,12 +600,16 @@ check_xfree_xinerama (GdkScreen *screen)
GdkScreenX11 *screen_x11 = GDK_SCREEN_X11 (screen);
XineramaScreenInfo *monitors = XineramaQueryScreens (GDK_SCREEN_XDISPLAY (screen),
&screen_x11->num_monitors);
if (screen_x11->num_monitors <= 0)
if (screen_x11->num_monitors <= 0 || monitors == NULL)
{
/* FIXME: We need to trap errors, since XINERAMA isn't always XINERAMA.
* I don't think the num_monitors <= 0 check has any validity.
*/
g_error ("error while retrieving Xinerama information");
/* If Xinerama doesn't think we have any monitors, try acting as
* though we had no Xinerama. If the "no monitors" condition
* is because XRandR 1.2 is currently switching between CRTCs,
* we'll be notified again when we have our monitor back,
* and can go back into Xinerama-ish mode at that point. */
if (monitors)
XFree (monitors);
return FALSE;
}
else
{
+12
View File
@@ -22,13 +22,25 @@
#include <config.h>
#include <string.h>
#ifdef HAVE_CRT_EXTERNS_H
#include <crt_externs.h> /* for _NSGetEnviron */
#endif
#include "gdkspawn.h"
#include <glib.h>
#include <gdk/gdk.h>
#include "gdkalias.h"
#ifdef HAVE__NSGETENVIRON
#define environ (*_NSGetEnviron())
#else
/* According to the Single Unix Specification, environ is not in
* any system header, although unistd.h often declares it.
*/
extern char **environ;
#endif
/**
* gdk_make_spawn_environment_for_screen:
+1
View File
@@ -119,6 +119,7 @@ _gdk_visual_init (GdkScreen *screen)
g_return_if_fail (GDK_IS_SCREEN (screen));
screen_x11 = GDK_SCREEN_X11 (screen);
nxvisuals = 0;
visual_template.screen = screen_x11->screen_num;
visual_list = XGetVisualInfo (screen_x11->xdisplay, VisualScreenMask, &visual_template, &nxvisuals);
+91 -80
View File
@@ -568,6 +568,7 @@ setup_toplevel_window (GdkWindow *window,
GdkScreenX11 *screen_x11 = GDK_SCREEN_X11 (GDK_WINDOW_SCREEN (parent));
XSizeHints size_hints;
long pid;
Window leader_window;
if (GDK_WINDOW_TYPE (window) == GDK_WINDOW_DIALOG)
XSetTransientForHint (xdisplay, xid, xparent);
@@ -604,11 +605,14 @@ setup_toplevel_window (GdkWindow *window,
XA_CARDINAL, 32,
PropModeReplace,
(guchar *)&pid, 1);
leader_window = GDK_DISPLAY_X11 (screen_x11->display)->leader_window;
if (!leader_window)
leader_window = xid;
XChangeProperty (xdisplay, xid,
gdk_x11_get_xatom_by_name_for_display (screen_x11->display, "WM_CLIENT_LEADER"),
XA_WINDOW, 32, PropModeReplace,
(guchar *) &GDK_DISPLAY_X11 (screen_x11->display)->leader_window, 1);
(guchar *) &leader_window, 1);
if (!obj->focus_on_map)
gdk_x11_window_set_user_time (window, 0);
@@ -919,6 +923,9 @@ gdk_window_new (GdkWindow *parent,
break;
}
if (attributes_mask & GDK_WA_TYPE_HINT)
gdk_window_set_type_hint (window, attributes->type_hint);
return window;
}
@@ -1141,27 +1148,28 @@ _gdk_windowing_window_destroy_foreign (GdkWindow *window)
* so reparent it to the root window, and then send
* it a delete event, as if we were a WM
*/
XClientMessageEvent xevent;
XClientMessageEvent xclient;
gdk_error_trap_push ();
gdk_window_hide (window);
gdk_window_reparent (window, NULL, 0, 0);
xevent.type = ClientMessage;
xevent.window = GDK_WINDOW_XID (window);
xevent.message_type = gdk_x11_get_xatom_by_name_for_display (GDK_WINDOW_DISPLAY (window),
memset (&xclient, 0, sizeof (xclient));
xclient.type = ClientMessage;
xclient.window = GDK_WINDOW_XID (window);
xclient.message_type = gdk_x11_get_xatom_by_name_for_display (GDK_WINDOW_DISPLAY (window),
"WM_PROTOCOLS");
xevent.format = 32;
xevent.data.l[0] = gdk_x11_get_xatom_by_name_for_display (GDK_WINDOW_DISPLAY (window),
xclient.format = 32;
xclient.data.l[0] = gdk_x11_get_xatom_by_name_for_display (GDK_WINDOW_DISPLAY (window),
"WM_DELETE_WINDOW");
xevent.data.l[1] = CurrentTime;
xevent.data.l[2] = 0;
xevent.data.l[3] = 0;
xevent.data.l[4] = 0;
xclient.data.l[1] = CurrentTime;
xclient.data.l[2] = 0;
xclient.data.l[3] = 0;
xclient.data.l[4] = 0;
XSendEvent (GDK_WINDOW_XDISPLAY (window),
GDK_WINDOW_XID (window),
False, 0, (XEvent *)&xevent);
False, 0, (XEvent *)&xclient);
gdk_display_sync (GDK_WINDOW_DISPLAY (window));
gdk_error_trap_pop ();
}
@@ -2015,6 +2023,10 @@ void
gdk_x11_window_move_to_current_desktop (GdkWindow *window)
{
GdkToplevelX11 *toplevel;
g_return_if_fail (GDK_IS_WINDOW (window));
g_return_if_fail (GDK_WINDOW_TYPE (window) != GDK_WINDOW_CHILD);
toplevel = _gdk_x11_window_get_toplevel (window);
if (toplevel->on_all_desktops)
@@ -2029,7 +2041,6 @@ move_to_current_desktop (GdkWindow *window)
if (gdk_x11_screen_supports_net_wm_hint (GDK_WINDOW_SCREEN (window),
gdk_atom_intern_static_string ("_NET_WM_DESKTOP")))
{
XEvent xev;
Atom type;
gint format;
gulong nitems;
@@ -2052,26 +2063,28 @@ move_to_current_desktop (GdkWindow *window)
if (type == XA_CARDINAL)
{
XClientMessageEvent xclient;
current_desktop = (gulong *)data;
xev.xclient.type = ClientMessage;
xev.xclient.serial = 0;
xev.xclient.send_event = True;
xev.xclient.window = GDK_WINDOW_XWINDOW (window);
xev.xclient.message_type = gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_DESKTOP");
xev.xclient.format = 32;
memset (&xclient, 0, sizeof (xclient));
xclient.type = ClientMessage;
xclient.serial = 0;
xclient.send_event = True;
xclient.window = GDK_WINDOW_XWINDOW (window);
xclient.message_type = gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_DESKTOP");
xclient.format = 32;
xev.xclient.data.l[0] = *current_desktop;
xev.xclient.data.l[1] = 0;
xev.xclient.data.l[2] = 0;
xev.xclient.data.l[3] = 0;
xev.xclient.data.l[4] = 0;
xclient.data.l[0] = *current_desktop;
xclient.data.l[1] = 0;
xclient.data.l[2] = 0;
xclient.data.l[3] = 0;
xclient.data.l[4] = 0;
XSendEvent (GDK_DISPLAY_XDISPLAY (display),
GDK_WINDOW_XROOTWIN (window),
False,
SubstructureRedirectMask | SubstructureNotifyMask,
&xev);
(XEvent *)&xclient);
XFree (current_desktop);
}
@@ -2103,24 +2116,23 @@ gdk_window_focus (GdkWindow *window,
if (gdk_x11_screen_supports_net_wm_hint (GDK_WINDOW_SCREEN (window),
gdk_atom_intern_static_string ("_NET_ACTIVE_WINDOW")))
{
XEvent xev;
XClientMessageEvent xclient;
xev.xclient.type = ClientMessage;
xev.xclient.serial = 0;
xev.xclient.send_event = True;
xev.xclient.window = GDK_WINDOW_XWINDOW (window);
xev.xclient.message_type = gdk_x11_get_xatom_by_name_for_display (display,
memset (&xclient, 0, sizeof (xclient));
xclient.type = ClientMessage;
xclient.window = GDK_WINDOW_XWINDOW (window);
xclient.message_type = gdk_x11_get_xatom_by_name_for_display (display,
"_NET_ACTIVE_WINDOW");
xev.xclient.format = 32;
xev.xclient.data.l[0] = 1; /* requestor type; we're an app */
xev.xclient.data.l[1] = timestamp;
xev.xclient.data.l[2] = None; /* currently active window */
xev.xclient.data.l[3] = 0;
xev.xclient.data.l[4] = 0;
xclient.format = 32;
xclient.data.l[0] = 1; /* requestor type; we're an app */
xclient.data.l[1] = timestamp;
xclient.data.l[2] = None; /* currently active window */
xclient.data.l[3] = 0;
xclient.data.l[4] = 0;
XSendEvent (GDK_DISPLAY_XDISPLAY (display), GDK_WINDOW_XROOTWIN (window), False,
SubstructureRedirectMask | SubstructureNotifyMask,
&xev);
(XEvent *)&xclient);
}
else
{
@@ -2366,27 +2378,26 @@ gdk_wmspec_change_state (gboolean add,
GdkAtom state2)
{
GdkDisplay *display = GDK_WINDOW_DISPLAY (window);
XEvent xev;
XClientMessageEvent xclient;
#define _NET_WM_STATE_REMOVE 0 /* remove/unset property */
#define _NET_WM_STATE_ADD 1 /* add/set property */
#define _NET_WM_STATE_TOGGLE 2 /* toggle property */
xev.xclient.type = ClientMessage;
xev.xclient.serial = 0;
xev.xclient.send_event = True;
xev.xclient.window = GDK_WINDOW_XID (window);
xev.xclient.message_type = gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_STATE");
xev.xclient.format = 32;
xev.xclient.data.l[0] = add ? _NET_WM_STATE_ADD : _NET_WM_STATE_REMOVE;
xev.xclient.data.l[1] = gdk_x11_atom_to_xatom_for_display (display, state1);
xev.xclient.data.l[2] = gdk_x11_atom_to_xatom_for_display (display, state2);
xev.xclient.data.l[3] = 0;
xev.xclient.data.l[4] = 0;
memset (&xclient, 0, sizeof (xclient));
xclient.type = ClientMessage;
xclient.window = GDK_WINDOW_XID (window);
xclient.message_type = gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_STATE");
xclient.format = 32;
xclient.data.l[0] = add ? _NET_WM_STATE_ADD : _NET_WM_STATE_REMOVE;
xclient.data.l[1] = gdk_x11_atom_to_xatom_for_display (display, state1);
xclient.data.l[2] = gdk_x11_atom_to_xatom_for_display (display, state2);
xclient.data.l[3] = 0;
xclient.data.l[4] = 0;
XSendEvent (GDK_WINDOW_XDISPLAY (window), GDK_WINDOW_XROOTWIN (window), False,
SubstructureRedirectMask | SubstructureNotifyMask,
&xev);
(XEvent *)&xclient);
}
/**
@@ -3781,6 +3792,7 @@ gdk_window_add_colormap_windows (GdkWindow *window)
if (GDK_WINDOW_DESTROYED (window))
return;
toplevel = gdk_window_get_toplevel (window);
old_windows = NULL;
@@ -4232,7 +4244,8 @@ gdk_x11_window_set_user_time (GdkWindow *window,
if (timestamp_long != GDK_CURRENT_TIME)
display_x11->user_time = timestamp_long;
toplevel->user_time = timestamp_long;
if (toplevel)
toplevel->user_time = timestamp_long;
}
#define GDK_SELECTION_MAX_SIZE(display) \
@@ -4559,7 +4572,7 @@ gdk_window_stick (GdkWindow *window)
* viewport. i.e. glue to the monitor glass in all cases.
*/
XEvent xev;
XClientMessageEvent xclient;
/* Request stick during viewport scroll */
gdk_wmspec_change_state (TRUE, window,
@@ -4567,24 +4580,23 @@ gdk_window_stick (GdkWindow *window)
NULL);
/* Request desktop 0xFFFFFFFF */
xev.xclient.type = ClientMessage;
xev.xclient.serial = 0;
xev.xclient.send_event = True;
xev.xclient.window = GDK_WINDOW_XWINDOW (window);
xev.xclient.display = GDK_WINDOW_XDISPLAY (window);
xev.xclient.message_type = gdk_x11_get_xatom_by_name_for_display (GDK_WINDOW_DISPLAY (window),
memset (&xclient, 0, sizeof (xclient));
xclient.type = ClientMessage;
xclient.window = GDK_WINDOW_XWINDOW (window);
xclient.display = GDK_WINDOW_XDISPLAY (window);
xclient.message_type = gdk_x11_get_xatom_by_name_for_display (GDK_WINDOW_DISPLAY (window),
"_NET_WM_DESKTOP");
xev.xclient.format = 32;
xclient.format = 32;
xev.xclient.data.l[0] = 0xFFFFFFFF;
xev.xclient.data.l[1] = 0;
xev.xclient.data.l[2] = 0;
xev.xclient.data.l[3] = 0;
xev.xclient.data.l[4] = 0;
xclient.data.l[0] = 0xFFFFFFFF;
xclient.data.l[1] = 0;
xclient.data.l[2] = 0;
xclient.data.l[3] = 0;
xclient.data.l[4] = 0;
XSendEvent (GDK_WINDOW_XDISPLAY (window), GDK_WINDOW_XROOTWIN (window), False,
SubstructureRedirectMask | SubstructureNotifyMask,
&xev);
(XEvent *)&xclient);
}
else
{
@@ -5624,27 +5636,26 @@ wmspec_moveresize (GdkWindow *window,
{
GdkDisplay *display = GDK_WINDOW_DISPLAY (window);
XEvent xev;
XClientMessageEvent xclient;
/* Release passive grab */
gdk_display_pointer_ungrab (display, timestamp);
xev.xclient.type = ClientMessage;
xev.xclient.serial = 0;
xev.xclient.send_event = True;
xev.xclient.window = GDK_WINDOW_XID (window);
xev.xclient.message_type =
memset (&xclient, 0, sizeof (xclient));
xclient.type = ClientMessage;
xclient.window = GDK_WINDOW_XID (window);
xclient.message_type =
gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_MOVERESIZE");
xev.xclient.format = 32;
xev.xclient.data.l[0] = root_x;
xev.xclient.data.l[1] = root_y;
xev.xclient.data.l[2] = direction;
xev.xclient.data.l[3] = 0;
xev.xclient.data.l[4] = 0;
xclient.format = 32;
xclient.data.l[0] = root_x;
xclient.data.l[1] = root_y;
xclient.data.l[2] = direction;
xclient.data.l[3] = 0;
xclient.data.l[4] = 0;
XSendEvent (GDK_DISPLAY_XDISPLAY (display), GDK_WINDOW_XROOTWIN (window), False,
SubstructureRedirectMask | SubstructureNotifyMask,
&xev);
(XEvent *)&xclient);
}
typedef struct _MoveResizeData MoveResizeData;
+32 -7
View File
@@ -1,5 +1,5 @@
/*
* Copyright © 2001 Red Hat, Inc.
* Copyright © 2001, 2007 Red Hat, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and its
* documentation for any purpose is hereby granted without fee, provided that
@@ -441,9 +441,19 @@ check_manager_window (XSettingsClient *client)
XFlush (client->display);
if (client->manager_window && client->watch)
client->watch (client->manager_window, True,
PropertyChangeMask | StructureNotifyMask,
client->cb_data);
{
if (!client->watch (client->manager_window, True,
PropertyChangeMask | StructureNotifyMask,
client->cb_data))
{
/* Inability to watch the window probably means that it was destroyed
* after we ungrabbed
*/
client->manager_window = None;
return;
}
}
read_settings (client);
}
@@ -454,6 +464,19 @@ xsettings_client_new (Display *display,
XSettingsNotifyFunc notify,
XSettingsWatchFunc watch,
void *cb_data)
{
return xsettings_client_new_with_grab_funcs (display, screen, notify, watch, cb_data,
NULL, NULL);
}
XSettingsClient *
xsettings_client_new_with_grab_funcs (Display *display,
int screen,
XSettingsNotifyFunc notify,
XSettingsWatchFunc watch,
void *cb_data,
XSettingsGrabFunc grab,
XSettingsGrabFunc ungrab)
{
XSettingsClient *client;
char buffer[256];
@@ -469,8 +492,8 @@ xsettings_client_new (Display *display,
client->notify = notify;
client->watch = watch;
client->cb_data = cb_data;
client->grab = NULL;
client->ungrab = NULL;
client->grab = grab;
client->ungrab = ungrab;
client->manager_window = None;
client->settings = NULL;
@@ -505,6 +528,7 @@ xsettings_client_new (Display *display,
return client;
}
void
xsettings_client_set_grab_func (XSettingsClient *client,
XSettingsGrabFunc grab)
@@ -571,7 +595,8 @@ xsettings_client_process_event (XSettingsClient *client,
if (xev->xany.type == DestroyNotify)
{
check_manager_window (client);
return True;
/* let GDK do its cleanup */
return False;
}
else if (xev->xany.type == PropertyNotify)
{

Some files were not shown because too many files have changed in this diff Show More