Richard van der Hoff
223f6f7914
Fix sorting of search result highlights
...
Make sure that we *actually* give preference to longer search result
highlights; it turns out that the code that looked like it was doing so has
never worked.
2016-01-08 13:25:03 +00:00
Richard van der Hoff
62cf34b58c
Fix some races due to promises completing after we've switched rooms
...
Add a few isMounted() checks to promise handlers so that we don't end up
throwing NPEs.
2016-01-08 12:03:45 +00:00
Matthew Hodgson
ef00a1624d
fix up RoomSettings somewhat and implement room colors
2016-01-08 03:22:38 +00:00
Kegan Dougal
a3df50f4c3
Implement guest account upgrading
2016-01-07 17:23:32 +00:00
Kegan Dougal
458d71a496
Attempt to peek into rooms we don't know about.
...
Also: display an error dialog if we fail to join the room if you click Join Room.
2016-01-07 16:22:17 +00:00
Kegan Dougal
c64f36c81b
Merge branch 'develop' into kegan/guest-access
2016-01-07 13:21:06 +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
David Baker
ef473dec72
Add read-up-to green* line
...
* not actually green without CSS in vector-web
2016-01-07 11:18:41 +00:00
Matthew Hodgson
fd32362aa6
oops, initialise fixups per-object, not per-prototype
2016-01-07 10:18:18 +00:00
Matthew Hodgson
0772f50fab
update copyright for 2016
2016-01-07 04:06:52 +00:00
Matthew Hodgson
296b626ed9
oops, we actually need to cache the fixups in TintableSvg
2016-01-07 03:59:09 +00:00
Matthew Hodgson
0f52c0a514
make TintableSvgs responsible for updating their own tints, and stop storing SVG DOM fragments in Tinter to avoid leaking them
2016-01-07 03:39:00 +00:00
Richard van der Hoff
4e4f8fad23
Merge pull request #79 from matrix-org/rav/dispatcher_leak
...
VideoView: Fix a dispatcher leak
2016-01-06 17:52:13 +00:00
Kegan Dougal
29587ec347
No longer persist guest room IDs. Replace with transient peeked room ID.
2016-01-06 17:33:00 +00:00
Richard van der Hoff
4624e7a485
Address review comments
...
s/onClick/onSelect/
2016-01-06 16:46:29 +00:00
Richard van der Hoff
0d0a379cd8
VideoView: Fix a dispatcher leak
...
Make sure we unregister from the dispatcher when the videoview goes
away.
2016-01-06 15:17:58 +00:00
Kegan Dougal
afbb451d4a
Merge branch 'develop' into kegan/guest-access
2016-01-06 13:59:33 +00:00
Matthew Hodgson
8c1bb90347
add fixme
2016-01-06 02:41:10 +00:00
Matthew Hodgson
f499c60b12
sundry PR feedback
2016-01-06 02:29:08 +00:00
Matthew Hodgson
44a0fa19ae
comment /tint
2016-01-06 02:12:53 +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
9e8daba8d7
Merge branch 'develop' into matthew/dynamic-svg
2016-01-06 01:11:34 +00:00
Richard van der Hoff
75302b1f97
Factor out a separate SearchResultTile
2016-01-05 17:56:59 +00:00
Kegan Dougal
d729dee31d
Make the settings page load for guests. Add checkboxes for guest r/w
2016-01-05 17:34:25 +00:00
Richard van der Hoff
a2b7c9ba96
RoomHeader: Make 'undefined' check more explicit
2016-01-05 15:57:58 +00:00
Richard van der Hoff
4730179c26
Fix slight mis-merge
...
We need to return 'true' from our promise of search result pagination.
Also inline _backPaginateSearch which mostly served to confuse, and use
debuglog instead of checking DEBUG_SCROLL
2016-01-05 15:51:16 +00:00
Richard van der Hoff
583d35e39f
Merge branch 'develop' into rav/new_search_api
...
Conflicts:
src/components/structures/RoomView.js
2016-01-05 15:38:30 +00:00
Richard van der Hoff
6c99fab3dd
Highlight the search term in search results
...
Sometimes we don't get the search term back in the highlights list, so make
sure we add it.
2016-01-05 15:28:32 +00:00
Matthew Hodgson
a9f7bf63ff
spell out we're doing 3PID invites
2016-01-05 14:24:36 +00:00
Richard van der Hoff
355cabb7ee
Merge pull request #70 from matrix-org/rav/scrollpanel_promises
...
Make ScrollPanel keep track of when fill requests are happening
2016-01-05 13:52:04 +00:00
Kegan Dougal
8bd4fdbd5a
Don't set presence
2016-01-05 13:24:05 +00:00
Kegan Dougal
ae7b2d54bb
Merge branch 'develop' into kegan/guest-access
2016-01-05 11:39:36 +00:00
Kegsay
a6e735dbde
Merge pull request #76 from matrix-org/kegan/bugfix-read-receipt
...
Null guard getMember
Fixes https://github.com/vector-im/vector-web/issues/566
2016-01-05 11:26:04 +00:00
Richard van der Hoff
2b169b06f5
Make ScrollPanel.isAtBottom more reliable
...
Given we want to use isAtBottom to figure out whether to show 'unread messages'
counts, we ought to return the current scroll state, rather than the saved one.
This fixes vector-im/vector-web#576
2016-01-05 11:02:18 +00:00
Matthew Hodgson
aa1012b127
oops
2016-01-05 03:59:04 +00:00
Matthew Hodgson
9cf49eb62d
oops, forgot this
2016-01-05 03:54:44 +00:00
Matthew Hodgson
0e98764d82
oops, no double classNames
2016-01-05 03:51:00 +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
Richard van der Hoff
e177263d9f
Address review comments
...
Minor fixes post-review
2016-01-04 16:54:27 +00:00
Richard van der Hoff
b5eae891b4
Address review comments
...
Make onFillRequest always return a promise
2016-01-04 16:28:32 +00:00
Richard van der Hoff
722c7033bc
Merge pull request #73 from matrix-org/rav/on_highlight_click
...
Expose onHighlightClick on the event tiles
2016-01-04 15:23:45 +00:00
Richard van der Hoff
89fcf019e1
Merge branch 'develop' into rav/scrollpanel_promises
...
Conflicts:
src/components/structures/RoomView.js
2016-01-04 12:56:39 +00:00
Kegan Dougal
75ad96c8ba
Null guard getMember
2016-01-04 10:11:42 +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
Matthew Hodgson
640aa45956
fix comedy bug where dates in timestamps were spectacularly wrong
2016-01-03 00:40:05 +00:00
Matthew Hodgson
441a9540ca
sync CSS classnames with current react component names
2016-01-03 00:11:11 +00:00
Matthew Hodgson
15f19be408
highlight case insensitively
2015-12-28 03:14:50 +00:00
Matthew Hodgson
970bc84bb6
explicitly rejoin parted rooms
2015-12-28 02:58:40 +00:00
Matthew Hodgson
424540e57a
fix NPE if messagePanel isn't yet defined
2015-12-28 02:40:17 +00:00
Matthew Hodgson
50ac0ab4cf
wire up RoomAlias's homeserver as intended
2015-12-28 02:36:28 +00:00
Matthew Hodgson
bd498b47b3
fix 'this' scoping bug that could never have worked...
2015-12-28 02:36:18 +00:00
Richard van der Hoff
93e7f90ae4
ScrollPanel: implement forward-fill
2015-12-24 14:30:49 +00:00
Richard van der Hoff
f2a24521dc
Make ScrollPanel keep track of when fill requests are happening
...
The dance to avoid doing repeated fill requests on every update is common, so
add it to ScrollPanel. Let onFillRequest return a promise, which prevents any
updates until it completes.
2015-12-24 14:15:50 +00:00
Richard van der Hoff
b0adb1945f
Expose onHighlightClick on the event tiles
2015-12-24 13:51:14 +00:00
Richard van der Hoff
cc72f7ec24
Use new searchRoomEvents and backPaginateRoomEventsSearch methods
...
MatrixClient now exposes higher-level search APIs, so use them.
2015-12-24 13:33:58 +00:00
Kegan Dougal
103b0a03b1
Hotfix for tab press bug
...
The bug was that *sometimes* typing in some letters then
pressing tab would flash red and not auto-complete. This was
happening because nextMatchedEntry was being called with 0
because the state of inPassiveMode was wrong.
2015-12-24 11:56:50 +00:00
Kegsay
b941904078
Merge pull request #33 from matrix-org/matthew/settings
...
WIP experiment of turning UserSettings controller into UserSettingsStore
2015-12-24 10:54:26 +00:00
Kegan Dougal
5d490841bc
Review comments
2015-12-24 10:50:47 +00:00
Kegan Dougal
5286ec170f
Wrangle CSS to get avatar in right place
2015-12-24 09:20:16 +00:00
Richard van der Hoff
b4436df5e4
Refactor bodyToHtml, and allow onHighlightClicked
...
Factor out a Highlighter class to avoid passing round the static state
everywhere.
Add an optional 'opts' argument which can take an 'onHighlightClick' member.
2015-12-23 23:50:35 +00:00
Kegan Dougal
05d1d7c82d
Better error message for failing to set avatars with no connection
2015-12-23 17:30:25 +00:00
Kegan Dougal
abb170ebde
Keep one source of truth (the Notifier) when toggling notification state. Fixes notifications.
2015-12-23 17:06:30 +00:00
Kegan Dougal
a279dce027
Get avatar display and uploads working
2015-12-23 16:52:59 +00:00
Kegan Dougal
19bd39b066
More random tweaks
...
- Make onBlur reset the EditText to show that it hasn't submitted it.
- Add the user ID of the logged in user to Advanced.
- Remove remnants of the Save/Cancel buttons.
2015-12-23 16:02:18 +00:00
Kegan Dougal
72b8cf1be2
Refactor ChangePassword to get it working. Add 'Account' section because trying to make ChangePassword divs part of the same table as the display name is nigh impossible. Feels okay though
2015-12-23 15:38:28 +00:00
Kegan Dougal
6295cf2ec9
Merge branch 'develop' into matthew/settings
2015-12-23 14:19:42 +00:00
Kegan Dougal
fb151b35c8
Remove debug logging
2015-12-23 14:17:56 +00:00
Kegan Dougal
e657b40a7e
Use ChangeDisplayName for implict display name saving on enter
2015-12-23 14:14:25 +00:00
Kegan Dougal
82ff5c5e52
Factor out handleTabPress and remove passive flag onKeyDown
2015-12-23 13:48:44 +00:00
Kegan Dougal
b80015c69c
More comments; remove redundant if statement
2015-12-23 13:33:44 +00:00
Kegan Dougal
1af5018597
General code cleanup / tweaks / fixes
...
- Swap Phases enum to be using string literals
- Swap roomId prop on UserSettings for a more sane onUserSettingsClose and
make MatrixChat responsible for swapping the room.
- s/then/done/ when terminating Promise chains to avoid subtle errors.
- Rejig render() of UserSettings so we don't need to indent quite so much.
2015-12-23 11:47:56 +00:00
Kegan Dougal
095f82feee
Remove boolean returns
2015-12-23 10:35:54 +00:00
Kegan Dougal
7e1b107f4c
Review comments
2015-12-23 09:34:34 +00:00
Kegan Dougal
810e8993d6
Merge branch 'develop' into kegan/tab-complete
2015-12-22 17:44:04 +00:00
Kegan Dougal
62c378a619
Sort out the mess that is Javascript's \b - Fixes vector-im/vector-web#189
...
\b is *the worst*. From MDN:
Note: JavaScript's regular expression engine defines a specific set of
characters to be "word" characters. Any character not in that set is considered
a word break. This set of characters is fairly limited: it consists solely of
the Roman alphabet in both upper- and lower-case, decimal digits, and the
underscore character. Accented characters, such as "é" or "ü" are,
unfortunately, treated as word breaks.
We fix this by matching on whitespace instead, but then need to tweak the
replace() code since that bluntly replaces the entire match (which now includes
whitespace). It all works now and I can happily tab-complete non-ascii names.
2015-12-22 17:38:24 +00:00
Kegan Dougal
452c265e6a
Implement automatically entering tab complete mode after a short delay
...
This seems to work. Manually tested for sanity.
2015-12-22 16:49:58 +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
Richard van der Hoff
cdd539c3cd
Factor out a separate 'ScrollPanel'
...
Create an intelligent scrolling list, which doesn't care what it contains, to
try and clean up some of the logic in RoomView.
2015-12-22 15:18:50 +00:00
Kegan Dougal
a20cabb06f
Merge branch 'develop' into kegan/tab-complete
2015-12-22 15:16:39 +00:00
Kegan Dougal
e077517faf
Ignore more keys when determining if the user is typing
...
Specifically ignore CTRL, ALT, META, SHIFT, WINDOWS.
2015-12-22 15:13:11 +00:00
Kegan Dougal
e541ddb060
Auto-complete clicked suggestions
2015-12-22 11:14:36 +00:00
Richard van der Hoff
cc90f4c0c6
Merge pull request #64 from matrix-org/rav/fix_date_separator
...
Fix bug with date separator flashing up on scrollback
2015-12-22 11:05:26 +00:00
Richard van der Hoff
360806a8f1
RoomView: add whitespace for disambiguation
2015-12-22 11:04:39 +00:00
Richard van der Hoff
6b07de05f3
Merge pull request #65 from matrix-org/rav/marker_at_top_of_search_results
...
Add a 'top-of-search' marker
2015-12-22 11:00:00 +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
Matthew Hodgson
618978d955
add appropriate CSS for the TabCompleteBar
2015-12-22 00:47:04 +00:00
Kegan Dougal
c8aaee46d7
Mark a TODO for timeout handling
2015-12-21 17:58:36 +00:00
Kegan Dougal
ba63b5dfff
Add image URLs to TabComplete.Entry objects
2015-12-21 17:28:04 +00:00
Kegan Dougal
4e79c3c4c8
Add allowLooping opt for tab completion. Make peeking work.
2015-12-21 17:16:49 +00:00
Kegan Dougal
ab0a277d94
Rewrite tab-complete logic to allow peeking ahead
...
This primarily means pre-calculating the list of things we'll be looping over
and then returning matches from this list. Make the regex match be more generic
rather than sorta-kinda-user-id-like-ish.
2015-12-21 16:35:39 +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
400b5196bb
Add TabCompleteBar. Hook up display to whether we are currently tab completing.
2015-12-21 14:11:34 +00:00
Richard van der Hoff
7c285f9ad0
Add a 'No results' marker when there are no search results at all.
...
Also reword the 'no more results' marker.
2015-12-21 13:46:27 +00:00
Matthew Hodgson
b9ba4475b8
Merge branch 'develop' into matthew/settings
2015-12-21 13:09:33 +00:00
Richard van der Hoff
765e5bdeb1
Add a 'top-of-search' marker
...
Ugly as hell, pending better suggestions.
This fixes https://github.com/vector-im/vector-web/issues/547
2015-12-21 12:39:10 +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
Richard van der Hoff
afadb23f89
Fix bug with date separator flashing up on scrollback
...
Refactor the event-tile generation loop to go forwards rather than backwards,
which makes it easier to figure out whether we are displaying a continuation of
the previous event, and whether we need a date separator.
Also only display the date separator at the top of the room if there's no more
scrollback to be shown.
This fixes vector-im/vector-web#431
2015-12-21 10:49:00 +00:00