WEBVTT

00:00.000 --> 00:13.280
So, as this slide says, I am pronouncing, I work for Colabora and I am going to demonstrate

00:13.280 --> 00:21.120
and show some of the things we have improved on the comments in last year, so no comments

00:21.120 --> 00:24.000
please for now.

00:24.000 --> 00:31.360
So, all started with someone wanted to type comment and simultaneously want to go and do

00:31.360 --> 00:34.360
some other stuff and some other tab and other windows.

00:34.360 --> 00:41.400
So, what Colabora used to do is, when you switch a window, we automatically save your

00:41.400 --> 00:42.400
comments.

00:42.400 --> 00:49.360
So, your data does not get lost just in case you accidentally close your tab or something.

00:49.360 --> 00:52.960
So, someone just wanted to keep it editing.

00:53.120 --> 00:56.120
So, we were like, okay, we can do it.

00:56.120 --> 00:59.720
So, in first iteration we did it.

00:59.720 --> 01:07.160
We just stopped saving and we kept editing on and on, but then the question came, someone

01:07.160 --> 01:14.480
raised the question, what if they just forget to save it and just close the tab that

01:14.480 --> 01:16.320
comment will be lost, the data is lost.

01:16.320 --> 01:19.960
So, we have to think on behalf of users sometimes.

01:20.200 --> 01:21.680
So, we did.

01:21.680 --> 01:24.720
So, we tried to auto save comment.

01:24.720 --> 01:29.200
So, the first approach was the simplest one.

01:29.200 --> 01:33.040
So, we wanted to auto save.

01:33.040 --> 01:39.520
So, how Colabora comments work is, when you type something and you, Colabora creates

01:39.520 --> 01:41.240
a dummy element first.

01:41.240 --> 01:48.040
So, user can type into it and then later on when user passes the save button, it goes

01:48.040 --> 01:54.720
to the server to the core and then core sends the entire comment element and then we

01:54.720 --> 01:56.200
rendered the HTML for it.

01:56.200 --> 02:02.960
So, my first idea was that we just keep the first, the dummy element we used for the

02:02.960 --> 02:10.640
comment insertion for the user to as it is and we just ignore the thing core or the server

02:10.640 --> 02:12.280
sends us.

02:12.280 --> 02:16.760
But that makes us juggle two things at the same time.

02:16.760 --> 02:25.240
So, what core sends us, we have to get those data from that and then we have to re-render

02:25.240 --> 02:30.880
and reposition all the comments which is existing and some of them can be a dummy

02:30.880 --> 02:35.840
comments which were not supposed to be there, were supposed to be deleted once server

02:35.840 --> 02:37.880
sends us the real comments.

02:37.880 --> 02:43.480
But if I keep juggling this like this at some point, I am going to drop the comments

02:43.480 --> 02:51.200
and the game is over which is not the ideal case and if I do this, it is going to cause

02:51.200 --> 02:55.480
some task getting effect and I just keep fixing the bugs.

02:55.480 --> 03:00.320
So, this approach never came into existence because someone already pointed that when

03:00.320 --> 03:06.360
I was thinking it, so this never happened to me, fortunately.

03:06.600 --> 03:14.040
So, second approach was we removed some of the animation of comment situation so that when

03:14.040 --> 03:22.800
server sends us the new comment, we just sneakily replace that with the original comment

03:22.800 --> 03:25.520
and get into the edit mode very quickly.

03:25.520 --> 03:30.520
So, that is how the auto-safe comment you will never realize that old element was replaced

03:30.520 --> 03:36.160
with new element and all the stuff like that because auto-safe was only triggered when you

03:36.160 --> 03:37.160
switch the windows.

03:37.160 --> 03:39.760
So, this all these things happen in the background.

03:39.760 --> 03:46.960
So, you never realize this thing happened and on the other hand, we also made some improvements

03:46.960 --> 03:52.440
when you have replies in the comments like a thread and you window is small let us say

03:52.440 --> 03:59.520
you are working with the sidebar open in a small window or vertical monitor then what

03:59.520 --> 04:07.000
happens if auto-safe, auto-safe is triggered and the comments are called apps.

04:07.000 --> 04:13.520
So, you get this kind of animation sorry icon where you can know exactly which thread

04:13.520 --> 04:18.720
was in the progress of editing comments.

04:18.720 --> 04:23.960
The next improvement we did is let us say you have a few comments and you started track

04:23.960 --> 04:28.480
changes and show changes and you deleted the comment.

04:28.480 --> 04:32.080
So, the deleted comment and the normal comments were not separated.

04:32.080 --> 04:37.720
So, you get now this little bit of faded comment now when you delete the comment and you

04:37.720 --> 04:39.000
are also tracking it.

04:39.000 --> 04:45.280
So, you can see the difference this is the full comment real comment and this is a little

04:45.280 --> 04:50.640
bit deem apart from that we also implemented now mentioned.

04:50.640 --> 04:57.840
So, if your system supports multiple user and all earlier you can just you could just mention

04:57.840 --> 05:04.520
everything in the document but now when you start typing name starting with at the rate

05:04.520 --> 05:13.280
you can see other names popping up in the suggestions as auto-complete apart from that

05:13.280 --> 05:20.120
another thing is if just in case if you have very huge comments and there is no space

05:20.120 --> 05:27.200
you were earlier you were always displayed in a small size comment even if the text is big

05:27.280 --> 05:33.400
you have to scroll the comments but now just in case if there is enough space or you click

05:33.400 --> 05:39.120
on this comment it will be expanded to show you everything in the comment up to set

05:39.120 --> 05:49.400
and extend obviously and apart from this we have done a few other improvements regarding

05:50.280 --> 06:01.280
comments as you can see one of my favorites are favorites are when the recent one is it

06:01.280 --> 06:07.920
is kind of implement for in-can minions let us say earlier when you are editing a comment

06:07.920 --> 06:14.080
and you switch a window by default we force user to again focus on the document.

06:14.080 --> 06:20.760
So, if you switch window and come back and start typing automatically you would start typing

06:20.760 --> 06:26.800
in the document but now that is seen now the focus stays where it was earlier if you

06:26.800 --> 06:32.440
are typing in document it stays there if you are typing in the comments you can immediately

06:32.440 --> 06:40.840
start typing in the comments again and other things and these are all the people who

06:40.840 --> 06:46.960
have worked recently on the comments and that is it thank you.

