gtk_widget_show :: GtkWidget -> IO ()
gtk_widget_show w = do
  typename <- peekCString $ gobj_type_name w
  putStrLn ("showing widget of type " ++ typename)
  case typename of
    "GtkMenuBar" -> return ()
    --"GtkToolbar" -> return ()
    "GtkFrame" -> do
      cstr <- gtk_frame_get_label w
      putStrLn "got the c string"
      label <- if (cstr == nullPtr) then return "" else peekCString cstr
      putStrLn "got the label"
      case label of
        "Search results :" -> do
          orig <- orig_gtk_widget_show
          orig w
        _ -> return ()
      {-
      gtk_widget_hide_all w
      orig_gtk_widget_show <- nextM mkWVFun "gtk_widget_show"
      orig_gtk_widget_show w -}
    --"GtkOptionMenu" -> return ()
    --"BonoboDockBand" -> return ()
    -- GnomeAppBar is a status bar. It's clutter; just pop it up momentarily when there's some activity.
    "GnomeAppBar" -> return ()
    --"BonoboDockItemGrip" -> return ()
    --"GtkScrolledWindow" -> orig_gtk_widget_show w
    "GtkScrolledWindow" -> do
      orig_gtk_widget_show <- nextM mkWVFun "gtk_widget_show"
      orig_gtk_widget_show w
      -- hide scrollbars.  2 here is GTK_POLICY_NEVER
      gtk_scrolled_window_set_policy w 2 2
    _ -> do
    orig_gtk_widget_show <- nextM mkWVFun "gtk_widget_show"
    orig_gtk_widget_show w
    {-
    _ -> withDL "libgtk-x11-2.0.so" [RTLD_LAZY] $ \gtk -> do
           --ptr <- dlsym gtk "gtk_widget_show"
           ptr <- next "gtk_widget_show"
           let orig_gtk_widget_show = mkWidgetFun ptr
           orig_gtk_widget_show w -}
gtk_widget_show :: GtkWidget -> IO ()
gtk_widget_show w = do
  typename <- peekCString $ gobj_type_name w
  putStrLn ("showing widget of type " ++ typename)
  case typename of
    "GtkMenuBar" -> return ()
    --"GtkToolbar" -> return ()
    "GtkFrame" -> do
      cstr <- gtk_frame_get_label w
      putStrLn "got the c string"
      label <- if (cstr == nullPtr) then return "" else peekCString cstr
      putStrLn "got the label"
      case label of
        "Search results :" -> do
          orig <- orig_gtk_widget_show
          orig w
        _ -> return ()
      {-
      gtk_widget_hide_all w
      orig_gtk_widget_show <- nextM mkWVFun "gtk_widget_show"
      orig_gtk_widget_show w -}
    --"GtkOptionMenu" -> return ()
    --"BonoboDockBand" -> return ()
    -- GnomeAppBar is a status bar. It's clutter; just pop it up momentarily when there's some activity.
    "GnomeAppBar" -> return ()
    --"BonoboDockItemGrip" -> return ()
    --"GtkScrolledWindow" -> orig_gtk_widget_show w
    "GtkScrolledWindow" -> do
      orig_gtk_widget_show <- nextM mkWVFun "gtk_widget_show"
      orig_gtk_widget_show w
      -- hide scrollbars.  2 here is GTK_POLICY_NEVER
      gtk_scrolled_window_set_policy w 2 2
    _ -> do
    orig_gtk_widget_show <- nextM mkWVFun "gtk_widget_show"
    orig_gtk_widget_show w
    {-
    _ -> withDL "libgtk-x11-2.0.so" [RTLD_LAZY] $ \gtk -> do
           --ptr <- dlsym gtk "gtk_widget_show"
           ptr <- next "gtk_widget_show"
           let orig_gtk_widget_show = mkWidgetFun ptr
           orig_gtk_widget_show w -}
gtk_widget_show w = do
  typename <- peekCString $ gobj_type_name w
  putStrLn ("showing widget of type " ++ typename)
  case typename of
    "GtkMenuBar" -> return ()
    --"GtkToolbar" -> return ()
    "GtkFrame" -> do
      cstr <- gtk_frame_get_label w
      putStrLn "got the c string"
      label <- if (cstr == nullPtr) then return "" else peekCString cstr
      putStrLn "got the label"
      case label of
        "Search results :" -> do
          orig <- orig_gtk_widget_show
          orig w
        _ -> return ()
      {-
      gtk_widget_hide_all w
      orig_gtk_widget_show <- nextM mkWVFun "gtk_widget_show"
      orig_gtk_widget_show w -}
    --"GtkOptionMenu" -> return ()
    --"BonoboDockBand" -> return ()
    -- GnomeAppBar is a status bar. It's clutter; just pop it up momentarily when there's some activity.
    "GnomeAppBar" -> return ()
    --"BonoboDockItemGrip" -> return ()
    --"GtkScrolledWindow" -> orig_gtk_widget_show w
    "GtkScrolledWindow" -> do
      orig_gtk_widget_show <- nextM mkWVFun "gtk_widget_show"
      orig_gtk_widget_show w
      -- hide scrollbars.  2 here is GTK_POLICY_NEVER
      gtk_scrolled_window_set_policy w 2 2
    _ -> do
    orig_gtk_widget_show <- nextM mkWVFun "gtk_widget_show"
    orig_gtk_widget_show w
    {-
    _ -> withDL "libgtk-x11-2.0.so" [RTLD_LAZY] $ \gtk -> do
           --ptr <- dlsym gtk "gtk_widget_show"
           ptr <- next "gtk_widget_show"
           let orig_gtk_widget_show = mkWidgetFun ptr
           orig_gtk_widget_show w -}