Make navigation keys work on document load - avoid breaking embedded viewer, take 3
This commit is contained in:
		
							parent
							
								
									854a4dd163
								
							
						
					
					
						commit
						e4e4b1ab4e
					
				@ -79,10 +79,10 @@ limitations under the License.
 | 
				
			|||||||
      <div id="sidebarContainer">
 | 
					      <div id="sidebarContainer">
 | 
				
			||||||
        <div id="toolbarSidebar">
 | 
					        <div id="toolbarSidebar">
 | 
				
			||||||
          <div class="splitToolbarButton toggled">
 | 
					          <div class="splitToolbarButton toggled">
 | 
				
			||||||
            <button id="viewThumbnail" class="toolbarButton group toggled" title="Show Thumbnails" tabindex="1" data-l10n-id="thumbs">
 | 
					            <button id="viewThumbnail" class="toolbarButton group toggled" title="Show Thumbnails" tabindex="2" data-l10n-id="thumbs">
 | 
				
			||||||
               <span data-l10n-id="thumbs_label">Thumbnails</span>
 | 
					               <span data-l10n-id="thumbs_label">Thumbnails</span>
 | 
				
			||||||
            </button>
 | 
					            </button>
 | 
				
			||||||
            <button id="viewOutline" class="toolbarButton group" title="Show Document Outline" tabindex="2" data-l10n-id="outline">
 | 
					            <button id="viewOutline" class="toolbarButton group" title="Show Document Outline" tabindex="3" data-l10n-id="outline">
 | 
				
			||||||
               <span data-l10n-id="outline_label">Document Outline</span>
 | 
					               <span data-l10n-id="outline_label">Document Outline</span>
 | 
				
			||||||
            </button>
 | 
					            </button>
 | 
				
			||||||
          </div>
 | 
					          </div>
 | 
				
			||||||
@ -98,44 +98,44 @@ limitations under the License.
 | 
				
			|||||||
      <div id="mainContainer">
 | 
					      <div id="mainContainer">
 | 
				
			||||||
        <div class="findbar hidden doorHanger" id="findbar">
 | 
					        <div class="findbar hidden doorHanger" id="findbar">
 | 
				
			||||||
          <label for="findInput" class="toolbarLabel" data-l10n-id="find_label">Find:</label>
 | 
					          <label for="findInput" class="toolbarLabel" data-l10n-id="find_label">Find:</label>
 | 
				
			||||||
          <input id="findInput" class="toolbarField" tabindex="20">
 | 
					          <input id="findInput" class="toolbarField" tabindex="21">
 | 
				
			||||||
          <div class="splitToolbarButton">
 | 
					          <div class="splitToolbarButton">
 | 
				
			||||||
            <button class="toolbarButton findPrevious" title="" id="findPrevious" tabindex="21" data-l10n-id="find_previous">
 | 
					            <button class="toolbarButton findPrevious" title="" id="findPrevious" tabindex="22" data-l10n-id="find_previous">
 | 
				
			||||||
              <span data-l10n-id="find_previous_label">Previous</span>
 | 
					              <span data-l10n-id="find_previous_label">Previous</span>
 | 
				
			||||||
            </button>
 | 
					            </button>
 | 
				
			||||||
            <div class="splitToolbarButtonSeparator"></div>
 | 
					            <div class="splitToolbarButtonSeparator"></div>
 | 
				
			||||||
            <button class="toolbarButton findNext" title="" id="findNext" tabindex="22" data-l10n-id="find_next">
 | 
					            <button class="toolbarButton findNext" title="" id="findNext" tabindex="23" data-l10n-id="find_next">
 | 
				
			||||||
              <span data-l10n-id="find_next_label">Next</span>
 | 
					              <span data-l10n-id="find_next_label">Next</span>
 | 
				
			||||||
            </button>
 | 
					            </button>
 | 
				
			||||||
          </div>
 | 
					          </div>
 | 
				
			||||||
          <input type="checkbox" id="findHighlightAll" class="toolbarField">
 | 
					          <input type="checkbox" id="findHighlightAll" class="toolbarField">
 | 
				
			||||||
          <label for="findHighlightAll" class="toolbarLabel" tabindex="23" data-l10n-id="find_highlight">Highlight all</label>
 | 
					          <label for="findHighlightAll" class="toolbarLabel" tabindex="24" data-l10n-id="find_highlight">Highlight all</label>
 | 
				
			||||||
          <input type="checkbox" id="findMatchCase" class="toolbarField">
 | 
					          <input type="checkbox" id="findMatchCase" class="toolbarField">
 | 
				
			||||||
          <label for="findMatchCase" class="toolbarLabel" tabindex="24" data-l10n-id="find_match_case_label">Match case</label>
 | 
					          <label for="findMatchCase" class="toolbarLabel" tabindex="25" data-l10n-id="find_match_case_label">Match case</label>
 | 
				
			||||||
          <span id="findMsg" class="toolbarLabel"></span>
 | 
					          <span id="findMsg" class="toolbarLabel"></span>
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
        <div class="toolbar">
 | 
					        <div class="toolbar">
 | 
				
			||||||
          <div id="toolbarContainer">
 | 
					          <div id="toolbarContainer">
 | 
				
			||||||
            <div id="toolbarViewer">
 | 
					            <div id="toolbarViewer">
 | 
				
			||||||
              <div id="toolbarViewerLeft">
 | 
					              <div id="toolbarViewerLeft">
 | 
				
			||||||
                <button id="sidebarToggle" class="toolbarButton" title="Toggle Sidebar" tabindex="3" data-l10n-id="toggle_sidebar">
 | 
					                <button id="sidebarToggle" class="toolbarButton" title="Toggle Sidebar" tabindex="4" data-l10n-id="toggle_sidebar">
 | 
				
			||||||
                  <span data-l10n-id="toggle_sidebar_label">Toggle Sidebar</span>
 | 
					                  <span data-l10n-id="toggle_sidebar_label">Toggle Sidebar</span>
 | 
				
			||||||
                </button>
 | 
					                </button>
 | 
				
			||||||
                <div class="toolbarButtonSpacer"></div>
 | 
					                <div class="toolbarButtonSpacer"></div>
 | 
				
			||||||
                <button id="viewFind" class="toolbarButton group" title="Find in Document" tabindex="4" data-l10n-id="findbar">
 | 
					                <button id="viewFind" class="toolbarButton group" title="Find in Document" tabindex="5" data-l10n-id="findbar">
 | 
				
			||||||
                   <span data-l10n-id="findbar_label">Find</span>
 | 
					                   <span data-l10n-id="findbar_label">Find</span>
 | 
				
			||||||
                </button>
 | 
					                </button>
 | 
				
			||||||
                <div class="splitToolbarButton">
 | 
					                <div class="splitToolbarButton">
 | 
				
			||||||
                  <button class="toolbarButton pageUp" title="Previous Page" id="previous" tabindex="5" data-l10n-id="previous">
 | 
					                  <button class="toolbarButton pageUp" title="Previous Page" id="previous" tabindex="6" data-l10n-id="previous">
 | 
				
			||||||
                    <span data-l10n-id="previous_label">Previous</span>
 | 
					                    <span data-l10n-id="previous_label">Previous</span>
 | 
				
			||||||
                  </button>
 | 
					                  </button>
 | 
				
			||||||
                  <div class="splitToolbarButtonSeparator"></div>
 | 
					                  <div class="splitToolbarButtonSeparator"></div>
 | 
				
			||||||
                  <button class="toolbarButton pageDown" title="Next Page" id="next" tabindex="6" data-l10n-id="next">
 | 
					                  <button class="toolbarButton pageDown" title="Next Page" id="next" tabindex="7" data-l10n-id="next">
 | 
				
			||||||
                    <span data-l10n-id="next_label">Next</span>
 | 
					                    <span data-l10n-id="next_label">Next</span>
 | 
				
			||||||
                  </button>
 | 
					                  </button>
 | 
				
			||||||
                </div>
 | 
					                </div>
 | 
				
			||||||
                <label id="pageNumberLabel" class="toolbarLabel" for="pageNumber" data-l10n-id="page_label">Page: </label>
 | 
					                <label id="pageNumberLabel" class="toolbarLabel" for="pageNumber" data-l10n-id="page_label">Page: </label>
 | 
				
			||||||
                <input type="number" id="pageNumber" class="toolbarField pageNumber" value="1" size="4" min="1" tabindex="7">
 | 
					                <input type="number" id="pageNumber" class="toolbarField pageNumber" value="1" size="4" min="1" tabindex="8">
 | 
				
			||||||
                </input>
 | 
					                </input>
 | 
				
			||||||
                <span id="numPages" class="toolbarLabel"></span>
 | 
					                <span id="numPages" class="toolbarLabel"></span>
 | 
				
			||||||
              </div>
 | 
					              </div>
 | 
				
			||||||
@ -143,37 +143,37 @@ limitations under the License.
 | 
				
			|||||||
                <input id="fileInput" class="fileInput" type="file" oncontextmenu="return false;" style="visibility: hidden; position: fixed; right: 0; top: 0" />
 | 
					                <input id="fileInput" class="fileInput" type="file" oncontextmenu="return false;" style="visibility: hidden; position: fixed; right: 0; top: 0" />
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                <button id="fullscreen" class="toolbarButton fullscreen" title="Switch to Presentation Mode" tabindex="11" data-l10n-id="presentation_mode">
 | 
					                <button id="fullscreen" class="toolbarButton fullscreen" title="Switch to Presentation Mode" tabindex="12" data-l10n-id="presentation_mode">
 | 
				
			||||||
                  <span data-l10n-id="presentation_mode_label">Presentation Mode</span>
 | 
					                  <span data-l10n-id="presentation_mode_label">Presentation Mode</span>
 | 
				
			||||||
                </button>
 | 
					                </button>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                <button id="openFile" class="toolbarButton openFile" title="Open File" tabindex="12" data-l10n-id="open_file">
 | 
					                <button id="openFile" class="toolbarButton openFile" title="Open File" tabindex="13" data-l10n-id="open_file">
 | 
				
			||||||
                   <span data-l10n-id="open_file_label">Open</span>
 | 
					                   <span data-l10n-id="open_file_label">Open</span>
 | 
				
			||||||
                </button>
 | 
					                </button>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                <button id="print" class="toolbarButton print" title="Print" tabindex="13" data-l10n-id="print">
 | 
					                <button id="print" class="toolbarButton print" title="Print" tabindex="14" data-l10n-id="print">
 | 
				
			||||||
                  <span data-l10n-id="print_label">Print</span>
 | 
					                  <span data-l10n-id="print_label">Print</span>
 | 
				
			||||||
                </button>
 | 
					                </button>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                <button id="download" class="toolbarButton download" title="Download" tabindex="14" data-l10n-id="download">
 | 
					                <button id="download" class="toolbarButton download" title="Download" tabindex="15" data-l10n-id="download">
 | 
				
			||||||
                  <span data-l10n-id="download_label">Download</span>
 | 
					                  <span data-l10n-id="download_label">Download</span>
 | 
				
			||||||
                </button>
 | 
					                </button>
 | 
				
			||||||
                <!-- <div class="toolbarButtonSpacer"></div> -->
 | 
					                <!-- <div class="toolbarButtonSpacer"></div> -->
 | 
				
			||||||
                <a href="#" id="viewBookmark" class="toolbarButton bookmark" title="Current view (copy or open in new window)" tabindex="15" data-l10n-id="bookmark"><span data-l10n-id="bookmark_label">Current View</span></a>
 | 
					                <a href="#" id="viewBookmark" class="toolbarButton bookmark" title="Current view (copy or open in new window)" tabindex="16" data-l10n-id="bookmark"><span data-l10n-id="bookmark_label">Current View</span></a>
 | 
				
			||||||
              </div>
 | 
					              </div>
 | 
				
			||||||
              <div class="outerCenter">
 | 
					              <div class="outerCenter">
 | 
				
			||||||
                <div class="innerCenter" id="toolbarViewerMiddle">
 | 
					                <div class="innerCenter" id="toolbarViewerMiddle">
 | 
				
			||||||
                  <div class="splitToolbarButton">
 | 
					                  <div class="splitToolbarButton">
 | 
				
			||||||
                    <button class="toolbarButton zoomOut" id="zoom_out" title="Zoom Out" tabindex="8" data-l10n-id="zoom_out">
 | 
					                    <button class="toolbarButton zoomOut" id="zoom_out" title="Zoom Out" tabindex="9" data-l10n-id="zoom_out">
 | 
				
			||||||
                      <span data-l10n-id="zoom_out_label">Zoom Out</span>
 | 
					                      <span data-l10n-id="zoom_out_label">Zoom Out</span>
 | 
				
			||||||
                    </button>
 | 
					                    </button>
 | 
				
			||||||
                    <div class="splitToolbarButtonSeparator"></div>
 | 
					                    <div class="splitToolbarButtonSeparator"></div>
 | 
				
			||||||
                    <button class="toolbarButton zoomIn" id="zoom_in" title="Zoom In" tabindex="9" data-l10n-id="zoom_in">
 | 
					                    <button class="toolbarButton zoomIn" id="zoom_in" title="Zoom In" tabindex="10" data-l10n-id="zoom_in">
 | 
				
			||||||
                      <span data-l10n-id="zoom_in_label">Zoom In</span>
 | 
					                      <span data-l10n-id="zoom_in_label">Zoom In</span>
 | 
				
			||||||
                     </button>
 | 
					                     </button>
 | 
				
			||||||
                  </div>
 | 
					                  </div>
 | 
				
			||||||
                  <span id="scaleSelectContainer" class="dropdownToolbarButton">
 | 
					                  <span id="scaleSelectContainer" class="dropdownToolbarButton">
 | 
				
			||||||
                     <select id="scaleSelect" title="Zoom" oncontextmenu="return false;" tabindex="10" data-l10n-id="zoom">
 | 
					                     <select id="scaleSelect" title="Zoom" oncontextmenu="return false;" tabindex="11" data-l10n-id="zoom">
 | 
				
			||||||
                      <option id="pageAutoOption" value="auto" selected="selected" data-l10n-id="page_scale_auto">Automatic Zoom</option>
 | 
					                      <option id="pageAutoOption" value="auto" selected="selected" data-l10n-id="page_scale_auto">Automatic Zoom</option>
 | 
				
			||||||
                      <option id="pageActualOption" value="page-actual" data-l10n-id="page_scale_actual">Actual Size</option>
 | 
					                      <option id="pageActualOption" value="page-actual" data-l10n-id="page_scale_actual">Actual Size</option>
 | 
				
			||||||
                      <option id="pageFitOption" value="page-fit" data-l10n-id="page_scale_fit">Fit Page</option>
 | 
					                      <option id="pageFitOption" value="page-fit" data-l10n-id="page_scale_fit">Fit Page</option>
 | 
				
			||||||
@ -204,7 +204,7 @@ limitations under the License.
 | 
				
			|||||||
                    data-l10n-id="page_rotate_cw" ></menuitem>
 | 
					                    data-l10n-id="page_rotate_cw" ></menuitem>
 | 
				
			||||||
        </menu>
 | 
					        </menu>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        <div id="viewerContainer">
 | 
					        <div id="viewerContainer" tabindex="1">
 | 
				
			||||||
          <div id="viewer" contextmenu="viewerContextMenu"></div>
 | 
					          <div id="viewer" contextmenu="viewerContextMenu"></div>
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1334,6 +1334,12 @@ var PDFView = {
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      self.setInitialView(storedHash, scale);
 | 
					      self.setInitialView(storedHash, scale);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      // Make all navigation keys work on document load,
 | 
				
			||||||
 | 
					      // unless the viewer is embedded in another page.
 | 
				
			||||||
 | 
					      if (window.parent.location === window.location) {
 | 
				
			||||||
 | 
					        PDFView.container.focus();
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
    });
 | 
					    });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    pdfDocument.getMetadata().then(function(data) {
 | 
					    pdfDocument.getMetadata().then(function(data) {
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user