Travis Ralston
52219a8341
Remove legacy resizing code
2020-07-17 15:18:42 -06:00
Travis Ralston
0b0fe92b17
Convert resizer to ES6
2019-12-22 20:57:46 -07:00
J. Ryan Stinnett
1dc2ae007f
Fix soft crash on room join
...
This fixes a soft crash that can happen on room join if you keep the right panel
open (which is the default). The `MainSplit` component was not properly testing
for the edge cases of when the resize container would be mounted.
Fixes https://github.com/vector-im/riot-web/issues/10997
2019-10-08 15:43:57 +01:00
Bruno Windels
f029aad9fa
rename to getLayout
2019-02-04 18:38:31 +00:00
Bruno Windels
d30ff13c18
pass the layout to the resizer as a lamba to avoid having the wrong layout when filtering
2019-02-04 15:09:44 +00:00
Bruno Windels
529c48d1b0
avoid whitespace and expand all matching section when filtering
2019-01-29 10:01:55 +01:00
Bruno Windels
8d1e105b50
add option for whitespace behaviour and handle height
2019-01-28 18:02:36 +01:00
Bruno Windels
88f25dec4d
don't over-constraint layout while resizing
...
adapting the approach taken in the prototype
2019-01-28 17:52:46 +01:00
Bruno Windels
b0bb4eb5ab
better naming
2019-01-28 16:30:34 +01:00
Bruno Windels
d833174d68
floor default section height
2019-01-28 16:29:34 +01:00
Bruno Windels
6e55ebdab7
better naming for anchor
2019-01-28 16:10:50 +01:00
Bruno Windels
dab1f30ab4
remove obsolete logging and comments
2019-01-28 16:08:38 +01:00
Bruno Windels
87720bac2e
add comments to fields
2019-01-28 16:03:08 +01:00
Bruno Windels
d56f77debe
ignore updates that don't change anything
2019-01-28 16:02:56 +01:00
Bruno Windels
14485b60be
assign default height after assigning new sections
...
also apply it to sections with value null
2019-01-28 16:00:28 +01:00
Bruno Windels
eaf212dd89
fix lint - bis bis
2019-01-28 15:28:56 +01:00
Bruno Windels
f103e60d1d
fix lint - bis
2019-01-28 15:22:05 +01:00
Bruno Windels
d08216e857
fix lint
2019-01-28 14:56:14 +01:00
Bruno Windels
bfb1031a6b
unify heights stored by id and index, to avoid them getting out of sync
...
effectively get rid of _originalHeights and calculate the array
from the dictionary when needed
2019-01-28 14:52:40 +01:00
Bruno Windels
0a5e8e6cfe
WIP on persisting height across collapse/expand
2019-01-28 14:35:04 +01:00
Bruno Windels
8ffeee6a98
add matthews new resize algo
2019-01-25 18:47:34 +01:00
Bruno Windels
4eb2555fc1
initial support for collapsing
2019-01-24 18:18:10 +01:00
Bruno Windels
b230e65e74
prevent height doubling when resizing
...
caused by mixing up absolute height with incremental height
2019-01-24 16:44:36 +01:00
Bruno Windels
1092244bbf
more fixes for updates/resizing
2019-01-24 15:43:23 +01:00
Bruno Windels
5bddf62d54
WIP to port prototype code
2019-01-23 18:30:51 +01:00
Bruno Windels
313bbaaeaa
remove obsolete comments
2019-01-16 11:33:41 +01:00
Travis Ralston
fed256cbaa
Update src/resizer/distributors/roomsublist.js
...
Co-Authored-By: bwindels <bruno@windels.cloud>
2019-01-16 10:29:30 +00:00
Travis Ralston
98aa657052
Update src/resizer/distributors/collapse.js
...
Co-Authored-By: bwindels <bruno@windels.cloud>
2019-01-16 10:29:22 +00:00
Travis Ralston
2bd65e14b7
Update src/resizer/distributors/fixed.js
...
Co-Authored-By: bwindels <bruno@windels.cloud>
2019-01-16 10:29:15 +00:00
Travis Ralston
a5424f32a5
Update src/resizer/item.js
...
Co-Authored-By: bwindels <bruno@windels.cloud>
2019-01-16 10:29:05 +00:00
Bruno Windels
3c7bed97ac
size all items to rendered height when starting drag operation
...
before, we'd only normalize the sublists that had already been
sized manually. As non-sized items still have flex-basis: auto,
they would claim all the space, and mixing sized and unsized items
would be badly broken.
Now, on the first click, all items are sized to their rendered size
which means they won't flex anymore, but at least the resizing works
this way
Another downside is that when resizing while a sublist is
collapsed, it's reverted to 100px and if a size had been set before,
it's forgotten. No way around this with this approach I'm afraid.
2019-01-15 12:56:48 +01:00
Bruno Windels
aa90e9591a
fix min & max size for empty sublists
2019-01-15 12:56:33 +01:00
Bruno Windels
7e395f0fb6
cleanup - part II
...
reshuffle file structure to make more sense
2019-01-14 20:33:33 +01:00
Bruno Windels
9ecb23ce71
cleanup
...
- move some methods to ResizeItem subclass
- allow distributor to instanciate sizer and resizeitem it needs
through static factory methods, instead of passing in another ctor
a distributor can only function with the right item and sizer anyways.
- use consistent import/export style
- remove obsolete code
2019-01-14 20:24:54 +01:00
Bruno Windels
136dd4a556
stop resize operation when cursor leaves viewport
...
as mouseup can't be detected outside of viewport
2019-01-11 18:20:34 +01:00
Bruno Windels
a413f358f7
normalize sizes when starting drag operation
2019-01-11 17:17:58 +01:00
Bruno Windels
9456fc040d
fix typo
2019-01-11 16:10:35 +01:00
Bruno Windels
92b9a8cc1f
persist cleared size sublists
2019-01-10 18:40:26 +01:00
Bruno Windels
a130c44803
try clear next item size when resizing so there is always one unsized item
2019-01-10 14:12:05 +01:00
Bruno Windels
68afadd83b
try flex-basis for resizing
2019-01-10 14:03:17 +01:00
Bruno Windels
51376c5c07
draft room sub list item api
2019-01-09 15:53:04 +01:00
Bruno Windels
b82e19b1f7
size header explicitly for content size
...
otherwise it just grows with max-height
2019-01-09 15:45:47 +01:00
Bruno Windels
0803ea9158
support collapsed items
2019-01-08 18:17:34 +01:00
Bruno Windels
8352d8c6bd
not sure we need this, but adding the padding in _offset container
2019-01-08 18:17:00 +01:00
Bruno Windels
b4197059a0
change min size to exactly one room tile + header
2019-01-08 18:16:09 +01:00
Bruno Windels
4bd6ce8e2c
WIP2 for making smart resizer work, sort of works now but shows big scrollbar
2019-01-08 16:47:47 +01:00
Bruno Windels
d558ea1dbf
WIP
2018-12-19 23:51:19 +01:00
Bruno Windels
3ddc8baed1
fix resizing sometimes not working (and selecting text)
...
Last friday a child <div> was added inside the ResizeHandle component,
which made the parentElement/classList checks fail on the event.target
here. This would only fail (and select all the text) when dragging exactly on
the grey line (the div), not the transparent margin around it.
use closest to make sure we have the root element of the handle.
2018-12-18 14:27:10 +01:00
Bruno Windels
75925f6192
room sublist seems to get rendered w/o _scroll element
...
when loading the page from a community url
2018-12-10 16:51:32 +01:00
Bruno Windels
f7a37be6dd
support associating an id with a resize item/handle
2018-11-26 16:46:27 +01:00