Commit graph

1485 commits

Author SHA1 Message Date
J. Ryan Stinnett
b0f59007f3 Clarify level variable name 2019-04-04 10:30:23 +01:00
YaoiFangirl420
1cbbe5f31f Add i18n and fix method declaration
Add i18n entries for rotating images; fix the way `getName` is defined

Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-04-04 02:27:58 -07:00
YaoiFangirl420
9bd1ba60f5 Add option to rotate images
cf. https://github.com/vector-im/riot-web/issues/9257

Add rotate clockwise/counterclockwise buttons to <ImageView>

Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-04-04 01:48:41 -07:00
J. Ryan Stinnett
fa88185dee Include the current power level in the selector
This ensures we always include the current power level in the power selector,
even if it's greater than the level you're allowed to set yourself. This ensures
the selector can display the current value correctly when disabled.

Fixes https://github.com/vector-im/riot-web/issues/9340
2019-04-03 11:54:10 +01:00
Travis Ralston
51750cf153 General cleanup of handling for WidgetMessaging instances
When setting, delete the old one. Because delete checks if it exists first, we can safely call this.

The change in FromWidgetPostMessageApi is just something noticed while debugging.
2019-04-01 19:50:05 -06:00
Travis Ralston
fc28f094fe Set title attribute on images in lightbox
Part of https://github.com/vector-im/riot-web/issues/9324
2019-03-29 14:55:56 -06:00
David Baker
1fe830d1c6 Remove noreferrer on widget pop-out
Having the referrer allows widgets to do customisation based on what
riot instance is embedding it. It gets a referrer when we embed it
in the iframe so there's nothing gained by suppressing it here.
2019-03-27 13:27:57 +00:00
Travis Ralston
ddcb7a68bd
Merge pull request #2781 from matrix-org/travis/openid-widget
Widget OpenID reauth implementation
2019-03-27 03:42:39 -06:00
Travis Ralston
a8ae63bb06 Minimize stickerpicker when the title is clicked
Fixes https://github.com/vector-im/riot-web/issues/6437

This also fixes a bug where if the room had apps open and you clicked the sticker picker's title, you'd end up closing the apps and not the picker.
2019-03-23 23:50:06 -06:00
Travis Ralston
3654c895eb Appease the linter 2019-03-23 23:31:19 -06:00
Travis Ralston
2dcb40f1be Track OpenID automatic permissions by (widgetLocation, widgetUrl) 2019-03-23 23:25:31 -06:00
Travis Ralston
d3268801ed Merge branch 'develop' into travis/openid-widget 2019-03-23 22:48:12 -06:00
Travis Ralston
b68960ad26 Reload widget messaging when widgets reload
Fixes a bug for some widgets where they cannot do their startup routine (capabilities negotiation, etc) when someone maximizes the widget. By reloading the widget messaging, we ensure the widget is kept in the loop.
2019-03-15 22:24:27 -06:00
Travis Ralston
f045beafc3 Support whitelisting/blacklisting widgets for OpenID 2019-03-15 21:33:31 -06:00
J. Ryan Stinnett
ec51aee656 Remove refs from RegistrationForm
This aligns the code in `RegistrationForm` with other users of the `Field`
component. (In https://github.com/matrix-org/matrix-react-sdk/pull/2780, I had
thought that this code would be okay to leave alone, but I had missed the usage
of the `Field` value getter.)

Fixes https://github.com/vector-im/riot-web/issues/9172
2019-03-14 14:29:04 +00:00
J. Ryan Stinnett
c70925ab0d Restore Field value getter for RegistrationForm
When working on the `Field` validation support, I thought `RegistrationForm`'s
refs would be okay to leave as is, but I missed that they also depended on the
value getter.

For the moment, it's quicker to temporarily revive the value getter to get
registration working.

Fixes https://github.com/vector-im/riot-web/issues/9171
2019-03-14 12:29:00 +00:00
J. Ryan Stinnett
45063cad4a
Merge pull request #2780 from jryans/auth-validation
Initial portions of support for Field validation
2019-03-14 10:19:21 +00:00
Jason Robinson
02ff1763a2 Ensure scalar_token is valid before opening integrations manager
Since Scalar (and other integration managers) are loaded as apps into
an iframe, a valid `scalar_token` must exist when loading the app.

It is possible that a scalar_token becomes invalid between the time
when the integration manager button was rendered and the user clicking
the link. Here we make a call to integration manager `/account`
before trying to render the integration manager, which ensures we
have a valid token for the integration manager to work with.

Moving the scalar token revalidation to the cases where it is actually
needed could make it possible to decrease the amount of Scalar /account
calls we do when switching rooms, which is currently 3.

Signed-off-by: Jason Robinson <jasonr@matrix.org>
2019-03-13 11:47:00 +02:00
J. Ryan Stinnett
69a066657b Remove bits of Field that supported uncontrolled
Field is no longer used as an uncontrolled component, so we can remove some
supporting code that we no longer need.
2019-03-12 16:51:19 +00:00
J. Ryan Stinnett
d4dbba3938 Convert uncontrolled Field usages to controlled
As part of adding validation to Field, the logic is simpler to follow if we can
assume that all usages of Field use it as a controlled component, instead of
supporting both controlled and uncontrolled.

This converts the uncontrolled usages to controlled.
2019-03-12 16:17:21 +00:00
J. Ryan Stinnett
5a648ecfe4 Ensure we always set some value in Field
Always set some value on the Field's input so that it doesn't flip flop between
controlled and uncontrolled.
2019-03-12 14:02:54 +00:00
J. Ryan Stinnett
ea050683bd Use the right prop type for functions 2019-03-12 14:02:54 +00:00
J. Ryan Stinnett
57ce4d6e7d Call the parent component's onChange if it exists 2019-03-12 14:02:54 +00:00
J. Ryan Stinnett
7241418eba Appease the linter
This checks `onValidate` in `render` to make the linter happy.
2019-03-12 14:02:54 +00:00
J. Ryan Stinnett
edb7f39ec9 Validity class currently unused on tooltip 2019-03-12 14:02:54 +00:00
Matthew Hodgson
40f16fa310 adds validation for fields.
* renames RoomTooltip to be a generic Tooltip (which it is)
 * hooks it into Field to show validation results
 * adds onValidate to Field to let Field instances call an arbitrary validation function

Rebased from @ara4n's https://github.com/matrix-org/matrix-react-sdk/pull/2550
by @jryans. Subsequent commits revise and adapt this work.
2019-03-12 14:02:54 +00:00
Bruno Windels
4e382b1dd9 rename onWidgetLoad to onHeightChanged
as it's easy to confuse it with room widgets, but has nothing to do with it.
2019-03-07 17:02:19 +01:00
J. Ryan Stinnett
8bf5e1d19f
Merge pull request #2749 from jryans/auth-field
Use Field component in auth flows
2019-03-06 11:18:24 +00:00
J. Ryan Stinnett
35ee9c9ac7 One line for prefix container 2019-03-06 10:58:54 +00:00
J. Ryan Stinnett
26b2aa174b Add prefix support to Fields
This allows Fields to have an optional prefix component which is placed inside
the border of the Field and to the left of the input. Since this label animation
would be complex to get right for this case, it is instead fixed to the top left
if there is a prefix component.

This canonical example of this today would be a phone number field which
includes a country dropdown.
2019-03-05 15:25:43 +00:00
Bruno Windels
96196d8c3d
Merge pull request #2746 from matrix-org/bwindels/flairnolayout
Prevent flair pushing timeline downwards
2019-03-05 15:34:09 +01:00
Bruno Windels
624572daa9 show flair container when no profiles loaded to ensure same height 2019-03-05 14:50:39 +01:00
J. Ryan Stinnett
b6351f2607
Merge pull request #2740 from jryans/reorg-field-props
Reorganise props handling in Field
2019-03-05 11:30:06 +00:00
J. Ryan Stinnett
d4a148d56c Use oneOf to check the input element 2019-03-05 11:18:58 +00:00
Travis Ralston
363964e423 Don't loop forever if you demote yourself via Enter on a PowerSelector
The included comment explains what happens and why this is bad.

Fixes https://github.com/vector-im/riot-web/issues/9039
2019-03-04 13:08:54 -07:00
J. Ryan Stinnett
7c672e608d Reorganise props handling in Field
Several small tweaks to the props handling:

* Use destructuring instead of `delete`
* Emphasize the `element` as a primary prop
* Document `textarea` as supported
2019-03-04 17:25:19 +00:00
Michael Telatynski
6b0b5e4aa3
Merge pull request #2729 from matrix-org/t3chguy/missing_permalinkCreator
Add missing permalinkCreator prop
2019-03-04 11:15:53 +00:00
Michael Telatynski
6b07195b63 Add missing permalinkCreator prop
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-03-01 09:36:36 +00:00
Travis Ralston
a41df7ab68 Convert PowerSelector to use mxField instead 2019-02-28 19:00:57 -07:00
J. Ryan Stinnett
4b340450b9 Rename Feather icon directory to feather-customised
These icons are based on Feather as the original source, but they have various
tweaks applied, such as stroke width, color, etc. Hopefully the tweaked name
makes this more obvious in the future.
2019-02-27 10:42:10 +00:00
Bruno Windels
fb672ffb28 change handling of event permalinks in replies 2019-02-25 18:43:08 +01:00
Travis Ralston
9795161f40 Misc linter cleanup 2019-02-21 17:53:29 -07:00
Travis Ralston
1e6594ceba Disable removal of items if the user doesn't have permission 2019-02-21 17:15:25 -07:00
Travis Ralston
5d2f17c49a Make adding aliases direct manipulation 2019-02-21 15:22:08 -07:00
Travis Ralston
2903a0e712 Rework EditableItemList to support mxField
Also improves upon the general UX to be a bit friendlier for direct manipulation things.
2019-02-21 15:22:08 -07:00
Bruno Windels
107eb974d4 always rerender
as not all state that goes into rendering comes from state or props,
we shouldn't be blocking rendering at all

This might rerender a few times more, but it shouldn't be worse
than what was there before the redesigned roomlist.
2019-02-14 13:30:03 +01:00
Bruno Windels
a1a82e48d9 update range when items size changes 2019-02-13 20:21:17 +01:00
Bruno Windels
e51f279f36 dont assume there items is an array 2019-02-13 18:49:09 +01:00
Bruno Windels
60d0ed4c01 make LazyRenderList stateful for better performance
it only rerenders when visible range it would render based on the
props gets OVERFLOW_MARGIN(5) items from the current renderRange
2019-02-13 18:33:57 +01:00
Bruno Windels
9c371111b7 Merge branch 'develop' into bwindels/lazyroomtilerendering 2019-02-13 17:13:23 +01:00
Bruno Windels
0de2161a0d create LazyRenderList component to trim list to visible part 2019-02-13 14:50:43 +01:00
J. Ryan Stinnett
8652a094f3 Allow theming room header buttons 2019-02-13 10:47:04 +00:00
Bruno Windels
f189ff54a8 hide delete & cancel button on stickers are they weren't visible before 2019-02-12 17:01:05 +01:00
David Baker
2cd25e0077
Merge pull request #2596 from matrix-org/dbkr/emoji_sas
Change SAS to decimal / emoji
2019-02-08 16:46:43 +00:00
Travis Ralston
78ea531a87
Merge pull request #2590 from matrix-org/travis/settings/fix-directory-publish
Ensure toggle switches listen to property changes
2019-02-08 08:00:47 -07:00
David Baker
ae16cc36aa Change SAS to decimal / emoji
Requires https://github.com/matrix-org/matrix-js-sdk/pull/837
2019-02-08 14:57:36 +00:00
Travis Ralston
89a8422320 Ensure toggle switches listen to property changes
They do local echo on changes to avoid jumping back and forth while requests are ongoing, however some areas modify the checked state after the toggle has mounted.

Fixes https://github.com/vector-im/riot-web/issues/8432
2019-02-07 11:54:13 -07:00
David Baker
3a924d05b5 Remove click-to-verify from SAS
The click-each-pair to verify was hard to discover, so remove it
2019-02-07 17:01:55 +00:00
Bruno Windels
87ddb8a453
Merge pull request #2575 from matrix-org/bwindels/customtags
Bring back custom tags, also badges on communities
2019-02-07 11:37:17 +00:00
Bruno Windels
547c8cb206 render badge on community 2019-02-06 14:31:43 +00:00
Travis Ralston
eac50aa800 Remove old user and room settings
This takes out the old user and room settings, replacing the paths with the new dialog editions. The labs setting has been removed in order to support this change.

In addition to removing the old components outright, some older components which were only used by the settings pages have been removed. The exception is the ColorSettings component as it has a high chance of sticking around in the future.

Styles that were shared by the settings components have been broken out to dedicated sections, making it easier to remove the old styles entirely.

Some stability testing of the app has been performed to ensure the app still works, however given the scope of this change there is a possibility of some broken functionality.
2019-02-04 13:40:21 -07:00
Bruno Windels
6d2e582083 fix lint 2019-02-02 07:46:52 +01:00
Bruno Windels
7ccc694eea minimal theming on app permission in widget 2019-02-01 23:24:56 +01:00
Bruno Windels
e2ce12f5c1 wip 2019-02-01 23:15:14 +01:00
J. Ryan Stinnett
d6f55a508c Use custom appearance and arrow for select fields 2019-01-30 16:40:53 -06:00
Bruno Windels
85b998d851 fix dropdown style when input is shown 2019-01-30 11:42:50 +01:00
Bruno Windels
6aca7e4515
Merge pull request #2522 from matrix-org/bwindels/memberpanel-tiny-makeover
Redesign: small member info panel makeover
2019-01-30 10:01:33 +00:00
Travis Ralston
a2f516c461 Implement the Security & Privacy tab of new room settings 2019-01-29 14:31:07 -07:00
Bruno Windels
7d6f551841 small makeover of member info panel
this removes the style sharing between the verify buttons in the memberinfo panel and
and the encrypted event dialog because the diverge too much now.
2019-01-29 21:14:16 +01:00
Bruno Windels
855dbd7d2b Merge branch 'experimental' into bwindels/roomdirectory-makeover 2019-01-29 18:33:03 +01:00
Bruno Windels
9f1b4ac4cc room directory makeover 2019-01-29 15:34:58 +01:00
Travis Ralston
87e6652b2a Flair settings for rooms 2019-01-28 13:54:56 -07:00
David Baker
b4f02844a8 Merge remote-tracking branch 'origin/experimental' into dbkr/sas 2019-01-28 09:36:39 +00:00
J. Ryan Stinnett
d1b78e5b08 Fix unmount TypeError in DeviceVerifyButtons 2019-01-25 17:54:11 -06:00
Travis Ralston
d819095a76 Default a Field's placeholder to the label
Fixes https://github.com/vector-im/riot-web/issues/8250

This keeps all fields in line with the design without them having to defining it twice. The option is kept in the first place as some fields might want to override the placeholder to be longer than the label or something.
2019-01-24 19:36:23 -07:00
Travis Ralston
06a9ab3a70 Styling to match the other tabs a bit closer
Introduces a new component to reduce code duplication
2019-01-24 10:12:25 -07:00
Travis Ralston
6f947ab6d9 Appease the linter 2019-01-23 16:09:58 -07:00
Travis Ralston
3f897468a6 Add a ToggleSwitch and use it for SettingsFlag
Also bring in the compact timeline option.

Without minor CSS changes, the old user settings are completely unusable with this change. As such, minimal effort has been put in to have it be useful. Similarly, the changes drop the use of radio groups and the old theme selector was the only one that used it. See the comments for more details on how/why this was mitigated the way it was.
2019-01-23 15:50:41 -07:00
David Baker
6a90625d36 Merge remote-tracking branch 'origin/experimental' into dbkr/sas 2019-01-23 17:32:18 +00:00
Travis Ralston
875c0f94d3 Include a ref so that get/set value works again 2019-01-23 09:29:44 -07:00
Travis Ralston
aa7afe819f Bring over email address management 2019-01-23 09:28:53 -07:00
Travis Ralston
19de6694ca Bring in the change password section
This also changes the layout slightly in the user settings, but nothing detrimental.
2019-01-23 09:28:53 -07:00
Travis Ralston
94b1d739fb
Merge pull request #2476 from matrix-org/travis/modal-tab-settings
Basic structure for tabbed user settings
2019-01-23 07:52:44 -07:00
Travis Ralston
2b3c8c4450 Correctly form a select/input element 2019-01-22 20:03:59 -07:00
Travis Ralston
f0e8182ff3 Support selects on Field
Luckily, the styling is copy/paste capable.
2019-01-22 19:25:09 -07:00
Travis Ralston
a488304410 Appease the linter
Appease the linter round 2

Appease the linter round 3

Appease the linter round 4

Appease the linter round 5
2019-01-21 18:41:49 -07:00
Travis Ralston
15a56fa90b Improve the profile section a bit and add a highlight to the temp tab 2019-01-21 17:27:43 -07:00
Travis Ralston
36ffbef010
Tweak comment about field ID
Co-Authored-By: jryans <jryans@gmail.com>
2019-01-19 22:29:57 -06:00
J. Ryan Stinnett
efd5405267 Add a form field component for the redesign
The label moves into the border on focus and after being filled. A valid color
is applied to the label and input border. Other states like invalid can be added
later as needed.

Adapted from @ara4n's experiment into a React component with a CSS only
approach.
2019-01-19 22:13:53 -06:00
David Baker
630a6a479b Lint 2019-01-18 18:43:40 +00:00
David Baker
ec2d51cbbb SAS verification screen matching design 2019-01-18 16:56:49 +00:00
J. Ryan Stinnett
20e296b20e Convert image URLs in React to require calls
This allows Webpack to insert the proper image URL after builds steps like
adding a hash and so on. The path you supply to `require` is relative to the JS
source file, just like any other would be.
2019-01-17 22:06:49 -06:00
J. Ryan Stinnett
bf87547f88 Remove unexpected underline from pills
Fixes vector-im/riot-web#8031.
2019-01-07 09:56:40 -06:00
Travis Ralston
8017f0a4a1 Merge remote-tracking branch 'origin/experimental' into travis/develop-for-real 2019-01-03 16:00:23 -07:00
Travis Ralston
6447a60e1f Revert "Merge pull request #2336 from matrix-org/travis/notif-button"
This reverts commit 96300b45b7.
2019-01-03 15:44:07 -07:00
David Baker
f928be6f59 Revert "Merge pull request #2395 from matrix-org/dbkr/merge_develop_experimental"
This reverts commit ad47144355.
2019-01-03 15:37:03 -07:00
David Baker
7d161de35b Partial merge of develop to experimental
Does not include #2336 as the file has been moved out from underneath it:
will do this separately
2019-01-03 15:02:58 +00:00
Bruno Windels
b826b0d998 Add redesign feedback dialog + button in tag panel 2018-12-19 12:27:05 +01:00
David Baker
1ca91370f3
Merge pull request #2372 from matrix-org/dbkr/electron_sandbox
React-sdk changes to support sandboxed electron
2018-12-19 09:48:05 +00:00
David Baker
3a8b9ab850 unused import 2018-12-18 17:57:23 +00:00
David Baker
37b3644fd9 React-sdk changes to support sandboxed electron 2018-12-18 17:40:30 +00:00
Bruno Windels
1d43712a8f Merge branch 'experimental' into nadonomy/icons 2018-12-18 18:22:24 +01:00
Nad Chishtie
074c96cd3e First pass of normalising icons. 2018-12-18 16:48:20 +00:00
Bruno Windels
279521cab4 add id to props for completeness 2018-12-18 14:31:38 +01:00
Willem Mulder
d304c35b38 Allow widgets to autoplay media
This is useful for e.g. webcam streams in widgets.

Signed-off-by: Willem Mulder <willemmaster@hotmail.com>
2018-12-18 00:43:37 +00:00
Bruno Windels
e4d2b6f2b7 fix resize handles being too thick on edge (hopefully) 2018-12-14 17:06:00 +01:00
Bruno Windels
fe76287035 style communities button, make it visible again 2018-12-10 15:43:48 +01:00
Bruno Windels
10a989a003 make icon optional in action button
as we'll draw the icon with css
2018-12-10 15:33:35 +01:00
Travis Ralston
95d15b7863 Fix tinting of notification icon and use a more reliable notification source
The js-sdk's placement of the notification change was unreliable and could cause stuck notifications. The new location (piggybacking the Notifier) is a lot more reliable.

The tinting has been changed fairly invasively in order to support the changing of the `fill` attribute. What was happening before was the `fill` property would happily get set to the forced color value, but when it came time to reset it it wouldn't be part of the colors array and fail the check, therefore never being changed back. By using a second field we can ensure we are checking the not-forced value where possible, falling back to the potentially forced value if needed. 

In addition to fixing which color the Tinter was checking against, something noticed during development is that `this.colors` might not always be a set of hex color codes. This is problematic when the attribute we're looking to replace is a rgb color code but we're only looking at `keyHex` - the value won't be reset. It appears as though this happens when people use custom tinting in places as `this.colors` often gets set to the rgb values throughout the file. To fix it, we just check against `keyHex` and `keyRgb`.
2018-12-06 22:26:51 -07:00
Travis Ralston
173669b375 Show the number of unread notifications above the bell on the right
Fixes https://github.com/vector-im/riot-web/issues/3383

This achieves the result by counting up the number of highlights across all rooms and setting that as the badge above the icon. If there are no highlights, nothing is displayed. The red highlight on the bell is done by abusing how the Tinter works: because it has access to the properties of the SVG that we'd need to override it, we give it a collection of colors it should use instead of the theme/tint it is trying to apply. This results in the Tinter using our warning color instead of whatever it was going to apply.

The RightPanel now listens for events to update the count too, otherwise when the user receives a ping they'd have to switch rooms to see the change.
2018-12-06 16:18:02 -07:00
Bruno Windels
f7a37be6dd support associating an id with a resize item/handle 2018-11-26 16:46:27 +01:00
Bruno Windels
67e0030ccd Merge branch 'develop' into experimental 2018-11-26 13:10:29 +01:00
Bruno Windels
ba83166661 Merge branch 'develop' into experimental 2018-10-31 14:54:22 +01:00
David Baker
8ac62f8c12 Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backups 2018-10-29 16:20:45 +00:00
Aaron Raimist
5f3b03c85a
Fix a few no-useless-escape lint errors
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-26 23:00:54 -05:00
Aaron Raimist
49ce4ef117
eslint --fix src/
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-26 22:50:38 -05:00
Bruno Windels
2c039483c6 Merge branch 'develop' into experimental 2018-10-26 15:33:39 +02:00
Travis Ralston
aaeb6e4978 Use about:blank instead 2018-10-25 15:59:42 -06:00
Travis Ralston
749441b4d3 Merge branch 'develop' into travis/redirect-widgets 2018-10-25 15:57:26 -06:00
David Baker
b59b8b7fca Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backups 2018-10-25 17:42:46 +01:00
Travis Ralston
7ef08314b8 Redirect widgets to another location before deleting them
This is so that shutdown hooks in the widget can correctly fire, such as Jitsi's hook to abandon its hold on the webcam.

Fixes https://github.com/vector-im/riot-web/issues/7351
2018-10-19 16:23:19 -06:00
Travis Ralston
c75beb0196 Revert "Redirect widgets to another location before deleting them"
This reverts commit 275d88dd4f.
2018-10-19 16:22:48 -06:00
Travis Ralston
275d88dd4f Redirect widgets to another location before deleting them
This is so that shutdown hooks in the widget can correctly fire, such as Jitsi's hook to abandon its hold on the webcam.

Fixes https://github.com/vector-im/riot-web/issues/7351
2018-10-19 16:22:20 -06:00
Travis Ralston
9582c1e65a Move all dialog buttons to the right and fix their order
Fixes https://github.com/vector-im/riot-web/issues/5689

Some dialogs had their own CSS that prevented the buttons from being placed in the right spot. This has been fixed by using a generic standard for the buttons. The only strange dialog that needed more CSS was the devtools dialog due to the header.

Not all dialogs have been checked - I spot-checked about half of them and verified the CSS manually on an established account. It's hard to get at all the dialogs without convoluted testing.
2018-10-19 15:33:23 -06:00
Bruno Windels
8d3347bcfb fix lint 2018-10-17 13:36:15 +02:00
Bruno Windels
01471abdc5 Merge branch 'bwindels/redesign' into bwindels/resizehandles 2018-10-16 11:57:59 +02:00
Bruno Windels
6878ce3c6a Merge branch 'develop' into bwindels/redesign 2018-10-16 11:57:44 +02:00
David Baker
41bc42e7d7
Merge pull request #2194 from pvagner/more_accessible_buttons
More accessible buttons - take 2
2018-10-09 11:04:50 +01:00
David Baker
387128ed1e Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backups 2018-10-05 14:01:50 +01:00
David Baker
8ceca3abe9
Update Pill.js
Commas are not semicolons
2018-10-04 10:34:34 +01:00
Will Hunt
17915b5082
Merge branch 'develop' into hs/purge-irc-hack 2018-10-03 19:39:14 +01:00
Will Hunt
fe788486b7 Drop (IRC) suffix hacks 2018-10-03 19:34:06 +01:00
Peter Vágner
2b394c1869
Address review comments and fix lint errors 2018-10-02 20:32:54 +02:00
Peter Vágner
ded35e43a0
A11y: repurpose more divs into AccessibleButtons.
With this more of the
controls that look like buttons can be operated via the keyboard and
navigated to by screen reader users. This includes editor buttons such
as File upload, Audio / Video call, Right pannel hide button, Jump to
the bottom timeline button, and some more buttons found in the user
settings.
Also I have added alt texts to some images that in turn label buttons
which these happen to be packed in and removed some untranslated alt
texts from decorative non-actionable images that might add more
verbosity when talking about screen reader user experience.
2018-10-02 13:55:24 +02:00
Bruno Windels
928b6d47c8 add resize handles between 3 main app columns 2018-09-24 16:07:42 +01:00
Bruno Windels
91ec96c8d3 Merge branch 'develop' into bwindels/redesign 2018-09-21 12:44:44 +02:00
David Baker
f507aac3d5 Show if recovery key is valid 2018-09-17 17:05:29 +01:00
David Baker
94c7ae2bf5
Merge pull request #2098 from matrix-org/dbkr/destroy_widget
Destroy non-persistent widgets when switching room
2018-08-17 09:53:41 +01:00
David Baker
e3643bd74c Lint 2018-08-17 09:42:23 +01:00
Bruno Windels
cead4096d8
Merge pull request #2118 from matrix-org/bwindels/feature_lazyloading
Lazy loading of room members
2018-08-16 18:14:55 +02:00
Bruno Windels
f1643f77ac fix lint 2018-08-02 19:57:20 +02:00
Bruno Windels
e1843601be support directional content in pill member fake 2018-08-02 17:09:18 +02:00
David Baker
7875d37c8e Destroy non-persistent widgets when switching room 2018-08-01 15:01:11 +01:00
Matthew Hodgson
9783b6100d Merge branch 'develop' into matthew/dharma 2018-07-29 17:03:23 +01:00
David Baker
1fe0f04986 Fix persistend element location not updating
As hopefully all explained in comment
2018-07-27 14:33:05 +01:00
David Baker
7044410a13 Move destroyPersistentWidget to store 2018-07-24 16:50:34 +01:00
David Baker
ec4c7ffb71 Make ActiveWidgetStore clear persistent widgets
ActiveWidgetStore is now reponsible for removing the current
persistent widget from the store if it's been removed from whatever
room it was in. As per comment, this leaves us with the store updating
itself in this case but in all other cases, views call setters on the
store to update its state. We should make it so the store keeps itself
up to date and views aren't responsible for keeping the store up to date.

The store now emits events so it can notify PersistentApp when it changes.

Fixes https://github.com/vector-im/riot-web/issues/7076
2018-07-24 16:21:43 +01:00
David Baker
6804647dda Destroy widget when its permission is revoked 2018-07-23 17:11:53 +01:00
David Baker
4f8ece53b2 Fix CSS naming 2018-07-23 15:58:07 +01:00
David Baker
5adcd673ab Fix persisent apps being the wrong size 2018-07-23 15:08:17 +01:00
David Baker
00f78822c5 Fix widgets resetting when going to the top-left
Remove the hash from the parentUrl because this change when we
change rooms.
2018-07-23 13:50:16 +01:00
Bruno Windels
6f278ceab0
Merge pull request #2071 from matrix-org/dbkr/persistedelement_border
Fix border around persisted widgets
2018-07-20 12:23:02 +01:00
David Baker
f868cd6699 Fix border around persisted widgets
The PersistedElement had zero height so the border ended up in the
wrong place. Add a wrapper to fix the height back.

Fixes https://github.com/vector-im/riot-web/issues/7030
Fixes https://github.com/vector-im/riot-web/issues/7029
2018-07-18 11:52:57 +01:00
David Baker
7aab6fa6f1 Merge remote-tracking branch 'origin/develop' into dbkr/widget_echo 2018-07-18 09:35:57 +01:00
David Baker
a79caed0c9 Merge remote-tracking branch 'origin/develop' into dbkr/tiny_jitsi_follows_you_between_rooms 2018-07-16 17:21:51 +01:00
David Baker
d16ac4d80c
Merge pull request #1890 from matrix-org/matthew/slate
Replace Draft with Slate
2018-07-16 14:16:25 +01:00
David Baker
4c6419a3c5 Merge remote-tracking branch 'origin/develop' into dbkr/widget_echo 2018-07-16 13:24:13 +01:00
David Baker
ff96537048 lint 2018-07-16 11:49:53 +01:00
David Baker
e56feea9ec Put always-on-screen widgets in top left
always-on-screen widgets now appear in the top-left where the
call preview normally is if you're not in the room that they're in.

Fixes https://github.com/vector-im/riot-web/issues/7007
Based off https://github.com/matrix-org/matrix-react-sdk/pull/2053
2018-07-12 18:43:49 +01:00
David Baker
8f10ee01c6 Implement always-on-screen capability for widgets
As per https://github.com/matrix-org/matrix-doc/issues/1354

This is whitelisted to only jitsi widgets for now as per comment,
mostly because any widget that we may make always-on-screen we need
to preemptively put in a PersistedElement container, which is
unnecessary for any other widget.

Apologies that this does a bunch of refactoring which could have
been split out separately: I only discovered what needed to be
refactored in the process of doing this.

Fixes https://github.com/vector-im/riot-web/issues/6984
2018-07-11 18:07:32 +01:00
Matthew Hodgson
efdc5430d7 merge develop 2018-07-09 17:50:07 +01:00
David Baker
ad35fbf208 Pull out z-index to the sticker picker
As it's not a thing that's necessary for other PersistedElements,
only the sticker picker because it has to sit above the ContextMenu
it sits in.
2018-07-03 18:25:33 +01:00
David Baker
74f2d0a360 Use inline class field for PropTypes 2018-07-03 14:54:43 +01:00
David Baker
3f88721bc1 Give PersistedElement a key
So there can be more than one on a page
2018-07-03 14:43:27 +01:00
David Baker
c665ab8a22 Add error dialog if widget remove fails
Also up the timeout because matrix.org is that slow
2018-07-03 11:55:41 +01:00
Luke Barnard
016e9176f6 Fix room topics/names reseting when UserSetting re-renders
This reverts a fix to EditableText introduced in
    https://github.com/matrix-org/matrix-react-sdk/pull/1445
which introduced a bug that causes room name and topic to
reset when UserSettings is rerendered because
    `initialValue != this.value`

This also fixes the same bug originally fixed by #1445:
 >fix entering the same thing twice (which had the bug of not
 >emptying the "new" field)

which, in other words meant that clicking "+" when adding a room
alias would not reset the contents of the bottom-most alias in the
list.

The fix is to increment the `key` of the element, causing a new
instance to be mounted instead of passing new props to the existing
one.
2018-06-28 18:11:52 +01:00
David Baker
c780cd05a8 Change argument order of setRoomWidget
So when deleting a widget we can just omit the ones we don't need
2018-06-26 16:33:28 +01:00
David Baker
a88297d7a6 More code reuse 2018-06-26 16:27:17 +01:00
David Baker
6cf11a15e6 Move WidgetUtils to utils dir 2018-06-26 11:59:16 +01:00
Michael Telatynski
32ab997230
properly style Group Pill
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-22 14:38:06 +01:00
Michael Telatynski
d92d95c37d
don't fall back to getGroups as it gets it no additional data
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-22 12:11:16 +01:00
Michael Telatynski
561b9699fc
Merge branch 'develop' into t3chguy/community_autocomplete 2018-06-22 12:00:34 +01:00
Luke Barnard
8b257f2f50
Merge pull request #1989 from matrix-org/t3chguy/right_click_tagpanel_contextmenu
trigger TagTile context menu on right click
2018-06-22 10:23:58 +01:00
Michael Telatynski
a0207fb7fd
Merge pull request #1982 from matrix-org/t3chguy/nvl/fix_set_password-email_flow
fix set password & email flow possible to get stuck and onBlur murdering your email
2018-06-21 11:42:53 +01:00
David Baker
e67dae704a Take replies out of labs! 2018-06-20 09:57:11 +01:00
Michael Telatynski
c1e608f1a8
show permalinks to communities as Pills
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-19 11:53:17 +01:00
Michael Telatynski
29ea4025d4
trigger TagTile context menu on right click
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-18 22:13:20 +01:00
Michael Telatynski
f2e4e515c1
delint EditableText
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-18 18:21:16 +01:00
David Baker
276c7a9c4d Fix blank sticker picker
Let the battle of z-indexes commence

https://github.com/matrix-org/matrix-react-sdk/pull/1948/files#diff-8bc8827809a72c7548846c443d19f00aR29
2018-06-18 15:24:34 +01:00
David Baker
94125fb566 Fix widgets re-appearing after being deleted
Widgets would sometimes briefly re-appear after having been deleted.
This was because of the following race:
 * User presses delete, send POST req, we set `deleting`. Widget hides.
 * POST request completes, we unset `deleting` so widget unhides.
 * State event comes down sync so widget hides again.

This fixes this by introducing `waitForRoomWidget` and using it to
wait until the state event comes down the sync until clearing the
`deleting` flag.

Since we now have `waitForRoomWidget`, this also uses it when adding
a widget so the 'widget saved' appears at the same time the widget
does.
2018-06-13 15:50:19 +01:00
Michael Telatynski
ffec32c7d9
Merge pull request #1943 from akihikodaki/react
Import react as React in src/components/views/elements/DNDTagTile.js
2018-06-06 10:08:52 +01:00
Akihiko Odaki
bf0d03bce3 Import react as React in src/components/views/elements/DNDTagTile.js
Signed-off-by: Akihiko Odaki <nekomanma@pixiv.co.jp>
2018-06-06 17:59:50 +09:00
Travis Ralston
254e8c358a Remove unused imports
Signed-off-by: Travis Ralston <travpc@gmail.com>
2018-05-28 11:38:09 -06:00
Travis Ralston
98613748b6 Move Scalar Widget URL check to WidgetUtils
Signed-off-by: Travis Ralston <travpc@gmail.com>
2018-05-27 11:12:55 -06:00
Travis Ralston
23162c8625 Support third party integration managers in AppPermission
Alternative integration managers may wish to also wrap widgets to supply a better user experience. With the previous code, it was not possible to use the integrations_widgets_urls configuration option (described in AppTile). AppPermission should use the same logic to determine if a widget is being wrapped, so it can display a helpful URL for the user (instead of the wrapper URL).

Signed-off-by: Travis Ralston <travpc@gmail.com>
2018-05-27 10:56:50 -06:00
Matthew Hodgson
3bf28a08ec experiments in dharma 2018-05-25 03:17:29 +01:00
Richard Lewis
b2c26e6984
Merge pull request #1920 from matrix-org/rxl881/refreshWidget
Add a "reload widget" button.
2018-05-24 18:11:22 +01:00
Richard Lewis
9753ee8d82 Better check of jitsi widget message origin. 2018-05-24 16:14:18 +01:00
Richard Lewis
a13d58f6c2 More thorough check of IM URL validity. 2018-05-24 14:58:59 +01:00
Luke Barnard
ef686a966d Add cookie warning to widget warning (AppPermission) 2018-05-23 10:46:32 +01:00
Richard Lewis
6df3371c6c Add a "reload widget" button. 2018-05-22 19:14:54 +01:00
Luke Barnard
31dcd85c08 Add customisable cancel button to QuestionDialog 2018-05-22 15:45:58 +01:00
Matthew Hodgson
4972a234c4 Merge branch 'develop' into matthew/slate 2018-05-19 12:58:43 +01:00
Matthew Hodgson
b60ccad29b Merge branch 'develop' into matthew/slate 2018-05-15 01:00:07 +01:00
Luke Barnard
e596924074 Merge branch 'develop' into release-v0.12.4 2018-05-14 17:43:40 +01:00
Luke Barnard
ff0254d346 Fix ContextualMenu imports for TagTile and code block copy button 2018-05-14 17:36:57 +01:00
Luke Barnard
49a3770e92 Merge branch 'release-v0.12.4' into develop 2018-05-14 14:31:18 +01:00
Luke Barnard
cf8077e605 Set loading: false when iFrame finishes loading 2018-05-14 11:42:38 +01:00
Luke Barnard
6345e474f5 Remove unused conditional 2018-05-14 11:38:17 +01:00
Matthew Hodgson
c1000a7cd5 emojioneify the composer
and also fix up the selectedness CSS for pills and emoji
2018-05-14 03:02:12 +01:00
Travis Ralston
9e11720191 Add setting to enable widget screenshots (if widgets declare support)
Fixes the remainder of https://github.com/vector-im/riot-web/issues/6708

Signed-off-by: Travis Ralston <travpc@gmail.com>
2018-05-12 14:30:59 -06:00
Matthew Hodgson
f8fd90c559
Merge pull request #1889 from matrix-org/t3chguy/replies-html-tag
T3chguy/replies html tag
2018-05-12 20:22:54 +01:00
Michael Telatynski
dbbcabfed8
switch from asymmetrical fallback form to a cleaner one mx-reply
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-05-12 15:58:25 +01:00
Luke Barnard
9c5c5e282b Send visibility only when changed, and messaging is available 2018-05-11 18:20:23 +01:00
Luke Barnard
a419056040 Delinting 2018-05-11 18:20:14 +01:00
Luke Barnard
06919e22d6 When stickerpicker made visible, send visibility over postMessage 2018-05-11 18:20:00 +01:00
Luke Barnard
bd0301c666 Add API to send visibiliy actions to widgets 2018-05-11 18:17:55 +01:00
Luke Barnard
42c59b5923 Make AppTile in Stickerpicker persistent using PersistedElement 2018-05-11 18:17:48 +01:00
Luke Barnard
06898394eb Send visibility only when changed, and messaging is available 2018-05-11 18:06:58 +01:00
Luke Barnard
1f2f3474ed Delinting 2018-05-11 17:28:12 +01:00
Luke Barnard
8b049b2182 When stickerpicker made visible, send visibility over postMessage 2018-05-11 16:51:03 +01:00
Luke Barnard
4b6378a80d Add API to send visibiliy actions to widgets 2018-05-11 16:22:54 +01:00
Luke Barnard
746eeee33c Make AppTile in Stickerpicker persistent using PersistedElement 2018-05-11 15:07:51 +01:00
Luke Barnard
770e2d400e Improve appearance of short-lived app loading spinner
by hiding it for 500ms - thereby only showing it if the loading is
taking a long time.
2018-05-09 17:28:41 +01:00
Luke Barnard
97b9316ec7 Fix issue incorrect positioning with widget loading indicator
by making sure to apply the correct CSS class to the parent
2018-05-09 17:28:18 +01:00
Luke Barnard
0c1846630c Improve appearance of short-lived app loading spinner
by hiding it for 500ms - thereby only showing it if the loading is
taking a long time.
2018-05-09 16:54:01 +01:00
Luke Barnard
bcf003757c
Merge pull request #1884 from matrix-org/luke/fix-glitchy-widget-spinner
Fix issue incorrect positioning with widget loading indicator
2018-05-09 16:52:11 +01:00
Luke Barnard
59cbaf67bb Fix issue incorrect positioning with widget loading indicator
by making sure to apply the correct CSS class to the parent
2018-05-09 15:48:53 +01:00
Richard Lewis
8e1ba6d139 Always allow users to edit their user widgets. 2018-05-08 22:44:49 +01:00
Michael Telatynski
97d344483e
fix thinko when changing from ClientPeg to context in static method (DUH
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-05-03 14:32:13 +01:00
Michael Telatynski
4892694e77
use more explicit reply fallback closing tag construct to fix 6657
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-05-03 11:24:10 +01:00
Michael Telatynski
f2102e283c
Merge branches 'develop' and 't3chguy/m.relates_to' of github.com:matrix-org/matrix-react-sdk into t3chguy/m.relates_to 2018-05-02 13:08:38 +01:00
Michael Telatynski
11ae0805b0
re-order ReplyThread methods for readability
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-05-01 17:42:58 +01:00
Luke Barnard
56ec7713bb Refresh group rooms and members when selecting a tag 2018-05-01 16:54:14 +01:00
Michael Telatynski
bbce6eea5b
update comment
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-30 23:28:55 +01:00
Michael Telatynski
4021fc049c
re-arrange method order to group statics before instance methods
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-29 00:54:54 +01:00
Michael Telatynski
c00c52e537
added another comment
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-29 00:53:35 +01:00
Michael Telatynski
407be88c92
add comment
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-29 00:51:39 +01:00
Michael Telatynski
5bb15b1002
simplify logic
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-29 00:48:44 +01:00
David Baker
74651b93ab Merge remote-tracking branch 'origin/dbkr/fix_session_restore_fail_dialog_ux' into dbkr/bug_report_dialog_basedialog 2018-04-27 15:57:15 +01:00
David Baker
27b18c457e Lint 2018-04-27 15:56:28 +01:00
David Baker
efd29193b7 Fix UX issues with bug report dialog
* Make it use BaseDialog / DialogButtons (also gives it has a top-right 'x' &
   escape to cancel works)
 * Stop misusing the 'danger' CSS class on the buttons. There is nothing dangerous
   about submitting logs.
 * Continued campaign against 'Click here' links.

Fixes https://github.com/vector-im/riot-web/issues/6622
2018-04-27 15:23:35 +01:00
David Baker
6d9e07580b UI fixes in SessionRestoreErrorDialog
* Make the 'delete my data' button not the default
 * Make it red
 * Give it a confirmation dialog
 * Remove the 'cancel' button: what does it mean to cancel an error?
   In this case, it tried again and almost certainly got the same error.
 * Remove the top-right 'x' and don't cancel on esc for the same reason.
 * Move 'send bug report' to a button rather than a 'click here' link
 * Add a 'refresh' button which, even if it's no more likely to work,
   will at least look like it's doing something (it's mostly so if you
   don't have a bug report endpoint, there's still a button other
   than the one that deletes all your data).
2018-04-27 12:38:49 +01:00
Michael Telatynski
2e29a0857b
improve stripPlainReply comment and fix leading NewLine
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-27 12:12:01 +01:00
Michael Telatynski
68dd57f56e
rename two methods
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-27 11:47:18 +01:00
Michael Telatynski
3050553fc2
rename and change getInReplyTo
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-27 11:44:14 +01:00
Michael Telatynski
ca766df598
call onWidgetLoad on componentDidUpdate
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-27 11:32:04 +01:00
Michael Telatynski
fdf63fd440
replace concat on comment from review
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-27 11:31:04 +01:00
Michael Telatynski
3ba9f560d4
get MatrixClient from context
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-27 11:30:47 +01:00
Michael Telatynski
88f48914b4
improve comment
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-27 11:28:17 +01:00
David Baker
f70096b8fa Fix error handling on session restore
Fix a number of failures that meant the excellent error handling
we had for failing to restore a session didn't work.

1. .catch on the promise rather than try/catch: it's async
2. Explicit cancel method in SessionRestoreErrorDialog that invokes
   onFinished with `false` because even with the catch fixed, this
   was getting the event as its first arg which is truthy, so
   clicking cancel still deleted your data.
3. DialogButtons: Don't pass onCancel straight into the button event
   handler as this leaks the MouseEvent through as an argument.
   Nothing is using it and it exacerbates failures like this
   because there are surprise arguments.

Fixes https://github.com/vector-im/riot-web/issues/6616
2018-04-26 17:07:58 +01:00
Richard Lewis
b2d6dd8f6e Optionally hide widget popout button. 2018-04-25 16:28:27 +01:00
Richard Lewis
0f0e89d394 Add a button to 'pop out' widgets in to their own tab. 2018-04-25 12:49:30 +01:00
Michael Telatynski
941bb94234
fix reply fallback blunder
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-20 10:15:15 +01:00
Michael Telatynski
58cd585e86
start of BigMerge fixup
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-20 09:12:02 +01:00
Michael Telatynski
a90bd6cd4f
Allow collapsing ReplyThread from MessageContextMenu
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-13 12:28:58 +01:00
Matthew Hodgson
40a67ca8fe point imports at the new locations 2018-04-13 00:43:44 +01:00
Michael Telatynski
c77807bd22
Merge branches 'develop' and 't3chguy/m.relates_to' of github.com:matrix-org/matrix-react-sdk into t3chguy/m.relates_to
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

# Conflicts:
#	src/i18n/strings/en_EN.json
#	src/i18n/strings/eu.json
#	src/i18n/strings/fr.json
#	src/i18n/strings/lv.json
#	src/i18n/strings/ru.json
#	src/i18n/strings/zh_Hant.json
2018-04-12 09:48:06 +01:00
Matthew Hodgson
8ab8f76254 move non-Riot-specific components over from riot-web 2018-04-11 23:58:04 +01:00
Matthew Hodgson
2d8880ec5f patch NPE on Pill when lazyloading members 2018-04-09 23:02:15 +01:00
David Baker
28bf76b319
Merge pull request #1824 from matrix-org/luke/fix-wrappedRef-warning
Fix warning "Unknown prop `wrappedRef` on <div> tag..."
2018-04-05 17:49:35 +01:00
Luke Barnard
e20f223e78 Fix warning "Unknown prop wrappedRef on <div> tag..."
GeminiScrollbar should not receive wrappedRef as a property,
so remove it using object destructuring.
2018-04-05 17:39:25 +01:00
Richard Lewis
a41384a994 Fix function binding. 2018-04-04 23:45:47 +01:00
Michael Telatynski
1d90835de0
Merge branches 'develop' and 't3chguy/m.relates_to' of github.com:matrix-org/matrix-react-sdk into t3chguy/m.relates_to
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

# Conflicts:
#	src/components/structures/RoomView.js
2018-04-04 11:08:34 +01:00
Richard Lewis
f8f8bc469e Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/snapshot 2018-04-03 11:34:14 +01:00
Richard Lewis
aefccb134c Ensure deleting is set to false. 2018-03-29 16:56:25 +01:00
Richard Lewis
4ac9653ab9 Refactor widget postMessage API. 2018-03-28 12:22:06 +01:00
Michael Telatynski
fac89d9c58
Merge branch 'develop' into t3chguy/m.relates_to 2018-03-28 08:38:33 +00:00
Luke Barnard
944940057e Remember that React needs React 2018-03-27 13:04:26 +01:00
Luke Barnard
2ffcad0981 Convert GeminiScrollbarWrapper to stateless component 2018-03-27 13:04:26 +01:00
Luke Barnard
39e9d52c04 Make sure to proxy special prop ref 2018-03-27 13:04:26 +01:00
Luke Barnard
b80568b1c5 Wrap GeminiScrollbar in a component, enabled forceGemini
Fixes https://github.com/vector-im/riot-web/issues/6294
2018-03-27 13:04:26 +01:00
Michael Telatynski
b5ed08eba2
Merge
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-03-24 17:52:49 +00:00
David Baker
580b68a1b6
Merge pull request #1652 from pvagner/dialog-a11y
Dialog a11y
2018-03-20 11:35:57 +00:00
Michael Telatynski
661073493b
implement desired m.room.message->m.text fallbacks
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-03-16 18:31:17 +01:00
Richard Lewis
4d8f5072f7 Allow react performance profiling on widget iframes. 2018-03-16 10:20:14 +00:00
Richard Lewis
66ea78de65 Clean up whitelisted permission addition / logging. 2018-03-13 11:59:15 +00:00
Richard Lewis
8b311c706c Null guard widget listener 2018-03-13 11:58:47 +00:00
Richard Lewis
f820374f9f Logging. 2018-03-13 11:01:51 +00:00
Richard Lewis
de33294000 Center loading spinner. 2018-03-13 10:07:49 +00:00
Richard Lewis
b2d23b6999 Switch to 'm.sticker' message events. Allow whitelisting of wisget capabilities. 2018-03-12 13:56:02 +00:00
Michael Telatynski
14f29e4740
fix the bugs Tulir found - THANKS
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-03-09 23:37:42 +00:00
Richard Lewis
fdec4b36c9 Hide padding if last control. 2018-03-08 17:25:28 +00:00
Richard Lewis
3ab8b1f866 Hide sticker picker delete button and show minimise button. 2018-03-08 17:20:42 +00:00
Michael Telatynski
ed8f087eb6
fix access of element [0] of array even though it sometimes does not exist
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-03-06 15:17:57 +00:00
Richard Lewis
e2cedbe9d7 Pull in changes from develop 2018-03-05 16:43:59 +00:00
Michael Telatynski
df56a67fda
Add reply fallback and run gen-i18n
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-03-04 12:39:34 +00:00
David Baker
9a7a7ea2d6
Merge pull request #1784 from matrix-org/luke/fix-group-avatar-default-colour
Fix varying default group avatar colour for given group
2018-03-01 15:56:33 +00:00
Luke Barnard
94c1baa25d Fix varying default group avatar colour for given group 2018-03-01 15:42:22 +00:00
Luke Barnard
4037a22492 Fix bug where avatar change not reflected in LLP
Fixes vector-im/riot-web#6189
2018-03-01 14:40:03 +00:00
Luke Barnard
567d83ba52 Update PowerSelector to support powerLevelKey prop
As a key to send as second argument to onChange. This is useful
when passing the same callback to multiple PowerSelectors.
2018-02-28 16:15:20 +00:00
Richard Lewis
2b0790b32b Fix PropTypes. 2018-02-25 22:36:59 +00:00
Richard Lewis
b2bf4d4709 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/snapshot 2018-02-23 15:37:33 +00:00
Richard Lewis
d755b8284c Remove logging and cleanup. 2018-02-23 15:22:56 +00:00
Richard Lewis
13bebd69c9 Made comment "react-style". 2018-02-21 23:35:57 +00:00
Richard Lewis
ecde099146 Fix typo. 2018-02-21 23:24:53 +00:00
Richard Lewis
7e8660cd37 Add comment for "is" attribute. 2018-02-21 23:23:44 +00:00
Richard Lewis
ffb524b6a5 Allow widget iframes to request camera and microphone permissions. 2018-02-21 23:10:08 +00:00
Michael Telatynski
90f9badbf3
s/Reply/ReplyThread/
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-20 15:40:19 +00:00
Michael Telatynski
7048d85246
attach message_sent and replies to file uploads
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-19 23:42:04 +00:00
Michael Telatynski
6510989ac6
move unmounted init to willMount
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-19 14:28:31 +00:00
Michael Telatynski
8fa56f8c9a
update and improve comments
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-19 14:27:10 +00:00
Michael Telatynski
4c08c51044
Reply; delay call to onWidgetLoad until after async setState completes
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-16 21:24:42 +00:00
Michael Telatynski
0d6fc9bd3a
fix Composer focus after twiddling with Replies
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-16 21:17:41 +00:00
Michael Telatynski
f1a3592eff
fix 12/24h in Reply/ReplyPreview
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-16 21:14:03 +00:00
Michael Telatynski
2e3cbb309e
Merge branches 'develop' and 't3chguy/m.relates_to' of github.com:matrix-org/matrix-react-sdk into t3chguy/m.relates_to 2018-02-16 14:35:04 +00:00
Luke Barnard
a34fea8af8 Merge branch 'develop' into luke/feature-tag-panel-tile-context-menu 2018-02-13 16:51:00 +00:00
Luke Barnard
db0ea9eb0e Merge branch 'develop' into luke/room-list-flux 2018-02-13 10:18:24 +00:00
Luke Barnard
e3f68f12c8 Add context menu to TagTile
With two options: View Community and Remove, which
removes the tag from the panel.
2018-02-12 18:01:08 +00:00
Michael Telatynski
aeedf48d84
fix weird in op behaviour with null
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-11 11:45:13 +00:00
Michael Telatynski
7bf05b0715
add unmounted guard
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-10 16:01:19 +00:00
Michael Telatynski
25bc9cfbe7
make spinner size more appropriate
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-10 15:47:32 +00:00
Michael Telatynski
7425d01b21
tidy, improve error handling and improve Replies, run gen-i18n
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-10 15:45:42 +00:00
Michael Telatynski
23c0daa83a
pass onWidgetLoad to fix console err for e2e
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-10 12:41:31 +00:00
Michael Telatynski
fbb950e064
mass s/Quote/Reply
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-10 12:38:25 +00:00
Michael Telatynski
18145460b2
fix Replies for e2e
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-10 12:31:22 +00:00
Michael Telatynski
1c3d8cbe6e
initial refactor of Replies to use B explicit over-the-wire format
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-10 11:19:43 +00:00
Richard Lewis
9e3c1fbc7a Pass room name. 2018-02-09 11:44:27 +00:00
Richard Lewis
5e30468a00 Linting 2018-02-07 14:48:43 +00:00
Richard Lewis
7b75dbbd15 Use default AppTile menu bar. 2018-02-07 14:44:01 +00:00
Peter Vágner
14991afbe5 Merge branch 'develop' into dialog-a11y 2018-02-06 23:04:15 +01:00
Luke Barnard
cf4ae681f4
Offline mode (#1723)
* Allow the client to run without connection to HS (i.e. using indexeddb)

Allows running without having pushRules (it's safe not to have these 
when running from indexeddb sync.)

This means rooms will be displayed with "unknown" notifcation state.

This assumes anything that uses the push rules will get pushRule state
again when the client starts syncing again.

For recovering from being disconnected, 
* If an avatar has fallen back, try again on reconnection
* If a thumbnail image failed to load, retry on reconnect
* Load joined groups when reconnecting

Update tests to give MELS a context.matrixClient
2018-02-06 17:50:53 +00:00
Luke Barnard
ff8fcb3139
Merge branch 'develop' into luke/room-list-flux 2018-02-05 11:39:39 +00:00
Michael Telatynski
6dd63ae644
Null guard against falsey (non-null) props.node, to make react happy
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-29 19:17:46 +00:00
lukebarnard
73e3a594ac Prevent TagTiles from being dragged into other droppables
for the time being at least.
2018-01-25 22:52:19 +01:00
Michael Telatynski
e3e3535072
delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-22 17:02:20 +00:00
Michael Telatynski
4490715b60
Merge branch 'develop' into t3chguy/rich_quoting_linear 2018-01-22 16:46:20 +00:00
Michael Telatynski
a6cefb83f8
basic error handling for malformed quotes
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-22 16:41:32 +00:00
Michael Telatynski
3b1d69edbb
Change Quotes to be linearly rendered rather than recursively nested
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-22 16:34:47 +00:00
lukebarnard
75a1922731 Fix linting 2018-01-19 14:07:13 +00:00
Matthew Hodgson
6c15bd8599 fix NPE when getGroupProfiles returns null 2018-01-19 10:39:38 +00:00
Richard Lewis
23bef68a8f Fix duplicate message listeners 2018-01-18 13:16:06 +00:00
Richard Lewis
1293c53c4b Cleanup 2018-01-18 12:02:45 +00:00
Richard Lewis
3331c8af27 Use dispatcher ref for unregister call. 2018-01-17 15:40:04 +00:00
lukebarnard
16c13fb079 Replace TagPanel react-dnd with react-beautiful-dnd
This new library handles the simple case of an ordered vertical
(or horizontal) list of items that can be reordered.

It provides animations, handles positioning of items mid-drag
and exposes a much simpler API to react-dnd (with a slight loss
of potential function, but we don't need this flexibility here
anyway).

Apart from this, TagOrderStore had to be changed in a highly
coupled way, but arguably for the better. Instead of being
updated incrementally every time an item is dragged over
another and having a separate "commit" action, the
asyncronous action `moveTag` is used to reposition the tag in
the list and both dispatch an optimistic update and carry out
the request as before. (The MatrixActions.accountData is still
used to indicate a successful reordering of tags).

The view is updated instantly, in an animated way, and this
is handled at the layer "above" React by the DND library.
2018-01-15 18:12:27 +00:00
Richard Lewis
5e6da4d758 * Fix key error
* Remove redundant logging
* Catch error
2018-01-15 14:22:41 +00:00
Richard Lewis
1ab71f6f50 Load stickers in AppTile 2018-01-11 13:20:58 +00:00
Richard Lewis
4f3670941d Bind functions 2018-01-11 12:33:02 +00:00
Richard Lewis
d0c16fa7a1 Convert to ES6 class. 2018-01-11 11:49:46 +00:00
David Baker
292a6c5767
Merge pull request #1674 from aidalgol/rebase-dialogs
Normalise dialogs
2018-01-11 10:49:40 +00:00
Michael Telatynski
1a7dc22a8d
make wantsDateSeparator generic and throw into DateUtils
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-10 12:06:24 +00:00
Michael Telatynski
1bc9d344ae
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/nvl/rich_quoting
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

# Conflicts:
#	src/components/views/messages/TextualBody.js
2018-01-10 11:54:58 +00:00
Michael Telatynski
a977ab9be4
change handler name to suit convention
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-10 11:51:23 +00:00
Aidan Gauland
9365860075 Update copyright line 2018-01-09 18:40:12 +13:00
Richard Lewis
0577316c86 Fix duplicate event registration. 2018-01-08 13:40:33 +00:00
Richard Lewis
dc1423052f De-register listener. 2018-01-08 11:32:23 +00:00
David Baker
5aed77c752
Merge pull request #1677 from aidalgol/PropTypes
Remove use of deprecated React.PropTypes
2018-01-05 11:53:55 +00:00
Peter Vágner
cf472c791d Consume all combinations of space / enter, keyDown / keyUp presses and
try to explain this key handling inconsistency with some additional
comments as per the review discussion.
2018-01-05 11:45:45 +01:00
Richard Lewis
54d128658e Comment logging. 2018-01-04 23:00:10 +00:00
Richard Lewis
d20aebfbd7 Correctly handle sticker message events. 2018-01-04 18:58:55 +00:00
Richard Lewis
eb4053bc99 Handle sticker message payloads 2018-01-04 18:41:47 +00:00
lukebarnard
55bfff24c4 Fix forgotten rename during d5e2a73d99 2018-01-04 17:46:44 +00:00
lukebarnard
d495519986 Fix shift-ctrl-click
isOnlyCtrlOrCmdKeyEvent is predicated on !shiftKey, so another function was needed for cases where we ignore other keys
2018-01-03 11:39:15 +00:00
lukebarnard
133837cdbe Document initial state 2018-01-02 15:59:10 +00:00
lukebarnard
833cd321f3 Log warning in case of failed group profile fetch 2018-01-02 15:58:24 +00:00
lukebarnard
31855f18f8 Initialise profile state 2018-01-02 15:56:32 +00:00
lukebarnard
2cb4c897ce Move getInitialState before componentWillMount 2018-01-02 13:45:19 +00:00
lukebarnard
3cb128094d Add more comments to TagTile to explain what it is 2018-01-02 13:44:22 +00:00
lukebarnard
80f11e5c77 Comment tag PropType 2018-01-02 13:34:47 +00:00
Richard Lewis
a408b98504 Set widget ID on WidgetMessaging instance. 2017-12-29 14:34:52 +00:00
Richard Lewis
7660176079 Fix comment linting errors.
Stop listening and cleanup endpoints correctly.
2017-12-28 22:27:12 +00:00
Aidan Gauland
35780f5ae0 Remove use of deprecated React.PropTypes
Replace all uses of React.PropTypes with PropTypes and importing PropTypes from
'prop-types'.
2017-12-26 14:03:18 +13:00
Aidan Gauland
e4b86f0730 Fix use of deprecated module
Use PropTypes from "prop-types" instead of the deprecated React.PropTypes
submodule.
2017-12-26 11:55:15 +13:00
Aidan Gauland
45d86ea7ca Add DialogButton component
A component to normalise the buttons in dialogs.
2017-12-23 17:02:19 +13:00
Richard Lewis
baf472b4a3 Only show snapshot button when apps are maximised. 2017-12-19 17:16:38 +00:00
Richard Lewis
08bcfc5c4e Make sure that capabilities array is initialised. 2017-12-19 17:15:06 +00:00
Michael Telatynski
47d4e5f8d1
nest quotes, but only when people want to click through them
loads pre-emptively

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-18 19:28:01 +00:00
Michael Telatynski
9603b21199
s/Quote/Reply/ and ES6 tweaks
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-17 20:20:45 +00:00
Richard Lewis
83f9a4162b Request capabilities (e.g. ability to take snapshots) from widgets. 2017-12-16 09:16:24 +00:00
Richard Lewis
e63f5696a6 Screenshot handlers 2017-12-15 21:36:02 +00:00
Michael Telatynski
0ad0c0e9f7
finish i18n, and add a Date Sep to quote if it needs it
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-15 18:39:01 +00:00
Luke Barnard
6f896098e3 Get Group profile from TagTile instead of TagPanel
So that instead of getting all group profiles everytime the tags
change order, get them when the TagTile mounts for a group tag.
2017-12-15 17:18:46 +00:00
Richard Lewis
f2ad7be3f3 Add event handlers and comments. 2017-12-15 16:56:02 +00:00
Richard Lewis
f410112983 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into rxl881/snapshot 2017-12-15 10:18:56 +00:00
Luke Barnard
9975941f3c
Merge pull request #1653 from matrix-org/luke/feature-ordered-tag-panel
DnD Ordered TagPanel
2017-12-14 10:36:16 +00:00
Peter Vágner
9f5857a7cc Merge branch 'develop' into dialog-a11y 2017-12-14 11:04:59 +01:00
Richard Lewis
c739269777 Update widget title on edit. 2017-12-13 10:14:26 +00:00
Michael Telatynski
38e8488c2a
we don't actually use state.room
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-12 23:25:38 +00:00
Richard Lewis
c93266b6af Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/titleBar 2017-12-11 13:08:49 +00:00
Michael Telatynski
b6182f7e6c
Tidy Quote class, removing comments etc
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-10 12:54:19 +00:00
Michael Telatynski
0f85391587
Implement Rich Quoting/Replies
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-10 12:50:41 +00:00
Richard Lewis
24db57bfb6 Fix api prefix. 2017-12-08 18:47:00 +00:00
Matthew Hodgson
f2d68e4601
Merge pull request #1649 from matrix-org/rxl881/titleBar
Add maximize / minimize apps drawer icons.
2017-12-08 19:18:45 +01:00
Richard Lewis
20917e1a07 Set page title from widget data, if available. 2017-12-08 15:12:48 +00:00
Luke Barnard
72550961e5 Move 'commit_tags' to action creator 2017-12-08 10:52:20 +00:00
Luke Barnard
4603d593de
Merge pull request #1588 from pvagner/develop
Add some missing translatable strings
2017-12-07 09:41:39 +00:00
Peter Vágner
839f938c91 Argh! Reworked AccessibleButton key handling again. It turned out by
fixing behaviour when pressing the enter key breaks behaviour when
pressing space to activate the buttons. So we are now handling enter
onKeyDown and space onKeyUp. Also briefly explained the situation with
comments.
2017-12-07 10:20:27 +01:00
Richard Lewis
ed675fe791 Allow bypass of widget loading screen on hide / show. 2017-12-06 22:54:32 +00:00
Luke Barnard
65d88334a9 Fix linting
React DnD specifies functions with upper-case first letters
2017-12-06 16:48:18 +00:00
Richard Lewis
e20db416f2 Add field to bypass riot widget loading screen. 2017-12-06 16:44:41 +00:00
Luke Barnard
a8a650c24a Move TagTile to separate file, and make it dragable 2017-12-06 11:25:46 +00:00
Peter Vágner
f9b0243c8e Merge branch 'develop' into dialog-a11y 2017-12-06 11:10:18 +01:00
Peter Vágner
802abe7091 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into develop 2017-12-06 11:07:01 +01:00
Peter Vágner
eda453bbe5 Fixed an issue where pressing enter key to activate the AccessibleButton
was also activating normal button that might just have received the
system focus as a result of the key press and the other way round.
The most obvious occurence of this issue is that dialogs were
reappearing when dismissed by pressing the enter key.
2017-12-05 23:23:40 +01:00
Richard Lewis
3206527d73 Remove logging. 2017-12-05 21:59:44 +00:00
Richard Lewis
7f86ed35a3 Only show custom title if different from app name. 2017-12-05 21:49:11 +00:00
Richard Lewis
1415a83a61 Merge branch 'rxl881/titleBar' of https://github.com/matrix-org/matrix-react-sdk into rxl881/customTitle 2017-12-05 21:42:47 +00:00
Richard Lewis
d5d5397959 Set custom widget title. 2017-12-05 21:41:44 +00:00
Richard Lewis
9fd8deb16d Add maximize / minimize apps drawer icons. 2017-12-05 18:18:51 +00:00
Richard Lewis
49a2985515 Register message endpoints.
Store endpoint origins only.
2017-12-05 00:08:17 +00:00
Richard Lewis
c9b8aab0e0 Workings for future posterity - Can't access iframe content from parent. iframe needs to initiate. Postmessage data up the stack. 2017-12-03 19:44:59 +00:00
Richard Lewis
3a89b90e57 Add stub handler for image snapshot 2017-12-03 11:25:15 +00:00
Richard Lewis
5ff5ca4705 Remove logging and broken title fetching functions. 2017-11-30 14:50:30 +00:00
Richard Lewis
2cfbbb000e Refactor messaging listerners. 2017-11-30 10:20:29 +00:00
Richard Lewis
4f5f44ff38 Add widget postmessage API stub. 2017-11-29 22:16:22 +00:00
Luke Barnard
3addb924b1 Replace (IRC) with flair
If a user has public groups that are honoured in their flair, remove the (IRC) to give the appearance that the flair replaces it.
2017-11-28 13:50:05 +00:00
Peter Vágner
093f110199 Make the toggle button on the memberEventListSummary translatable 2017-11-18 17:48:57 +01:00
Peter Vágner
184b29daf8 Revert "Make the disabled PowerSelector element showing custom value translatable. Fixes #5547"
This reverts commit 681f43913a.
2017-11-18 16:58:36 +01:00
Stefan Parviainen
8090aadb0e Add aria-labels to ActionButtons
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-11-17 14:33:39 +01:00
Luke Barnard
dad797d4a2 Run linting --fix 2017-11-16 13:19:36 +00:00
Richard Lewis
750e64deee Pass required props to TintableSvg. 2017-11-15 15:17:21 +00:00
Richard Lewis
7bab7813bb Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/invertOutlineColour 2017-11-15 13:26:29 +00:00
Richard Lewis
59d405d4fa Use TintableSvgButtons for widget menubar icons. 2017-11-15 13:24:38 +00:00
Richard Lewis
6c2e9096cd Tintable SVGs that behave like normal image buttons / links. 2017-11-15 13:08:24 +00:00
Matthew Hodgson
96a3eff5d3 lint hell 2017-11-15 11:25:56 +00:00
Travis Ralston
bd4102eb3d Merge branch 'develop' into travis/granular-settings 2017-11-14 19:12:48 -07:00
Richard Lewis
58966c5c3d Make edit icon green by default 2017-11-14 19:53:59 +00:00
Richard Lewis
e87940f63c Make app tile title stronger 2017-11-14 19:53:32 +00:00
Luke Barnard
3fa1bece0a Simplify further
Also fix not-i18n-friendly "of" to be "=".
2017-11-14 13:06:54 +00:00
Luke Barnard
c3492634bd Merge branch 'luke/fix-member-info-power-level-display' into luke/fix-restrict-power-level-options 2017-11-14 12:41:36 +00:00
Luke Barnard
d2ef6bffa8 Remove reverseRoles
This variable seemed redundant in hindsight, it seemed better to remove it than to worry about where it went in the component.
2017-11-14 12:02:37 +00:00
Travis Ralston
c5c346f0b7 Merge branch 'develop' into travis/granular-settings 2017-11-13 12:18:41 -07:00
Luke Barnard
52af7a7659 Attempt to clarify the affect that the users_default has on power levels
This modifies displayed power levels such that:
 - If users_default is !== 0:
   - the power level 0 is displayed as "Restricted (0)"
   - the power level users_default is displayed as "Default ({users_default})"
 - Otherwise:
   - the power level 0 is displayed as "Default (0)"

When changing users_default, to say, 10, when the textual powers are rendered
again, they will take users_default into account. So those previously at 10
and which would have previously have been rendered "Custom of 10" will now
read "Default (10)". Conversely, those that were "Default (0)" will now read
"Restricted (0)".
2017-11-13 17:03:48 +00:00
Luke Barnard
88010fa26c Determine whether power level is custom once Roles have been determined
Instead of potentially inspecting an empty {} before mounting.

This fixes an issue where "Custom of N" would appear on the first mount of MemberInfo - part of https://github.com/vector-im/riot-web/issues/5107#issuecomment-331882294
2017-11-13 11:57:34 +00:00
Luke Barnard
a96bfee9f2 Remove unused UserSettingsStore import 2017-11-10 16:12:27 +00:00
Luke Barnard
ceda5939f9 Remember to import React 2017-11-10 15:55:55 +00:00
Luke Barnard
853d33a93a Make groups a fully-fleged baked-in feature 2017-11-10 15:42:11 +00:00
Luke Barnard
6e1cf6ce17
Merge pull request #1548 from matrix-org/rxl881/widgetrendering
Improve widget rendering on prop updates
2017-11-10 12:41:20 +00:00
Richard Lewis
ba8a9f2a43 Comment length 2017-11-10 11:50:14 +00:00
Luke Barnard
6deeaf94d6 group name not required 2017-11-10 11:43:05 +00:00
Richard Lewis
d2070a08d8 Replace 'qs' dep. with 'querystring' 2017-11-10 11:42:56 +00:00
Peter Vágner
681f43913a Make the disabled PowerSelector element showing custom value translatable. Fixes #5547 2017-11-10 11:26:53 +01:00
Richard Lewis
bd6b5c4498 Improve function name. 2017-11-10 10:17:55 +00:00
Richard Lewis
98ac3dd19b Explicitly set initialisation state. 2017-11-10 09:44:58 +00:00
Richard Lewis
da8b1ff1cd Ensure that loading state is reset when showing app panel. 2017-11-09 14:28:24 +00:00
Richard Lewis
f796bc79c3 Fix addition of scalar token to widget URL.
Add error logging.
2017-11-09 14:07:29 +00:00
Luke Barnard
9027780215 Show group name in flair tooltip if one is set
e.g. "Group Name (+group_id:homeserver)" or "+group_id:homeserver"

Fixes https://github.com/vector-im/riot-web/issues/5341
2017-11-09 12:38:43 +00:00
Richard Lewis
8016fb82d7 Fix broken commit. 2017-11-08 20:38:54 +00:00
Richard Lewis
56581ef408 Fix various loadingElement related issues. 2017-11-08 20:38:31 +00:00
Richard Lewis
b2b07d9370 Formatting 2017-11-08 20:17:28 +00:00
Richard Lewis
be0a76dbd6 Update variable name and JSdoc for improved clarity. 2017-11-08 17:44:54 +00:00
Travis Ralston
289b0c2b6a
Merge branch 'develop' into travis/granular-settings 2017-11-07 14:55:12 -07:00
Luke Barnard
646cabf324 Add missing whitespace 2017-11-07 15:15:10 +00:00
Luke Barnard
ddc1ff2f23 Name things in a sane way 2017-11-07 15:13:26 +00:00
Luke Barnard
62305a1ccd Implement tooltip for group rooms 2017-11-07 14:07:31 +00:00
Richard Lewis
96de72ab44 Switch to using existing dep "qs" and record in package.json 2017-11-07 12:45:12 +00:00
Richard Lewis
d3784b4925 Fix URL parameter encoding. 2017-11-07 12:33:38 +00:00
Richard Lewis
eb8c15075a Fix url params parsing. 2017-11-07 11:58:38 +00:00
Richard Lewis
70c4100350 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/widgetrendering 2017-11-07 11:04:05 +00:00
Travis Ralston
781b94c8f4 Appease the linter
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-05 15:37:06 -07:00
Travis Ralston
45140cab69 Don't assume false means "use state"
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-04 19:52:42 -07:00
Travis Ralston
cb17c0a379 Migrate blacklistUnverifiedDevicesPerRoom
This currently causes a split-brain scenario for the application due to the priority of each level. Granular settings assumes a simple override, however the crypto setting wants per room to be overriden with the global setting, regardless of the room setting. Some additional comments are needed on the intended behaviour.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-04 19:15:55 -07:00
Travis Ralston
c7eee36990 Fix lanugage detection
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-04 16:38:26 -06:00
Travis Ralston
4f1ad974fc Delay URL preview saving until the save button is pressed
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-11-04 16:32:13 -06:00
Matthew Hodgson
3fd5937687
Merge pull request #1571 from matrix-org/t3chguy/class-warning-thing
Fixes React warning
2017-11-04 15:41:57 +00:00
Travis Ralston
893c39bfbe Merge branch 'develop' into travis/granular-settings 2017-11-03 22:00:07 -06:00
Michael Telatynski
b2cd65e182
Fixes React warning
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-11-03 12:30:58 +00:00
Richard Lewis
853ada027d Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/widgetrendering 2017-11-02 18:34:46 +00:00
Richard Lewis
0e854ee356 Fix loading and initialisation spinners. 2017-11-02 18:33:11 +00:00
Richard Lewis
a52bb9d603 Pass URL to check. 2017-11-02 17:27:59 +00:00
David Baker
8895ab7e5b
Merge pull request #1564 from matrix-org/dbkr/pillify_at_room
Pillify room notifs in the timeline
2017-11-02 14:22:58 +00:00
David Baker
4f8d6d8fbe Pillify room notifs in the timeline
This scans text nodes in the DOM for room notifications and turns
them into pills. Changes the pillification code around a bit so it
works with text nodes. Uses the push processor directly to test
the event against the room notifiation rule so we know whether
this event would actually trigger a room notification (needs to
hook into push at a lower level because otherwise our own room
notifications would not pillify since our own events never
generate notifications).

Requires https://github.com/matrix-org/matrix-js-sdk/pull/565
2017-11-01 19:42:47 +00:00
Richard Lewis
17c0405862 Restructure to pass props from componentWillRecieveProps. 2017-10-31 16:31:46 +00:00
Richard Lewis
758df29b23 Fix onLoad on wrong element. 2017-10-31 10:43:17 +00:00
Richard Lewis
35b33263ea Use querystring lib 2017-10-31 10:37:40 +00:00
Richard Lewis
1cb878bb57 Formatting 2017-10-31 10:04:37 +00:00
Richard Lewis
648b295971 Removed comment 2017-10-31 10:04:02 +00:00
Travis Ralston
f070604350 Rename SettingsCheckbox to be a bit more generic
Splitting out the logic to two components doesn't make sense, but this isn't always a checkbox.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-30 20:08:27 -06:00
Travis Ralston
9c846e4dd9 Fix URL preview options
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-30 19:49:44 -06:00
Travis Ralston
72517f95bb Don't explode if the SdkConfig isn't available
This can happen prior to logging in, for some reason.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-29 22:53:59 -06:00
Travis Ralston
c056f4faa6 Make URL preview checkboxes pretty again
Works for all other settings too!

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-29 22:17:15 -06:00
Travis Ralston
b139c8d01c Generate unique IDs for SettingsCheckbox
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-29 22:16:46 -06:00
Travis Ralston
786bd87fec Support URL previews (with bugs)
Known issues at this point:
* The room-level setting accepts the current user's default, which is wrong
* The checkboxes on RoomSettings are not independent
* The checkboxes in RoomSettings need some layout fixes

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-29 21:48:29 -06:00
Travis Ralston
b5d5c81f32 Add a new component to back various settings
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-29 20:43:27 -06:00
Travis Ralston
0d3f0eaf98 Convert local settings to granular settings
This breaks language selection.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-29 16:53:00 -06:00
Travis Ralston
bf815f4be9 Support labs features
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-10-28 20:21:50 -06:00
Richard Lewis
3756ce606d Check URL prop updates and ensure that widgets are refreshed. 2017-10-27 17:49:14 +01:00
Richard Lewis
7662b5ac8f Unfinished, non-working changes to try and handle URL changes gracefully 2017-10-27 13:47:51 +01:00
Stefan Parviainen
53e983f9c7 Fix merge conflict
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-10-25 18:19:27 +02:00
David Baker
8ed3474b64 Merge pull request #1529 from matrix-org/luke/fix-can-edit-editable-item-lists
Only show editing UI for aliases/related_groups for users /w power
2017-10-25 15:52:51 +01:00
Richard Lewis
fd85c74bc5 Merge pull request #1520 from matrix-org/rxl881/deleteWidget
Add a delete confirmation dialog for widgets
2017-10-25 10:45:52 +01:00
Richard Lewis
2e3bdfd55d Fix string indentation. 2017-10-25 10:45:17 +01:00
Stefan Parviainen
88fd60066f Fix typo
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-10-24 20:07:57 +02:00
Stefan Parviainen
b5024cca75 Further simplify MemberEventListSummary a bit
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-10-24 19:34:08 +02:00
Luke Barnard
640d88f25d Typo 2017-10-24 16:21:18 +01:00
Luke Barnard
ee7ebc425c Only show editing UI for aliases/related_groups for users /w power 2017-10-24 16:19:09 +01:00
Richard Lewis
11d4a63a32 Update text and split across multiple lines. 2017-10-23 23:59:36 +01:00
Richard Lewis
8b7f737c97 Remove logging.
Return early.
2017-10-23 23:47:37 +01:00
Richard Lewis
54bd916862 Split string across multiple lines. 2017-10-23 20:08:52 +01:00
Stefan Parviainen
115772d526 Fix merge conflict
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-10-23 19:57:52 +02:00
Stefan Parviainen
ef30ba889b Make MemberEventListSummary more translatable
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-10-23 19:55:40 +02:00
Richard Lewis
3c4c986aca Update button text 2017-10-23 18:42:43 +01:00
Luke Barnard
2f418976aa Only show flair for groups with avatars set
Fix vector-im/riot-web#5377
2017-10-23 17:06:47 +01:00
Richard Lewis
ee60155846 Add delete widget confirmation dialog. 2017-10-23 17:05:44 +01:00
Matthew Hodgson
440b8e0e31 16px for flair please 2017-10-23 14:56:24 +01:00
Luke Barnard
fd65cb1396 Merge pull request #1501 from matrix-org/luke/groups-are-communities
Groups -> Communities
2017-10-19 12:16:15 +01:00
Luke Barnard
71443e9b94 Remove logs comments 2017-10-19 10:34:24 +01:00
Luke Barnard
5f3c06b38a Factor out Flair cache into FlairStore
This will make invalidating the userGroups cache for the user architecturally more sound (the plan is to have GroupStore hit FlairStore as opposed to Flair itself in order to invalidate the cache).
2017-10-19 10:28:59 +01:00
Luke Barnard
a40704f085 Merge branch 'develop' into luke/groups-are-communities 2017-10-18 15:57:37 +01:00
Stefan Parviainen
7eeed3e093 Simplify MemberEventListSummary by using pluralization provided by the i18n library
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-10-17 23:46:23 +02:00
Luke Barnard
1b8c5b50db Don't show room IDs when picking rooms 2017-10-17 18:02:35 +01:00
Luke Barnard
eaa5dd5f22 Groups -> Communities in the UI
Translation files still need updating, and this would be much simpler with a script that could automate the tedium
2017-10-16 13:18:39 +01:00
Luke Barnard
d3f9a3aeb5 Run eslint --fix
Fixing 1000s of lint issues. Some rules cannot be `--fix`ed but this goes some way to linting the entire codebase.
2017-10-11 17:56:17 +01:00
Luke Barnard
060bf3bdf6 Remove inline CSS 2017-10-11 16:02:01 +01:00
David Baker
0f84216a9f Grey out login form when no valid HS 2017-10-11 14:05:34 +01:00
David Baker
92be3af990 Make it clearer which HS you're logging into
Otherwise there's no indication without clicking 'custom server'
2017-10-10 19:16:42 +01:00
Luke Barnard
8d46b19916 Restrict Flair in the timeline to related groups of the room 2017-10-04 14:06:49 +01:00
Luke Barnard
9e3954865a Fix a couple of bugs with EditableItemList
- fix entering the same thing twice (which had the bug of not emptying the "new" field)
 - fix editing items in the list (which would stack overflow because of typo)
2017-10-04 13:15:38 +01:00
Luke Barnard
28b8582bd6 Merge branch 'develop' into luke/refactor-editable-list-from-alias-settings 2017-10-04 10:37:45 +01:00
Luke Barnard
4e9694be6d Maintain "blur to add" function to match previous UX 2017-10-04 10:28:26 +01:00
Luke Barnard
d25ebfb844 Remove cruft from EIL 2017-10-04 10:15:44 +01:00
Luke Barnard
8243c39d83 Factor out EditableItemList from AliasSettings
Such that we can reuse the same UI elsewhere, namely when editing related groups of a room (which is an upcoming feature).
2017-10-04 10:00:01 +01:00
Stefan Parviainen
a96169e80e Fix merge conflict 2017-10-02 17:57:22 +02:00
Luke Barnard
c8b2158156 Lint 2017-09-29 10:42:23 +01:00
Luke Barnard
18e0d8da86 Rename Flair feature to Groups 2017-09-29 10:27:40 +01:00
Luke Barnard
739ddb8410 Merge branch 'develop' into luke/groups-button 2017-09-28 12:11:26 +01:00
Luke Barnard
6b9a2909df Add rule to enforce spacing in curly brackets in JSX children
This required an updated in version of eslint-plugin-react to 7.4.0.
2017-09-28 11:21:06 +01:00
Luke Barnard
929c8627d3 Add button to get to MyGroups (view_my_groups or path #/groups) 2017-09-27 17:45:49 +01:00
Luke Barnard
d52355f80e Implement adding rooms to a group (or group summary) by room ID 2017-09-27 15:30:58 +01:00
Luke Barnard
f528e147e3 Give flair avatars a tooltip = the group ID 2017-09-27 14:36:22 +01:00
Stefan Parviainen
35cb52febc Fix merge conflict 2017-09-27 08:41:37 +02:00
Robert Swain
24de01e21d AppTile: Test if widgetUrl startsWith instead of has a substring
The event origin should be at the beginning of the URL.
2017-09-25 17:14:25 +02:00
Robert Swain
6e49926228 AppTile: Do not test for electron platform
The method platform method is instead stubbed on all other platforms.
2017-09-25 17:13:18 +02:00
Robert Swain
b047f1caaa Merge branch 'develop' into rob/electron-screensharing 2017-09-25 17:02:30 +02:00
Luke Barnard
20c731f627 Bust the flair caches after 30mins
Group profile data and the groups a user has publicised will be removed from the cache 30mins after retrieval.

There may be some benefits to caching the group profiles for longer than the group memberships but for now they're naively busted after the same 30mins.
2017-09-25 15:21:56 +01:00
Stefan Parviainen
d4929b558e Add dummy translation function to mark translatable strings
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-09-22 21:43:27 +02:00
David Baker
621a108b5e Use flow style function definition for doc 2017-09-22 15:15:10 +01:00
David Baker
dba48e2f8f use start, end rather than min, max 2017-09-22 15:07:45 +01:00
David Baker
f1a2b6d327 lint 2017-09-22 13:35:49 +01:00
David Baker
16398fbfc2 Allow TruncatedList to get children via a callback
And update MemberList to use it as such. This means that the parent
only needs to make react elements for the elements that will
actually be rendered, rather than all of them.

In practive this doesn't make a huge difference as making React
elements is fairly fast, but experimentally (with all profiling
turned on), MemberList went from 25ms in the constructor and
81ms in render to 38ms in constructor but sub 1ms render for
Matrix HQ.
2017-09-22 13:15:02 +01:00
David Baker
29d8df2c9e De-lint TruncatedList 2017-09-22 10:00:46 +01:00
David Baker
5940b11fd2 Merge pull request #1404 from matrix-org/luke/feature-flair-click-for-group
Implement `view_group` dispatch when clicking flair
2017-09-21 15:18:28 +01:00
Luke Barnard
41a9ff22fb Rename profile object properties to camelCase
Also, add correct PropTypes for FlairAvatar
2017-09-21 14:22:43 +01:00
Luke Barnard
e64cc3b666 Implement view_group dispatch when clicking flair 2017-09-21 13:25:36 +01:00
Luke Barnard
515222c25f Track action button click event 2017-09-20 17:16:49 +01:00
Luke Barnard
979b580e1f Merge branch 'develop' into luke/fix-ugly-integ-button 2017-09-19 17:04:06 +01:00
David Baker
80e0205b78 Fix promise error in flair
Import bluebird other wise it gets a native promise on my dev box
which does not have a finally method
2017-09-19 15:53:54 +01:00
Luke Barnard
61a0f1ef67 Fix ugly integration button, use hover to show error
This simplifies the implementation of the button but also adjusts the appeareance such that a warning triangle appears in the top-right of button if an error has occured. The error popup will now appear when hovering over the button (with related CSS).
2017-09-19 11:57:23 +01:00
Luke Barnard
241d442284 Fail gracefully for non-supporting servers 2017-09-18 15:12:38 +01:00
Luke Barnard
6add06db44 Fix big with rejecting promises upon error 2017-09-18 15:11:49 +01:00
Luke Barnard
26941e994f Merge branch 'develop' into luke/feature-flair 2017-09-18 14:46:50 +01:00
Luke Barnard
3476cfca79 getPublicGroups->getPublicisedGroups
To match dbkrs js-sdk wrappers for flair: matrix-org/matrix-js-sdk/pull#542
2017-09-18 14:44:35 +01:00
Luke Barnard
548e5f516c Put flair into labs 2017-09-18 14:38:41 +01:00
Luke Barnard
caaf5cca14 Only show the integ management button if user is joined 2017-09-18 13:34:33 +01:00
Michael Telatynski
f612b1933b
start MELS expanded if it contains a highlighted/permalinked event.
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-09-14 17:53:47 +01:00
David Baker
5087da9247 Merge remote-tracking branch 'origin/develop' into luke/feature-flair 2017-09-13 16:52:12 +01:00
Robert Swain
aa82be1fb1 Merge branch 'develop' into rob/electron-screensharing 2017-09-12 10:54:20 +02:00
David Baker
ea5726aa4e Copyright 2017-09-08 23:14:06 +01:00
David Baker
ec3ff529e7 Fast path for emojifying strings
Emojione's regex for detecting emoji is *enourmous* and we were
running it on every display name, room name, message etc every time
those components mounted. Add a much simpler regex to rule out the
majority of strings that contain no emoji and fast-path them.

Makes room switching about 10% faster (in my tests with all the
profiling turned on).
2017-09-08 23:05:27 +01:00
Robert Swain
53574541c3 AppTile: Add Jitsi electron screensharing support 2017-09-04 09:31:25 +02:00
Luke Barnard
0ded4acba0 Mark TODO for https://github.com/vector-im/riot-web/issues/4951 2017-08-31 17:52:53 +01:00
Luke Barnard
d84190f58d Explain Flair debounce 2017-08-31 17:49:19 +01:00
Luke Barnard
e89d52ccbf Do not get avatars when no groups were/could be retrieved 2017-08-31 16:46:39 +01:00
Luke Barnard
86e8a4c7e2 Make componentWillMount not async
This was left over from a previous refactor
2017-08-31 16:44:14 +01:00
Luke Barnard
ebc1993530 Implement Flair
Add 14x14 group avatars next to sender profiles.
2017-08-30 11:10:49 +01:00
Richard Lewis
2ff1888054 Make staging widgets work with live and vice versa. 2017-08-30 10:36:22 +01:00
Michael Telatynski
ec6867dc8b
Fix React crying on machines without internet due to return undefined 2017-08-24 12:32:37 +01:00
Richard Lewis
502a0480a0 Merge pull request #1327 from matrix-org/matthew/multiple-widgets
Matthew/multiple widgets
2017-08-22 10:53:51 +01:00
Richard Lewis
a69cc9169f lint fix. 2017-08-22 10:04:57 +01:00
Richard Lewis
6c8391e3ea Remove beta tag. 2017-08-21 11:39:06 +01:00
Robert Swain
2eac869e27 Merge branch 'develop' into rob/apps-not-e2ee 2017-08-21 10:30:38 +02:00
Robert Swain
70824960ee AppPermission: Make strings translatable 2017-08-21 10:23:55 +02:00
Matthew Hodgson
d7f5295949 untested WIP for supporting multiple widgets properly 2017-08-18 18:40:00 +01:00
Richard Lewis
1862057695 Only render appTile body (including warnings) if drawer shown. 2017-08-18 18:33:56 +01:00
Luke Barnard
b678c2cf0f Don't bind Pill function, React does this for us 2017-08-18 17:15:27 +01:00
Robert Swain
2e00968bcd AppPermission: Note that apps are not E2E encrypted in E2E rooms 2017-08-18 17:44:33 +02:00
Richard Lewis
b7d46d91ed Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/appFixes 2017-08-18 15:35:01 +01:00
Luke Barnard
5e0a7212d9 Don't apply case logic to app names
As they should have the Correct Case in integrations land now
2017-08-18 14:57:28 +01:00
Richard Lewis
857a8c9519 Remove empty defaultProps. 2017-08-18 13:28:47 +01:00
Richard Lewis
84f5e5aad2 REmove unused onCancelClick 2017-08-18 12:21:48 +01:00
Luke Barnard
1a1a80b633 Merge branch 'develop' into luke/feature-app-tile-ux 2017-08-18 12:12:00 +01:00
Richard Lewis
96900e76a0 Move error logging to where it is first caught. 2017-08-18 11:51:32 +01:00
Richard Lewis
4b5cdac032 Don't show widget security warning to the person who added it to the room. 2017-08-18 11:41:27 +01:00
Luke Barnard
57505c3a61 Add behaviour to toggle app draw on app tile header click 2017-08-18 10:56:35 +01:00
Richard Lewis
0907fff080 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/appFixes 2017-08-17 17:47:46 +01:00
Richard Lewis
d1ee257b5a Pass roomId rather than whole room object. 2017-08-17 12:15:01 +01:00
Richard Lewis
eb77dcc8e3 Camel case variable name 2017-08-17 11:24:25 +01:00
Richard Lewis
2c25639a61 Fix copyright header 2017-08-17 11:22:42 +01:00
David Baker
252ab208e4 Merge pull request #1300 from matrix-org/dbkr/userpicker
Refactor ChatInviteDialog to be UserPickerDialog
2017-08-16 14:29:07 +01:00
David Baker
81273ec855 Move non-invite specific stuff to UserAddress 2017-08-15 13:42:23 +01:00
David Baker
fa660c8211 PR feedback 2017-08-15 10:57:24 +01:00
David Baker
1b66e88b6e ChatInviteDialog -> UserPickerDialog pt 2
The other changes I forgot to add
2017-08-14 17:43:00 +01:00
Luke Barnard
bb229d33a4 Add onClick to user pills
instead of using the converted matrix.to href. This is undesirable and a better solution would be to fix routing in Riot in general and then change user pills to do something like `/room/../member/@userId`.
2017-08-14 14:44:08 +01:00
Richard Lewis
454ec40b00 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/appFixes 2017-08-11 10:35:20 +01:00
Michael Telatynski
b19c1010aa
Merge branches 'develop' and 't3chguy/i18n_analytics' of github.com:matrix-org/matrix-react-sdk into t3chguy/i18n_analytics
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

# Conflicts:
#	src/Analytics.js
2017-08-10 13:54:55 +01:00
Richard Lewis
185379b037 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/appFixes 2017-08-09 14:07:45 +01:00
Richard Lewis
4bc25f12cb Move manage integrations button in to stand-alone component 2017-08-09 11:44:24 +01:00
Luke Barnard
b08d32371d Add optional setting for hiding avatars in <Pill>s
As part of https://github.com/vector-im/riot-web/issues/4640#issuecomment-316659445
2017-08-08 11:13:29 +01:00
Richard Lewis
5752345b80 Merge pull request #1263 from matrix-org/rxl881/warnings
Display warning if widget is mixed content
2017-08-02 17:30:46 +01:00
Richard Lewis
7599bde1f6 Fix logging line length. 2017-08-02 17:05:46 +01:00
Kegan Dougal
c914f1607b scalar-develop is a scalar URL 2017-08-02 14:35:14 +01:00
Richard Lewis
48faf72fdc Disable eslint rule 2017-08-01 21:00:18 +01:00
Richard Lewis
2ab6bc84a7 Improve clarity 2017-08-01 17:49:41 +01:00
Richard Lewis
f0224460d2 Fix comparison and handle case where app has permission to load but content is mixed protocol. 2017-08-01 17:48:02 +01:00
Richard Lewis
d29610bdd2 Fix boolean comparison. 2017-08-01 17:45:06 +01:00
Richard Lewis
f57b0d4cc7 Fix invalid translation 2017-08-01 17:43:38 +01:00
Richard Lewis
bc4d979d1e Display warning if widget is mixed content 2017-08-01 17:29:29 +01:00
Luke Barnard
a40a86669a Merge pull request #1260 from matrix-org/luke/fix-rte-pills-not-updating
Use componentWillReceiveProps to update pill state when props change
2017-08-01 16:30:25 +01:00
Luke Barnard
630c2968eb Use componentWillReceiveProps 2017-08-01 16:20:32 +01:00
Richard Lewis
546173d246 Fix scalar token 2017-08-01 15:53:42 +01:00
Richard Lewis
abae43b65e Merge pull request #1257 from matrix-org/rxl881/widgetPermissions
Widget permissions
2017-08-01 12:13:09 +01:00
Richard Lewis
5f8e86197f Check that wurl is scalar, before checking for curl 2017-08-01 12:00:03 +01:00
Richard Lewis
596efb6062 Fix missing comma 2017-08-01 11:42:50 +01:00
Richard Lewis
15f39040a0 Simplify canUserModifyWidgets API 2017-08-01 11:39:17 +01:00
Richard Lewis
a310ff3bab Add ToDo item. 2017-07-28 18:21:23 +01:00
Richard Lewis
6aa1d923ce Add comment 2017-07-28 16:48:13 +01:00
Richard Lewis
9935dd0051 Add comment to explain "fullWidth" component porperty. 2017-07-28 16:46:21 +01:00
Richard Lewis
8529a21f5c Translate "Allow" 2017-07-28 16:42:07 +01:00
Richard Lewis
700ef34e95 Translate warning 2017-07-28 16:39:18 +01:00
Richard Lewis
4308d2c635 Inline setState. 2017-07-28 16:36:06 +01:00
Richard Lewis
50ad80ad86 Use ES6 style import 2017-07-28 16:24:32 +01:00
Richard Lewis
2e6fb1f956 Fix license header 2017-07-28 16:23:49 +01:00
Richard Lewis
6238c1d704 Fix default prop initialisation 2017-07-28 16:23:38 +01:00
Richard Lewis
aff1cd9469 Add allow-presentation permission to iframe sandbox permissions 2017-07-28 11:14:04 +01:00
Richard Lewis
11335b1488 Rename variable to curlBase, for clarity 2017-07-28 10:18:06 +01:00
Richard Lewis
e1d9301eb4 Strip query parameters from content URLs 2017-07-28 10:01:58 +01:00
Richard Lewis
d69c9a36b3 Factor out check permissions code. 2017-07-27 23:38:26 +01:00
Richard Lewis
5e23d676b4 Remove comments. 2017-07-27 23:05:43 +01:00
Richard Lewis
51d160e7d6 Hide edit button when user does not have permission to edit. 2017-07-27 20:18:31 +01:00
Richard Lewis
ab7fcbb5e7 Add function to determine if a user can modify widgets and style UI components as a result. 2017-07-27 18:10:28 +01:00
Michael Telatynski
bf98c0da7c
un-i18n Modal Analytics
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-07-27 17:19:18 +01:00
Richard Lewis
9ee1f3962d Set display URL from wurl if curl not specified. 2017-07-27 16:42:29 +01:00
Richard Lewis
8e4f1f0989 Add message spinner. 2017-07-27 16:41:52 +01:00
Richard Lewis
f2058e0a6c Add message spinner component. 2017-07-27 16:41:20 +01:00
Luke Barnard
dff79c4688 Only apply room pills to matrix.to room links, exclude event links
This fixes https://github.com/vector-im/riot-web/issues/4680
and fixes https://github.com/vector-im/riot-web/issues/4670
2017-07-27 13:01:40 +01:00
Luke Barnard
4d4078be7e Remove disambiguation from pills 2017-07-27 10:54:23 +01:00
Luke Barnard
f19fade448 Strip " (IRC)" from display names inserted into the timeline 2017-07-27 10:50:41 +01:00
Richard Lewis
9f52c13bea Grant permission to load app widget. 2017-07-26 16:47:58 +01:00
Richard Lewis
76f4f88fcd App tile permissions -- broken 2017-07-26 11:28:43 +01:00
Luke Barnard
143994e44f Use data-offset-key in RTE decorators
This makes sure the selection state is correct when moving the cursor through an entity in the composer but only in rich text mode. https://github.com/vector-im/riot-web/issues/4666 still persists despite this, probably because the text content inserted during a completion in markdown mode has a different length to the text node within the entity.

fixes vector-im/riot-web#4654
2017-07-25 11:25:33 +01:00
Luke Barnard
11f3a1db72 Merge branch 'luke/feature-async-pills' of github.com:matrix-org/matrix-react-sdk into luke/feature-async-pills 2017-07-25 09:37:47 +01:00
Luke Barnard
ac597996e0 Remove outdated comment 2017-07-25 09:37:18 +01:00
Luke Barnard
026582bcf7 Add unmounted guard 2017-07-25 09:22:08 +01:00
Luke Barnard
5efd5bf927 done -> then, style 2017-07-25 09:20:14 +01:00
Luke Barnard
d13c4b510c Merge branch 'develop' into luke/feature-async-pills 2017-07-24 17:39:35 +01:00
Luke Barnard
61c16569cb Get user pill profile remote data
Instead of relying on the local avatar/displayname of a user, request the data from the server and update the pill if it shows up.

This required a slight refactor which means we're not doing everything in `render` now. Also I noticed unknown rooms weren't being rendered _at all_! So now you get something that looks like a normal link but with the room alias/ID in it.
2017-07-24 17:18:29 +01:00
Luke Barnard
727b1ca545 Remove disambiguation from user mentions, add tooltip for mxid
Also add a tooltip for room pills = room alias/ID

Requires: https://github.com/matrix-org/matrix-js-sdk/pull/513
2017-07-24 15:08:22 +01:00
Luke Barnard
eb0575d9c1 Merge pull request #1241 from matrix-org/luke/refactor-pills
Factor out shared logic in two code-paths for pill rendering
2017-07-21 17:54:20 +01:00
Luke Barnard
feaafc7a1a Remove logging 2017-07-21 17:18:48 +01:00
Luke Barnard
7db7192701 Factor out shared logic in two code-paths for pill rendering
This isn't an entirely side-effect-free refactoring:
 - the text of the timeline pills is now either the room ID/alias or user ID/ display name of the linked resource (which means that until we do a roundtrip to get user displaynames, mentions for users not in the current room will have their user IDs shown instead of what was in the link body).
 - timeline links to rooms without avatars are now rendered as links
 - fixed issue that would throw an error whilst rendering (i.e. unusable client) a room link to a room that the client doesn't know about
2017-07-21 14:07:48 +01:00
Richard Lewis
b589fcc3b0 Merge pull request #1240 from matrix-org/rxl881/deleteWidgets
Hide widget panel while it is being deleted.
2017-07-21 11:14:42 +01:00
Richard Lewis
6aa0f68ee9 Show beta testing icon and help message for widgets tile. 2017-07-14 23:31:57 +01:00
Kegsay
5274cf59a0 Hook up the edit widget button (#1218)
* Hook up the edit widget button

* Review comments
2017-07-14 11:17:59 +01:00
Richard Lewis
9a1e7ad170 Hide widget panel while it is being deleted. 2017-07-13 00:27:03 +01:00
Richard van der Hoff
0254d2b3a2 q(...) -> Promise.resolve
```
find src test -name '*.js' | xargs perl -i -pe 's/\b[qQ]\(/Promise.resolve(/'
```
2017-07-12 18:05:08 +01:00
Richard van der Hoff
a06bd84213 replace imports of q with bluebird
update `package.json`

```
find src test -name '*.js' |
   xargs perl -i -pe 'if (/require\(.[qQ].\)/) { $_ = "import Promise from '\''bluebird'\'';\n"; }'

find src test -name '*.js' |
   xargs perl -i -pe 'if (/import [qQ]/) { $_ = "import Promise from '\''bluebird'\'';\n"; }'
```
2017-07-12 18:05:08 +01:00
David Baker
a48c7d2364 Only allow http and https widget URLs 2017-07-12 14:16:47 +01:00
David Baker
918f5abe81 Lint correctly 2017-07-12 10:34:50 +01:00
David Baker
53316a76f4 Sandbox app iframes 2017-07-12 10:22:14 +01:00
Kegsay
cf158530f5 Implement new widget API (#1201)
* Implement new widget API

This allows clients to see who provisioned which widgets.

* Update to make state_key the wid

* Update to latest API

* Only show widgets which have required fields

* Don't constantly show apps dialog

* Fix example to include data key
2017-07-11 12:15:27 +01:00
Kegan Dougal
42ba3ff410 Linting 2017-07-06 10:44:32 +01:00
Kegsay
e0e321783b Append the scalar_token to the widget URL if the widget URL is a scalar URL (#1182) 2017-07-06 09:28:48 +01:00
Richard Lewis
ea83d7eee2 Add missing import and fix apps reference. 2017-06-28 15:53:18 +01:00
Richard Lewis
93bdfc99df i18n "Cancel" alt text. 2017-06-28 12:25:36 +01:00
Richard Lewis
ddea1f35d2 Fix header. 2017-06-28 12:23:33 +01:00
Richard Lewis
ad2517bd8b Uppercase the first letter of the app tile name. 2017-06-28 10:27:06 +01:00
Richard Lewis
e343e99355 Cleaned up unused files and removed commented code 2017-06-27 11:28:38 +01:00
Robert Swain
03ba3bd431 Merge branch 'rxl881/apps' into rob/apps 2017-06-13 15:41:52 +02:00
Robert Swain
91eabbba60 MessageComposer: Trigger Jitsi app from call buttons 2017-06-13 15:35:13 +02:00
Robert Swain
b63edcb390 AppTile: Support deletion of apps from room state 2017-06-13 15:33:17 +02:00