membrane

2021-07-24T11:44:26.028Z

Is refreshing lantern every 500 ms related to performance issues? 2 frames per second makes my eyes bleed.

phronmophobic 2021-07-24T13:26:59.032600Z

@huxley, lanterna should refresh immediately after every event. the 500ms timeout is solely to make sure the UI updates when the view function updates during live coding. Are you updating the view/state outside of keyboard/mouse events? If so, there’s a way to force a refresh that I can document.

2021-07-24T13:27:49.032800Z

For now, I'm only hacking the todo app you created

2021-07-24T13:28:46.033300Z

and it's really cool, simple and fun and the only drawback is the screen flickering

2021-07-24T13:29:25.034300Z

maybe it's just a lanterna problem?

phronmophobic 2021-07-24T13:31:59.036100Z

I’ve noticed the flickering and not sure exactly why. I thought lanterna was supposed to be double buffering and just updating parts of the screen that change. I’ll take a closer look. It’s definitely possible that I’m using their api sub optimally.

2021-07-24T13:33:02.036400Z

It's still awesome

phronmophobic 2021-07-24T20:02:46.038700Z

@huxley, turns out lanterna was refreshing the whole screen every time instead of just updating the parts of the screen that changed 🤣 Such a small change, but such a big improvement: https://github.com/phronmophobic/membrane/commit/a566b3111d81ad03b5196fda54e05f20a9305ea4 Thanks for reminding me!

phronmophobic 2021-07-24T20:03:56.039100Z

I'll make new release today or tomorrow