Commit Graph

643 Commits

Author SHA1 Message Date
Ian Gilman
b3b1a32717 Merge pull request #760 from avandecreme/imagetilesource
Add ImageTileSource. Fix #467
2015-11-11 10:32:09 -08:00
Antoine Vandecreme
7c62974e57 Exit early if an array is provided as a tile source. 2015-11-09 18:19:17 -05:00
Antoine Vandecreme
760aaa7dca Fix tests. 2015-11-05 22:32:56 -05:00
Antoine Vandecreme
b85d0674e6 Add support to open an ImageTileSource with it constructor. 2015-11-05 22:04:21 -05:00
Ian Gilman
db5949c2d7 Merge pull request #754 from fs-webdev/master
Added a patch to help slow down the scroll devices that fire too fast…
2015-11-04 11:31:01 -08:00
Petar Petrov
8c4fcc9ca9 tile edge smoothing at high zoom - #755 2015-11-04 17:04:50 +02:00
Sebastian Öberg
6b098c1c2b Fixed zooming in with plus sign. 2015-11-04 11:00:08 +01:00
Antoine Vandecreme
14a83e1154 Add IE8 support in ImageTileSource. 2015-11-02 18:35:11 -05:00
Grant Echols
3214494dc9 Added code to swallow the canvas-scroll event if we are swallowing it because of time. 2015-11-02 16:03:27 -07:00
Antoine Vandecreme
3316a55b97 Add CORS support to ImageTileSource 2015-11-01 13:25:25 -05:00
Antoine Vandecreme
c041746366 Add ImageTileSource. Fix #467 2015-11-01 10:23:02 -05:00
Grant Echols
40edbd7a1c Updates as per code review requests 2015-10-28 17:07:51 -06:00
Grant Echols
ad4bbb9daf Changed name of config parameter to include 'MS' to suggest milliseconds. 2015-10-27 15:33:39 -06:00
Grant Echols
19c6179533 Added a patch to help slow down the scroll devices that fire too fast. This new code reduces the number of 'canvas-scroll' events that fire and slows down the zoom process. 2015-10-27 14:00:45 -06:00
Sebastian Gassner
85edea7250 Add overlays after loading tileSource, when using per-tileSource overlays. 2015-10-17 09:48:09 +02:00
Larissa Smith
4b72399e8f Use the right queue item's options when replacing an item. 2015-10-08 16:29:01 -06:00
Larissa Smith
14e86cd30b Set autoRefigureSizes back to true at the end of the loadQueue. 2015-10-07 16:09:17 -06:00
Larissa Smith
4643851da9 Optimized adding large numbers of items to the world. 2015-09-25 09:58:34 -06:00
Grant Echols
c4aa3715a7 Fixed problem with missing .length in for loop of raiseAddItemFailed event.
Added viewer._cancelPendingImages method that clears the loadQueue.
Added call to _cancelPendingImages from within the world.removeAll method.
2015-09-23 15:19:02 -06:00
Ian Gilman
19f35c293b Merge pull request #711 from AlbinoShaun/master
Change resize behaviour to prevent "snapping" to world bounds
2015-09-03 09:21:29 -07:00
Shaun Whitely
59a6a43379 Revert "Fixed navigator resize"
- This reverts commit c825438339.
- Made navigator always use a minZoomImageRatio of 1
2015-09-03 09:44:27 +10:00
Shaun Whitely
c825438339 Fixed navigator resize
- Added navigatorMinZoomImageRatio with default of 1
2015-09-02 15:58:47 +10:00
Shaun Whitely
6d3b582e58 Removed allowZoomToConstraintsOnResize and made the new resize behaviour
the default
2015-08-29 16:46:56 +10:00
Shaun Whitely
bd4921c285 Added option to avoid image from snapping to home bounds on resize. 2015-08-25 22:06:53 +10:00
Larissa Smith
7076d64b1b Fixed race condition for replacing a tiledImage where the world may have changed before the new tiledImage loads. Added test for replacing with addTiledImage. 2015-08-21 11:01:32 -06:00
Larissa Smith
f13691f60d Added option in addTiledImage to replace tiledImage at index. 2015-08-19 13:40:27 -06:00
Antoine Vandecreme
d960c69b34 Replace eval call when passing a Json string. 2015-07-30 16:44:41 -04:00
Larissa Smith
339401683f Added configuration parameter to allow a horizontal layout that has a fixed number of columns or a vertical layout that has a fixed number of rows. 2015-07-02 13:20:57 -06:00
Ian Gilman
6db00ad286 Overlay doc fixes 2015-06-30 10:58:51 -07:00
Grant Echols
df878f6f82 Changed preserveImageSizeOnResize to require autoResize=true.
Refactored resizing code to share more code.
Removed preserveImageSizeOnResize parameter from viewer.
2015-06-24 10:48:00 -06:00
Grant Echols
fb21dabd76 Added configuration parameter: preserveImageSizeOnResize to preserve the default behavior.
Changed fitBounds to fitBoundsWithConstraints as per Ian's instructions.
2015-06-23 10:55:57 -06:00
Grant Echols
57c06a9a19 Fixed problem with build complaining about variable name reuse. 2015-06-22 13:35:45 -06:00
Grant Echols
1c14f5cc94 Added code to handle the case where autoResize=false. In this mode the image size is preserved and the center is maintained.
This may be considered changing the default behavior so I'd welcome a suggestion to add a configuration parameter to help preserve the default behavior.
2015-06-22 13:29:51 -06:00
Antoine Vandecreme
dd782a427e Add documentation on pre-full-screen event. Fix #487 2015-05-16 10:36:00 -04:00
Ian Gilman
efa8ccff35 * Keyboard pan speed is now the same regardless of zoom level (#645) 2015-05-05 17:20:20 -07:00
Antoine Vandecreme
9d053c545b Fix Ian's comments. 2015-04-20 19:25:36 -04:00
Antoine Vandecreme
44395662d1 Add opacity support. 2015-04-19 16:10:37 -04:00
Philip Giuliani
425acc38f9 Fix overwriting the tiledImage options 2015-04-13 18:59:13 +02:00
Philip Giuliani
f8503bd6ac Add placeholderFillStyle option to tiledImage 2015-04-10 14:31:08 +02:00
Philip Giuliani
4523454ff1 Add option to define the fillStyle of the placeholder 2015-04-09 13:44:55 +02:00
Ian Gilman
c27f68640f Docs for clip feature, as well as get and set 2015-03-19 16:38:52 -07:00
Ian Gilman
e1d36ffb14 First version of clip feature 2015-03-18 10:03:44 -07:00
Philip Giuliani
8dc8779fee Clear the imageLoader when re-drawing 2015-03-03 09:29:44 +01:00
Antoine Vandecreme
a372274ee1 Fix Cross Origin policy not working (#612)
Remove useless hostUrl field
2015-02-26 17:57:31 -05:00
edsilv
89d488bb7e removed show/hide controls 2015-02-24 14:55:46 +00:00
edsilv
de4ad6dde6 Merge branch 'master' into ed 2015-02-24 14:47:32 +00:00
edsilv
cf063a71f5 Merge remote-tracking branch 'upstream/master' 2015-02-24 12:05:07 +00:00
edsilv
a5394c62f7 show/hide controls 2015-02-21 11:44:04 +00:00
edsilv
22bfbac916 Merge remote-tracking branch 'upstream/master' 2015-02-21 11:36:43 +00:00
Martin Pluta
cfd2693fc7 added destroy and clear methods to resolve tile caching issue 2015-02-20 21:12:34 +01:00
Ian Gilman
f118ae9407 Minor preserveOverlays cleanup 2015-02-13 13:26:44 -08:00
Ian Gilman
88c488d706 For multi-image open, drawing isn't started until all tileSources have been opened 2015-02-10 11:30:36 -08:00
edsilv
4d8ab41808 remove show/hide controls 2015-02-09 21:29:17 +00:00
edsilv
c5a8074b1e ignore .idea files, added show/hide controls methods 2015-02-06 13:58:13 +00:00
Ian Gilman
ae3b100483 Merge branch 'collections' into m2 2015-01-22 11:16:09 -08:00
Ian Gilman
735fcc3e37 Merge branch 'master' into collections
fixed Conflicts:
	src/navigator.js
	src/openseadragon.js
2015-01-22 11:15:45 -08:00
Mark Salsbery
c2ebbbe1af Merge branch 'master' into viewer_focus
Conflicts:
	changelog.txt
2015-01-21 14:59:41 -08:00
Mark Salsbery
43d8924513 Added tabIndex option to viewer 2015-01-21 12:47:42 -08:00
Mark Salsbery
1e8b3a1ea6 Removed Viewer focusHandler/onCanvasFocus
Presumably, this was meant to manually scroll the viewer into view when it receives focus. This is already handled by browsers when tabbing to the viewer, so doing it explicitly isn't necessary, and it creates a negative user experience when clicking on a viewer to give it focus (as of #569).
2015-01-21 11:49:19 -08:00
Mark Salsbery
545997bace MouseTracker now defaults to tracking on (#558) 2015-01-20 18:35:58 -08:00
Ian Gilman
897a237807 Added viewport-change event; fixed spring reset 2015-01-20 11:23:34 -08:00
Ian Gilman
732cd87a10 Merge branch 'collections' into m2
fixed Conflicts:
	changelog.txt
2015-01-19 10:45:26 -08:00
Ian Gilman
dc1a7c9cc5 Merge branch 'master' into collections
fixed Conflicts:
	src/viewer.js
2015-01-19 10:35:31 -08:00
Mark Salsbery
0f5c205656 Cut/pasted code fix 2015-01-17 11:25:24 -08:00
Mark Salsbery
412ebce94d Keyboard navigation fixes
Removed textarea element from Viewer DOM. Viewer.canvas now handles keyboard navigation.
2015-01-17 11:18:55 -08:00
Ian Gilman
1765e3c0c9 Merge pull request #537 from bitjutsu/bug-500-keyboard-nav
fix #500 - requests keyboard focus when canvas is clicked
2015-01-16 16:58:11 -08:00
Mark Salsbery
2831771af5 MouseTracker - keyboard handling
1) MouseTracker - added keydown and keyup handlers
2) Modifier keys ignored in keyboard  navigation handlers (#503)
3) Arrow key navigation fixed across platforms (#565)
2015-01-16 16:26:30 -08:00
Ian Gilman
c55daff222 Merge pull request #553 from openseadragon/ajax
Allowing XHRs withCredentials for authenticated requests
2015-01-15 14:35:06 -08:00
Mark Salsbery
00aae52a08 Fix container-enter/container-exit event properties 2015-01-15 12:37:54 -08:00
Mark Salsbery
cb56e352cf Mousetracker Improvements
1) MouseTracker - Simulated touchenter/touchleave events now bubble to parent element MouseTrackers
2) MouseTracker - Improved multitouch support in enter/exit event handlers
3) MouseTracker - orphaned tracked touch pointers removed (fix for #539)
4) MouseTracker - removed touchenter/touchleave event support since the events don't exist on any known platform and have been removed from the W3C specification
5) Removed Viewer onContainerPress/onContainerRelease handlers (and the associated 'container-release' event ) that were never fired due to the canvas (child) element capturing the DOM events
6) Added 'canvas-enter', 'canvas-exit', and 'canvas-press' events to Viewer
7) ButtonGroup - removed obsolete MouseTracker event handlers
2015-01-15 12:15:22 -08:00
Ian Gilman
ef20ccc1e7 Merge branch 'collections' into m2 2015-01-13 14:12:14 -08:00
Ian Gilman
17b8f356ed Merge branch 'master' into collections 2015-01-13 14:11:52 -08:00
Ian Gilman
373631ae32 Merge branch 'collections' into m2 2015-01-12 16:47:39 -08:00
Mark Salsbery
e4c549927b Merge remote-tracking branch 'upstream/master' into mousebuttons479
Conflicts:
	changelog.txt
2015-01-12 15:36:19 -08:00
Ian Gilman
0fd94bb048 Merge branch 'master' into collections
fixed Conflicts:
	changelog.txt
	src/viewer.js
2015-01-12 14:10:49 -08:00
Mark Salsbery
755854d3f7 Renamed non-primary button events/handlers 2015-01-12 11:02:54 -08:00
Mark Salsbery
30b5ec04c6 MouseTracker Improvements
* Exposed secondary pointer button (middle, right, etc.) events from MouseTracker and through viewer (#479)
* MouseTracker - Improved IE 8 compatibility
2015-01-10 14:49:02 -08:00
Younes El Alami
1d16b01a28 Changed _this.source.overlays to _this.overlays, https://github.com/openseadragon/openseadragon/pull/561/files#r22730318 2015-01-10 12:11:45 +00:00
Ian Gilman
4fa6fea850 Scrollwheel for thumbs (m2) 2015-01-09 11:45:53 -08:00
Younes El Alami
9e07c96d29 Added preserveOverlays option to Viewer 2015-01-09 02:21:16 +00:00
Ian Gilman
c820f9f918 Added ajaxWithCredentials option 2015-01-02 15:45:46 -08:00
Ian Gilman
56ee5bd3c5 Viewport and tiledImage test fixes 2015-01-02 14:24:05 -08:00
Ian Gilman
68dfc79101 Merge branch 'collections' into bugs 2014-12-31 11:16:33 -08:00
Adam Carruthers
6e49f80248 Prevent mobile keyboard from opening
Adds readonly property to .keyboard-command-area to prevent
input, but allow keys to be captured.
2014-12-22 20:29:44 -07:00
Ian Gilman
c9708399a1 Fixed bug with passing single literal tilesource on construction 2014-12-19 15:32:19 -08:00
Philip Giuliani
c737bad66e Fix the jobLimit of the imageLoader
Fixes #490
2014-12-19 15:17:15 +01:00
Adam Carruthers
69e9326d4f fix #500 - requests keyboard focus when canvas is clicked
The canvas click listener will now check if keyboard-command-area has
focus, and if it does not, it will request it.
2014-12-04 17:06:33 -05:00
Ian Gilman
6b0e44d037 Merge branch 'collections' into ian2
fixed Conflicts:
	test/demo/collections/main.js
2014-12-03 13:37:44 -08:00
Ian Gilman
09e494091e More fixes for tiledImage animation 2014-12-02 13:17:56 -08:00
Ian Gilman
6a7f56d858 tiledImage bounds animation now works 2014-12-02 11:44:02 -08:00
Ian Gilman
7078826be1 Auto-resize now works for multi-image 2014-12-01 16:29:21 -08:00
Ian Gilman
2de44c752d Using "viewport coordinates" instead of "world coordinates" 2014-11-24 11:59:06 -08:00
Ian Gilman
2a5fd0b0f7 Fixed "toImage" converters 2014-11-21 15:18:25 -08:00
Ian Gilman
68fbdc7beb * Overlays appear in the DOM immediately on open or addOverlay (#507) 2014-11-20 15:33:13 -08:00
Ian Gilman
78f65152bc Fixed: overlays were appearing under the canvas 2014-11-20 14:50:07 -08:00
Ian Gilman
b7c78812c5 Items added with addTiledImage are now added in correct sequence 2014-11-18 15:45:03 -08:00
Ian Gilman
0e31b67ca5 ReferenceStrip fixes 2014-11-17 14:03:14 -08:00
Ian Gilman
336482cd1c Viewer.open now honors sequence mode 2014-11-17 12:57:49 -08:00
Ian Gilman
1279c6766c More sequence mode work 2014-11-14 17:19:04 -08:00
Ian Gilman
0dd97dbc56 First version of sequence mode 2014-11-14 16:51:02 -08:00
Ian Gilman
b371af712e Fixed broken test 2014-11-14 15:49:42 -08:00
Ian Gilman
1ed80b0d27 Docs and naming changes for collection mode 2014-11-12 16:31:46 -08:00
Ian Gilman
56ddf8c9c3 First steps for collection mode 2014-11-11 17:14:48 -08:00
Ian Gilman
d346d165f8 Updated documentation 2014-11-04 11:53:39 -08:00
Ian Gilman
31c15aed69 Merge branch 'collections' into ian
fixed Conflicts:
	src/viewer.js
	test/demo/collections/main.js
2014-11-04 09:58:09 -08:00
Ian Gilman
00c2881c64 Fixed test breakages 2014-11-03 17:14:17 -08:00
Ian Gilman
f8156991ef More doc tweaks 2014-10-29 17:23:54 -07:00
Ian Gilman
a68be6ac68 You can now open multiple images when creating via OpenSeadragon() 2014-10-29 17:14:46 -07:00
Ian Gilman
72aa6c4669 Docs for Viewer.open() 2014-10-29 17:06:14 -07:00
Ian Gilman
4d6be50c05 More cleanup for open() changes 2014-10-29 16:39:43 -07:00
Ian Gilman
95836a6ad1 Major overhaul to Viewer.open() 2014-10-29 16:11:21 -07:00
Ian Gilman
fb6280644a Merge branch 'collections' into margins
fixed Conflicts:
	test/demo/collections/main.js
2014-10-24 15:27:14 -07:00
Ian Gilman
3e1870cde0 Navigator now updates for item index changes and removals 2014-10-24 15:18:32 -07:00
Ian Gilman
2d8652046a First stab at margins 2014-10-16 14:00:07 -07:00
Ian Gilman
a08e361512 Navigator following host viewer's world events 2014-09-24 13:58:09 -07:00
Ian Gilman
e02209092c Navigator now works with multiple images 2014-09-23 16:15:03 -07:00
Ian Gilman
63996a7d92 Merge branch 'master' into collections
fixed Conflicts:
	src/viewport.js
2014-09-17 16:05:23 -07:00
nein09
f0f6e93915 Adding functionality for https://github.com/openseadragon/openseadragon/issues/127 - option for home button to fill rather than fit.
- Added a option to pass to the OpenSeadragon constructor called homeFillsViewer, which defaults to false. If true, the home button will fill the viewer with the image, centered on the image's center, zoomed to fill the viewer at the image's smallest dimension, and clipped at the image's largest dimension. For example, a very tall, thin image in a 4:3 aspect ratio viewer will zoom so that the width of the image fills the viewer, and most of the height of the image is clipped.
2014-09-12 15:09:18 -07:00
Ian Gilman
5a1a41428b Merge branch 'master' into collections
fixed Conflicts:
	src/drawer.js
2014-08-26 11:53:03 -07:00
Dominik Picheta
0ff6eb443d Added pinchRotate option. 2014-08-22 15:22:00 +01:00
Ian Gilman
7b80263718 Reinstating a small check. 2014-08-21 10:11:21 -07:00
Dominik Picheta
097714cf39 Implements pinch rotate. 2014-08-20 12:03:42 +01:00
Ian Gilman
1f13d1f909 Moved update-viewport event 2014-08-19 15:43:36 -07:00
Ian Gilman
33f0fa1e4b World cleanup; viewer layer function deprecation 2014-08-19 15:02:04 -07:00
Ian Gilman
8efad6f3a0 Fixed home/constraints for multi-image. 2014-08-18 16:04:49 -07:00
Ian Gilman
26e9575f41 Merge branch 'collections' into ian 2014-08-15 14:50:19 -07:00
Ian Gilman
1cc29db432 Merge branch 'master' into collections
fixed Conflicts:
	src/viewport.js
2014-08-15 14:49:56 -07:00
Dominik Picheta
873135b492 Adds rotate event. Fixes #454. 2014-08-13 10:53:52 +01:00
Ian Gilman
5c7c1d5b6c Moved Viewport.goHome to Viewer.goHome. 2014-08-12 16:44:53 -07:00
Ian Gilman
66b8d7e191 Previous cleanup was a little too aggressive. 2014-08-12 16:15:17 -07:00
Dominik Picheta
afd8b48d6b Fixes #192.
Navigator can now rotate together with the viewer.
2014-08-12 15:27:16 +01:00
Ian Gilman
45b7118732 Further cleanup 2014-08-11 17:04:20 -07:00
Ian Gilman
f04d538b5b Deprecated layer functions in viewer; additional cleanup. 2014-08-08 16:15:23 -07:00
Ian Gilman
b43ac582dc Merge branch 'collections' into ian 2014-08-07 10:06:44 -07:00
Ian Gilman
00c7315989 Merge branch 'master' into collections
fixed Conflicts:
	src/viewport.js
2014-08-07 10:06:15 -07:00
iangilman
c9c973276f Merge pull request #452 from PathXL/flick-after-rotate-fix
Fixes incorrect flick direction after image is rotated.
2014-08-07 10:03:12 -07:00
Dominik Picheta
a672ca9785 Fixes incorrect flick direction after image is rotated. 2014-08-07 10:50:38 +01:00
Ian Gilman
dbb60c0ab2 Splitting drawer into drawer/tileCache/tiledImage; adding World 2014-08-06 13:48:18 -07:00
Mark Salsbery
1d5b059fcc Call Viewport.applyConstraints() on drag-end when flick gesture is enabled 2014-08-06 11:26:18 -07:00
Mark Salsbery
e9b7634499 Added $.setElementTouchActionNone function 2014-08-05 16:57:54 -07:00
Mark Salsbery
bf19e73f5e touch-action fixup 2014-08-05 16:01:43 -07:00
Mark Salsbery
c6bea68b4e Merge branch 'master' into IE9-MouseTracker-Clicks 2014-08-05 07:00:05 -07:00
Mark Salsbery
e11095968c Mousetracker Over/Out Tracking Fixes 2014-08-04 21:41:07 -07:00
Ian Gilman
6066fa2eeb Cleanup and docs. 2014-07-31 16:17:46 -07:00
Ian Gilman
48603ba260 Drawer creation now supports width or height rather than scale. 2014-07-31 15:54:20 -07:00
Ian Gilman
a3973a25e7 Added scaling to drawer. 2014-07-22 11:13:22 -07:00
Ian Gilman
ea6ee54136 Added x and y to drawer. 2014-07-17 16:24:28 -07:00
Henri Astre
f86f9063fd Improve comment for destroy() method. 2014-06-18 12:56:36 -07:00
Henri Astre
a563bdb658 fix .close() called after .destroy() + spacing 2014-06-18 10:35:23 -07:00
Henri Astre
764fa3e34a Fix memory leak while destroying the viewer. 2014-06-17 17:26:10 -07:00
Mark Salsbery
bd11af6571 Improved Viewer Options Support in Gesture Handling
Apply constrainDuringPan option in flick and drag gesture handling.
Apply panHorizontal and panVertical options in flick and pinch gesture
handling.
2014-05-06 11:39:02 -07:00
Mark Salsbery
8232546d51 Merged upstream changes, fixed conflicts 2014-04-24 12:40:49 -07:00
Mark Salsbery
d9dfd0a435 iOS touch enter/exit fix 2014-04-23 08:07:48 -07:00
Mark Salsbery
7567a657bd Add Double-Click/Tap Gesture to MouseTracker (#300)
Fix for enhancement #300
Added double-click/tap gesture detection to MouseTracker.with
corresponding dblClickHandler event callback.
Added unit test for double-click detection.
Added Viewer dblClickHandler handling to optionally zoom on
double-click.
2014-04-22 09:23:56 -07:00
Mark Salsbery
c2e7b376b0 pinchToZoom gesture option added, misc. fixes
changelog update.
pinchToZoom gesture option added.
Event unit tests cleaned up.
2014-04-15 19:19:47 -07:00
Mark Salsbery
e8e0f28f5a Merge Upstream Changes 2014-04-15 06:40:46 -07:00
Mark Salsbery
09bfd55add MouseTracker fixes and tests
Separated event-model/device specific event handling code from
event-model/device agnostic event handling code.
Use enter/leave events instead of over/out events.
Updated unit tests for above changes.
Added unit tests for mouse gestures.
Updated changelog for breaking changes and deprecations.
2014-04-14 18:17:18 -07:00
iangilman
a2a5387a83 Merge pull request #376 from avandecreme/hide-controls
Add showZoomControl, showHomeControl and showFullPageControl options to ...
2014-04-09 09:04:35 -07:00
Antoine Vandecreme
16ee82d43b Add showZoomControl, showHomeControl and showFullPageControl options to be able to hide specific controls. See #210
Add missing doc for buttons.
Set the rotate buttons to viewer.rotate(Left/Right)Button for coherence with other buttons.
Update tests.
2014-04-07 14:11:33 -04:00
Antoine Vandecreme
f7d65fa4cb Make OpenSeadragon W3C compliant. 2014-04-04 16:14:32 -04:00
Mark Salsbery
642c302225 Changelog, documentation, options update 2014-04-03 10:06:12 -07:00
Mark Salsbery
dc48a31412 Exposed gesture settings as options 2014-04-03 08:50:25 -07:00
Mark Salsbery
2c8af72f5e Multi-Touch MouseTracker Fixes
Removed zoom on click for touch.
Added an isPrimary flag to gesture points.
Fixed documentation error and updated documentation and comments.
Implemented the stopHandler for mouse events.
2014-04-01 09:32:04 -07:00
Mark Salsbery
8df20a5b86 Multi-Touch MouseTracker Update
Removed artifact
2014-03-31 13:42:19 -07:00
Mark Salsbery
d324aea761 Multi-Touch MouseTracker Update
Refactored, fixed a couple bugs, unit tests working.

Issuing a pull request.
2014-03-31 12:54:37 -07:00
Mark Salsbery
73b7519471 Merge remote-tracking branch 'origin/master' into Pointer-Event-Model 2014-03-29 17:09:24 -07:00
Mark Salsbery
1475f5865d Multi-Touch MouseTracker Update
Ready to pull request, merging upstream changes and running tests.
2014-03-29 17:02:24 -07:00
Antoine Vandecreme
a15c8b035f Merge branch 'master' of https://github.com/openseadragon/openseadragon into fullscreen-inputs 2014-03-25 10:36:37 -04:00
Mark Salsbery
70716b0706 Merge remote-tracking branch 'origin/master' into Pointer-Event-Model 2014-03-24 14:47:18 -07:00
Antoine Vandecreme
639af65ea9 Remove duplicate method 2014-03-21 16:15:08 -04:00
Antoine Vandecreme
775f4eba25 Merge branch 'master' of https://github.com/openseadragon/openseadragon into optimization 2014-03-21 16:12:50 -04:00
Antoine Vandecreme
4a5ccea2f7 Update overlays unit tests. 2014-03-21 15:55:04 -04:00
Mark Salsbery
3c0ca21568 Merge remote-tracking branch 'origin/master' into Pointer-Event-Model 2014-03-21 11:54:28 -07:00
Mark Salsbery
f6dfe9b079 Multi-Touch MouseTracker Update 2014-03-21 11:45:20 -07:00
iangilman
184ba0dbea Merge pull request #364 from sul-dlss/cors-policy
add crossOriginPolicy drawer configuration to enable or disable CORS image requests
2014-03-21 09:18:41 -07:00
Antoine Vandecreme
4be56cdb52 Overlays performance optimization. See #359 2014-03-20 15:39:31 -04:00
Chris Beer
3d028716fe add crossOriginPolicy drawer configuration to enable or disable CORS image requests 2014-03-20 10:30:46 -07:00
Antoine Vandecreme
73eaf2ce96 Separate layers and overlays to ensure that overlays are always on top of layers. 2014-03-20 09:56:12 -04:00
Antoine Vandecreme
ba10c392a1 Merge branch 'master' into layers
Conflicts:
	src/drawer.js
	src/viewer.js
	test/test.html
2014-03-19 16:24:48 -04:00
Antoine Vandecreme
c9df575347 Merge from master 2014-03-18 13:17:43 -04:00
Antoine Vandecreme
3cfce81705 Update full screen API. 2014-03-17 17:01:36 -04:00
Mark Salsbery
d52df4a9bf Multi-Touch MouseTracker Update
Pinch gesture fixups
2014-03-15 17:12:13 -07:00
Antoine Vandecreme
ecf10f5911 Fix test messages, add doc and factorize overlay object creation 2014-03-15 11:20:33 -04:00
Mark Salsbery
7aa0df1b66 Multi-Touch MouseTracker Update
Pinch zoom update
2014-03-14 14:15:09 -07:00
Mark Salsbery
38cae86659 Multi-Touch MouseTracker Update 2014-03-14 10:42:22 -07:00
Mark Salsbery
c7ea247baa Initial commit - Multi-touch, pointer event MouseTracker 2014-03-10 11:49:51 -07:00
Grant Echols
5e0e8005d6 Tuned the configuration around the rotate left/right to work when the drawer is instantiated. 2014-03-03 11:14:09 -07:00
Grant Echols
60da75aede Added configuration around the rotate left/right buttons. The default for showRotationControls is false to preserve existing functionality. Also added default tooltip strings for the buttons.
This version runts the tests fine locally using 'npm test'. It looks like the remote build was having a timeout issue which I couldn't reproduce.
2014-03-03 09:28:28 -07:00
Grant Echols
576df57cdc Fixed code style issue. 2014-02-20 14:04:26 -07:00
Grant Echols
2fd1a849d1 Added rotate right/left buttons to default tools 2014-02-20 13:57:39 -07:00
Antoine Vandecreme
95c7668f68 Pass degrees from the viewer to the viewport. Fix #305 2014-02-05 15:52:31 -05:00
Antoine Vandecreme
c4428db8a5 Fix crash when closing the viewer when no overlay has been added. 2014-01-31 11:49:44 -05:00
Antoine Vandecreme
695df873ca Update the source when the base layer change. 2014-01-30 16:59:51 -05:00
Antoine Vandecreme
d43b6d86b5 Add layersAspectRatioEpsilon check 2014-01-30 16:43:35 -05:00
Antoine Vandecreme
365dad9317 Move all overlay code from drawer to viewer 2014-01-30 15:38:37 -05:00
Antoine Vandecreme
7210181b4f Remove not working code 2014-01-29 16:31:13 -05:00
Antoine Vandecreme
53ec6889e0 Support removal of base layer. 2014-01-22 11:33:59 -05:00
Antoine Vandecreme
1c1cd0dc4d Allow base layer reassignment if not in sequence mode. 2014-01-21 19:24:47 -05:00
Antoine Vandecreme
facccf7b45 Throw an error when trying to add a layer in collection mode. 2014-01-11 19:25:27 -05:00
Antoine Vandecreme
cd62ba7eca Prevent adding collections as layers. 2014-01-11 19:15:28 -05:00
Antoine Vandecreme
f0f76b847e Add viewer.getLayerAtLevel method and rename getLayerLevel to getLevelOfLayer.
Add layers unit test.
2014-01-11 18:08:04 -05:00
Antoine Vandecreme
56707bd4f7 Add viewer.getNumberOfLayers method
layers.html test file:
-display 2 layers after opening
-fix order
-add opacity demo
-add rotation demo
2014-01-11 12:52:44 -05:00
Antoine Vandecreme
b542b90590 Fix $.indexOf pollyfill
Add the original options in addLayer events
Add layers demo page
2014-01-05 19:20:45 -05:00
Mark Salsbery
1e9ea154f2 Added navigatorAutoResize option
Improved resizable navigator support.
2013-12-14 14:45:11 -08:00
Mark Salsbery
a189ba97d7 Update navigator on full-page/full-screen bug fix 2013-12-14 09:11:14 -08:00
Mark Salsbery
0d29c98df2 Enhanced Navigator Resizability (#280, #296)
New navigator options:

* @property {Boolean} [showNavigator=false]
*     Set to true to make the navigator minimap appear.
*
* @property {Boolean} [navigatorId=navigator-GENERATED DATE]
*     The ID of a div to hold the navigator minimap.
*     If an ID is specified, the navigatorPosition, navigatorSizeRatio,
navigatorMaintainSizeRatio, and navigatorTop|Left|Height|Width options
will be ignored.
*     If an ID is not specified, a div element will be generated and
placed on top of the main image.
*
* @property {String} [navigatorPosition='TOP_RIGHT']
*     Valid values are 'TOP_LEFT', 'TOP_RIGHT', 'BOTTOM_LEFT',
'BOTTOM_RIGHT', or 'ABSOLUTE'.<br>
*     If 'ABSOLUTE' is specified, then navigatorTop|Left|Height|Width
determines the size and position of the navigator minimap in the viewer,
and navigatorSizeRatio and navigatorMaintainSizeRatio are ignored.<br>
*     For 'TOP_LEFT', 'TOP_RIGHT', 'BOTTOM_LEFT', and 'BOTTOM_RIGHT',
the navigatorSizeRatio or navigatorHeight|Width values determine the
size of the navigator minimap.
*
* @property {Number} [navigatorSizeRatio=0.2]
*     Ratio of navigator size to viewer size. Ignored if
navigatorHeight|Width are specified.
*
* @property {Boolean} [navigatorMaintainSizeRatio=false]
*     If true, the navigator minimap is resized (using
navigatorSizeRatio) when the viewer size changes.
*
* @property {Number|String} [navigatorTop=null]
*     Specifies the location of the navigator minimap (see
navigatorPosition).
*
* @property {Number|String} [navigatorLeft=null]
*     Specifies the location of the navigator minimap (see
navigatorPosition).
*
* @property {Number|String} [navigatorHeight=null]
*     Specifies the size of the navigator minimap (see
navigatorPosition).
*     If specified, navigatorSizeRatio and navigatorMaintainSizeRatio
are ignored.
*
* @property {Number|String} [navigatorWidth=null]
*     Specifies the size of the navigator minimap (see
navigatorPosition).
*     If specified, navigatorSizeRatio and navigatorMaintainSizeRatio
are ignored.

Fixes #280 and #296
2013-12-13 09:23:56 -08:00
Antoine Vandecreme
c90a1edfb5 Add layer-level-changed event and add $.indexOf polyfill 2013-12-10 19:22:15 -05:00
Mark Salsbery
babfb99be9 Code fix 2013-12-09 10:04:39 -08:00
Antoine Vandecreme
0c2af6550a Add support to add/remove layers and change their levels. 2013-12-09 09:26:36 -05:00
Mark Salsbery
6b6b7f7625 Added ControlAnchor options for default controls 2013-12-06 22:48:49 -08:00
Antoine Vandecreme
58da998d75 Add basic layers support 2013-11-30 17:28:17 -05:00
Mark Salsbery
bb836768f8 Merged upstream changes, fixed conflicts 2013-11-26 10:21:59 -08:00
Mark Salsbery
952fcca46e Renamed noResizePolling to autoResize 2013-11-25 10:27:03 -08:00
Mark Salsbery
930e8c4dfd Updated Doclets 2013-11-25 08:48:44 -08:00
Mark Salsbery
190b4425ed Renamed pollForResize to noResizePolling
Flipped truthiness...default of false is better for backward
compatibility
2013-11-23 08:21:08 -08:00
Mark Salsbery
c7971419e2 Added pollForResize option
Defaults to true.
2013-11-22 17:07:44 -08:00
Mark Salsbery
ece76925a6 Updated Doclets
Lots of changes, most notably event documentation (@event and @fires)
2013-11-21 12:19:07 -08:00
Mark Salsbery
b38823e390 Merged upstream changes 2013-11-20 20:39:06 -08:00
Mark Salsbery
ebb15936e1 Removed the 'onPageChange' callback (#285)
Fix for #285
Removed the 'onPageChange' callback from the viewer options.
Viewer.goToPage() now raises the 'page' event only.
2013-11-19 12:13:38 -08:00
Mark Salsbery
f23395b60e Updated doclets
Misc changes.
Committing to merge upstream changes.
2013-11-19 11:20:45 -08:00
Mark Salsbery
09de239bfa Updated doclets
Remaining creation options - still need descriptions on some.
Started event descriptions.
Viewer constructor parameters fixed.
2013-11-19 10:08:04 -08:00
Mark Salsbery
b929f26872 Updated doclets
Creation options now documented in a typedef doclet named
OpenSeadragon.Options.
2013-11-18 10:06:38 -08:00
Mark Salsbery
ccee9f5149 Updated doclets
Updated creation option defaults (issue #93)
2013-11-18 09:44:54 -08:00
Mark Salsbery
54049927f0 Updated doclets
Changed event docs:
Changed userData properties from optional to nullable.
Removed optional type from preventDefaultAction properties.
2013-11-18 06:56:32 -08:00
Mark Salsbery
70b91d57ec Updated doclets for jsdoc3
Updated so jsdoc3 parser picks everything up.
Added event docs.
Lots of documentation content needed...
2013-11-15 22:19:53 -08:00
Antoine Vandecreme
03f25cef5f Add support to cancel full screen and full page events.
Fix fullpage when element has margin or padding.
2013-11-08 15:03:54 -05:00
Antoine Vandecreme
6aca0c0886 Add counter to avoid trying to set scroll indefinitly
Style and spelling fixes
Set scrolls tests setup inside own function
2013-11-08 13:56:13 -05:00
Antoine Vandecreme
fafc985ada Merge branch 'master' of https://github.com/openseadragon/openseadragon into fullscreen 2013-11-08 13:40:04 -05:00
Mark Salsbery
8e325a3748 Added preventDefaultAction flag to MouseTracker
Added a boolean preventDefaultAction property (default false) to the
event object passed to MouseTracker handler methods. Implemented in the
following MouseTracker subscribers:

* Viewer.keyboardCommandArea.innerTracker.focusHandler:
preventDefaultAction == true prevents scrolling viewer into view
* Viewer.keyboardCommandArea.innerTracker.keyHandler:
preventDefaultAction == true prevents viewer keyboard navigation
* Viewer.innerTracker.clickHandler: preventDefaultAction == true
prevents viewer zoom on click
* Viewer.innerTracker.dragHandler: preventDefaultAction == true prevents
viewer panning with mouse/touch
* Viewer.innerTracker.scrollHandler: preventDefaultAction == true
prevents viewer zooming on mousewheel/pinch
2013-11-04 12:41:45 -08:00
Antoine Vandecreme
d70845d7eb Separate fullscreen and fullpage methods (#91)
Fix scroll issue.
Handle fullscreen denial by the browser
2013-11-02 21:01:04 -04:00
Antoine Vandecreme
d853224c15 Add units tests for scroll 2013-11-01 17:37:19 -04:00
Antoine Vandecreme
7375ba9241 Fix scrolling when exiting full-screen mode.
Rename fullpage event to full-page and it's fullpage property to fullPage.
Add pre-full-page event.
2013-10-31 22:19:22 -04:00
Antoine Vandecreme
d4a4276bbc Fix margin bug with legacy fullscreen mode 2013-10-23 10:00:08 -04:00
Mark Salsbery
984dd267b6 originalEvent Pass through to EventSource events 2013-10-15 11:11:08 -07:00
Antoine Vandecreme
f712e15793 Recenter the image after switching fullscreen mode. #62 and #170 2013-10-14 18:01:58 -04:00
Antoine Vandecreme
4cd98a5da9 Check hash in viewer constructor.
Fix #229
Fix #176
2013-10-12 18:30:05 -04:00
iangilman
e006d0e05a Merge pull request #254 from msalsbery/Event-Handler-Signatures
Event Handler Signatures Changed to 'fn(event)' (#251)
2013-10-11 10:57:20 -07:00
Mark Salsbery
d574700b3d Event Handler Signatures Changed to 'fn(event)'
All event handler signatures changed to 'fn(event)'
eventSource property added to the event object passed
Redundant event source properties removed ('button' and 'viewer'
Documentation updated in MouseTracker
changelog.txt updated
2013-10-10 17:00:15 -07:00
Sharpbarb
3078642927 Update viewer.js
Moved call to _updateSequenceButtons inside if ( initialTileSource )
2013-10-10 12:57:02 -07:00
Sharpbarb
4535f47e8d Update viewer.js
trailing whitespace...
2013-10-10 12:35:49 -07:00
Sharpbarb
6b90687ab4 Update viewer.js
description; Move _updateSequenceButtons behind goToPage()
2013-10-10 12:27:49 -07:00
Sharpbarb
a862870883 Update viewer.js
Formatting; descriptions; rename sequenceButtons to _updateSequenceButtons
2013-10-10 12:25:11 -07:00
Sharpbarb
6f79f80fe0 Update viewer.js
trailing white space....
2013-10-09 15:36:21 -07:00
Sharpbarb
0f705d093a Update viewer.js 2013-10-09 15:31:33 -07:00
Sharpbarb
0d8d770327 Update viewer.js 2013-10-09 15:27:43 -07:00
Sharpbarb
2f33e6c666 Update viewer.js 2013-10-08 21:45:26 -07:00
Sharpbarb
c6597806ba Update viewer.js 2013-10-08 17:10:26 -07:00
Sharpbarb
54bcd6ea79 Update viewer.js
Remove the sequence control update and put it into its own function. This way it can be called after a tilesource is loaded.
2013-10-08 17:07:49 -07:00
Sharpbarb
ec71a4416e Update viewer.js 2013-10-08 15:01:28 -07:00
Mark Salsbery
5c37a1f375 Ready event signature fixed for consistency
Signature now handlerMethod(eventSource, eventData)
2013-10-02 13:09:40 -07:00
Mark Salsbery
ec3141a778 Event Names Normalized
Compound event names lower case with hyphen.
Button event names removed "on" and made lower case.
2013-09-30 10:22:06 -07:00
Mark Salsbery
041597998f Event Names Normalized
All event names lower case with no hyphens
2013-09-26 09:50:26 -07:00
iangilman
21aa2dc928 Merge pull request #228 from msalsbery/EventHandler-Rename
Renamed EventHandler to EventSource (#225)
2013-09-25 09:04:04 -07:00
Mark Salsbery
dab182757d Renamed EventHandler to EventSource (#225) 2013-09-24 13:36:13 -07:00
Ian Gilman
6396fe1504 Merge branch 'Original-Events-In-Handlers' of github.com:msalsbery/openseadragon into msalsbery-Original-Events-In-Handlers
Fixed Conflicts:
	changelog.txt
2013-09-24 10:28:46 -07:00
Nelson Hart
6d6cc363b4 Use style attributes when storing the previous elment size instead of the literal size of the element #220 2013-09-12 10:41:51 -03:00
Mark Salsbery
af078f8f19 MouseTracker Original Events in Handlers
Renamed insideElementRelease to insideElementReleased.
2013-09-10 17:31:51 -07:00
Mark Salsbery
13415b36f3 MouseTracker Original Events in Handlers
Misc name changes, indentation/whitespace fixes.
Still TODO: Fix documentation, evaluate presence of key handler in a
mouse tracker, evaluate whether isTouchEvent flag should be in all
eventData objects or not.
2013-09-09 14:27:58 -07:00
Mark Salsbery
2e1f71a824 MouseTracker Original Events in Handlers
Bug fixes.  Event handler methods shouldn't be called directly in
theory...
2013-09-06 12:24:19 -07:00
Mark Salsbery
b3fa8f1184 MouseTracker original events in handlers
Implemented "Expose original event in handlers" (#23) for MouseTracker

Added OpenSeadragon.getElementOffset() method. Element-relative mouse
coordinates should be correct even if the element and/or page is
scrolled (#131)
2013-09-05 17:20:17 -07:00
Mark Salsbery
57ae0656c1 Fixes for issues #198, #201, #202, #203 2013-08-26 16:48:59 -07:00
Mark Salsbery
f8ab315795 Revert "Bad sync"
This reverts commit 70a7e8090e13cc35b93e652d2bcd7f418af26fc1.
2013-08-26 15:48:03 -07:00
Mark Salsbery
04a0197dc7 Fixes for issues #198, #201, #202, and #203 2013-08-26 15:25:57 -07:00
Luke Murray
0c662b8a8d fix: comment updates and add a simple test for viewer.destroy 2013-08-12 16:38:37 +10:00
Luke Murray
68f9d675fc fix: calling viewer.destroy() multiple times throw an error. And a simple destroy to mousetracker 2013-08-08 17:49:24 +10:00
Luke Murray
4ccb141a42 Add a destroy function on the viewer to clean up and remove elements
created by open seadragon. Add removeAllHandlersForAllEvents to clean up all events on destroy. Clear
the onDraw callback on Overlay destroy.
2013-08-07 10:54:20 +10:00
Ian Gilman
967f2e4f32 Changelog for #177; minor doc tweaks 2013-08-02 09:40:55 -07:00
pnorcrss
26938ed10e cleaned up docBlock and tabs in _getSafeElemWidth() 2013-08-01 12:11:33 -05:00
pnorcrss
e47210d0bd refactored _getSafeElemSize() 2013-07-31 14:10:44 -05:00
pnorcrss
cb39fb7e32 fixed _getSafeElemSize() 2013-07-31 14:01:46 -05:00
pnorcrss
bf3dd7c031 fixed _getSafeElemSize() calls 2013-07-31 13:28:38 -05:00
pnorcrss
750eafcd2e added and implemented _getSafeElemSize() 2013-07-31 13:00:16 -05:00
Chris Adams
0ed4703bd3 Viewport messages: add a class to the dialog for easy styling 2013-07-01 18:26:44 -04:00
Chris Adams
1ab6094420 Viewer: make viewport messages private, repeatable
* Marked _showMessage/_hideMessage as private
* Fix DOM manipulation bug: call standard removeNode() method rather
  than proprietary WebKit .remove()
* Change messageDiv to be the outer wrapper to simplify removing the
  entire message container
2013-07-01 13:43:48 -04:00
Chris Adams
b912896158 Viewer.showMessage() hides any previous message 2013-07-01 12:58:22 -04:00
Chris Adams
1f345e4cc5 Viewer: refactor message code into showMessage/hideMessage methods
This avoids the need to deal with classes, and explicitly makes it
reusable for other needs
2013-06-28 15:46:31 -04:00
Chris Adams
7f42dfc032 code style 2013-06-28 15:01:56 -04:00
Chris Adams
7dcf662fdd Viewer: add a basic error message display system
This might be something we want to make configurable for users who want
to completely control how errors are displayed.

This also adds the first use of OpenSeadragon.makeCenteredNode currently
so we might want to clean up that code as well.
2013-06-28 14:32:57 -04:00
Chris Adams
2bf6b13bfe User-visible warning when tile sources fail to load
This is currently using window.alert in lieu of something more sophisticated but it works for indicating 404s or invalid file
contents
2013-06-28 14:11:20 -04:00
iangilman
8fe0ce26b8 Merge pull request #136 from acdha/jshint-cleanup
JSHint tidying
2013-06-26 09:37:08 -07:00
Kevin Ewing
248852c15f Implementing OpenSeadragon.now()
Replacing both `+new Date()` and `new Date().getTime()` with `$.now()`
2013-06-20 13:15:04 -07:00
Chris Adams
9ef6e085c8 viewer.js: update onfullscreenchange handler comment 2013-06-20 15:17:48 -04:00
Chris Adams
de29a34890 viewer.js: remove dead code 2013-06-20 15:12:55 -04:00
Chris Adams
f8c77f65d7 viewer.js: fix typos in variable declarations 2013-06-20 15:12:53 -04:00
Chris Adams
d644acd50b Fix lack of braces on if statements
JavaScript's most popular rack in the grass for maintenance coders…
2013-06-20 15:12:53 -04:00
Chris Adams
643ee211ca Remove unused variables
Mostly unused function arguments but there were also a fair number
of legacy names which are now no longer used.

One question which comes up – mostly in tilesource.js – is whether
there is any value in leaving unused variables for functions which
are intended to be overridden anyway. I'm inclined to say that the
docs + tests need to be sufficient as there's no enforcement that
whatever is in the base implementation will actually be followed by
any of the real functions.
2013-06-20 15:12:53 -04:00
Ian Gilman
8e88f36098 Merge branch 'master' into raf
Fixed Conflicts:
	src/viewer.js
2013-06-19 11:19:54 -07:00
Chris Adams
9f6f164d9f Remove all whitespace
The results of running this command::

    find . -name \*.js -print0 | xargs -0 perl -p -i -e "s|[ \t]+$||"

(Split from #136)
2013-06-19 13:33:27 -04:00
Ian Gilman
beadcdcc89 Merge branch 'master' into raf 2013-06-19 10:15:53 -07:00
Ian Gilman
dbc8a59ae8 Cleaned out dead code in scheduleUpdate and updateMulti
… as pointed out by @ventero
2013-06-19 09:58:09 -07:00
Robert Hickman
ade93ffc5e Only disable the previous button if the navPrevNextWrap option is not set. 2013-06-18 15:19:09 -06:00
Ian Gilman
713fad4224 Exposing _updateRequestId as a semi-private member for testing purposes 2013-06-18 11:06:43 -07:00
Ian Gilman
e99c126a85 Navigator now updates properly when reopening a viewer
Before, if you closed a viewer and then opened a new tilesource into
it, the navigator would still have the old tilesource. This patch fixes
that.
2013-06-17 11:51:02 -07:00
Ian Gilman
c6a38dd802 Now closing the navigator when the viewer closes
At the very least this was causing the navigator to continue to request
and process frames even after its viewer had been closed.
2013-06-17 11:31:41 -07:00
Ian Gilman
4224960252 Fixed another potential timer leak when closing a viewer
If the viewer was closed in response to an event raised during the
update function, the timer would have continued running.
2013-06-17 11:30:31 -07:00
houseofyin
3e24be12e0 Merge branch 'master' of github.com:openseadragon/openseadragon into issue37-navigator 2013-06-01 14:12:04 -04:00
houseofyin
e36f7ed414 Trying to remove the selector element 2013-06-01 14:11:56 -04:00
Ian Gilman
9c60b28ec3 Merge branch 'master' of github.com:robhobbes/openseadragon into robhobbes-master
Fixed Conflicts:
	changelog.txt
2013-05-31 09:01:14 -07:00
Ventero
b66dd7bed0 Don't load the tile source again when creating a navigator.
Previously, when showNavigator was set to true when creating the
viewer, the navigator would unnecessarily load and parse the tile
source, even though a fully parsed object already exists.
2013-05-30 02:53:53 +02:00
Robert Hickman
b5d977d593 Adding an option that allows the previous and next buttons to wrap around past the end or beginning images. 2013-05-29 17:10:45 -06:00