Commit Graph

280 Commits (c9f5c90047e0140da31050d97d0f831bf50858c5)

Author SHA1 Message Date
Matthew Hodgson c7ffb59374 click on nicks to insert them into the MessageComposer 2016-03-17 15:35:23 +00:00
Matthew Hodgson 3326a50c4b hopefully stop weird flickering bugs when pressing delete or zero-height textareas... 2016-03-17 02:17:17 +00:00
Matthew Hodgson 87e1bc2f07 fix zero-length /me 2016-03-16 19:52:43 +00:00
David Baker 880ae0f3fa Fix typo 2016-01-18 14:25:23 +00:00
David Baker 52de322789 Change history scolling so it doesn't interfere with moving between lines, even when those lines are wrapped rather than hard line breaks. 2016-01-15 18:31:07 +00:00
Kegan Dougal b67131f0c8 Add a Command class; add Entry.getFillText()
getFillText() serves to decouple the text displayed in the auto-complete list
via getText() and the text actually filled into the box via getFillText(). This
allows us to display command + args on the list but only fill the command part.

A Command class has been added to provide some structure when extracting the
command name and args. Manually tested and it works.
2016-01-14 14:39:58 +00:00
Richard van der Hoff cd52549713 s/function/func/ in PropTypes declarations 2016-01-12 13:11:53 +00:00
Richard van der Hoff 243b2e4587 Make the scrollpanel update itself correctly on video resize.
When we first get video, the video component will resize itself. This will
cause the page to be reflowed, but that doesn't trigger an update on the gemini
scrollbar. We therefore need to force an update on the messagepanel. Implement
this by providing an onResize property on the CallView component.

We need to do the same when we change the maxHeight on the video panel.

The same applies to resizing of the MessageComposer. That was previously
handled with a fugly roomView.forceUpdate() from MessageComposer - make it use
the same mechanism.

Finally: the messageComposer is at least 70 pixels, and up to 100 pixels high -
not 36. Fix the auxPanelMaxHeight calculation - and use a static constant
rather than hardcoding the number to avoid this happening again.
2016-01-11 15:28:59 +00:00
Matthew Hodgson 8170288acb Merge pull request #77 from matrix-org/matthew/dynamic-svg
Make SVGs and CSS dynamically recolourable
2016-01-07 11:42:30 +00:00
Matthew Hodgson 0772f50fab update copyright for 2016 2016-01-07 04:06:52 +00:00
Matthew Hodgson f499c60b12 sundry PR feedback 2016-01-06 02:29:08 +00:00
Matthew Hodgson 509ea7c4f3 factor out tintable SVGs into their own component, and use plain DOM onload rather than react synthetic events 2016-01-06 02:11:07 +00:00
Matthew Hodgson 001dc8612b support fixing up dynamically loaded SVGs 2016-01-05 03:34:52 +00:00
Matthew Hodgson 555abdae30 wire up Tinter.js 2016-01-05 00:46:52 +00:00
Matthew Hodgson 3009da0b39 move title attributes to the div 2016-01-03 22:34:56 +00:00
Matthew Hodgson 4f915d622e switch SVGs from imgs to objects 2016-01-03 22:30:52 +00:00
Kegan Dougal 460f68caef Move RoomMember[] -> MemberEntry[] conversion somewhere sensible
This is required for automatically entering tab-complete mode because
onKeyDown is NOT called in that case, so we need to make sure to have a
membership list hanging around.
2015-12-22 15:38:23 +00:00
Kegan Dougal a20cabb06f Merge branch 'develop' into kegan/tab-complete 2015-12-22 15:16:39 +00:00
Kegan Dougal e541ddb060 Auto-complete clicked suggestions 2015-12-22 11:14:36 +00:00
Kegan Dougal 0dbb8d5294 Use MemberAvatar to generate image JSX. Split out entries from tab-complete logic 2015-12-22 10:00:30 +00:00
Matthew Hodgson ea2405ab3a escape double-slash commands 2015-12-22 00:57:57 +00:00
Kegan Dougal ba63b5dfff Add image URLs to TabComplete.Entry objects 2015-12-21 17:28:04 +00:00
Kegan Dougal 41d4c1d14e Add TabComplete.Entry so we can render images AND text(!) - Add peek() option, all broken. 2015-12-21 14:34:25 +00:00
Kegan Dougal 26dc3cc553 Push up instantiation of TabComplete to RoomView
RoomView is the parent component which creates MessageComposer AND the status
bar. By making RoomView instantiate TabComplete we can scope instances
correctly rather than relying on singleton behaviour through dispatches. This
also makes communication between status bar and the MessageComposer infinitely
easier since they are now sharing the same TabComplete object.
2015-12-21 10:59:10 +00:00
Kegan Dougal c6d02b2c26 Move tab-complete logic out from MessageComposer
Moved to a `TabComplete` class. Make it more generic (list of strings rather
than RoomMembers) and sort the member list by last_active_ago. Everything still
seems to work.
2015-12-21 10:38:37 +00:00
Matthew Hodgson d979a028a5 position the inbound call box correctly, and fix various issues with when the video preview and callview are shown 2015-12-17 02:49:09 +00:00
Matthew Hodgson 39c628d4a1 implement the 'correct' voip calling design 2015-12-14 23:37:46 +00:00
Matthew Hodgson 08d7c0232a svgize images 2015-12-06 22:07:49 +00:00
Kegan Dougal 03485c2fca Merge branch 'develop' into kegan/controller-merging4 2015-11-30 15:39:14 +00:00
Matthew Hodgson a8fd1b5d7a rename message components as per RL discussion this morning 2015-11-30 15:19:43 +00:00