Dear Hashini,
Welcome to Google Summer of Code. Please take things slowly for now and focus on your exams, as they have the first priority. There is still time for everything else in two weeks.

Of course we can start brainstorming about some of the details now, as that does not take much time per day. For instance, it may be useful to have a list of things that can be too wide to fit into a line:

* Tables

* Math elements (formulas)

* Mini pages (boxes)

* Images (although there is no need to do much here, as an image cannot be edited in LyX).

Any others? Depending on what solution we choose, it may be good to have a (prioritized) list of elements we will support. You can also create a number of test documents having such items (and maybe some "lorem ipsum" text as a placeholder for text around them).

Also, tables containing mini pages (boxes) are very common, so that combination should be tested as well.

As for the solution, there are several possibilities:

* Keyboard navigation. This is already implemented for many of these cases, and complements mouse-based solutions.

* Swiping/scrolling with the mouse. Mac OS X supports this, but other platforms may not have the hardware or software support. This is a very elegant solution and would be nice to have (if Qt supports it), as currently vertical scrolling (using the panning gesture on Mac OS X) works but horizontal scrolling does not. However, it can only complement other solutions, so I would consider this low priority but nice to have if there is time left at the end.

* Horizontal scrollbar. This is the original plan of the project. The advantage of a scroll bar is that it allows fast and targeted scrolling to a certain point. The disadvantage is that usually the user would expect the entire screen (editing panel) to scroll. However, this would result in text scrolling off (to the left) while the element that is too wide is the only thing left. While logically consistent, this is not very elegant.

* Scroll buttons. This looks like a nice way to scroll just the inset in question, without scrolling the entire editing panel. However, it is difficult to scroll a large distance accurately using buttons (you can drag a scroll bar but you can only press and hold a button).

I think there is a general agreement that we would like to retain (and perhaps extend) keyboard navigation. The scroll widget for the mouse (scroll bar or buttons?) is, as far as I can tell, less settled.

What do others think? A scroll bar is probably best if there are tables or other elements that are much too wide (several screens wide); or are there people who think buttons are definitely better?

If we go with a scroll bar, should the rest of the window stay or scroll alongside? How do we treat a document that has several elements that are too wide, with text in between? It probably looks odd if the scroll bar behavior affects only one element; which element would even depend on the cursor position (and the cursor may not even be within the current view). So global scrolling seems the natural solution. This would, however, entail a horizontal scroll bar that is active even if the current view contains only text.

Because I did not want to bring up all the design problems/choices up front (before proposals were submitted), I had not mentioned that earlier, but I hope we will have some fruitful discussions on what solution we choose. :-)
--
Regards,
Cyrille Artho - http://artho.com/
Those who will not reason, are bigots, those who cannot,
are fools, and those who dare not, are slaves.
                -- George Gordon Noel Byron

Reply via email to