# Help us test the new header code!

**URL:** https://meta.discourse.org/t/help-us-test-the-new-header-code/43184
**Category:** Feature
**Tags:** performance
**Created:** [April 25, 2016, 3:26pm UTC](https://meta.discourse.org/t/help-us-test-the-new-header-code/43184 "2016-04-25T15:26:24Z")
**Posts on this page:** 1
**Showing post:** 63

<div class="post-metadata">

### Author: ![angus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/angus/32/341715_2.png) [@angus](https://meta.discourse.org/u/angus)
#### Post date: [May 6, 2016, 3:00pm UTC](https://meta.discourse.org/t/help-us-test-the-new-header-code/43184/63 "2016-05-06T15:00:07Z")

</div>

I’ve taken a first pass at updating Quick Messages to the new header logic

> [@Quick Messages Plugin](https://meta.discourse.org/t/quick-messages-plugin/39188/83):
>
> @Rodelio_Lagahit @meglio @marcospreviato Hey folks. I just committed the conversion to the widgetized header. This required some significant changes, so please let me know any issues you find. Cheers. There’s been a fair amount of discussion on this already (check above - I don’t have the link handy). Basically, Babble is a chat room. This plugin is messages (you can add multiple people to a message). This plugin is actually very similar to Facebook messages. Babble serves a different purpos…

@eviltrout Some issues / questions / thoughts:

1. Could you break out the `avatarImg` method from the post widget? It seems to be a useful general way to include avatars in widgets.

2. It’s a little inconvenient to add new menus to the header widget because the widget contents are [wrapped inside html in the render function](https://github.com/discourse/discourse/blob/master/app/assets/javascripts/discourse/widgets/header.js.es6#L182). I ended up adding the quick message menu itself as another list item after the quick message icon.

3. I’m wondering what the point of having widget events as separate from widget actions is? i.e. when would you use an event instead of an action?

4. Following your lead with the [`_notificationsChanged` function](https://github.com/discourse/discourse/blob/master/app/assets/javascripts/discourse/components/site-header.js.es6#L20), I put my observers for messages in the `site-header` component and then re-rendered all of the header widgets when the observer fires. This pattern doesn’t feel amazing. Thoughts on best practices in this kind of situation?

Cheers,

Angus

---

_[View the full topic](https://meta.discourse.org/t/help-us-test-the-new-header-code/43184)._
