Hum, well, you will have to update a little bit your config!

First, the default naughty.notify function returns a table representing the
notification, but your new notify function doesn't, so update it :

naughty.notify_ = naughty.notify
naughty.notify = function (args,...)
  notifications = {}
   for i = 1, screen.count() do
       args.screen = i
       notifications:insert(i, naughty.notify_(args,...))
   end
   return notifications
end

Then line 600 you update to something like :
local notifs = naughty.notify(args)
local id = {}
for notif in ipairs(notifs) do
  id:insert(notif.id)
end

Nevertheless, I think that you use the id value to replace the
notification, do you ? In this case, you will have to update again your
custom notification to handle the case if args.id is a table (instead of a
number) :

naughty.notify = function (args,...)
   notifications = {}
   naughty_args = args
   for i = 1, screen.count() do
       if args.replaces_id and type(args.replaces_id) == "table" then
          naughty_args.replaces_id = args.replaces_id[i]
       end
       naughty_args.screen = i
       notifications:insert(i, naughty.notify_(args,...))
   end
   return notifications
end

Or something like that.

Cheers,
Alexis

Le mer. 3 juin 2015 à 22:30, Abraham Baker <z1693...@students.niu.edu> a
écrit :

> That actually works, but also generates an error (in the form of a
> critical notification on both screens) at the same time:
> /usr/share/awesome/lib/naughty.lua:600: attempt to index a nil value
>
> For context, line 600 is:
> local id = naughty.notify(args).id
>
> Looks like this is close to working right! Thanks!
>
> On Wed, Jun 3, 2015 at 2:24 PM, Elv1313 . <elv1...@gmail.com> wrote:
>
>> This should help:
>>
>> local naughty = require('naughty')
>> naughty.notify_ = naughty.notify
>> naughty.notify = function (args,...)
>>    for i = 1, screen.count() do
>>        args.screen = i
>>        naughty.notify_(args,...)
>>    end
>> end
>>
>> On 3 June 2015 at 10:42, Abraham Baker <z1693...@students.niu.edu> wrote:
>> > I tried adding that code right after the local naughty =
>> require("naughty")
>> > that was already there, but it didn't work and actually stopped any
>> > notifications from showing on any monitor.
>> >
>> > I doubt it was the cause, but some other functions in my rc.lua also use
>> > local i as a counter;  these shouldn't interfere with each other as
>> long as
>> > they are inside their own functions, right?
>> >
>> > Thanks,
>> > Abe
>> >
>> > On Wed, Jun 3, 2015 at 8:20 AM, Alexis BRENON <brenon.ale...@gmail.com>
>> > wrote:
>> >>
>> >> Hi Abraham,
>> >>
>> >> you have to call the anughty.notift() function twice, once for each
>> >> screen.
>> >> Maybe you can define a function which do it for you :
>> >>
>> >> local naughty = require('naughty')
>> >> naughty.notify = function (args)
>> >> local i = 1
>> >> while i <= screen.count() do
>> >>     args.screen = i
>> >>     naughty.notify(args)
>> >> end
>> >> end
>> >>
>> >> Or something like that
>> >>
>> >> Regards,
>> >> Alexis
>> >>
>> >> Le mer. 3 juin 2015 à 15:13, Abraham Baker <z1693...@students.niu.edu>
>> a
>> >> écrit :
>> >>>
>> >>> Hi,
>> >>>
>> >>> I have a standing/sitting monitor arrangement on my desk that makes it
>> >>> hard to see notifications on the upper monitor while sitting and vice
>> versa.
>> >>> I've been trying to change the default naughty config so notifications
>> >>> appear on both monitors at once, but so far I'm only able to just
>> change
>> >>> which monitor it shows up on (not both).
>> >>>
>> >>> Is there an easy way to have notifications shown on all monitors?
>> >>>
>> >>> Thanks,
>> >>> Abe Baker
>> >
>> >
>>
>
>

Reply via email to