### About TeXShop

#### Full-Screen Windows

The next new feature may look somewhat strange on a desktop machine with a large monitor, but will immediately make sense if you have a portable. The feature allows windows to be maximized so they fill the entire screen, hiding the menu bar and in some cases the toolbar. Many programs, including TeXShop, have already implemented this type of behavior for some of their windows, but the Lion design is easier to use because you can switch out of a maximized window for other tasks without shrinking the window back to regular size.

Lion's design is related to the Spaces feature of earlier systems, in which the user can create multiple desktops statically using Apple's System Preferences. In Lion, these multiple desktops have a more dynamic design. I'll describe how this works on a portable using finger gestures, but the gestures can be simulated on a desktop machine using control-arrow for appropriate arrow keys.

On a portable, a user can move between desktops by placing three fingers on the track pad and swiping left or right. By default, the Dashboard widgets are given a screen of their own left of the main screen, so swipe left to see these widgets and right to get back to the standard desktop. Swipe up rather than left or right to get to "Mission Control" where all multiple desktops are shown at once. Desktops are shown along the top of Mission Control. If the cursor is moved to the extreme top right, a new element appears allowing you to add further desktops. Mouse over a desktop to show an extra element allowing you to remove that desktop from the list. Programs can be moved from one screen to another in Mission Control. Swipe down with three fingers to return to a regular desktop.

In Lion, "programs" do not move into full-screen mode; instead "individual program windows" move into this mode. Using Safari as an example, that program could be showing two web pages, one in a regular desktop window and the other in a full screen window. Windows are taken full screen by clicking on the icon with two arrows at the extreme top right of the window. When a window moves into full screen mode, an extra desktop is created dynamically and occupied by that window. Thus in the Safari example, you could swipe with three fingers to move between the regular web page and the full screen web page, or between Safari and other programs. When a window is in full screen mode, move the cursor to the top of the screen to reveal the menu bar and an icon which switches the window back to regular mode. When that happens, the dynamically created desktop for that window is removed.

Now turn to the TeXShop implementation of this feature. When a source editor window become full screen, the toolbar shows but the menu bar is hidden. Nothing surprising there. When a preview window become full screen, the toolbar is also hidden and the display switches into double page mode. Move the mouse to the top of the screen to reveal the menu bar and toolbar.

When a full screen preview window is moved back to regular size, its old display mode returns, so if the window was originally in multipage mode before going to full screen, it will return to that mode when it exits full screen mode.

When a preview window is in full screen mode, the menu is still available and a menu item can be used to switch from double page mode to any other display mode. This can be useful for beamer documents, allowing each slide to occupy a full screen rather than seeing two slides side by side. If the preview window then exits full screen mode and later reenters it, the new display mode for full screen operation will be remembered.

If you are working on a TeX document, you can take the preview into full screen mode and leave the source window in regular mode, or you can take both windows into full screen mode. In either case, syncTeX automatically switches to the correct screen, so it is easy to go back and forth between the source and preview windows. Similarly, after typesetting from a source window, the screen will automatically switch to the screen with the preview.

One tricky issue is the handling of the console and log view windows. If these windows are open when the source window is taken to full screen mode, they will remain on the original screen. But if these windows are closed when the source window is taken to full screen mode, they will appear on that full screen during typesetting, or when the log is opened.

There is a menu item in the Windows menu to take the active window fullscreen. Notice that TeXShop's original full screen view of the Preview window is still available for now in the same menu. Eventually this item is likely to be removed.

In full screen Preview mode, it is possible to scroll from page to page by pushing the arrow keys, or by pushing the spacebar and shift-spacebar, or with a two finger up or down swipe gesture.

I investigated the possibility of taking both the source and the preview window into fullscreen mode together with a single button click, but that didn't work well, and it is not in the spirit of Apple's Design Guidelines.

Lion
New Features (III)