Commit graph

224 commits

Author SHA1 Message Date
Jorik Schellekens
3ed457ea7d
Merge pull request #4305 from JorikSchellekens/joriks/font-scaling
Make all 'font-size's and 'line-height's rem
2020-04-02 17:40:39 +01:00
Jorik Schellekens
6cf9166c4a Use variables for the rem values.
It's become obvious that these random floating points everywhere
are unwieldy. Now they're all in one place with some fairly logical
variable names which will help out in design->implementation phase.
2020-03-31 15:26:23 +01:00
Travis Ralston
8bc86deaaa Appease the style linter 2020-03-30 20:23:34 -06:00
Travis Ralston
ffa75ef48c Wire up all the dialog parts for SSO, using device deletion as a POC 2020-03-30 20:03:46 -06:00
Jorik Schellekens
da34e6241d Make all 'font-size's and 'line-height's rem
Font size of the whole app would ideally be controlled by a single
value. This value is currently hard coded using the :root CSS selector.
It is the intention to make this value configurable within riot. In the
interim all font-sizes have been converted to rem by the simple process
of regex. Replacing px values with their equivalent rem values assuming
a font size of 15px and then rounded to three decimal places, which was
the base at the time of this transformation.

I'm expecting another commit cleaning up rem values but I thought it
best to leave that to review.

This commit doesn't address any scaling issues. I thought it better to
land this unwieldy, mechanical, invisible change before the others
otherwise the pr would be impossible to review thoroughly.
2020-03-30 18:23:46 +01:00
Michael Telatynski
ef79492f2c
Merge pull request #4209 from matrix-org/t3chguy/redesign/room_directory
Room Directory Explore Servers redesign
2020-03-18 11:51:42 +00:00
Bruno Windels
db10fcd2b7 make editable list look like something closer to design 2020-03-16 17:29:35 +01:00
Michael Telatynski
86e53ea2c3 Initial attempt to redesign explore servers in room directory
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-13 00:02:50 +00:00
Michael Telatynski
4996139b1a word-break in pills and wrap the background correctly
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-29 01:56:02 +00:00
Bruno Windels
309633181d use FormButton in verification request tile too and dedupe styles 2019-11-22 16:32:50 +01:00
Bruno Windels
66cc68bae4 add new-styled button
might merge it later on with accessible button
2019-11-22 16:04:51 +01:00
Bruno Windels
edd5d3c915 make custom power level not grow too wide 2019-11-15 16:14:18 +01:00
Bruno Windels
b278531f2f add IconButton as in design 2019-11-15 16:14:18 +01:00
J. Ryan Stinnett
2a5dc9bfac Remove lint comments about no-descending-specificity
We have disabled the `no-descending-specificity` stylelint rule, so we no longer
need these block comments.
2019-11-08 16:35:42 +00:00
Michael Telatynski
6e33cc0650
Merge pull request #3433 from matrix-org/t3chguy/nvl/react16/EventListSummary
Summarise state events after room creation
2019-10-11 09:53:26 +01:00
Michael Telatynski
5643743167 Don't intercept TAB on the app outside of the composer, fix tabIndex > 0
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-10 14:13:29 +01:00
Michael Telatynski
34530843f4 Factor out generic EventListSummary from MELS
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-09 12:50:03 +02:00
J. Ryan Stinnett
0e8dc24c3f Add a basic error boundary for the entire app
This adds a basic error boundary around the entire app to catch errors during
rendering and present the user with the options on how to proceed. This is not
implemented as a modal so that it could be used selectively in portions of the
app as well, such as just the `RoomView`.

Fixes https://github.com/vector-im/riot-web/issues/11009
2019-10-02 17:31:22 +01:00
Michael Telatynski
192dcbb31f delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-27 09:14:29 +01:00
Michael Telatynski
8d1d3090f3 Improve keyboard accessibility using :focus-visible CSS polyfill
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-27 09:00:54 +01:00
Bruno Windels
8a1c1bbec4 implement RoomAliasField component
adding a postfix to Field to show the domain name
2019-09-23 11:22:30 +02:00
Bruno Windels
cc67742fa9 undo whitespace setting, accessible button is used in too many places to make this a safe assumption 2019-09-12 12:24:05 +02:00
Bruno Windels
6f62cdb22c basic styling to make it look ok before applying new design 2019-09-11 15:45:51 +02:00
Bruno Windels
505846ce53 split up css, update class names 2019-08-22 13:33:20 +01:00
David Baker
c76514fceb Add UI in settings to change ID Server
Just changes the current ID server being used

To come in subsequent PRs:
 * Store this in account data
 * Check for terms or support the proper UI for accepting terms when setting
 * Support disconnecting

Part 1 of https://github.com/vector-im/riot-web/issues/10094
Requires https://github.com/matrix-org/matrix-js-sdk/pull/1013
2019-08-09 18:07:58 +01:00
J. Ryan Stinnett
5ab958cc9f Fix field styling regression
The extra comma in the selectors caused this rule set to be ignored.

Regressed by https://github.com/matrix-org/matrix-react-sdk/pull/3200
Fixes https://github.com/vector-im/riot-web/issues/10311
2019-07-11 13:14:20 +01:00
J. Ryan Stinnett
9b3848d083
Merge pull request #3200 from matrix-org/jryans/stylelint-all-files
Run stylelint on all SCSS files
2019-07-11 09:38:18 +01:00
J. Ryan Stinnett
ca1e5bb3ae Comment disabled rules 2019-07-11 09:30:01 +01:00
J. Ryan Stinnett
38d6953bf6 Manually fix remaining stylelint issues 2019-07-10 16:56:40 +01:00
J. Ryan Stinnett
dd2079bffc Auto-fix stylelint issues
These `stylelint` issues were autofixed by the tool itself and look sane to me.
2019-07-10 16:56:40 +01:00
Travis Ralston
93872e6fa5 Ask for the user's password to rehydrate their soft logged out session
Fixes https://github.com/vector-im/riot-web/issues/10236

The changes to the MatrixClientPeg (assign/start) are to permit the SoftLogout page to access the MatrixClientPeg reliably. This is why assign() is called by Lifecycle as an alternative to start().

Minimal design work has been done here. The majority is deferred to https://github.com/vector-im/riot-web/issues/10262
2019-07-04 16:51:16 -06:00
J. Ryan Stinnett
dd94bf799d Improve interactive tooltip hover behaviour
This gives the interactive tooltip a more natural hover behaviour by removing
the full screen div behind it. This allows the target button to keep its hover
state, for example.

This also removes the click to close behaviour, which was too easy to trigger
accidentally.

Fixes https://github.com/vector-im/riot-web/issues/10179
Fixes https://github.com/vector-im/riot-web/issues/10222
Fixes https://github.com/vector-im/riot-web/issues/10225
2019-07-01 18:00:59 +01:00
Bruno Windels
2e3a6b3c0b set 50% transparent accent color as editor focus border 2019-06-26 14:40:33 +02:00
J. Ryan Stinnett
80d73d8430 Add optional rounded chevron for tooltip
We'd like to have a rounded point on the chevron for an extra level of polish.
This implements that look for browsers that support `clip-path`.

Part of https://github.com/vector-im/riot-web/issues/9716
2019-06-21 15:10:17 +01:00
J. Ryan Stinnett
3bd247ebaa Tweak interactive tooltip to match design
This tweaks the tooltip to match the color, spacing, etc. seen in the designs.

Part of https://github.com/vector-im/riot-web/issues/9753
Part of https://github.com/vector-im/riot-web/issues/9716
2019-06-21 15:10:08 +01:00
J. Ryan Stinnett
32bf4588dd Center tooltip along top or bottom of target
This adjusts the positioning to work more the way we want:

* Tooltip is position on the top or bottom edge of the target depending on where
  space is available
* Tooltip and chevron are centered

In addition, more bits borrowed from `ContextualMenu` are not needed, so they
have been removed for simplicity.

Part of https://github.com/vector-im/riot-web/issues/9753
Part of https://github.com/vector-im/riot-web/issues/9716
2019-06-21 15:04:19 +01:00
J. Ryan Stinnett
6dcdad028e Clone ContextualMenu to InteractiveTooltip
As part of reactions and editing work, we're adding a new style of tooltip that
allows interacting with the content of the tooltip.  `ContextualMenu` is closest
out of the things we have today, but it doesn't position in quite the way we
want and it's already quite complex.

To get started, let's first clone that to a new `InteractiveTooltip`.

Part of https://github.com/vector-im/riot-web/issues/9753
Part of https://github.com/vector-im/riot-web/issues/9716
2019-06-21 15:04:19 +01:00
J. Ryan Stinnett
bb4b5d7798 TooltipButton rename step 2 of 2 2019-06-19 11:32:03 +01:00
J. Ryan Stinnett
ab4c5f0152 TooltipButton rename step 1 of 2 2019-06-19 11:30:37 +01:00
J. Ryan Stinnett
4ec7a8ddff Fix casing of TooltipButton
My brain can't deal with two different ways to write "Tooltip", so this
converges the naming to match the rest of the code base. Separate commits will
fix up the file names for case-insensitive file systems.
2019-06-19 11:26:13 +01:00
Bruno Windels
872c1acdea keep mx_Field stretching 2019-06-17 18:29:03 +02:00
Michael Telatynski
1090b7d912 Use flex: 1 for mx_Field to replace all the calc(100% - 20px) and more
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-13 23:48:47 +01:00
Travis Ralston
14dc4b47fa Merge branch 'develop' into travis/feature/wellknown2 2019-05-22 23:05:54 -06:00
Bruno Windels
ef4fe52d6b
Merge pull request #3002 from matrix-org/bwindels/pill-avatar-fixup
Fixup: also change editor margin when last event and buttons are not overlaying
2019-05-21 14:33:39 +00:00
Bruno Windels
30d374dff4 also changing margin when last event and buttons are not overlaying 2019-05-21 16:06:14 +02:00
Bruno Windels
2d4d608ed6
Merge pull request #2997 from matrix-org/bwindels/pill-avatars
Message editing: render avatars for pills in the editor
2019-05-21 12:11:06 +00:00
Bruno Windels
5d184b3f77 reuse mx_Pill styles for editor pills to avoid style duplication
the avatar style code is still different though,
as it's implemented differently

This also prevents updating the css variables when not needed,
which caused the avatar to flicker when updating the editor.
2019-05-21 12:19:35 +02:00
Bruno Windels
b00a38a1e5 apply mx_EventTile_content to editor, so it gets the same right margin
this way we don't have to include it in the magic number
2019-05-21 12:18:20 +02:00
Travis Ralston
3476be3327 Merge branch 'develop' into travis/feature/wellknown2 2019-05-20 19:50:02 -06:00
Bruno Windels
2bacabc002 apply 34px margin the mx_EventTile_content also has
so width of editor stay the same as content
(unrelated to pills, really)
2019-05-20 16:01:31 +02:00
Bruno Windels
5d80c3a2a4 fallback to avatar bg color 2019-05-20 15:39:06 +02:00
Bruno Windels
01ef1dd20e style room pills correctly 2019-05-20 15:38:59 +02:00
Bruno Windels
c1b2f3dce1 make user pill avatars work in editor 2019-05-20 14:21:25 +02:00
Bruno Windels
1368a5eb80
Merge pull request #2996 from matrix-org/bwindels/composerdesign
Message editing: apply design
2019-05-20 08:42:41 +00:00
Bruno Windels
a47e722fa1 same height as normal pill 2019-05-20 10:28:26 +02:00
Bruno Windels
3b598a1782 set pill avatar through css variables to set on psuedo-element
this way it won't interfere with editor selection/caret
2019-05-20 10:28:26 +02:00
Bruno Windels
d81ab2464b better button alignment
also fix sticking out at the right side when not overlaying
2019-05-17 16:15:06 +01:00
Bruno Windels
8ce8ca18ff theme-ify! 2019-05-17 16:10:21 +01:00
Bruno Windels
aef9323f21 explain negative margin 2019-05-17 16:10:11 +01:00
Bruno Windels
aeea4ee83a a bit more horizontal padding for the editor 2019-05-17 16:00:58 +01:00
Bruno Windels
cf8189ed43 align buttons perfectly with editor edge 2019-05-17 16:00:39 +01:00
Bruno Windels
81245e9c05 cull editor height to 200px 2019-05-17 16:00:22 +01:00
Bruno Windels
2544decab2 fix chrome not right aligning buttons 2019-05-17 16:00:08 +01:00
Bruno Windels
ddefeae136 update design of editor to look as close to original tile (and design)
the buttons below the composer are overlayed onto the previous event.
In case of the last event, for now we make them not overflow, but make the
tile grow. The design says it should overlay on the main composer for the last
event tile, postponing that for a bit though as not sure what is the best way
to do that.
2019-05-17 15:33:11 +01:00
J. Ryan Stinnett
43c9e6d942 Reactions / editing tooltip tweaks 2019-05-17 15:10:35 +01:00
J. Ryan Stinnett
059988ff5c Extract tooltip styling to a shared class
We want to use the same styling with edited tooltip as well, so this extracts
the shared bits.
2019-05-17 12:11:01 +01:00
Travis Ralston
0c7aa39273 Merge branch 'develop' into travis/feature/wellknown2 2019-05-16 12:59:50 -06:00
Bruno Windels
22533ba2d4 use theme var for bg color 2019-05-15 10:12:16 +01:00
Bruno Windels
d83e278f6b PR feedback, cleanup 2019-05-15 09:46:08 +01:00
Bruno Windels
759a4a54ef send the actual m.replace event from composer content 2019-05-14 15:38:16 +01:00
Bruno Windels
c98e716cbd some pill styling 2019-05-14 15:38:16 +01:00
Bruno Windels
4ff37ca046 don't show model for now 2019-05-14 15:38:16 +01:00
Bruno Windels
fc87a27c5d make editor nicer 2019-05-14 15:38:16 +01:00
Bruno Windels
317e88bef2 initial hacky hookup of Autocomplete menu in MessageEditor 2019-05-14 15:38:16 +01:00
Bruno Windels
ebdb9fcb9c don't collapse whitespace in editor 2019-05-14 15:38:16 +01:00
Bruno Windels
76bb56a2bf initial hookup editor code with react component 2019-05-14 15:38:16 +01:00
Bruno Windels
6599d605cd wire up editor component (somewhat hacky) 2019-05-14 15:38:16 +01:00
Travis Ralston
e4576dac28 Render underlines and tooltips on custom server names in auth pages
See https://github.com/vector-im/riot-web/issues/9290
2019-05-13 17:16:40 -06:00
J. Ryan Stinnett
26f732723e Animate tooltips when hiding as well as showing
This uses the same animation style as on show, but twice as fast.
2019-04-25 14:29:10 +01:00
J. Ryan Stinnett
0b42ded007 Style complexity progress bars more heavily
This disables the native progress appearance and uses the green color from our
themes.
2019-04-25 14:29:10 +01:00
J. Ryan Stinnett
67d7091dcd Password score progress should be full width in tooltip 2019-04-25 14:29:10 +01:00
J. Ryan Stinnett
a7c37733b8 Rebalance margins in validation tooltip 2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
37e09b5569 Add check and x icons for validation feedback
Adds icons from the Feather set with the same color as text. Tweaks validation
item spacing to match the design.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
338d83ab55 Add validation feedback helper
This adds a general validation feedback mechanism for checking input values. An
initial example is wired up for the username input on registration.
2019-04-25 14:29:09 +01:00
Bruno Windels
c1ff5f2fba implement style 2019-04-15 17:11:26 +02: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
Tee Mak
50ffdc2f12
Fixed drop shadow for tooltip.
The box-shadow color value is from $menu-box-shadow-color. The shadow now looks consistent on light or dark theme.
2019-03-22 14:50:13 -04:00
J. Ryan Stinnett
b8925d857d Reorganize field validity styles
* The field border style was previously moved up to the field
* Validity colors should be shown regardless of focus state
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
J. Ryan Stinnett
1cefa44319 Redesign country dropdown to fit redesign
This tweaks colors of the country dropdown to blend in better with the rest of
the design.

Fixes https://github.com/vector-im/riot-web/issues/9048
2019-03-08 10:03:50 +00:00
J. Ryan Stinnett
5b1d361577 Convert registration phone number to Field component
Now that we have prefix support in the Field component, we can also convert the
phone number with country dropdown on registration.
2019-03-05 17:58:42 +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
J. Ryan Stinnett
ae5c32d28b Lift border up to the Field root
By placing the Field's border on the Field component root instead of the input,
it's easier to wrap it around additional elements that we'll soon stuff inside
the field.
2019-03-05 15:25:43 +00:00
J. Ryan Stinnett
1336508a4e Add comment, fix bad math
This adds a comment to explain the `max-width` and also fixes it actually use
the right value. (I had grabbed the wrong part of `margin` the first time.)
2019-03-05 11:13:39 +00:00
J. Ryan Stinnett
c1688d2be3 Limit Field label to size of input
This avoids awkward wrapping if the label is longer than the input. This will
show an ellipsis to suggest there's more text in the label than can be shown.
2019-03-04 18:02:36 +00:00
Travis Ralston
a41df7ab68 Convert PowerSelector to use mxField instead 2019-02-28 19:00:57 -07:00
J. Ryan Stinnett
bd577e8f9b
Merge pull request #2714 from jryans/field-click-label
Send Field label pointer events to input
2019-02-27 17:07:08 +00:00
J. Ryan Stinnett
e9490b3032 Send Field label pointer events to input
When the `label` element is displayed on top of the input (`label` is set and
there is no `placeholder`), it would block clicks from reaching the input. This
allows them to get through, but then also restores `label`'s events once it
moves out of the way.

Fixes https://github.com/vector-im/riot-web/issues/8469
2019-02-27 13:23:48 +00: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
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