There is a bug in WeeChat when hdata is null, which happens when the
hotlist is empty (meaning all buffers are read). Our websocket callback
machinery expects every command with id to return data, so this code in
current versions of WeeChat will lead to a slow leak. But I think lots
of things in our code will do this already so I'm not entirely sure it's
too problematic to let this patch go by.
We could use infolists instead of hdata, but that is cumbersome to parse
and less performant for WeeChat, and sends more data over the wire.
I propose we make a separate attempt at cleaning up the callbacks. Since
we store time on them we could have a cleanuptask that looks through
them and deletes old callbacks. Maybe @dcormier could have a look?
The Asciinema cast plugin regex was faulty. Casts can have /[a-z]/ characters, not only digits /\d)
Here is a test cast for you to run: https://asciinema.org/a/29qfl1dwsgd25o91nfv3dvvbn
(squashed two commits --@lorenzhs)
Functionality is now replaced by changing
weechat's buffer_time_format. e.g. 24h time:
/set weechat.look.buffer_time_format %H:%M
Supported time formats are 12h and 24h,
with seconds or no seconds.
after #708 was merged, if a date change message is
injected underneath the read marker the read
marker would be one line too low. Now, the read
marker will adjust properly when a date change
message is injected above and below the read
marker.
thanks lorenzhs for spotting that
If Service Workers are available use them to display notifications
instead of the old way of creating notifications directly.
This has the side effect that it works nicely on chrome on android which
the old method does not.
This also paves the way to set up GCM for push notification in the
future which can give us push notifications without having the app running.
This patch can be improved in the future to get existing notifications
and change the message instead of just adding more and more
notifications.
See: ServiceWorkerRegistration.getNotifications() and
ServiceWorkerRegistration.update() from
https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration