Document Viewer – Part 1: Multiple Monitors

Multiple Monitors and Giant 4K Screens

Many of us use multiple monitors for a variety of reasons:

  1. Published studies have shown that a dual monitor setup can increase productivity by 20 to 50 percent (depending on what you’re doing). We know that D2 takes up a lot of space, its difficult to see the D2 screen AND the document.
  2. Real multi-tasking requires enough screen space to keep two or more apps in full view simultaneously. Our authors are always in email, D2, Word, Excel, and 5 other applications.
  3. Copy/Paste between documents is much easier when you don’t have to alt-tab between them and scroll up or down so much. Tables are especially tough.

Having a second monitor to display your document is really nice:

threemonitors

Deficiencies with the D2 PDF Viewer

D2 has a nice PDF viewing widget, this is something that we haven’t seen in Webtop or other Documentum .

But the D2 PDF viewing widget has several limitations:

  • It is difficult to use with multiple monitors
  • We would like to size the document viewer without affecting my D2 window or the widgets
  • It doesn’t automatically update when i click on a new task
  • Readability (also addressed by  Brava, Arender, and a widget by Trana1)
  • We may want to extend the viewer with additional functionality (see future release section below)

How to Do It

The widget itself does not need to display anything within, but it has to…

  1. Subscribe for the document selection event
  2. When the widget gets the event, it opens a window with the URL to the document

Subscribing is described in the D2 Developers Guide:

d2OpenAjaxHub.subscribeToChannel("D2_EVENT_SELECT_OBJECT", 
          selectObjectCallback, true);

 

Opening a window is also pretty common, we want to make it always open in the same external browser window.

window.open(url,'viewPDF_target');

The D2 download servlet will provide the PDF to a browser.  It has a bunch of parameters that we can use, we want to make sure that content_disposition=inline.

Here is an example URL:

http://dv4-ls-d2-cs:8080/D2/servlet/Download?_docbase=dv4_ls_d2_cs_reg
          &_locale=en&_username=dmadmin
          &_password=DM_TICKET=001234...44442
          &id=0901e240800a9f6e
          &format=_DEFAULT_
          &event_name=d2_view
          &content_disposition=inline

 

 

Code

The code is in github in the “widget-core” subfolder “docview”:

https://github.com/paulsundquist/d2-widget-core

 

Future Releases

Future releases of this widget may include:

  • Keyboard shortcuts (at least activate the PDF window)
  • Better hyperlink handling for links within a PDF
  • Remember the location of the window as a default for the next time it runs
  • Zoom to quarter panel with a function key
  • Preferences Screen
  • Annotations
  • Macros
  • Caching – for faster performance
  • PDF Form filling
  • Other document formats
  • Key from image
  • Better integrated search
  • Full screen mode (minimize the title bar)
  • Really optimize for processing tasks

There may be other widgets that could be displayed in an external viewer as well.

 

 

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s