Commit Graph

58 Commits

Author SHA1 Message Date
Toby Zerner
066f9df18f Tweak user bio editing styles 2015-03-17 17:01:19 +10:30
Toby Zerner
f3fab617da Extract user bio into its own component 2015-03-12 12:10:58 +10:30
Toby Zerner
2fc562e8d1 Implement user hover cards and basic profile pages 2015-03-12 10:40:03 +10:30
Toby Zerner
9891e5af18 Fix user dropdown links 2015-03-12 10:39:40 +10:30
Toby Zerner
64b6698791 Fix scrubber height adjustment 2015-03-05 12:34:42 +10:30
Toby Zerner
40b55fbc6f Add badges API + styles for discussions and users 2015-03-05 12:07:16 +10:30
Toby Zerner
98476757ae Initialize item-lists on init event; allow items to be hidden 2015-03-05 12:06:40 +10:30
Toby Zerner
0759433ac0 Show permalink as a link on touch devices 2015-03-04 12:27:43 +10:30
Toby Zerner
7b47067d0f Wrong way around 2015-03-04 10:24:27 +10:30
Toby Zerner
56af6d881d Fix regression with scrubber mouse release 2015-03-04 09:59:14 +10:30
Toby Zerner
51af1d6e08 Fix scrubber on mobile 2015-03-04 09:50:36 +10:30
Toby Zerner
1d6616a419 Responsive design baby!
Mobile responsive design with a very native feel, all in pure CSS (no
templating differences between versions — even though some things are
in very different positions.)

I’ve been working on this whole thing in my head for a while now,
planning out how certain components will be laid out on the mobile
version, and how to reason about them in the templates so that a
substantially different layout can still be achieved by only using CSS.
Today I finally wrote the CSS and it’s come together pretty damn
perfectly.

Still to come:
- Swiping left or right on discussions to reveal controls
- Tablet version
2015-03-03 20:30:52 +10:30
Toby Zerner
c2c731f6a6 Render deleted users better 2015-02-26 12:47:50 +10:30
Toby Zerner
e7b93642b2 Missed some create→extend changes 2015-02-26 12:47:04 +10:30
Toby Zerner
8683025ef6 Use component prototypes instead of instances
This means the component instance is created in the template, meaning
properties can be overridden in the view helper. It also just makes
more sense - a view instance doesn’t need to exist until it is rendered
in the template.
2015-02-26 09:43:53 +10:30
Toby Zerner
076be26001 Remove unused template 2015-02-25 15:32:21 +10:30
Toby Zerner
80cc910175 Add styles for post footer/actions
Will be used by extensions
2015-02-13 22:03:34 +10:30
Toby Zerner
82b1107db6 Fix logout action 2015-02-13 11:47:58 +10:30
Toby Zerner
011ae3603e Implement "renamed" posts
Record when the discussion was renamed, from what, and by whom.
Information is stored in the `content` field as a serialised JSON
object because proper polymorphism will be too difficult with Ember
Data and especially when extensions try to add new post types.
2015-02-13 10:23:38 +10:30
Toby Zerner
fa3523ac74 Remove the go to top button
It’s not particularly useful when there are fixed elements all over the
page (header, sidebar)
2015-02-13 09:46:22 +10:30
Toby Zerner
639e86cf4e Fix mark as read bug 2015-02-12 15:18:26 +10:30
Toby Zerner
1a11194ca8 Helper method for adding menu separators 2015-02-12 15:16:15 +10:30
Toby Zerner
2bd5471699 Implement discussion deletion 2015-02-12 14:35:40 +10:30
Toby Zerner
36787bcf45 Implement hard deletion and rename soft delete to hide 2015-02-12 14:35:24 +10:30
Toby Zerner
ffef6af403 Fix up bug with the way we hide list items
If we use an #unless condition, then when the view is removed from the
template, it is destroyed, and cannot be inserted again. So we’ll just
keep the item there the whole time, and toggle its visibility with CSS.
2015-02-10 19:55:22 +10:30
Toby Zerner
c28307903b Upgrade to Ember 1.11-beta.1
HTMLBars goodness! Since there was some breakage and a lot of fiddling
around to get some things working, I took this opportunity to do a big
cleanup of the whole Ember app. I accidentally worked on some new
features too :3

Note that the app is still broken right now, pending on
https://github.com/emberjs/ember.js/issues/10401

Cleanup:
- Restructuring of components
- Consolidation of some stuff into mixins, cleanup of some APIs that
will be public
- Change all instances of .property() / .observes() / .on() to
Ember.computed() / Ember.observer() / Ember.on() respectively (I think
it is more readable)
- More comments
- Start conforming to a code style (2 spaces for indentation)

New features:
- Post hiding/restoring
- Mark individual discussions as read by clicking
- Clicking on a read discussion jumps to the end
- Mark all discussions as read
- Progressively mark the discussion as read as the page is scrolled
- Unordered list post formatting
- Post permalink popup

Demo once that Ember regression is fixed!
2015-02-10 18:05:40 +10:30
Toby Zerner
6c3debc79b Fix jumpy downward post loading 2015-02-08 15:58:53 +10:30
Toby Zerner
dc6a8bf08b Fix scrubber times 2015-02-08 15:58:37 +10:30
Toby Zerner
7863f0114c Make post types/components more flexible 2015-02-08 15:56:44 +10:30
Toby Zerner
59964e3b22 Implement post editing 2015-02-08 15:55:33 +10:30
Toby Zerner
28d213d868 Implement discussion composition and creation 2015-02-06 14:07:15 +10:30
Toby Zerner
abd3aa2e1a Composer and replying tweaks/bug-fixes 2015-02-06 14:06:22 +10:30
Toby Zerner
e6135d60b2 It's a component, not a view! 2015-02-06 14:03:35 +10:30
Toby Zerner
46ed231c54 Clean up scrolling code 2015-02-06 12:21:24 +10:30
Toby Zerner
9ddc622929 Refactor index pane
So that it only loads when needed, and caches results so things are
nice and snappy
2015-02-06 10:32:45 +10:30
Toby Zerner
0365ae6c71 Load discussion and posts with one request
Speeds things up a heap.
Also fix a whole bunch of bugs with the post stream.
2015-02-06 10:30:38 +10:30
Toby Zerner
bc3aa449e7 Make discussion count jump to last when read 2015-02-03 19:06:50 +10:30
Toby Zerner
d2ef15455e Fix broken tooltip in index pane 2015-02-03 18:41:54 +10:30
Toby Zerner
0552cae1ab Add alert messages 2015-02-03 17:02:46 +10:30
Toby Zerner
6544052da6 Clean up/refactor composer, add escape hotkey 2015-02-03 16:59:53 +10:30
Toby Zerner
12b0418eb7 Improve post composer + replying
- Make it modular so that different entry points can show different
things and respond differently (reply, new discussion, edit post)
- Resizable
- Fullscreen
- Confirm on close
2015-02-02 16:57:59 +10:30
Toby Zerner
6568d7d269 Clean up post stream 2015-02-02 16:55:22 +10:30
Toby Zerner
5edc3eba83 Improve "jump to last" scrolling behaviour 2015-01-30 13:05:42 +10:30
Toby Zerner
12622e6c28 Work on composer, early implementation of replying 2015-01-30 12:22:19 +10:30
Toby Zerner
5385c79a2b Stop loading spinner from appearing at the top 2015-01-30 12:13:44 +10:30
Toby Zerner
d43db32698 Make welcome-hero close into an action 2015-01-30 12:13:06 +10:30
Toby Zerner
9c02ad518b Fix bug when dragging the scrubber 2015-01-26 11:58:49 +10:30
Toby Zerner
1f23cbaf20 Allow custom icon HTML in dropdown-button
Also rename title to label
2015-01-23 15:22:58 +10:30
Toby Zerner
df7da9338d Fix JSHint errors 2015-01-21 14:29:00 +10:30
Toby Zerner
74e80ea2df Implement redesign, refactor everything
- Write CSS for everything, update templates.
- Refactor discussion view. Stream is split into two components
(content and scrubber) which have their own responsibilities.
- Extract pane functionality into a mixin.
- Implement global “back button” system. You give a “paneable” target
to the application controller, the back button will modulate its
pane-related properties as necessary, and call an action when the
button is clicked.
- Extract welcome-hero into its own component.
- Lots of other general improvements/refactoring. The code is quite
well-commented so take a look!
2015-01-16 17:26:18 +10:30