#stage-discussion
1 messages · Page 6 of 1
of possible tokens
splitting tokens
then recombining
into emote tokens
and text tokens
unhinged
so yeah
now you know
why when you copy paste 10 emotes
in the native chatbox
the site literally freezes
for 2 seconds
i will probably try
at some point
to not do it in vue
wont be the end of the world
actually will simplify
some parts
i still have a good part of that stashed
atleast like chatbox replacement and stuff
so it looks the same and interacts the same but is actually custom rendered
but just the rendering is what i didnt implement because it bugged half way through
hmm yeah
so its basically just a regular non wsywg chatbox
the only problem i see is that twitch implement a shit ton of features
and change everything
and have 10 billion experiments
yeah
we will build in a way
to remotely
disable experiments
it just needs to be that way
that's good
^
cant do otherwise
it takes days to get an extension reviewed by google
if twitch changes something and extension breaks,
well
👏
the discord gets some newfound activity

We can insert our own emotes into slate i believe
no we cant not well
ive done this already
we can inject token names
but not images
they are hardcoded
but we also have to add an observer to hook the renderer
in a context locked
place
and to do what you just said
requires hooking the funcs
that run 100s of times
I got it working on an old branch
so i scrapped it
But yea, was bad
yes you can mutation observe but that is very bad
the current input box code does hook slate tho
i added types
for all the slate funcs
it restores history in slate leaf form
They actually dont care what you add
no slate doesnt yeah
They just rerender on any update

how do you say dom outloud
it always feels weird for me to say it the way i'm inclined to
i usually end up saying "object model"
or "document"
but not DOM
just dom
I think settings should be merged once i have the other base types ready
So other branches can begin to use it
All the settings will just be unsorted, which is fine
that's pretty hot
especially if you'll make the close button smaller
and the description text darker
this is my mockup i made earlier 
i approve
beside the small thing at the bottom left though
i don't really see why you'd need that
the login thingy?
yeah
could be useful for managing your sets through the extension etc
or for data sync
or cosmetics

i can tell by how you're talking
that you didn't think of any purpose and just think it looks nice
but actually
being able to control paints and badges through the extension is a really good idea
i wonder
if hijacking the chat identity thing from twitch itself would be better for that though
displaying all the paints in that tiny window would be kinda dank
hmm
ok lets not hijack too much
i bet melon wants to die with every new thing he has to hijack

You will be able to "log in" to the extension with you seventv account
And seventv emote links will be resolved to embeds directly in chat
So you can get a preview and click add withoug having to leave the chat

that's good
Also custom commands so you can do /add /alias /remove ... directly from chat
Those are actually working rn in the old extension
But we dont have a non jank way to authorize the old extension, so not released
nah im dank 
Was just wondering if you wanted to do some of the different setting types 
Most of them will probably be quite bland for the first release
i made a website for myself once and its super scuffed 
i dont have the patience for this shit
you do need that tho
because excellify wants to add mini controls
so you can add and remove emotes on site
needs auth state for that
probably wont be a login log out thing
because it will probably pull from your state on 7tv.app I think
also apu
7tv.app will become obsolete 
7tv mobile app in 2024
companies creating mobile apps with the same features they have in their website instead of fixing the bugs route 
in 2024 7tv is owned by tencent

toe and troy are a gay couple retired in new zealand
and kathy is there too doing... something
Aware genshit
anatole and not troy?
troy is searching in the 7th layer of the dark web for femboy streamers
less features and you still need to use the website half the time*
FFZ doesn't have the streamer's PFP
anson show your ffz logo variant
I forgot it at home. Sorry class
The asymmetrical version looks super ugly at this size. I can probably fix it though
I'm not gonna show it
but here's the symmetrical version in the mean time:
Yeah I gotta fix some more stuff
Hey anyone have a clue on how you can do something like this
The ffz one dosnt have a pfp because they dont provide one when querying
are ffz settings supposed to not work with the new chat

like for example if i was to put chat line separators
7tv overrides the chat, so yes 
is there a way to remove the moderation slider
Will be, once settings are implemented
Im just trying to see how it is compared to native chat which i usually mod on
theres been an annoying delay/lag for the broadcaster/mods on basically all large channels
That would be helpful for having a standard list of non transparent colors, so you can make any color transparent if you want to

That is scss only right?
it's compatible in the sense that it doesnt crash when ffz is on
i see

but I cannot use ffz settings while on the chat itself

or moreso, patch chat messages
If you open the emote menu before 7TV loads, the native twitch emote menu will open and there's no way to close it
Sounds like a skill issue
the skill issue is not closing it fast enough
if you close it before 7tv finishes loading, then it's fine
It should close if you open the bits menu or something i believe
ah I didn't try that
highlight looks nice
still, 7TV should probably close it if it's open
predictions/pinned messages and other features with the chat banner don't seem to lag the chat as a mod using the extension anymore
that would make sense as it's not using react anymore
so its not rerendering 10,000 times a second
which inherently boosts performance by a factor of 700
or so

mathematically correct estimation
7tv will take over for that reason alone
im pretty confident this new extension will be liked
yes it will fuck with your other extensions
however
do you really need anyone else

is this normal
Wtf
happens when I ":" and then type an emote
thats probably a clash with ffz
probably
both are inserting emotes in the autocomplete box i guess
@odd bone
someone @'ed me in the chat and i just watched their chat line go by
and i tried to @ them back and the user never appeared
yeah thats known its bc we artificially block the native twitch msg handlers
I pinged you
** ** ** ** ** ** ** **
and im assuming theres no chat pause yet
how tf do you pause the chat
MODS
todo: implement shift to pause
Yeah
thats a twitch issue 
its twitch
but yea probs just twitch
it only started happening recently
makes modding on native chat impossible
can't even make a prediction or pin a message on native chat because of how much it lags
i believe its also caused by an experiment
here's the asymmetrical version of the low-poly ffz logo
because the only two people ive heard of this happening to
I don't have experiments on though
is you and xqc

We do a little experimenting
it doesnt matter if you have experiments on or not, whatever that means
twitch runs experiments
whether you like it or not
and you will be used for their experiments
same reason the chat input box literally rerenders itself 500 times for every character you type
twitch web engineers dont actually know what they are doing
React PepeAgony
yeah but its just annoying to me who's always modded on native + ffz and all of a sudden like 1 month ago this lag bs starts
i thought it was cause they added shield mode tbh
cause it never had this issue before
its only if you're a mod/broadcaster on a large channel
if i go view other chats while im not a mod, theres nothing wrong with native chat
i'll look at adding mitigation for duplicate modstate messages
so that twitch fuckery is artificially culled
Just render them natively
it happens in general anyway
nah we need to handle those as well
otherwise no emotes
theres a lot of diff messages types we have to build UI for
other than the customizability that ffz has which is why i used that over chatterino, the extension runs really well
natively as in vue i meant 
like rewards, announcements, subs
oh, ye
i actually yoinked the icons twitch uses for those already
just need to build the visuals and support the message type
we're looking to reach similar levels of customizability by the time it's out to live 
yoink them like kick did
well yeah, except its just for reusing them on twitch's own site
sounds good
would love to use the extension with the way it runs
so its not actually stealing the icons i just needed to import them in our vue app to rebuild rendering 
emote menu looks
imo
There is an unmerged pr that makes it look better
although this big ass grandma font could be smaller
its gonna be good, everyones been doing really good work on this
How though
excellify with the UI work (bubu with design mockups), melon who built the extensive hooks to cleanly interface twitch's framework and ive been mostly working out the background stuff like dev flow, core functionality etc
normally feelsstrongman should show on both cases
Oh right
im too lazy to read chat
what rules does twitch use to determine startpoints?
@unkempt hill i think you implemented colon complete, might want to look at this
my attention span is kinda washed rn
autocomplete is just twitchs native :complete right?
Anyways um
well for mine i have ffz's
I usually use the inline tab complete from ffz
yeah thats what i used in the recording above
the one thing I iss when using the new app over ffz is the larger emote on hover. def one thing I'd like to see in the future
will probably have some kind of form during the beta for what people want added the most
ffz has a ton of features though i think only a fraction of them are used
also we will actually sync the ffz settings
so any existing config from ffz, if we support it, will be auto-set w/ the 7tv extension

replacing the entire chat is quite an aggressive move however i now have decent confidence people will see the benefits of this, and appreciate it instead of getting upset a couple of their settings no longer works
it is unfortunately the only real good way to fix the issues with native chat on twitch
the default is just so bad nothing can save it
so far most people dont even seem to notice the chat even changes at all (at first glance), even though internally its completely different
huge W! lots of FFZ users spent tons of time customizing so many things to make twitch exactly how they want it. this is a great way to bring on even the power users
we'll do what is best for users
Like if you're a mod in a channel and you get all of the past history but there is no separation between the old and the new messages

And all the ffz settings that dont affect the chat should still work like normal
there'll be complaints yea, but when it's out to the stable branch , if people have issues then id say they can just not use the extension and return to the laggy default chat
which lets be honest
when people experience this
they are not gonna want to go back to default
we'll work to support as many of the usual customizations as possible though it's impossible to support them all by the time frame we'd like to go live
as long as the base things work i think that'd be fine
my wide chat box isn't affected by the extension
my mod icons are though since they're through ffz
same with the split chat lines
i do wonder
if this is going to motivate twitch to improve their chat's performance
when they realize
most of the page's fucking cpu usage
is the chat
memory too
for the last 3 years that i've used Native + FFZ, I haven't had a problem with the native chat until recently
for that bug shit
native chat uses a shit ton of mem
Are there profilers for the web
Nah they will implement another useless feature
ye there is a profiler in devtools
Like with valgrind and shit
Where you can see which function takes the most cpu time
nah twitch either A) likes to pretend they dont make money or B) is operating at a net loss because they have 1200 employees who sit on their ass and 98% of them dont do shit
and the 2% that do shit write shitty code
but because they do the job they roll with it.
But yeah
"kinda" the same shit with twitter. "omg musk fires like 90% of the staff sites gonna go down next week"
its still going because the people who stayed and still do work, aint shit changed for them
It's surprising how none of the twitch staff give a shit about how slow the website is
since when do they use emotes
Capitals
Ffz does this too
Can we break the 40MB js bundle
😂 💢
Into?
yeah it is @inner sorrel
Something more fucking sane
i told you we influence them
they don't use them all the time just sometimes
they're learning


If you'd to recreate the website from scratch
Yeah
There's like too many chunks
That's a rumor I've heard
On twitch
Of the whole thing taking up 40 mb
Nah they go overkill as fuck
twitch kinda chunky
Kill me
But exaggerating

theres a point where chunking is a detriment
its nice to have small files
but
then each file becomes a request
which
if a user is not using HTTP/2
Http/3 
means it's 6 concurrent requests max
the kino der toten zombies song was playing and they were typing that @inner sorrel 
so they fetch 6 files
then must wait
so it ends up being slower than a larger bundle
chunking is actually kinda to do right
it needs to make sense
Yeah idk
you cant just start chunking everything and say yep thats better "because"
It only makes sense to chunk where there will be too much unran code

how quickly i went from "nah man aint no way we can just replace the twitch chat, it would mean people would complain every time twitch adds new useless fluff"
to
"holy fuck twitch native chat is so fucking bad lets get rid of it so we can singlehandedly save millions of dollars in electricity cost from people's cpus being pinned to 100% by juicers spamming a funny skeleton attached to spinning ceiling fan in chat"
Aware
Aware
I kinda like a little smoth scroll
old twitch was actually not that bad
Wtf no that's so bad I can't even read that
though from a dev's standpoint it was probs annoying asf to work with after a while
I have it like that in my chatterino
It makes message tracking easier for my eyes
im fine with this as a default-off config option
How
Idk
Also, it only calls getBoundingClientRect once it finishes the scroll @unkempt hill
It works like the instant scroll if the duration is 0
So that will just be default
If you should move that code
Into an expose on uiscrollable
For utility
Make it usable elsewhere
That sounds like a job for melon guy
Because behavior smooth is just useless on chrome
oh thats a banger

I still want windows XP theme chat
@daring gale I want to describe my impression and wishes in one message, based on the current build of the extension (dev3). Some points may probably be extremely individual for me, but I tried to take into account the experience for the rest of the community.
Essential Issues:
- Twitch emotes are not displayed in the menu:
a. Follower emotes (displayed if there is no sub)
b. tier 2 and 3 emotes
c. Animated emotes
d. Twitch unlocked event emotes without their own category
- Emotesare not displayed in pinned messages, ads, and presentation messages
- autofill of nicknames via @ does not work
- sometimes mentioning me in messages does not display the nickname in the message
- sometimes your own message in the chat is displayed with a delay (about 2 seconds)
Secondary Issues:
- Timestamps for new messages are not displayed
- The user card does not open when clicking on the nickname
- Instead of the slider mod, the old messages and new introduction messages display standard moderation buttons
Cosmetic remarks:
- The font of the hints of the names of emotes is too big
- More information in the tips about emoticons when you hover over them in the chat (name, from where (7tv, bttv, ffz, twitch or subscriber channel dash *))
- It would be nice to add a mini icon above zero-width emotes in the menu
- In the twitch -> "channel_points" category, the twitch points icon would be better suited
- There is no steamer avatar in the ffz > "channel_emotes" category
What I liked:
- Search for emotes through the message input window when the emoticons menu is open
- Design and animation of the new menu as a whole
- Highlighting messages with a mention of the nickname
What I would like:
- A favorite feature or a category with frequently used emotes
- The ability to collapse individual categories (as it is done in ffz)
- It would be great to be able to sort emotes (by name or by date added). It would also probably be great if new emotes on the channel were displayed at the top of the category for some time (like discord, for example).
- The ability to open the emotes page on the extension site via ctrl+shift+lmb
PS: thank you for your work 

So that's what you were typing
yes 
yea it does that
oh
yeah it does it for every set of gifted subs
same with moderator actions
the lines go through the messages, but only like 25% of the time does it show which mod did it and for how long
damn
chat pausing in the new extension feels super nice
especially compared to native chat
its like chatterino level
new release when 
Also cheers don't show the amount
Something I missed switching to the new chat is knowing where twitch sub emote came from. Some emotes are interesting and I would like to know which channel sub give them.
it would be nice to bring back this popup
are they entirely missing or are they not animated
they're entirely missing but it has been mentioned before
missing
also how does clicking the icon works
it doesnt navigate me to the section all the way
requires few clicks to get to it
yeah
it's a chromium bug
where the smooth scrolling is fucked
it's probably getting removed
you mean smooth scrolling is removed
or the whole tab section is removed
smooth scrolling ofc


i assume not all twitch functionality is back yet?
like showing channel point redeem
@eternal iron @daring gale 
when did this change?
did it break or intentional
its not falling back to any native message types anymore in this build
giftsubs, point redeems
no not that type of error
its just treating everything as a basic message 
wether or not it even has a text content, like for giftsubs its just showing blank
Usercards as well 
@eternal iron now that the settings pr has been merged, is it time to port the colors and shit into App.vue 
the emote menu styling branch will have to be merged first though
or rebased
i guess
Hey treuks, - I just private messaged you 1 private reminder(s) - make sure to check them out!
Check where or not you think the emote menu looks fine now @finite monolith
uhh well
twitch is dying
zamn
ok
there are a few things i should fix first
but it looks good overall
well
i cant fucking see shit


dead streamer dead chat dead platform
ok
i actually cant test shit
twitch is down
yeah sure
uhhh @daring gale
you did this concurrent build thing
is this all the worker building gives you
because this feels wrong
? 
@eternal iron i see you added a blur to the set headers
Yea, that made it look good when using the same background color as the main window
it looks donk and transparent so please don't do it
look its like blurred but not at the same time
that's why i didn't add it
@shell schooner


ok
i adjusted the set header color so it looks nicer
the only thing i'm thinking of is that the currently selected tab color looks donk
but i can't think of what to replace it with
i tried making it look lighter instead
and it looks eh
@shell schooner need thoughts
good 
not sure if the tabs need to be visible if they are not highlighted tho
there
k cornhole prettier -w
i need to see how twitch does it
👍
this is bubus design process
see above
look at other design, make more round
add blur
add dropshadow
if it works it works
add gradient
rip bozo anyone with a branch that modified imports
also we are technically editing twitch so the style has to match
ok well
so it doesnt look out of place
Consider thinking of the colors as a more global theme, so all the 7tv stuff can be styled similarly
nah
light mode
its literally this but its grey
You can re add the drop shadow that twitch uses
i adjusted the size of the icons and put them in a container so they will scale properly now i guess
I think it looks good for the emote menu
why do we use the colored twitch logo?
it'd be neat tho
if we did actually use the colored one
when the user is in that section
oh true
box-shadow: var(--shadow-elevation-2);
From the emote menu on the chat
perhaps actually though
these tabs should just be replaced
that's pretty dank
with some other controls
it feels a bit redundant and weird
to have two tab systems
simoultaniously
on the same view
and just have the 7tv ffz and bttv channel emotes on the top of your emote selector
on the vertical one, maybe with a small gap
its gonna turn into a mess
seperating them
well i'd argue its kinda already a mess
how to I find this one emote i want
search
well first I have to go to the twitch tab
then i have to click the channel
and then i have to look through all of them
so thats already 3 clicks
worst case
today im gonna find an emote with no way to segregate them
I mean, we could still group by set type rather than provider
except this is not an argument
because your pointing to something
that will be exactly identical
And maybe twitch in its own tab, since that's still your emotes rather than the channel's
your current design doesnt fix this
im not sure what your point is
well what I'm saying is I think we should just drop the "tabs"
and put them all inline
if a channel uses origin feature will those sets be separated in the new emote menu or just grouped together
But 7tv, ffz, bttv can be changed to channel and global
yeah thats perhaps better
I just feel like its confusing
to have two grouping mechanisms
in the same spot
we're tabbing but also infinite scroll grouping but not the same spot?
what yall sayn
I think its weird that we have two tabbing mechanisms in the emote menu
the vertical one and the horizontal one
whats the second tabbing mechanism
I mean, there are tabs on the top
whats the second set of tabs
the channels
Those are not tabs tho
its really the same concept though
not really
just the a different presentation
i think its fine as is
just because they're linked doesnt make them different
we should persist the selected provider tab though
like most users are gonna care about the 7tv tab
not so much twitch or the rest
actually
just use <KeepAlive>
on the menu
that would work
does this look okay
i made the main tab bolder and the other tabs a little less pronounced
transparency removed?
You still see colors pretty well through it
remember to rebase from my latest commit btw if u modify any import its fucked
i made imports autosort
because ocd
What do you mean by keepalive btw?
it retains state of a component
it do be lookin fresh
keepalive never lets a component get destroyed
if its contents make it drop from the tree
it retains it in memory
until it gets readded
dunno if that will even work tho anatole
True, right now i just use a v-show instead
Which is not really that good
hmm guys
if its using a component hook it will probably make a new component per channel
should i prioritise twitch colors over custom colors or not
voiding keepalive
You can set a max @unkempt hill
max it to 1
yea
if channel switches it's reset
But did you mean that we should keepalive the entire emote menu or each tab?
v-show is just css visibility: hidden
yes
means all logic is still active
and keepalive is just vue vnode hidden
it cannot stop the logic
if it was able to it'd cause the components onunmount
to trigger
breaking everything
it does mean the component is effectively halted though
keepalive keeps the components in memory like they're still loaded
their own code will still run
they get a deactivate event
but like thats it
it's still a better way to do it
I would assume it means that it dosnt react to reactive variable updates
i mean i see nothing wrong with using visibilty changes
youtube does this for alot of its ui
it just sets visibility hidden
but never removes it
put a reactive variable, do a settimeout, set a watch, close menu, see if it triggers
it shouldnt trigger
though it will with v-show
this means
anytime we change the emotemap right now
the emote menu, even if closed, is rerendering
and costing in performance
ok yeah that is true
i still dont really like keepalive at all but yeah it should be unmounted
in some way
keepalive or not
residential sleeper
i dont see whats wrong with keepalive tho
like it can be bad if used incorrectly
but this is literally one case where the use is valid
i mean yeah
but I just dont like the concept
of keeping all this unneccissary state
in memory
like its keeping too much
just feels like a waste to me
when you could just save the active tab
i mean, alternatively we could also just store the active tab
and scroll loc
and scroll height
aintnoway

but then a bunch of logic in the menu component has to run again
each time you open
yeah that'd be sick, as long as they all look good in both light and dark mode still
true but also like your saving every single chatemote and every single dom node and vue vnode
and
likelyhood is
it will have to rerender again anyways the next time you open it unless it was like 5 minutes ago
people who dont use the emote menu at all will probably only open it to look at something specific
which will probably not be the thing
that they were looking at before
so keeping all of those emotes in memory just feels like a waste when they're just gonna scroll away or switch tabs
immediately
what do we do right now
nothing
do we just render everything?
ux > everything 
no i mean like do we have any intersection observers or anything intelligent
then realistically its probably not that big of a deal
I dont think vue recalculates the computed() values if v-show is false
since like i was saying above
the chances that someone opens the menu
and the emote they are looking for
is already there
are slim to none
they will probably move around or switch tabs, voiding the things that we kept anyways
So the menu dosnt refilter on emote changes when its not showing
that makes sense i guess
Also, is there a difference between visibility: hidden and display: none?
visibility hidden does too
so the element can still affect layout
i think your thinking of opacity 0
no , visibility keeps bounds
I think its fine to just use v-show for now
but I dont remember what the other is then
since it dosnt recalculate unless open
thats still keeping a lot of shit in the dom tho 
especially rendering it all even when most users dont need to open the menu
in dom vs non in dom doesnt really matter here i dont think
vue will keep these dom nodes around
i think
keepalive removes dom
no it detaches dom
the nodes stay alive while detatched
because vue is dom dependant
i beleive detatched dom nodes have identical overhead though
like for example you can load in images and such
without ever attaching it
and it will still delay graphics
same with canvas and other elements
so I imagine the browser makes no destinction
eshrug
lol
@eternal iron can we merge your pr yet?
fix/emote-menu-styling
then treuks' branch can be base-swapped to master
Treuks's is based on mine right?
ye
I just wanted to check if there are inconsistencies now with the highlight colors since he swapped some of them, but not all
Also, cant we just merge it into mine and rebase mine after?
ok sure
git update-index --assume-unchanged .env.dev 
i accidentally clicked a button that staged all of the files
and then i didn't see anything and pushed it

But i think anatole set the dev api to the live one in an unmerged branch
So wont have to change it locally
i reverted
that was in my massive commit


web workers 
it even tracks tab closures so it's able to unsubscribe from events of a given tab
Ill merge inn your pr now, but considering keeping mine up and updating the header with color for the selected tab
Not sure if im a fan of the selected tab being lighter since it different for the sidebar
Btw, is there gonna be a cd on cosmetics updates once the eventapi is in use instead?
@daring gale
wdym?
only if you didnt receive a given cosmetic before
So people will still have to refresh to see if ive changed it?
the event api fans out create events only if the given cosmetic hasnt already been dispatched previously
entitlements however always dispatch
So if i change paint the eventapi wont update my presence?
So people can change paint and it will update in chat without having to refresh?
ye
Thats why i was wondering if there was a cooldown
Might not be an issue i guess
Just make some code that swaps my paint every second
So it looks animated
i mean ofc theres gonna be a rate limit
but it prob doesnt need to be hours long like for emote sets
maybe like 3-4 changes an hour, enough to allow the user to change if they made a mistake
be able to change it like 3 times in 5 seconds and then lock it for a minute

oh yeah
thats better
"YOU ARE BEING RATELIMITED! Please decide on a paint"
did u guys see my strongly typed event listeners
for worker messaging
kinda wickedge
Think i glanced over it
You could eliminate "mistakes" completely by having a username preview before an "apply" button becomes available 
that would cost me a hot minute of actual work
I think wardrobe in the 7tv menu is gonna be poggers
It won’t fit








how to make good design'

