This part needs further refactoring, but for now I just fixed log view to
teardown and setup things properly in all cases something changes (when element
is inserted or removed, but also when log object is changed).
Layout handling in travis-web was implemented in a dynamic way, so we
could change a main layout from any of the routes. This needed a
`rerender` call which was making things harder and needed some hacks. It
also broke a few transitions when upgrading to 1.8.1.
After examining our usage of layouts I've noticed that we don't need to
change the entire layout dynamically and instead we can set layout on
root routes (like "index", "profile" and other root routes).
After upgrading ember to 1.8.1 tests pass, but I found a few cases where
things break (for example when navigating between certain routes). I'm
reverting for now.
This reverts commit fa5e9179af, reversing
changes made to 978c887123.
When I started working on settings I had a bit different vision on tabs
and I've added that code prematurely. It seems that the best way to go
is to create separate routes and controllers for each tab - that way we
can just rely on Ember.js for customizing, not some custom code in tabs
helpers etc.
This commit changes a way we load accounts for profile view:
* instead of using several views with profile controllers, always use
one view to render hooks. This is achieved by redirecting to
individual account page from main profile page (for example when going
into /profile as a user drogus, the effective address will be
/profile/drogus)
* instead of using observers to wait for accounts to load I just use
promise in ProfileRoute#model which effectively ensures that accounts
are loaded at the time we want to select an individual account
* profile controller is split into profile and account controller
* don't use __container__
* register it as a factory on container and inject into routes and
controller
* avoid afterSignIn errors by checking on hooksTarget, ApplicationRoute
should register itself as a hooksTarget
* keep user info on auth
When a lot of pusher events come with build updates, lastBuildDidChange
can run quite frequently. We can avoid that by using scheduleOnce, which
will ensure that only the last invocation of lastBuildDidChange will be
run for a given runloop run.
When first sync template is displayed, user usually doesn't have any
repos, which also triggers rendering of getting started template. The
fix for this is to handle the action to render getting started page on
first sync and do nothing in such case.
I also added a test to ensure that it works correctly.