Commit Graph

138 Commits

Author SHA1 Message Date
Uli Schlachter fae5dfcd08 Naughty: Handle invalid UTF-8 more sanely
Previously, if setting the textbox's text failed this caused more problems later
on. This commit makes sure that an invalid text never breaks pango.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2010-08-06 19:53:34 +02:00
Uli Schlachter 6fa27c7b48 Naughty: Catch invalid markup in notifications
Previously, an invalid markup caused an empty popup. Since the C core now throws
a lua error on invalid markup, we have a way to notice that something is wrong.

This patch first tries to set the notification's text the same way we did
previously. If that fails, everything is escaped and the result is used as the
text for the notification.

Thanks to farhaven/Gregor Best for the initial version of this and for the
string.gsub() call I stole from him. :)

Signed-off-by: Uli Schlachter <psychon@znc.in>
2010-07-16 19:35:51 +02:00
Julien Danjou e0c259406e naughty: return nothing, not nil
This is not a valid return value for a D-Bus method.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-06-06 10:39:16 +02:00
Gregor Best b04a75c697 naughty: add suspend() and resume()
This commit adds naughty.suspend() and naughy.resume() which allow
suspension of notifications, which is useful e.g. when watching a movie,
where notifications popping up all the time would be disturbing.

While suspended, notifications are collected and displayed after
naughty.resume() is called.

Signed-off-by: Gregor Best <gbe@ring0.de>
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-02-17 16:23:47 +01:00
Andrei 'Garoth' Thorp 11963175bc Fix naughty.destroy parameter documentation
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-02-17 16:23:47 +01:00
Uli Schlachter 8857f73ce6 Implement the GetCapabilities call in naughty
This call is required by the freedesktop specification.

Signed-off-by: Uli Schlachter <psychon@znc.in>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-12-28 10:41:57 +01:00
Robert Lehmann fcee5fb828 naughty: fix CloseNotification argument usage
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-12-01 14:13:52 +01:00
Julien Danjou f3509f745a naughty: convert <br> tag to \n
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-11-06 12:45:46 +01:00
Lukas Hrazky f2800d96fd naughty: update to new widget layouts
Signed-off-by: Lukas Hrazky <lukkash@email.cz>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-10-27 09:34:29 +01:00
dmitriy 9a9c3d12d7 naughty: upgrade to notification spec 1.0 (FS#652)
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-10-07 19:57:01 +02:00
koniu 105a4ce41f naughty: fix margin when using icon
Signed-off-by: koniu <gkusnierz@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-26 09:14:57 +02:00
koniu 58eb27a99b naughty: port sizing to the new widget margin code
Signed-off-by: koniu <gkusnierz@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-25 19:17:18 +02:00
koniu 194f6b2050 naughty: fix hover_timeout
Fixes regression since e899ca7696.

Signed-off-by: koniu <gkusnierz@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-25 09:48:44 +02:00
Julien Danjou 2fda9f5a2e naughty: fix timeout = 0
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-21 15:30:48 +02:00
Julien Danjou d6fd7f1116 awful.wibox: update strut on wibox attachement
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-21 15:30:48 +02:00
Julien Danjou 85b3dedb60 naughty: remove useless hooks
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-21 15:30:47 +02:00
Julien Danjou 9c40168f02 widget: emit signals on mouse enter and leave
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-21 15:30:47 +02:00
Julien Danjou e899ca7696 naughty: use timer
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-17 17:50:04 +02:00
Julien Danjou 073e0377dd Revert "key, button: use as simple table"
This reverts commit d7454f4307.

Conflicts:

	button.h
	key.h
	lib/awful/titlebar.lua.in
	lib/naughty.lua.in
	wibox.c
	wibox.h
	widget.c
2009-08-14 16:48:52 +02:00
koniu cebf7bc762 naughty: fix size/position messup on arrange
Signed-off-by: koniu <gkusnierz@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-08 13:09:03 +02:00
Julien Danjou ec5ae3dfb8 imagebox: remove valign
This is not used anymore in rendering.

Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-04 14:31:21 +02:00
Julien Danjou 299bc00286 dbus: move to signal
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-07-29 16:10:29 +02:00
Uli Schlachter 51dc458fb9 Naughty: Remove some code duplication
2b69d333f8 added some code duplication here. I guess this was a
mis-rebase or something like that. Anyway, the width and height of the wibox is
already calculated right before this code snippet and the existing calculation
is even correct (now that the calculation for a wibox' geometry with
border_width was fixed up).

Tested via notify-send with and without icon.

Signed-off-by: Uli Schlachter <psychon@znc.in>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-07-29 15:19:48 +02:00
Uli Schlachter 1de7fdfe60 Naughty: Fix the text margin
No idea where this comes from or why it worked before, but it's obviously wrong.

Signed-off-by: Uli Schlachter <psychon@znc.in>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-07-29 15:19:44 +02:00
Julien Danjou d7454f4307 key, button: use as simple table
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-07-28 10:44:54 +02:00
Gregor Best 2b69d333f8 naughty: add support for widget layouts
Signed-off-by: Gregor Best <farhaven@googlemail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-07-17 16:46:53 +02:00
Uli Schlachter 4b27986680 Minor fixes
Remove an unused var and fix a reference to capi.awesome

Signed-off-by: Uli Schlachter <psychon@znc.in>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-06-06 20:20:44 +02:00
Julien Danjou 7cc0b13eae wibox: move position handling to Lua
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-06-04 17:51:30 +02:00
koniu 2920ed71d7 naughty: environment cleanup
Makes naughty environment handling same as awful modules:
- relevant capi members all go to local capi = {}
- relevant awful members are all explicitly required

Signed-off-by: koniu <gkusnierz@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-06-04 17:23:52 +02:00
koniu d397d72a8d naughty: simplify width/height calculations
This also fixes an issue with spacing calculation which previously
disregarded border_width.

Signed-off-by: koniu <gkusnierz@gmail.com>
2009-06-04 17:23:46 +02:00
koniu 4d60ad7e36 naughty: simplify notify and preset parameters
This makes all parameters available to notify() to be available in
preset table (and vice versa) and simplifies value selection.

Adds new config option: config.default_preset.

Also cleans up some comment redundancy.

Signed-off-by: koniu <gkusnierz@gmail.com>
2009-06-04 17:23:43 +02:00
koniu 80685be123 naughty: add vertical margin
Signed-off-by: koniu <gkusnierz@gmail.com>
2009-06-04 17:23:38 +02:00
Gregor Best a4de60b23f naughty: resize naughtifications to the minimum needed space
This commits adds support for :extents() to naughty. It changes the
behaviour of naughty.config.presets.*.width so that if it's set to nil,
the notification gets resized automagically. Else the value of width is
used for the notification's width.
The meaning of naughty.config.presets.*.height changed similarly, now,
if set, it means the literal height of the notifications. If unset, the
notification gets resized automagically as well.

Signed-off-by: Gregor Best <farhaven@googlemail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-06-04 17:23:34 +02:00
koniu 35cd125ebd naughty: fix bug in re-indexing popups if removing older to make space
Signed-off-by: koniu <gkusnierz@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-05-08 14:41:17 +02:00
Julien Danjou 3eb14d7c76 luaa: move version and release to awesome module
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-04-28 16:21:50 +02:00
Julien Danjou 467737250c dbus: allow usage of the system bus
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-04-18 16:07:31 +02:00
Uli Schlachter 4b83d526d6 naughty: fix typo
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-04-18 10:34:50 +02:00
Julien Danjou 21978546eb lib: fix libs to use new awful.button
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-04-17 18:08:52 +02:00
Gregor Best 680e51049e naughty: add opacity option
Signed-off-by: Gregor Best <farhaven@googlemail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-04-10 23:18:51 +02:00
Julien Danjou 031ebc6d98 naughty: add support for hints.icon_data
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-03-12 11:49:59 +01:00
Julien Danjou 311a485319 naughty: allow icon to be an image object
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-03-12 11:49:59 +01:00
Julien Danjou 8b79502302 naughty: return unsigned
Actually, libnotify expect an unsigned for the id, not a signed integer.

Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-23 15:32:24 +01:00
Julien Danjou 9554536db6 naughty: init preset
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-23 15:25:21 +01:00
Julien Danjou e0754de9cb naughty: set icon valign to center
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-05 18:10:19 +01:00
Julien Danjou e49ab302b9 naughty: do not export documentation of local functions
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-08 12:26:00 +01:00
Julien Danjou d74358a2b1 naughty: check for D-Bus availability
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-08 11:39:53 +01:00
Leon Winter ff0f15f9a0 naughty/GetServerInfo: act according spec
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-19 12:37:48 +01:00
Leon Winter 2d0c8940fe naughty: announce GetServerInfo over dbus
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-19 09:56:41 +01:00
Leon Winter 894f9c5439 naughty: fix returning correct awesome version
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-19 09:56:41 +01:00
Leon Winter fa41e0d395 naughty: return correct awesome version via dbus
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-18 09:56:28 +01:00
Leon Winter e8502a268f naughty: add callbacks for presets
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-18 09:56:05 +01:00
Maarten Maathuis 6e199bbd76 client, swindow: switch to a more convient definition of geometry
- In many places i see people correcting for border width and titlebars.
- This new definition is the equivilant of what used to be fullgeometry.
- The internal geometry is now contained to a few functions that few people ever touch.
- This should avoid confusion and make code easier.
- Also protect against several unsigned overflows.

Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:24 +01:00
Leon Winter 5f8b34b909 naughty: convert text and title tostring()
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:24 +01:00
Leon Winter b4f0e90362 naughty: support for categories via mapping
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:24 +01:00
koniu 49258e7805 naughty: notify{run} gets notification object argument (FS#398)
Notifications will not be destroyed on 'run' execution unless the
provided 'run' function explicitly invokes die()/destroy(). For this
purpose run can now receive the notification object as argument.

naughty.notify{ text = 'hi',
                run = function(n)
                    awful.util.spawn('firefox')
                    n.die()
                end
}

Signed-off-by: koniu <gkusnierz@gmail.com>
2008-12-14 10:28:23 +01:00
Julien Danjou 8e9f0c8857 draw: remove margin markup, move to textbox widget
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:23 +01:00
Leon Winter 458ae34560 naughty: introducing urgency levels and presets
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 19:19:29 +01:00
koniu 03e08257fb naughty: notification.run destroys the popup
Popups that have mouse button 1 tied to a function (run) will be
destroyed upon execution.

Signed-off-by: koniu <gkusnierz@gmail.com>
2008-12-12 19:19:29 +01:00
koniu 5603d93da6 naughty: hover_timeout can now be used in notify()
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-12-12 19:19:29 +01:00
koniu e1762128b7 naughty: bottom positioning has to count border twice
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-12-12 19:19:28 +01:00
koniu 61947ec1c8 naughty: fix a bug on timeout when popup was destroyed by hover_timeout
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-12-12 19:19:28 +01:00
Leon Winter 2d321ffbf8 naughty: add getIcon() to find icons with basename
Adds:
   config.icon_dirs {}
   config.icon_formats {}

"It adds the ability to search for icons in specified folders. This
is necessary for some applications using dbus like the firefox dbus
plugin."

To test it: naughty.notify{ icon = 'firefox' }

Signed-off-by: Leon Winter <Leon.Winter@informatik.uni-oldenburg.de>
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-12-12 19:19:28 +01:00
koniu 0358d1085d naughty: notify() returns notification object
This makes notification mangling outside of naughty.lua much easier:
http://awesome.naquadah.org/wiki/index.php?title=Naughty#Popup_calendar

Signed-off-by: koniu <gkusnierz@gmail.com>
2008-12-12 19:19:28 +01:00
koniu 8599426168 naughty: never scale icon to text height
Also removes default icon_size of 16 to avoid confusion.

Signed-off-by: koniu <gkusnierz@gmail.com>
2008-12-12 19:19:28 +01:00
Leon Winter 118fbcb985 naughty: add D-Bus notification support
Allows Naughty to receive D-Bus notifications and emulate notification-daemon
and such.

Signed-off-by: Leon Winter <leon.winter@informatik.uni-oldenburg.de>
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-12-12 19:19:28 +01:00
Julien Danjou 4fcf48e247 widgets: remove name property
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 16:51:40 +01:00
Julien Danjou c7ee83fdbf naughty: notify() returns notification object
This makes notification mangling outside of naughty.lua much easier:
http://awesome.naquadah.org/wiki/index.php?title=Naughty#Popup_calendar

Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-25 09:47:46 +01:00
Julien Danjou 46822d510b naughty: fix font support
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-11-21 14:41:03 +01:00
koniu 0e97360d32 naughty: fix a bug with variable width popups
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-21 09:21:20 +01:00
koniu 64f0848940 naughty: fix beautiful support properly
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-21 09:21:20 +01:00
koniu c453d6c611 naughty: arg 'screen' to notify() is now respected
Signed-off-by: Matthias Schroeder <ms@softimpulse.de>
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-20 20:36:05 +01:00
koniu 65d5e29141 naughty: new argument 'width' in notify()
Signed-off-by: Sébastien Gross <seb@chezwam.org>
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-19 10:50:19 +00:00
koniu 651b5e5f70 naughty: new config option 'margin' + 2 renamed
* Renamed config.margin to config.padding. Controls spacing between popup and
  workarea border.

* Renamed config.gap to config.spacing. Controls spacing between popups.

* Added config.margin. Controls spacing between popup wibox and text.

Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-15 20:08:17 +00:00
koniu e536dbe2ea naughty: text-icon separator uses margin now
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-15 18:39:26 +00:00
koniu edeabd1a8b naughty: popup size can now adjust to icon height
* If icon is present, popup height will now be adjusted to the greater
  of text-height and icon-height.
* Reorganized notify() into more logical order to allow this.

Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-15 16:55:38 +00:00
koniu 3cc64ab081 naughty: fix a bug in destroy()
+ hooks.timer.unregister gets notification.die not .timer
+ remove pointless comments

Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-15 15:25:22 +00:00
koniu c86b41235f naughty: check workarea in get_offset, not at load
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-15 09:27:27 +00:00
Julien Danjou 2e97991a90 beautiful: merge awful.beautiful, stop registering system
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-11-13 11:54:23 +01:00
koniu 0d98ed7f5a naughty: cleanup of some code repetitions
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-05 02:18:01 +00:00
koniu 390b218526 naughty: new notify() parameter 'run'
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-05 02:03:28 +00:00
koniu 9447d29204 naughty: config.icon_size works now (FS#359)
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-04 20:10:31 +00:00
koniu 97194aaa98 naughty: new option 'config.hover_timeout'
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-04 19:35:18 +00:00
koniu 71b93f44dd naughty: destroy oldest if no room for new popup
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-03 21:14:19 +01:00
koniu 91dfbbb4eb naughty: icon_size added to config and notify()
Signed-off-by: koniu <gkusnierz@gmail.com>
2008-11-03 21:14:13 +01:00
Julien Danjou 4eb096e236 libs: use geometry instead of coords
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-10-21 16:25:06 +02:00
Julien Danjou 862fe193ee Rewrite {tag,task}list in Lua.
This removes the C implementation of taglist and tasklist widgets and
use a Lua one.

This works by letting .widgets property of wiboxes to be a table with
table, and setting a special metatable on them which notify awesome on
newindex events, updating wiboxes.

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-10-20 20:06:09 +02:00
koniu a48e71af18 naughty: destroy() now takes object instead idx (FS #350)
Fixes the bug although still relies on index being passed with notification
in notify() and re-set by arrange().

Also box:geometry() in arrange() stopped working with just one argument
so it pushes all coords now.

Signed-off-by: koniu <gkusnierz@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-10-20 17:42:49 +02:00
koniu e6d644c4fb naughty: import
Signed-off-by: koniu <gkusnierz@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-10-18 13:40:01 +02:00