Looks like I have hit a bug with awful.tooltip. Tooltip creation:
gmailwidget = wibox.widget.textbox() gmailwidget_t = awful.tooltip({ objects = { gmailwidget, mailicon }, timer_function = function () return 'meh' end}) Now when I point my mouse at `gmailwidget` or `mailicon`, I get the following backtrace: W: awesome: luaA_dofunction:108: error while running function stack traceback: [C]: ? /usr/local/share/awesome/lib/awful/placement.lua:113: in function 'no_offscreen' /usr/local/share/awesome/lib/awful/tooltip.lua:74: in function 'place' /usr/local/share/awesome/lib/awful/tooltip.lua:85: in function 'set_geometry' /usr/local/share/awesome/lib/awful/tooltip.lua:213: in function 'timer_function' /usr/local/share/awesome/lib/awful/tooltip.lua:107: in function 'show' /usr/local/share/awesome/lib/awful/tooltip.lua:196: in function 'func' /usr/local/share/awesome/lib/gears/object.lua:71: in function 'emit_signal' /usr/local/share/awesome/lib/wibox/init.lua:177: in function 'emit_difference' /usr/local/share/awesome/lib/wibox/init.lua:202: in function 'func' /usr/local/share/awesome/lib/gears/object.lua:71: in function 'emit_signal' /usr/local/share/awesome/lib/wibox/init.lua:214: in function </usr/local/share/awesome/lib/wibox/init.lua:213> error: /usr/local/share/awesome/lib/awful/placement.lua:113: bad argument #2 to '?' (number expected, got nil) So I looked into placement.lua, line 113, which is: local screen_geometry = capi.screen[c.screen].workarea There is only one argument in there, `c.screen`. So I put a print statement there: print(' **** in placement.no_offscreen *** ') print(c.screen) print(' **** ') Compiled and re-installed awesome. And, lo: ... **** in placement.no_offscreen *** nil **** ... WTF! `c.screen` is nil. So I went looking in tooltip.lua to see how tooltip is created and the screen is set. Looks like the following line in the function `show`: self.wibox.screen = mouse.screen I added some print statements there: print(' **** in tooltip.show **** ') print(mouse.screen) print(self.wibox.screen) self.wibox.screen = mouse.screen print(self.wibox.screen) print(' **** ') Compiled and re-installed awesome. And the output this time is pretty weird: ... **** in tooltip.show **** 1 nil nil **** ... How would you explain that? -- Anurag Priyam -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.