WEBVTT

00:00.000 --> 00:14.000
Okay, I'm not you and Shuman, he is unavailable, so I will try and present and his behalf

00:14.000 --> 00:16.000
is best as I can.

00:16.000 --> 00:21.800
He's from a web dialogue which has been on LOT, which is Libra Office Technology, because

00:21.800 --> 00:27.560
I've prepared for this talk and I know that, so what is this?

00:27.560 --> 00:33.360
The various dialogues in Libra Office are described in these data UI files, XML files, the

00:33.360 --> 00:38.400
destruction properties of the dialogues, so that XML input gives you this output on the

00:38.400 --> 00:43.560
left in detail, G2K, for example, as which points you have very graphic editor, has

00:43.560 --> 00:47.640
glued our contemporary ones where you can edit the dialogues and you convert them and

00:47.640 --> 00:50.640
you can interact with that structure there.

00:50.640 --> 00:55.040
So that's just what you have in Libra Office and how those dialogues exist already, and

00:55.040 --> 01:01.320
for the purposes of Libra Online or something like that, we have G-style x, which is a framework

01:01.320 --> 01:09.040
for exposing those UI components over into the online LOT experience.

01:09.040 --> 01:14.000
Hello, do you end up with there is that you have on the server side, you have the same

01:14.000 --> 01:20.520
kind of dialogues internally, you get on the desktop situation, and the snapshot of the structure

01:20.520 --> 01:25.800
there is dumped into a JSON thing, and it's sent over the wire to the online side, and

01:25.800 --> 01:31.480
in the online side it takes a JSON, and similarly to what you have in the server side where

01:31.480 --> 01:36.600
you load up your UI and you create dialogues from that, you view our builder on the online

01:36.600 --> 01:43.440
side that takes that JSON, and it constructs dialogues from it, initially constructs dialogues

01:43.440 --> 01:44.440
from it.

01:44.440 --> 01:48.440
Then afterwards it can be used to update the dialogues when things changed and the server side

01:48.440 --> 01:53.440
are transmitted across in this JSON, when you make changes, as I say, on the server side

01:53.440 --> 01:57.800
that something is selected or the text is changed, it comes across in this JSON, and this

01:57.800 --> 02:01.400
UI builder and whatnot updates everything on the client side.

02:01.400 --> 02:07.360
You give you dialogues on the client side that are basically transmitted from the server

02:07.360 --> 02:08.360
side.

02:08.360 --> 02:15.560
There's a bit of flexibility here, and this G-style log builder, when it gets the input in,

02:15.560 --> 02:20.360
you can unlock the limitations that can decide on different ways to express that information.

02:20.360 --> 02:26.400
So you can have your classic notebook bar shown at the top of the online browser, the same

02:26.400 --> 02:32.440
as similarly to get the desktop experience, are for a smaller platform for mobile device.

02:32.440 --> 02:35.520
You can convert that and show it in different ways.

02:35.520 --> 02:39.520
So if we take a look at the classic side bar shown in the middle, you can see on the right

02:39.520 --> 02:45.640
side that side by information is being displayed, suitable for mobile device, in smaller,

02:45.640 --> 02:51.640
in a different view of that data, which is very visually different than the source data

02:51.640 --> 02:52.640
comes from.

02:52.640 --> 02:56.920
So the layer of depth to different things, other things that are available in G-style log

02:56.920 --> 03:01.560
is that there's backmode support at the kind of in which it level you just say, you know,

03:01.560 --> 03:08.000
drawn backmode and we have these two various themes going on there like that.

03:08.000 --> 03:11.160
And again, the hint is that two air layers of, when you send over your dialogue, first

03:11.160 --> 03:17.160
you get this full update and for optimizing reasons, we try to apply minimal updates as

03:17.160 --> 03:18.160
possible.

03:18.160 --> 03:22.680
So if a small part of the symmetry changes, we just update that tree and update what's

03:22.680 --> 03:23.680
required there.

03:23.680 --> 03:28.240
And in many cases, we can get away with just updating the single widget, if we know what

03:28.240 --> 03:30.680
the actual specific action that's been done is.

03:30.680 --> 03:34.120
So if we know something that's been enabled, we know what's about and we can just

03:34.120 --> 03:36.360
fire on button enabled.

03:36.360 --> 03:39.560
And if we don't know what's going on, and there's been some kind of global refresh, you

03:39.560 --> 03:42.800
have to do a full update, we want to minimize that.

03:42.800 --> 03:47.840
So the partial updating of a dialogue is possible, which is dialogues.

03:47.840 --> 03:57.000
What's relative in new for this G-style, I think, is that the style we use in desktop

03:57.000 --> 04:01.600
for rendering the font widgets and other previews like that are now available in G-style

04:01.600 --> 04:02.600
log as well.

04:02.600 --> 04:07.880
So these are on-demand rendered in the sense that there's like whatever 12 or 15 entries

04:07.880 --> 04:10.360
here that need to be shown.

04:10.360 --> 04:15.560
And then the online says, please give me the preview images for these 15 slots and they

04:15.560 --> 04:17.680
come back and they're shown there like that.

04:17.680 --> 04:24.160
So there's on-demand a rendering for these new custom displays and that that.

04:24.160 --> 04:31.000
What's also new as well, or a bleed as new as well, is the ability to show what the keyboard

04:31.040 --> 04:34.680
accelerators are for various things like that.

04:34.680 --> 04:35.680
So you can interact.

04:35.680 --> 04:41.520
You can bring up this heads-up display to show you what are your shortcuts for the notebook

04:41.520 --> 04:42.520
bar.

04:42.520 --> 04:49.000
An accessibility front then, I think I've said in various other talks, but it's the same issue

04:49.000 --> 04:54.080
here again, is that you want to provide as much a possible custom widgets and especially

04:54.080 --> 05:00.520
for online where these custom widgets, you may even have accessible implementations for

05:00.520 --> 05:05.080
them on the desktop side, but that's no particular use to in the online side.

05:05.080 --> 05:10.080
If you have basically a canvas and you draw on various things to it, then you are just drawing

05:10.080 --> 05:14.680
things to it from the online side as well and you can get information from us.

05:14.680 --> 05:21.080
So this is an example where we have value sets over on the liberal upper side, which have

05:21.080 --> 05:26.480
accessibility information, but that accessibility information isn't available on the browser

05:26.520 --> 05:32.360
side, so it is much more convenient for us to move away from such a value set, change it

05:32.360 --> 05:38.000
into a more standardized icon view thing as well, and then I can view thing on the browser

05:38.000 --> 05:41.800
side, has the accessibility information to know that something is a picture and that

05:41.800 --> 05:46.560
the text is a label for that and you get that accessibility stuff for free.

05:46.560 --> 05:53.360
So it's an example of where we've moved value sets for that previews here into icon

05:53.360 --> 05:59.800
views and a file that changes take place in the edges out for accuracy purposes.

05:59.800 --> 06:01.280
And that's a big afternoon, thank you.

