Commit graph

23 commits

Author SHA1 Message Date
Tommy Chow
47894f4746 Fix message buffer behavior (#154) 2022-07-27 16:25:34 -04:00
Tommy Chow
932412b75f Optimize chat (#154)
Optimized the chat so that resuming PiP does not cause stutters.

This new implementation makes it so that only the latest (100) messages are
rendered at any given time, rather than every single one.

Once autoscroll is disabled and we scroll up in chat, the most recent
messages will be added to a buffer to prevent shifting.

Essentially, I've made it so that the default chat shows only the (100)
most recent messages. When you want to scroll back, the chat will
silently switch to the version with the last (10000) messages, giving
the best of both worlds in performance and scrollback history.
2022-07-26 23:23:53 -04:00
Tommy Chow
bb0b24e530 Add option to launch links externally (#113) 2022-05-22 21:14:42 -04:00
Tommy Chow
9b88463d39 Upgrade packages & apply new lints (#113) 2022-05-12 04:58:03 -04:00
Tommy Chow
6191624d44
Fix certain links not launching on Android (#108) 2022-04-08 22:57:21 -04:00
tommyxchow
254968a2d6 Improve tooltips for zero-width emotes 2022-03-30 16:09:35 -04:00
tommyxchow
9cd02b75d9 Fix improper width on certain emotes without size 2022-03-28 17:59:52 -04:00
Tommy Chow
4a65da68a7
Apply emote sizes from FFZ/7TV APIs to chat and emote menu (#96)
* Apply emote heights from API in chat (#95)

* Apply emote widths from API in chat (#95)

* Apply emote sizes from API in emote menu (#95)
2022-03-28 02:48:32 -04:00
Tommy Chow
8ce8005868 Tweak emoji sizes & fix tooltip for zero-width 2022-03-20 01:08:14 -04:00
Tommy Chow
00972e13cd Fix twitch emotes tooltips 2022-02-03 21:43:59 -05:00
tommyxchow
543a0ec5c4 Tweak textfield border radius 2022-01-16 23:48:34 -05:00
tommyxchow
abe8d4dcd0 Change color parser to be slightly more efficient 2022-01-16 23:41:19 -05:00
tommyxchow
eef8c57948 Add tooltip to zero-width & documentation 2022-01-16 14:19:08 -05:00
tommyxchow
1a53101047 Add some documentation 2022-01-16 12:39:20 -05:00
tommyxchow
796559b51b Fix settings not updating chat & refactor IRC 2021-12-15 23:54:06 -05:00
tommyxchow
04f0ef74d3 Add status notices to chat, pause & resume test 2021-12-13 02:19:06 -05:00
tommyxchow
81c18feb45 Add hide blocked users in chat (#55)
Blocked users will be hidden from chat only if the logged in user is not
a mod or not the channel owner.
2021-12-11 00:45:44 -05:00
tommyxchow
9875b6ed59 Implement handling of NOTICE command (#44) 2021-11-23 00:47:21 -05:00
tommyxchow
2df2326f73 Revert 05df4e8, comment additions & fixes
The previously removed requests in 05df4e8 were actually required for
rendering emotes whenever the user themself sends a message.
2021-11-02 03:51:34 -04:00
tommyxchow
05df4e8d2f Minor comment additions and fixes
Removed the redundant request for Twitch global and channel emotes in getAssets().

Since these emotes will be processed anyways when generating the span, there's no point in wasting bandwidth to fetch and store them.
2021-10-26 01:48:46 -04:00
tommyxchow
1afc979139 Add command enum, refactor chat store
- Added enum for IRC tag command for slightly better comparisons
- Moved span portion of renderMessage to its own function in irc_api.dart
- Moved message remove and end scroll to seperate function action
- Fixed emote tags applying to all users
2021-10-24 03:53:08 -04:00
tommyxchow
26e7a746db Fix handling of ROOMSTATE changes 2021-10-23 00:25:22 -04:00
tommyxchow
bb74b7bd6e Refactor IRC API
- Moved parse method to factory constructor in IRCMessage for better readability
- Renamed irc_message.dart to irc.dart to include other irc-related models
- Added ROOMSTATE model
- Moved addMessage functionality to chat store
2021-10-22 02:34:23 -04:00