Hi Axel,

In new patch, add three new functions: 
mainDoEvent, widgetEvent, propagateEvent

In most situation, we just need mainDoEvent, it will send event to
current focus widget.

If user want specify widget to receive event, can use widgetEvent.

propagateEvent is similar to widgetEvent, but it will propagating the
event to parent widgets if the event remains unhandled.

https://patch-tag.com/r/AndyStewart/gtk-serialized-event/snapshot/current/content/pretty/demo/Main.hs
 
have a demo to test how to use "widgetEvent"

Below is new patch to add mainDoEvent, widgetEvent, propagateEvent,
please review it.

Cheers,

  -- Andy

3 patches for repository 
andystew...@patch-tag.com:/r/AndyStewart/gtk2hs-sync-mirror:

Thu Jul  1 11:08:36 CST 2010  Andy Stewart <lazycat.mana...@gmail.com>
  * Add mainDoEvent.

Fri Jul  2 22:30:22 CST 2010  Andy Stewart <lazycat.mana...@gmail.com>
  * Add widgetEvent.

Fri Jul  2 23:12:08 CST 2010  Andy Stewart <lazycat.mana...@gmail.com>
  * Add propagateEvent

New patches:

[Add mainDoEvent.
Andy Stewart <lazycat.mana...@gmail.com>**20100701030836
 Ignore-this: 37cd08eb71f1eb3e77f09f04a02c5e3
] {
hunk ./gtk/Graphics/UI/Gtk/General/General.chs 52
   mainLevel,
   mainIteration,
   mainIterationDo,
+  mainDoEvent,
   
   -- * Grab widgets
   grabAdd,
hunk ./gtk/Graphics/UI/Gtk/General/General.chs 91
   priorityHighIdle, priorityDefault, priorityHigh, timeoutRemove, idleRemove,
   inputRemove, IOCondition(..), HandlerId )
 import Graphics.UI.Gtk.Abstract.Object (makeNewObject)
+import Graphics.UI.Gtk.Gdk.EventM (EventM)
+import Control.Monad.Reader (ask)
+import Control.Monad.Trans (liftIO)
 {#import Graphics.UI.Gtk.Types#}
 
 {#context lib="gtk" prefix ="gtk"#}
hunk ./gtk/Graphics/UI/Gtk/General/General.chs 254
 mainIterationDo blocking = 
   liftM toBool $ {#call main_iteration_do#} (fromBool blocking)
 
+-- | Processes a single GDK event. This is public only to allow filtering of 
events between GDK and
+-- GTK+. You will not usually need to call this function directly.
+-- 
+-- While you should not call this function directly, you might want to know 
how exactly events are
+-- handled. So here is what this function does with the event:
+-- 
+--  1. Compress enter/leave notify events. If the event passed build an 
enter/leave pair together with
+--     the next event (peeked from GDK) both events are thrown away. This is 
to avoid a backlog of
+--     (de-)highlighting widgets crossed by the pointer.
+--    
+--  2. Find the widget which got the event. If the widget can't be determined 
the event is thrown away
+--     unless it belongs to a INCR transaction. In that case it is passed to
+--     'selectionIncrEvent'.
+--    
+--  3. Then the event is passed on a stack so you can query the currently 
handled event with
+--  'getCurrentEvent'.
+--    
+--  4. The event is sent to a widget. If a grab is active all events for 
widgets that are not in the
+--     contained in the grab widget are sent to the latter with a few 
exceptions:
+--    
+--       * Deletion and destruction events are still sent to the event widget 
for obvious reasons.
+--        
+--       * Events which directly relate to the visual representation of the 
event widget.
+--        
+--       * Leave events are delivered to the event widget if there was an 
enter event delivered to it
+--         before without the paired leave event.
+--        
+--       * Drag events are not redirected because it is unclear what the 
semantics of that would be.
+--        
+--     Another point of interest might be that all key events are first passed 
through the key snooper
+--     functions if there are any. Read the description of 'keySnooperInstall' 
if you need this
+--     feature.
+--    
+--  5. After finishing the delivery the event is popped from the event stack.
+mainDoEvent :: EventM t ()
+mainDoEvent = do
+  ptr <- ask
+  liftIO $ {#call main_do_event #} (castPtr ptr)
+
 -- | add a grab widget
 --
 grabAdd :: WidgetClass wd => wd -> IO ()
}
[Add widgetEvent.
Andy Stewart <lazycat.mana...@gmail.com>**20100702143022
 Ignore-this: 57d807386fa34f6323c285913c4e1cf0
] {
hunk ./gtk/Graphics/UI/Gtk/Abstract/Widget.chs 205
   widgetGetState,
   widgetGetSavedState,
   widgetGetSize,
+  widgetEvent,
 
 -- * Attributes
   widgetName,
hunk ./gtk/Graphics/UI/Gtk/Abstract/Widget.chs 361
 
 import Control.Monad   (liftM, unless)
 import Data.Maybe      (fromMaybe)
-
+import Control.Monad.Reader (ask)
+import Control.Monad.Trans (liftIO)
 import Data.Bits ((.&.), complement)
 import System.Glib.FFI
 import System.Glib.Flags               (fromFlags, toFlags)
hunk ./gtk/Graphics/UI/Gtk/Abstract/Widget.chs 2093
      peek allocationPtr
 #endif
 
+-- | Rarely-used function. This function is used to emit the event signals on 
a widget (those signals
+-- should never be emitted without using this function to do so). If you want 
to synthesize an event
+-- though, don't use this function; instead, use 'mainDoEvent' so the event 
will behave as if it
+-- were in the event queue. Don't synthesize expose events; instead, use 
'windowInvalidateRect'
+-- to invalidate a region of the window.
+widgetEvent :: WidgetClass self => self -> EventM t Bool
+widgetEvent widget = do
+  ptr <- ask
+  liftIO $ liftM toBool $ {#call widget_event #} (toWidget widget) (castPtr 
ptr)
+
 --------------------
 -- Attributes
 
}
[Add propagateEvent
Andy Stewart <lazycat.mana...@gmail.com>**20100702151208
 Ignore-this: f5fea5ee641d464d1a2b9e73f3a25f8
] {
hunk ./gtk/Graphics/UI/Gtk/General/General.chs 53
   mainIteration,
   mainIterationDo,
   mainDoEvent,
+  propagateEvent,
   
   -- * Grab widgets
   grabAdd,
hunk ./gtk/Graphics/UI/Gtk/General/General.chs 294
   ptr <- ask
   liftIO $ {#call main_do_event #} (castPtr ptr)
 
+-- | Sends an event to a widget, propagating the event to parent widgets if 
the event remains
+-- unhandled. Events received by GTK+ from GDK normally begin in 
'mainDoEvent'. Depending on the
+-- type of event, existence of modal dialogs, grabs, etc., the event may be 
propagated; if so, this
+-- function is used. 'propagateEvent' on each widget it decides to send
+-- the event to. So 'widgetEvent' is the lowest-level function; it simply 
emits the "event" and
+-- possibly an event-specific signal on a widget. 'propagateEvent' is a bit 
higher-level, and
+-- 'mainDoEvent' is the highest level.
+-- 
+-- All that said, you most likely don't want to use any of these functions; 
synthesizing events is
+-- rarely needed. Consider asking on the mailing list for better ways to 
achieve your goals. For
+-- example, use 'windowInvalidateRect' instead of making up expose
+-- events.
+propagateEvent :: WidgetClass wd => wd -> EventM t ()
+propagateEvent widget = do
+  ptr <- ask
+  liftIO $ {#call propagate_event #} (toWidget widget) (castPtr ptr)
+
 -- | add a grab widget
 --
 grabAdd :: WidgetClass wd => wd -> IO ()
}

Context:

[Revert previous patch, because insert Entire string in error will cause speak 
leak sometimes.
Andy Stewart <lazycat.mana...@gmail.com>**20100629223233
 Ignore-this: 92751d107bce7aabe5f903d4baedcfaa
] 
[Add string info in fromUTF for easier to debug.
Andy Stewart <lazycat.mana...@gmail.com>**20100629085831
 Ignore-this: 7e11a77e7524f36a53c78c6ebf7a6e3b
] 
[Update Embedded demos.
Andy Stewart <lazycat.mana...@gmail.com>**20100628072541
 Ignore-this: 1792a53558175309e474755b2fd170ab
] 
[Add function drawableGetID.
Andy Stewart <lazycat.mana...@gmail.com>**20100628071306
 Ignore-this: 66f80a911f63867209160d53e51c8498
] 
[Fix freeHaskellFunPtr problem in Clipboard.chs
Andy Stewart <lazycat.mana...@gmail.com>**20100627113550
 Ignore-this: efa86a719456d15b01eaaed62393f78f
] 
[Apply Oleg's patch to fix clipboardRequestTargets segfault.
Andy Stewart <lazycat.mana...@gmail.com>**20100627103336
 Ignore-this: 5602ff1727f889cdccc5bc2cb0f7353c
] 
[Add MPlayer client demo.
Andy Stewart <lazycat.mana...@gmail.com>**20100617090640
 Ignore-this: 5a8ab681c148ca07f27f768f9f62b1b7
] 
[Move hierarchy.list to gtk package (Don't need reinstall gtk2hs-buildtools 
after add new type)
Andy Stewart <lazycat.mana...@gmail.com>**20100604131309
 Ignore-this: d3f52ea66e784a2ecd66d764571f58a9
] 
[Move hierarchy.list to gio package (Don't need reinstall gtk2hs-buildtools 
after add new type)
Andy Stewart <lazycat.mana...@gmail.com>**20100604130442
 Ignore-this: 7539a9c035e4f25ac54d619c92021f49
] 
[Move hierarchy.list to pango package (Don't need reinstall gtk2hs-buildtools 
after add new type)
Andy Stewart <lazycat.mana...@gmail.com>**20100604130210
 Ignore-this: b2ebce6749cf1083f3810e6175ceb1a2
] 
[Fix INSTALL
Andy Stewart <lazycat.mana...@gmail.com>**20100604095408
 Ignore-this: 832b7cff47d7200ee89ee797981febee
] 
[Create Gtk specific versions of functions that add something to the main loop. 
These specific functions acquire the Gtk lock before executing the action which 
the documentation promised but...
axel.si...@in.tum.de**20100603153700] 
[Improve signal `queryTooltip`
Andy Stewart <lazycat.mana...@gmail.com>**20100602070555
 Ignore-this: 4b625d69ebb779f22ec57ae0cc5223aa
] 
[Add MenuToolButton support functions for Tooltip.chs
Andy Stewart <lazycat.mana...@gmail.com>**20100601165857
 Ignore-this: 9e153056f052f09f3bf7bd5569ce347c
] 
[Fix `widgetTooltipMarkup` and docs.
Andy Stewart <lazycat.mana...@gmail.com>**20100601144701
 Ignore-this: 3fc33fd561f18f221d8b7b0215c71826
] 
[Fix function `tooltipSetMarkup`
Andy Stewart <lazycat.mana...@gmail.com>**20100601143948
 Ignore-this: b4af7ecca1bc74b22e20727f33729a8b
] 
[Add Widget support functions for Tooltip.chs
Andy Stewart <lazycat.mana...@gmail.com>**20100601140304
 Ignore-this: 6b10098119f7a416d763c834bd892cae
] 
[Add Tooltip.chs (The new module to replace Tooltips.chs)
Andy Stewart <lazycat.mana...@gmail.com>**20100601131828
 Ignore-this: ca64d1d45d3c526494a41fb537d16c6c
] 
[Clean bootstrap.sh
Andy Stewart <lazycat.mana...@gmail.com>**20100601122113
 Ignore-this: f59b5f9bf21945c39258a39432621a03
] 
[Note that Cabal 1.8 is required for ghci support under Windows.
axel.si...@in.tum.de**20100527181310
 Ignore-this: 1c5fc3bb7ad83f5d1094e0083ddd9913
] 
[Do not query g_object_get_type as it only exists in newer Gtk+ versions.
axel.si...@in.tum.de**20100527163435
 Ignore-this: 70d62f66a2eb159c7fd3e23079c5debf
] 
[Remove gnomevfs sourceview mozembed since those packages has deprecated.
Andy Stewart <lazycat.mana...@gmail.com>**20100527124728
 Ignore-this: a1dfda3669b7417a7b09c3b4acfaa2d
 
 Below are backup repositories for those deprecated packages:
 
  * gnomevfs            : http://www2.in.tum.de/~simona/gnomevfs/  
  * sourceview  : http://www2.in.tum.de/~simona/sourceview/
  * mozembed            : http://www2.in.tum.de/~simona/mozembed/
 
] 
[Fix IconTheme.chs docs.
Andy Stewart <lazycat.mana...@gmail.com>**20100527102140
 Ignore-this: 2f2b7ab508c688cc73f1b59012966d13
] 
[Fix Gtk2HsSetup.hs bug.
Andy Stewart <lazycat.mana...@gmail.com>**20100527095530
 Ignore-this: 1b65945da174e05d0ad2a1f01e2ee651
] 
[Add gnomevfs demo directory.
Andy Stewart <lazycat.mana...@gmail.com>**20100527061234
 Ignore-this: 40c6dd74b460d7546937212dacf1f9e1
] 
[Add gtk demo directory.
Andy Stewart <lazycat.mana...@gmail.com>**20100527061041
 Ignore-this: 876a827c6f1bac1a8b26a99cd68c6005
] 
[Add cairo demo directory.
Andy Stewart <lazycat.mana...@gmail.com>**20100527051924
 Ignore-this: b1a70c2a24812fb84c899e4e8ce3ca6c
] 
[Add pango demo directory.
Andy Stewart <lazycat.mana...@gmail.com>**20100527051205
 Ignore-this: af1ff611ab459ee2b6c5bc09a3f63c11
] 
[Fix the license of gnomevfs
Andy Stewart <lazycat.mana...@gmail.com>**20100527035350
 Ignore-this: 9ac7c768af168d6f0c7af8c8790e8643
] 
[Fix the license of gio.
axel.si...@in.tum.de**20100526152125
 Ignore-this: 42fe27de2030e0395227f889ba5345d8
] 
[Fix Trac #1164. toGSList was reversing lists.
m.ni...@gmail.com**20090514122933
 Ignore-this: c466eadbc5ae61ba71721fe15b44735a
] 
[Remove gconf glade gstreamer gtkglext gtksourceview2 soegtk svgcairo vte 
webkit since these all now have their own repos.
axel.si...@in.tum.de**20100525211947] 
[Documentation fix for EventM.
axel.si...@in.tum.de**20100525131428
 Ignore-this: 25c3bf3513ec6467cbd0febe397ab53e
] 
[Put upper bounds on base version.
axel.si...@in.tum.de**20100525082101
 Ignore-this: f92b2d9970c436c9fcbcf141fc988e8
] 
[Make documentation parsable.
axel.si...@in.tum.de**20100525080209
 Ignore-this: 60f44b8251a9f3e933c874f72d8e8801
] 
[Make the version test in pango less complex as Cabal 1.6 doesn't parse it 
otherwise.
axel.si...@in.tum.de**20100525075706
 Ignore-this: f3446237cf66abf49e81bd4ba8ef9744
] 
[Fix an incorrect pattern in windowSetIcon.
axel.si...@in.tum.de**20100525075639
 Ignore-this: eb596c778897b4ae4fd7f9a8dde59726
] 
[Get rid of stock images under ./docs/reference/images
Andy Stewart <lazycat.mana...@gmail.com>**20100524235315
 Ignore-this: 1094aaf32c73ba189937e1beee24ee49
] 
[Redirect image link to library.gnome.org and update image items to GTK+ 2.20
Andy Stewart <lazycat.mana...@gmail.com>**20100524233947
 Ignore-this: f33362d57605d16365e4dfac59c01122
] 
[Add an upper version to the requirement on base.
axel.si...@in.tum.de**20100524211158] 
[Be more specific as to the prerequisites of packages.
axel.si...@in.tum.de**20100524210210] 
[Fix docu.
axel.si...@in.tum.de**20100524210157] 
[Make soegtk compile by fixing dependency on old-time and by not relying on Gtk 
2.18.
axel.si...@in.tum.de**20100524210032] 
[don't mention tools in the docs for unregistering.
axel.si...@in.tum.de**20100524201401] 
[TAG 0.11.0
axel.si...@in.tum.de**20100524200857] 
[Bump version numbers.
axel.si...@in.tum.de**20100524200719] 
[Add note that the user needs to install build tools first.
axel.si...@in.tum.de**20100524192522
 
 I think this is acutally needed. We cannot make packages depend on 
gtk2hs-buildtools since this package does not install any library of this name.
] 
[Add (revert, actually) some Mac OS-specific configuration settings.
axel.si...@in.tum.de**20100524184834] 
[Update INSTALL document and insert comment as to why we have a special case 
for windows in hsgthread.c.
axel.si...@in.tum.de**20100524184758] 
[Improved Win32 critical section init and only lock if threading is initialized.
Hamish Mackenzie <hamish.k.macken...@googlemail.com>**20100524011511
 Ignore-this: 880ca168a60671ba8230faeb373022be
] 
[Move rest demos to ./gtk/demo
Andy Stewart <lazycat.mana...@gmail.com>**20100524034349
 Ignore-this: 7b9f4784b6d63d1283c7a8a5f5d0eb1b
] 
[Move mozembed demo to ./mozembed/demo
Andy Stewart <lazycat.mana...@gmail.com>**20100524033904
 Ignore-this: be945149615e5c04c0e7557967afd213
] 
[Move sourceview demo to ./gtksourceview2/demo
Andy Stewart <lazycat.mana...@gmail.com>**20100524033155
 Ignore-this: 3239746ab1c6293af3c4af235511e631
] 
[Make sourceview demo compilable again.
Matthias Reisner <matthias.reis...@googlemail.com>**20100523223358
 Ignore-this: 2d6d3ec8f1af2370d53149f6d1f7e718
] 
[Remove Windows specific mutex operations.
axel.si...@in.tum.de**20100523154618
 Ignore-this: d49fe17f4a03bb66cb2880cebb3be71d
] 
[Add mutex functions to Gtk and remove the funky threaded intialisation 
function.
axel.si...@in.tum.de**20100523154440
 Ignore-this: 6685e05dc9081551762a792194517370
] 
[Make -xc default for all C Preprocessors on all platforms.
axel.si...@in.tum.de**20100522221239] 
[Remove excess after #endif.
axel.si...@in.tum.de**20100522220536] 
[Fix the way c2hs handles file paths.
axel.si...@in.tum.de**20100522214130] 
[Add contributors to AUTHORS.
Andy Stewart <lazycat.mana...@gmail.com>**20100522154606
 Ignore-this: a6510cff5dd6f647c68ddf9de367dc9e
] 
[Delete gtk2hs.spec.in
Andy Stewart <lazycat.mana...@gmail.com>**20100522153031
 Ignore-this: 4a71e7ec43cd8709ad196ffe8269f29f
] 
[remove old gtk2hs.spec.in file
Jens Petersen <peter...@haskell.org>**20100522130511
 Ignore-this: d32b91a7623554c5adcceb61c7f098c0
 
 This was the original spec file used to generate gtk2hs rpms -
 it was inherited by Fedora and maybe other rpm distros.
 Removing since it has been maintained for a long time.
] 
[Adjust INSTALL
Andy Stewart <lazycat.mana...@gmail.com>**20100522150920
 Ignore-this: 39c7bee3ab02926c402703a7e807ded1
] 
[update ghc version info in INSTALL
Jens Petersen <peter...@haskell.org>**20100522143114
 Ignore-this: 12355060648bf7ec2fc24972ff058cfd
] 
[update INSTALL
Jens Petersen <peter...@haskell.org>**20100522142512
 Ignore-this: 91efe1d455ef4068f3381cf7619f10fa
] 
[Fix gio flag in IconTheme.chs.
Andy Stewart <lazycat.mana...@gmail.com>**20100521080328
 Ignore-this: aee6873a5a061822123217d07a8537b6
] 
[Add pixbufRenderThresholdAlpha
arse...@rpi.edu**20100220181359
 Ignore-this: f7c25ecfc1aba9f8437d7b49bda903be
] 
[Ensure that package can be built with Cabal 1.6.
axel.si...@in.tum.de**20100516191044] 
[Adapt Hamish's Windows patch to support the renaming of Setup.hs to 
Gtk2HsSetup.hs which broke for pango.
axel.si...@in.tum.de**20100516140708
 Ignore-this: 242a375c16d531d6c08268fac074c154
] 
[Set extraGHCiLibraries on windows using full DLL names
Hamish Mackenzie <hamish.k.macken...@googlemail.com>**20100510020843
 Ignore-this: 7fee9866cac034c3dcd87c470fe81cf3
] 
[Use win32 critical section in hsgthread.c finalizer code
Hamish Mackenzie <hamish.k.macken...@googlemail.com>**20100510020530
 Ignore-this: 6bfaec66f7c3453aaa13d96072ff013f
] 
[Add `tools` in bootstrap.sh.
Andy Stewart <lazycat.mana...@gmail.com>**20100520060758
 Ignore-this: 3d49a4b3b524a84b6702efbed0acae39
] 
[Fix treeView.chs docs.
Andy Stewart <lazycat.mana...@gmail.com>**20100516112228
 Ignore-this: ada6ac9d84280032af04f7d05b737736
] 
[Add new coordinate functions to get "header height" of treeView. (Deprecated 
`treeViewWidgetToTreeCoords` and `treeViewTreeToWidgetCoords`)
Andy Stewart <lazycat.mana...@gmail.com>**20100516105021
 Ignore-this: 22a088c548bdd3e09dcdf3624356893d
] 
[Move gstreamer demo to gstreamer/demo
Andy Stewart <lazycat.mana...@gmail.com>**20100515174941
 Ignore-this: edaafa1e0fa565a8ade88e8db82ab292
] 
[Delete unused files.
Andy Stewart <lazycat.mana...@gmail.com>**20100515174644
 Ignore-this: a3c69a2051d009b8d1c28da7a8c2f408
] 
[Make `gnomevfs` generate individual signals
Andy Stewart <lazycat.mana...@gmail.com>**20100515170302
 Ignore-this: f443a25445bcaf282acc6e381272c7c5
] 
[Remove unused signals from gtk/marshal.list.
Andy Stewart <lazycat.mana...@gmail.com>**20100515163858
 Ignore-this: 3450dd0b141afd2cb8861287bc336ca3
] 
[Make `webkit` generate individual signals.
Andy Stewart <lazycat.mana...@gmail.com>**20100515163717
 Ignore-this: cddff1a5bf1671f47f4d3ffd69c3ae3d
] 
[Make `vte` generate individual signals
Andy Stewart <lazycat.mana...@gmail.com>**20100515163557
 Ignore-this: ca2a5ee118474793b135ffa223b8f39d
] 
[Make `gtksourceview2` generate individual signals.
Andy Stewart <lazycat.mana...@gmail.com>**20100515163255
 Ignore-this: 341bf4e0dcc796bda0541d192921ddcd
] 
[Remove Gtk.Signals from GtkInternals.chs
Andy Stewart <lazycat.mana...@gmail.com>**20100515163032
 Ignore-this: c91e85a23ec5a4303fd1b59e19daf7b1
] 
[Add gstreamer to bootstrap.sh
Andy Stewart <lazycat.mana...@gmail.com>**20100515150630
 Ignore-this: 1a576a2c792ea139fd96b43b501f2bf7
] 
[Forgot to add the hierarchy.list file.
axel.si...@in.tum.de**20100515144801
 Ignore-this: 6eb2f2f318d443b5a120cb9597007e9
] 
[Add the forgotten Nothing case to readFile.
axel.si...@in.tum.de**20100515123927
 Ignore-this: b4eac2af3784ef2691b3fb6a0cb8a2a2
] 
[Fix Andy's compilation problem.
axel.si...@in.tum.de**20100515120736
 Ignore-this: dd397744339db5ead222592511a744ac
] 
[Fix documentation and the fileRead function.
axel.si...@in.tum.de**20100515120448
 Ignore-this: c53fee6929a5f2554ad366dbdc48c589
] 
[Ensure that System.FFI never exports withObject.
axel.si...@in.tum.de**20100515112918
 Ignore-this: dba293b62fd0149120aaa410361dc899
] 
[Make gstreamer compile.
axel.si...@in.tum.de**20100515112826
 Ignore-this: b94194b4ae913eeeb42fb754c92ad666
] 
[Adjust bootstrap.sh, let `gio` in the `gtk` front.
Andy Stewart <lazycat.mana...@gmail.com>**20100515084129
 Ignore-this: c652a2496f07e1382e9243dba1f582f9
] 
[Remove `Graphics.UI.Gtk.Signals.chs.template` and unnecessary signals from 
marshal.list.
Andy Stewart <lazycat.mana...@gmail.com>**20100514135032
 Ignore-this: 94e7d2c8d724140655f0b3a2ff3edc75
] 
[Make gconf just depend on glib
Andy Stewart <lazycat.mana...@gmail.com>**20100514071617
 Ignore-this: 93b98960df959a118b0893fa303f0f74
] 
[Ooops, `marshal.list` has add in gio.cabal.
Andy Stewart <lazycat.mana...@gmail.com>**20100514070416
 Ignore-this: c3a44ba07aab34c0cf5b81bd0f8f1ff9
] 
[Fix gio compile error.
Andy Stewart <lazycat.mana...@gmail.com>**20100514040903
 Ignore-this: 69334e6c7962522f9391f606844d029b
] 
[Add initial cabal file.
axel.si...@in.tum.de**20100513221818
 Ignore-this: d146adaa73fb4dad25ea3a851502ab8c
] 
[Remove stale flags from pango.cabal.
axel.si...@in.tum.de**20100513215528
 Ignore-this: 2c99f38f64c4cdf13e40d68f98ac26e7
] 
[Make gio independent of gtk.
axel.si...@in.tum.de**20100513214201
 Ignore-this: 15af184a52f200fcda7814d08f6506e0
] 
[Fix the callback generator to only use a local marshal list.
axel.si...@in.tum.de**20100513213648
 Ignore-this: 3616c98e41ab67661a1bfbb726e0332d
] 
[Add a flag that allows gtk to conditionally depend on gio.
axel.si...@in.tum.de**20100513213623
 Ignore-this: 6676885bc9575e289a2617a70066abb8
] 
[Make the marshal file local to gtk.
axel.si...@in.tum.de**20100513213501
 Ignore-this: 75c6bca5fe49d5369f3f879063bf2db5
 
 Some of the entries in the file still need to be removed and put into
 their own files in the respective packages.
] 
[Fix IconTheme to only compile if gio is present.
axel.si...@in.tum.de**20100513213434
 Ignore-this: db304c9b63d7fcd37ea448c42901ddb4
] 
[Update all Gtk2HsSetup.hs files to allow several type hierarchies.
axel.si...@in.tum.de**20100513212645
 Ignore-this: 3ee461409f81422b38455c7064ac1e59
] 
[Fix the modified Setup.hs of pango.
axel.si...@in.tum.de**20100513102948
 Ignore-this: 5533320b5f714f7ea89116030c4735e7
] 
[Fix the bug of `iconInfoGetEmbeddedRect`
Andy Stewart <lazycat.mana...@gmail.com>**20100511141420
 Ignore-this: 13d3a8b05b2ef17ee459683cf0e0468b
] 
[Add `GAppLaunchContext` to support gio.
Andy Stewart <lazycat.mana...@gmail.com>**20100510102926
 Ignore-this: f69504463084566fa86b37030c60160f
] 
[Remove glib.package.conf.in
Andy Stewart <lazycat.mana...@gmail.com>**20100510071503
 Ignore-this: 5897082a92012d0bbca9627550fbb987
] 
[Fix crash bug of treeViewColumnGetWidget.
Andy Stewart <lazycat.mana...@gmail.com>**20100508130657
 Ignore-this: bf8dc177526ddc4a3af03ee2c5b2013d
 
 When you first call treeViewColumnGetWidget will got error "main: user error 
(makeNewObject: object is NULL)"
 Details see : 
http://library.gnome.org/devel/gtk/stable/GtkTreeViewColumn.html#gtk-tree-view-column-get-widget
] 
[Add module `IconTheme` to support GIO (get icon pixbuf for files).
Andy Stewart <lazycat.mana...@gmail.com>**20100508103908
 Ignore-this: f038b0bb54a5b9b01b7b364542d771be
] 
[Include the setup files in the distribution.
axel.si...@in.tum.de**20100505075727
 Ignore-this: d56ac4eb24866e5d917386b2df6ec28e
] 
[Make the bootstrap file ignore a package if it can't be built.
axel.si...@in.tum.de**20100505075646
 Ignore-this: d92362cd5d0ee8820c127a0367e4d498
] 
[Fix documenation to Editable.
axel.si...@in.tum.de**20100504135848
 Ignore-this: d9494bc1fb323d50164f219423a5e17
] 
[Fix textView signals (rename `setScrollAdjustments` to 
`setTextViewScrollAdjustments`) and fix signal docs.
Andy Stewart <lazycat.mana...@gmail.com>**20100503140719
 Ignore-this: 3fcfbfe8659c1f01d806990a6a59e0dc
] 
[Fix TextView signals.
Andy Stewart <lazycat.mana...@gmail.com>**20100502110206
 Ignore-this: 3cc1d9c7e1452e577264f2a287852a22
] 
[Add bootstrap.sh.
Andy Stewart <lazycat.mana...@gmail.com>**20100501220434
 Ignore-this: bdcf47e2a0b99436967f6338c8f00141
] 
[Fix cairo demo.
Andy Stewart <lazycat.mana...@gmail.com>**20100501214046
 Ignore-this: bb37935be21a3414d6540d39b74d57c6
] 
[Fix scaling demo and move to `gtk2hs/glade/demo`.
Andy Stewart <lazycat.mana...@gmail.com>**20100501211752
 Ignore-this: 26b0499662347edb6067e8f8397a406c
] 
[Move profileviewer demo to `gtk2hs/glade/demo.`
Andy Stewart <lazycat.mana...@gmail.com>**20100501211335
 Ignore-this: 80f20961b905bca023b4813e7b99f2db
] 
[Fix noughty demo and move to `gtk2hs/glade/demo`.
Andy Stewart <lazycat.mana...@gmail.com>**20100501211126
 Ignore-this: 598b67397619be71313289a86c3f1dc6
] 
[Move calc demo to `gtk2hs/glade/demo` and adjust glade demo.
Andy Stewart <lazycat.mana...@gmail.com>**20100501210542
 Ignore-this: 152abe8888a55ec4a2c106292a58b6cf
] 
[Fix carsim demo.
Andy Stewart <lazycat.mana...@gmail.com>**20100501210132
 Ignore-this: 1502949718304229aa7d6d82084eb442
] 
[Remove warning for GtkInternal.
Andy Stewart <lazycat.mana...@gmail.com>**20100501205623
 Ignore-this: b1b60e69e87208431f7f287ae8174f26
] 
[Axel, Gtk2HsSetup.hs can't works with pango, so i rollback your patche to make 
pango can compile pass. Please push new patches when you fix it.
Andy Stewart <lazycat.mana...@gmail.com>**20100501180134
 Ignore-this: db2796b94f08260401cff17b638ef6a4
] 
[Move cairo demo to `gtk2hs/cairo/demo`.
Andy Stewart <lazycat.mana...@gmail.com>**20100501174106
 Ignore-this: 59379042dbc12ed64d7c6fa67da613a6
] 
[Move pango demo to `gtk2hs/pango/demo`.
Andy Stewart <lazycat.mana...@gmail.com>**20100501173621
 Ignore-this: f93de2952148b90d739bf4e06f31fcaa
] 
[Move svg demo to `gtk2hs/svgcairo/demo`.
Andy Stewart <lazycat.mana...@gmail.com>**20100501173518
 Ignore-this: da7867efa4d2c2c21fedd7a2335048e7
] 
[Move soe demo to `gtk2hs/soegtk/demo`.
Andy Stewart <lazycat.mana...@gmail.com>**20100501173350
 Ignore-this: f861db155bcb0b0f266ccbcac2770ef5
] 
[Move opengl demo to `gtk/gtkglext/demo`.
Andy Stewart <lazycat.mana...@gmail.com>**20100501173231
 Ignore-this: 5c11b627899153dfec86424037ad147e
] 
[Move gnomevfs demo to `gtk2hs/gnomevfs/demo`.
Andy Stewart <lazycat.mana...@gmail.com>**20100501173035
 Ignore-this: 3c4019cd021cd9349e7a794f0c73bea6
] 
[Move glade demo to `gtk2hs/glade/demo`.
Andy Stewart <lazycat.mana...@gmail.com>**20100501171808
 Ignore-this: c3cc3e5a3fb50e9c97ea4d141e993151
] 
[Move gconf demo to `gtk2hs/gconf/demo`.
Andy Stewart <lazycat.mana...@gmail.com>**20100501171629
 Ignore-this: b4011619e7e1096307d5fb9bf7212982
] 
[Remove vte and webkit demo from main repo (those demos have exist in 
`gtk2hs/vte/demo` and `gtk2hs/webkit/demo`)
Andy Stewart <lazycat.mana...@gmail.com>**20100501171314
 Ignore-this: 1aa0f5ed4fc91b00ded2affad59061eb
] 
[Fix compile error of soegtk.
Andy Stewart <lazycat.mana...@gmail.com>**20100501162122
 Ignore-this: f6661f25cb9a067a24d7db7242dcab3a
] 
[Fix compile error of webkit.
Andy Stewart <lazycat.mana...@gmail.com>**20100501162011
 Ignore-this: 2f6fe99208c5e17d4fd906b2f70b18b9
] 
[Fix compile error of vte.
Andy Stewart <lazycat.mana...@gmail.com>**20100501161926
 Ignore-this: b837e1f746a7f8779ec49758f9741c4c
] 
[Fix compile error of gtksourceview2.
Andy Stewart <lazycat.mana...@gmail.com>**20100501161826
 Ignore-this: d7f05977a77f1330d14915e5895b526c
] 
[Fix compile error of gnomevfs.
Andy Stewart <lazycat.mana...@gmail.com>**20100501161739
 Ignore-this: 8300370414f8840fcb7897e199025d75
] 
[Fix compile error of gio.
Andy Stewart <lazycat.mana...@gmail.com>**20100501161612
 Ignore-this: 30af23f768bf3823c55db6db33fae8e9
] 
[Fix compile error of gconf.
Andy Stewart <lazycat.mana...@gmail.com>**20100501161504
 Ignore-this: 67c9dc2b5c337476bf3fb5ef5aa3ceb4
] 
[Replace Setup.hs by the default setup files.
axel.si...@in.tum.de**20100501150933
 Ignore-this: b4c2102781b831bd3b787bde35ffcda6
] 
[Replace Setup.hs by the default setup files.
axel.si...@in.tum.de**20100501150755
 Ignore-this: cdc12e9af9b22e54ef4ac288dc8b9000
] 
[Replace Setup.hs by the default setup files.
axel.si...@in.tum.de**20100501150605
 Ignore-this: 58710ee1f00cd1242057f1cbdcee94ff
] 
[Make SOE a really simple package, since it is.
axel.si...@in.tum.de**20100501150526
 Ignore-this: f35f2729f101b34f3e9d47b60ead6171
] 
[Replace Setup.hs by the default setup files.
axel.si...@in.tum.de**20100501150156
 Ignore-this: 9e17194a9abf7cd0b31061249694edda
] 
[Replace Setup.hs by the default setup files.
axel.si...@in.tum.de**20100501145457
 Ignore-this: 90c6e9badb9b88a25c58a07e3dec6d11
] 
[Replace Setup.hs by the default setup files.
axel.si...@in.tum.de**20100501145419
 Ignore-this: 6becb507b1606e949d0d13720d361850
] 
[Replace Setup.hs by the default setup files.
axel.si...@in.tum.de**20100501144608
 Ignore-this: 43ea6510fb65dfbb2e76130cb274a364
] 
[Install the standard setup files in gio.
axel.si...@in.tum.de**20100501144140
 Ignore-this: a21f5c4e5e0aecc52c967a31e90c2d37
] 
[Fix the build infrastructure of gconf.
axel.si...@in.tum.de**20100501143402
 Ignore-this: c0f1e1e066e9a7f9f733a4b768d9196d
] 
[Expose module `System.Gnome.VFS` in gnomevfs.cabal
Andy Stewart <lazycat.mana...@gmail.com>**20100428122845
 Ignore-this: 70069732773614e4323d696cb887a2d1
] 
[gnomevfs Cabal package.
Andy Stewart <lazycat.mana...@gmail.com>**20100428100530
 Ignore-this: 5bbab11f5a0e5c0c790fd917659722c7
] 
[webkit Cabal package.
Andy Stewart <lazycat.mana...@gmail.com>**20100428101329
 Ignore-this: 3b4d27f26dcfb80aec42923906938106
] 
[vte Cabal package.
Andy Stewart <lazycat.mana...@gmail.com>**20100428101229
 Ignore-this: 2618acc76f647f454e6e1bf5f588e858
] 
[svgcairo Cabal package.
Andy Stewart <lazycat.mana...@gmail.com>**20100428100832
 Ignore-this: 5c55b0a69f3e7938712e3deb51091cac
] 
[soegtk Cabal package.
Andy Stewart <lazycat.mana...@gmail.com>**20100428100758
 Ignore-this: ad606092c1d9afbef2a70b8e9b62cc38
] 
[gtksource2 Cabal package.
Andy Stewart <lazycat.mana...@gmail.com>**20100428100657
 Ignore-this: d9c8bd42bc893928d04b132a1a6c29ae
] 
[gtkglext Cabal package.
Andy Stewart <lazycat.mana...@gmail.com>**20100428100617
 Ignore-this: 485ca74cc042b8751415c7e960650a23
] 
[gconf Cabal package.
Andy Stewart <lazycat.mana...@gmail.com>**20100428100216
 Ignore-this: 26854e53627320a7ef3a65f6823fcb60
] 
[GIO Cabal package (Fix doc, add new functions: `fileHasParent` and 
`fileQueryFileType`)
Andy Stewart <lazycat.mana...@gmail.com>**20100428095858
 Ignore-this: 3b53dc9cd495f92e9a7652e14d1cb05b
] 
[glade Cabal package.
Andy Stewart <lazycat.mana...@gmail.com>**20100428100433
 Ignore-this: c152a8f7de7a4622d2f8f5e6aa30b835
] 
[Always build Plug and Socket, even on Windows.
axel.si...@in.tum.de**20100501133611
 Ignore-this: 3d318997a29c769d415238ad7bed881b
] 
[Seperate the standard setup functionality from that necessary for specific 
packages.
axel.si...@in.tum.de**20100501133156
 Ignore-this: 326634d72596f48f1e76ffd688c0f79f
] 
[Let the default Signal template import GtkInternals.
axel.si...@in.tum.de**20100501133050
 Ignore-this: 2f2e8944aa1cc5a5831cabd8c86f119c
] 
[Pick the right function to load a Pixbuf on Windows.
axel.si...@in.tum.de**20100501132726
 Ignore-this: 3e114b00529c96bedea2cb1214dd27b2
] 
[Add `Emblem` and `EmblemedIcon` in hierarchy.list to support gio.
Andy Stewart <lazycat.mana...@gmail.com>**20100430180426
 Ignore-this: 9bb1953f8b0a82e895c7f723acf78def
] 
[Add new functions `readUTFStringArray0` for gio binding.
Andy Stewart <lazycat.mana...@gmail.com>**20100430071318
 Ignore-this: d8d756fca5e216862594e9957a178875
] 
[Add callback `NONE:OBJECT,OBJECT,ENUM` for gio.
Andy Stewart <lazycat.mana...@gmail.com>**20100430035445
 Ignore-this: e594257b6d014dd1c92132e7c6ef399c
] 
[Add callback `NONE:STRING,STRING,STRING,ENUM` to support gio.
Andy Stewart <lazycat.mana...@gmail.com>**20100429201243
 Ignore-this: 9b38ae786b5b2866764a276ec5e40b00
] 
[Add function `widgetGetAllocation` and fix version tag.
Andy Stewart <lazycat.mana...@gmail.com>**20100428151304
 Ignore-this: 74e831fd17d3f1bbd2761e2e778e4e4e
] 
[re-export `toNativeWindowId` and `fromNativeWindowId` to fix Embedded demos.
Andy Stewart <lazycat.mana...@gmail.com>**20100428151139
 Ignore-this: 6e49f7548a461e1da10c5e2a1ff385e6
] 
[Fix cycle import problem, and expose `Threading` modules for use in Signals.chs
Andy Stewart <lazycat.mana...@gmail.com>**20100428145100
 Ignore-this: 5c350d915116b87c728b69942b461bd1
 
 * Signal.chs.template : restore to "import Graphics.UI.Gtk.General.Threading".
 * GtkInternals.chs    : remove Graphics.UI.Gtk.General.Threading, otherwise 
cycle import when compile gtk.
 * Threading.hs        : Add nots that don't use this module in application.
 * gtk.cabal           : expose Graphics.UI.Gtk.General.Threading
 
] 
[Adjust GtkInternal.chs and Signal.chs.template to support non-core packages.
Andy Stewart <lazycat.mana...@gmail.com>**20100428094453
 Ignore-this: bf2cfe48234ea434dbb108e780dad346
 
 Becuase Signal.chs in non-core packages need import 
`Graphics.UI.Gtk.General.Threading`, 
 so i add it in GtkInternal and change Signa.chs template.
 
] 
[Add new callback for gconf.
Andy Stewart <lazycat.mana...@gmail.com>**20100425025913
 Ignore-this: dd81d8a5dff016895855bd947114b893
] 
[Call c2hs with the bare filename as its output.
axel.si...@in.tum.de**20100423152501
 Ignore-this: c9be4c390228577708614efa892a24b7
] 
[Explicitly link in gthread which is required to find g_thread_init.
axel.si...@in.tum.de**20100423145524
 Ignore-this: 11729966fdc935ccc3605dc51102d1f4
] 
[Move modules back to the not-exposed section and add them to the Internals 
module instead.
axel.si...@in.tum.de**20100422153008
 Ignore-this: 255f909810a01cc250790b1423643551
] 
[Ensure all end-user types names are exposed through Gtk.hs and make low-level 
type names available through a new module.
axel.si...@in.tum.de**20100422141222
 Ignore-this: c8f2000df7eb6ceb0f67bfebd3286d9c
] 
[Move the pango C lib version stuff into the Setup.hs
Duncan Coutts <dun...@haskell.org>**20100422001240
 Ignore-this: 795b62cbd00a5a29c6e2373174f0f757
 Rather than using flags in the .cabal file.
 Generate a .h file with the pango version number and
 include that in the local hspango.h.
] 
[Hack in Setup.hs for include dirs, avoiding worse hack in .cabal files
Duncan Coutts <dun...@haskell.org>**20100422000751
 Ignore-this: 1017665f67f060f7ad1a1dd663a9386d
 Ought to be fixed in Cabal lib
] 
[Minor tweaks to Setup.hs scripts
Duncan Coutts <dun...@haskell.org>**20100421233554
 Ignore-this: 5de7745bd7fc5d49d470f5a38ac8e5a9
] 
[Add build-tools dependencies to .cabal files
Duncan Coutts <dun...@haskell.org>**20100421233016
 Ignore-this: 2ca87ca412766d96c688de06e93a29dd
] 
[Change the way the type tags are handled in the .cabal and Setup.hs files
Duncan Coutts <dun...@haskell.org>**20100421211616
 Ignore-this: bcbc507af8fb3a6103e505bc6361bd38
 In particular it eliminates the need for users to specify -fgtk_x_y flags.
] 
[Add upper bounds on deps within gtk2hs packages
Duncan Coutts <dun...@haskell.org>**20100421154805
 Ignore-this: ddc073c270f471583edfcd7f5063dc83
 This is only approximate, they may need to be tighter still.
] 
[Add upper bound on base version in .cabal files
Duncan Coutts <dun...@haskell.org>**20100421154742
 Ignore-this: 940b0938c956685b9996aa01b5a4e362
] 
[Adjust hackage category of build tools
Duncan Coutts <dun...@haskell.org>**20100421152105
 Ignore-this: b0b2a6179fcff848c756d6e6d7ee4b5d
] 
[Add source repository info to package .cabal files
Duncan Coutts <dun...@haskell.org>**20100421151640
 Ignore-this: 9e55a05581df93c5642547ab964fc9be
] 
[Adjust URLs in .cabal files
Duncan Coutts <dun...@haskell.org>**20100421151036
 Ignore-this: 14fdbc10e96f0c07e85fcb37a8b92813
 Use full http:// url for the homepage. Use the root of the gtk2hs trac
 for bug reports because that has the info on how report a bug.
 Remove the package-url field because it is deprecated and useless.
] 
[Fix license name/version in .cabal files for glib, pango, gtk and tools
Duncan Coutts <dun...@haskell.org>**20100421150549
 Ignore-this: 9e316a7f7ac55dbf2ff8d6f87d8dcdfd
 glib, pango and gtk are LGPL not GPL.
 Cabal now allows us to specify the license version, so specify that too.
] 
[Fix hierarchy.list typo and make Multiline.Types expose to support Sourceview2 
Cabal package
Andy Stewart <lazycat.mana...@gmail.com>**20100422075609
 Ignore-this: a81b85782f8480c633ebcd882bd8a6ba
] 
[Fix gtk.cabal, make some modules expose to support WebKit Cabal package.
Andy Stewart <lazycat.mana...@gmail.com>**20100422070445
 Ignore-this: 4e1d125b2bf655f4a502aa73b9a6a9b6
] 
[Fix WebKit name in hierarchy.list
Andy Stewart <lazycat.mana...@gmail.com>**20100421213615
 Ignore-this: 1f1d0daa69c2b9d08af7086ee6aad926
] 
[Undo moving the Types file to the exposed modules. This can't build.
axel.si...@in.tum.de**20100421133856
 Ignore-this: 3fd910eb3ba8f76a41d68d595c8d053b
] 
[TAG 0.10.5
axel.si...@in.tum.de**20100421122640
 Ignore-this: 2b933470cd14a19e695a4387c97c83e7
] 
Patch bundle hash:
eec1870e308ab8005c0975641e757bd446f00c3e
------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Gtk2hs-devel mailing list
Gtk2hs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gtk2hs-devel

Reply via email to