Commit Graph

186 Commits

Author SHA1 Message Date
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
Ian Gilman
b7eb78a57a Additional doc comments for setControlsEnabled() 2013-05-28 13:54:13 -07:00
David Steinbrunner
7330b4a726 Correction to setControlsEnabled function name in comments 2013-05-28 17:36:09 -03:00
iangilman
da86ca2e38 Merge pull request #46 from houseofyin/issue37-navigator
Issue37 navigator
2013-05-20 09:38:49 -07:00
houseofyin
bb4a8a0b4f Bringing back in sync with the latest baseline 2013-05-17 22:29:08 -04:00
Benjamin Gilbert
fa1a8b2dde Fix Drawer event emission
Drawer tries to emit events on the parent Viewer object but doesn't have
a reference to it.  Add a reference when constructing the Drawer.
2013-05-16 02:49:29 -04:00
Ian Gilman
c78f3ef743 Fixed mislabeled JSDoc comment for OpenSeadragon.Viewer.prototype.open 2013-05-14 10:29:15 -07:00
iangilman
0b366d7b42 Merge pull request #89 from bgilbert/license
Revert to original New BSD license; clean up license declarations
2013-05-14 09:15:00 -07:00
Benjamin Gilbert
fcc119bb84 Add file-specific descriptions to file headers 2013-05-14 00:00:24 -04:00
Benjamin Gilbert
17a6ee15b1 Include 2010 in "OpenSeadragon contributors" copyright dates
This Git repository starts in 2011, but the CodePlex Mercurial repository
has commits from 2010.
2013-05-13 23:32:09 -04:00
Benjamin Gilbert
99d6ff80b6 Add fullpage class to viewer element when in fullpage mode
Closes #61.
2013-05-12 23:02:18 -04:00
Benjamin Gilbert
522bcbf058 Add addClass()/removeClass() utility functions 2013-05-12 22:53:41 -04:00
Benjamin Gilbert
2f2eba8df2 Add "OpenSeadragon contributors" copyright statement
The license text will be provided on the website, etc., and it seems
strange to list no copyright date newer than the original CodePlex
copyright from the AJAX Control Toolkit.  Add a blanket copyright
statement for contributions to the OpenSeadragon project, stating that
copyright is held by the authors of each contribution.  This blanket
statement is not intended to preclude individual contributors from
attaching their own copyright statements to their modifications.
2013-05-12 17:12:26 -04:00
Benjamin Gilbert
be20645876 Add BSD license block and CodePlex copyright to each source file
See discussion in #10.
2013-05-10 00:16:55 -04:00
Ian Gilman
bd0b0972b3 Fixed bad class names in docs 2013-05-02 09:57:23 -07:00
Ian Gilman
1c6deafe8b Added viewport property to Viewer documentation 2013-05-02 09:57:03 -07:00
Benjamin Gilbert
3652c7066c Re-add viewer.source check in updateMulti()
It should be redundant in normal operation, but may prevent a timer leak
in case of a bug in the open/close path.
2013-04-29 13:17:37 -04:00
Benjamin Gilbert
8cb2714dae Fix timer leak after multiple Viewer.open() calls, take 2
Track the request ID of the outstanding animation frame and cancel it
on Viewer.close().

Fixes #76.
2013-04-26 22:32:51 -04:00
Benjamin Gilbert
23c20e3d5a Revert "Fix timer leak after multiple Viewer.open() calls"
This should be done with cancelAnimationFrame() instead.

This reverts commit 47aba60940.
2013-04-26 21:48:48 -04:00
Benjamin Gilbert
47aba60940 Fix timer leak after multiple Viewer.open() calls
Keep a counter of Viewer.close() calls in private state and a copy in
the timer's closure, and stop the timer when they no longer match.

Fixes #76.
2013-04-25 00:37:36 -04:00
Benjamin Gilbert
b315b148c2 Drop remains of code to show "Loading..." message
It calls a method that no longer exists, but only when an impossible
condition is true.
2013-04-24 23:57:35 -04:00
Benjamin Gilbert
f958e66f05 Fix typo in preserveViewport handling 2013-04-23 23:58:58 -04:00
houseofyin
bbf0fc4302 Updated to address feedbac from @iangilman 2013-04-04 22:30:59 -04:00
thatcher
9aecfddcbf refs #54 - added missing support for tilesource configuration as xml string or json string via Viewer.open 2013-03-26 14:35:43 -04:00
thatcher
266f33094c addresses #54, dont use openDZI, use open. openDZI now calls open. all the details of tileHost were already handled in DZITileSource.configure. $.createFromDZI is fully deprecated and will throw an error. 2013-03-26 09:02:34 -04:00
houseofyin
7187bca4e7 Merge branch 'master' of github.com:openseadragon/openseadragon into issue37-navigator 2013-03-18 14:38:10 -04:00
houseofyin
80ff8f908a Another checkpoint, added keyboard navigation to the main viewer 2013-03-16 16:35:33 -04:00
houseofyin
3b2bde2940 Initial pass at making the navigator float 2013-03-15 10:59:47 -04:00
Chris Thatcher
c164e8fac5 Merge pull request #24 from openseadragon/fullscreen
Fullscreen native javascript support now available. will increment build id and publish.  Thanks ventero and iangilman for your reviews.
2013-03-07 20:57:11 -08:00
thatcher
5203cc14b0 removing extra whitespace per pull request review 2013-03-07 23:50:27 -05:00
thatcher
6285a779f3 cleaning up event names, reducing demo cases to just addHandler interface, normalizing event data to express more idiomatic javascript pattern of passing object instead of invoking callback with positional parameters 2013-03-06 17:34:12 -05:00
thatcher
5b6a2f5873 basic implementation of issue #2 2013-02-28 15:55:24 -05:00
thatcher
5dd8798f7f addressing venturo's review notes 2013-02-28 15:34:44 -05:00
thatcher
a4477cd765 better encapsulation of native fullscreen api 2013-02-28 15:34:44 -05:00
thatcher
d6cdd4028c removing unneccessary if 2013-02-28 15:34:43 -05:00
thatcher
d4b02e1aba managed to get a more complete, though hacky, implementation of #3. the big sticky point was how firefox and safari beahved when switching between applications when already in full screen mode. because we didnt have an event listener for fullscreenchange, and because those browsers released full screen on application or window change (think alt+tab or cmd+tab), you would come back to a empty document. more work left here to make this worth merging into master 2013-02-28 15:34:43 -05:00
thatcher
f602a682f7 basic implementation of enhancement request from issue #3 2013-02-28 15:34:43 -05:00
Ian Gilman
9569ff1215 Removed JS Hint globals comment, since it's now in grunt 2013-02-14 12:04:47 -08:00
thatcher
fda24f343a added dozens of event hooks based on input from macreery's branch 2013-02-13 19:44:23 -05:00
thatcher
e851de80b8 added class names to viewer canvas and container per macreery's branch 2013-02-13 16:50:23 -05:00
thatcher
a0fd2b3324 added inital support for moving to a nodejs build with grunt. build only includes concant and lint. fixed all lint warning where appropriate and added lint inline ignores where appropriate. when build script is complete we will start transition to new repo. also currently researching how to prune unfriendly portion of history that make repo large due to large binary files in web app. I like git well enough but using branches for web apps unrelated to code base has made me weary once again of social web fads that force convention without long term consideration of cost. 2013-02-12 22:40:08 -05:00
thatcher
855e753225 some overlays work that had be be completed before finishing tile layers. added brief example of how to how host tiles of zoom.it 2013-02-10 22:53:51 -05:00
thatcher
576c00b37d adding support for several new tile sources including iiif, osm and tms (osm and tms are thanks to seajax-utils project) 2013-02-08 09:21:28 -05:00
thatcher
792165fdf9 accidently left alwaysBlend global defaul set to true during development. Looking forward to our new org based repo where I'll be constrained more than my current wild-west repo, sorry. corrections also to pan constrainment details which came to the forefront while working on collections zoom and panconstraints. Added new ui feature page to demo basics. 2013-02-05 21:26:40 -05:00
Ian Gilman
527682d5a6 Merge branch 'master' into lint
Fixed Conflicts:
	openseadragon.js
	src/drawer.js
2013-01-31 09:26:55 -08:00
thatcher
063bce8171 fixing some work in progress for collections visualizations 2013-01-30 20:23:45 -05:00
thatcher
f6ee93b70c improving custom tile source examples are work for layers begins being supported 2013-01-30 16:51:37 -05:00
Ian Gilman
7a55b6cf77 JS Hint work (mostly semicolons at this point) 2013-01-29 09:32:58 -08:00
thatcher
15c35c93fd 0.9.90 adds support for a debug mode and real heterogeneous collection visualizations. straight html div/image support for both features is in process but incomplete 2013-01-23 23:00:11 -05:00
thatcher
8fab8b5051 better lazy loading for image reference strip and more options for managing additional html content that is available in full page mode and normal mode 2012-10-12 23:40:59 -04:00
thatcher
1c200aca9c finished lazy loading implementation of image reference strip, really helps initial render time with large image sets 2012-09-05 10:52:57 -04:00
thatcher
1d1cbc6f56 custom tile source should pass whole object to constructor to allow idiomatic pattern of extension of tile source with arbitrary properties 2012-08-29 20:53:42 -04:00
thatcher
104a814af0 adding prototype image reference strip, fixing IE error related to checking for instanceof XMLDocument, fixing aspect ratio error when image is wider than tall 2012-08-29 14:46:34 -04:00
thatcher
c41f6a464e Substantial rework of TileSource and Viewer.openTileSource to allow simpler introspect of the intended TileSource implementation based on the configuration object details. Also major www updates to simplify and unify the informational site by building it via simple templates. Improved examples and documentation. Added support for xml, json, jsonp, and inline configuration of supported tile sources. 2012-06-05 07:52:00 -04:00
thatcher
e595ad2381 Adding ability to bind to buttons to custom interface elements, also use screen size detection to avoid using canvas on small devices since is more cpu intensive. Added version check for IE specific implementations to avoid using them for IE 9 and made most IE implementation differences a one-time process instead of an if/else which is evaulated on every call to the function. 2012-04-10 17:02:24 -04:00
thatcher
05f3c1d811 several bug fixes and enhancements. legacy tile source issue discovered and corrected for images with width greater than height. adding basic support for sequenced tile sources including previous and next buttons. added mouse drag and scroll interactions for viewport navigator. 2012-04-03 03:08:27 -04:00
thatcher
75c3e02b9e missing reference to closure level object VIEWERS, blame me, editor issue 2012-03-20 02:44:31 -04:00
thatcher
6443d57e09 corrected major performance issue discovered in navigator becuase minPixelRatio was set to Zero. This caused images to be loaded ad infinitum in the navigator, oops. 2012-03-19 19:03:58 -04:00