Tom
3f7e7141b9
fixes from review of drawerbase.js
2023-12-14 19:14:05 -05:00
Tom
2d8c6fe4c3
cleaning up docs
2023-12-13 18:11:09 -05:00
Tom
a364c3f168
responding to review
2023-12-12 21:45:24 -05:00
Aiosa
cf2413e0c9
Fix test for the preload hack (and fix the parentheses to always call updateMulti).
2023-12-10 16:49:56 +01:00
Aiosa
a690b50eee
Add external execution pipeline (proof of concept implementation, needs polishing). Add filtering plugin live demo for testing. Fix issues with tile cache access outside its lifespan. Add custom css for the static page renderer and differentiate folder icons. Remove some old deprecations.
2023-12-10 16:34:42 +01:00
Tom
e50d3639ce
bugfix in canvasdrawer tiled-image-drawn event
2023-12-02 15:47:01 -05:00
Tom
1200f0b081
clean up outdated code; add tiled-image-drawn event to canvasdrawer so tests work with this viewer
2023-12-02 15:40:47 -05:00
Tom
6b995c018b
re-enable html drawer in drawer comparison demo; deal with merge conflict resolution issues
2023-11-29 17:35:49 -05:00
pearcetm
36d8b3d9ad
Merge branch 'master' into rotation-seams
2023-11-29 17:28:42 -05:00
Tom
c86158f0ca
cleaning up changes
2023-11-29 16:46:14 -05:00
Aiosa
90ce0669c5
Add auto recognition of the need for tiledImage draw call. Fix ajax-headers test: did not finish because we don't call tile-loaded on cached tiles by default.
2023-11-27 12:12:54 +01:00
Aiosa
2c67860c61
Implement cache manipulation strategy: default copy on access if tile in the rendering process, remove 'canvas' type support, many bugfixes and new tests.
2023-11-26 21:32:26 +01:00
Aiosa
f4efe2970a
Remove modular implementation -> will be introduced in subsequent PR.
2023-11-21 12:54:09 +01:00
Aiosa
2a1090ffa8
Fix wrong test comparison. Add equality comparator to TileSource API. Return
...
deprecated support for getCompletionCallback. Turn on zombie cache if sources replaced & equal.
2023-11-19 16:14:28 +01:00
Aiosa
219049976c
Add tests for zombie and data type conversion, ensure destructors are called.
...
Fix bugs (zombie was disabled on item replace, fix zombie cache system by separating to its own cache array). Fix CacheRecord destructor & dijkstra. Deduce cache only from originalCacheKey. Force explicit type declaration with types on users.
2023-11-18 20:16:35 +01:00
Aiosa
c3ab9a08e7
Merge branch 'cache-overhaul-reviewed' of github.com:RationAI/openseadragon into cache-overhaul-reviewed
2023-11-17 20:22:13 +01:00
Aiosa
023a864a36
Merge branch 'openseadragon:master' into cache-overhaul-reviewed
2023-11-17 20:21:24 +01:00
Ian Gilman
c92f8ad65d
Merge pull request #2431 from cavenel/master
...
Fix zoom out when wheel event.deltaY is zero
2023-11-13 09:53:42 -08:00
Christophe Avenel
c1038af37d
Revert "Add debounce of pan events"
...
This reverts commit e836ffcc61
.
2023-11-08 18:52:05 +01:00
Christophe Avenel
e836ffcc61
Add debounce of pan events
...
Group pan events together if needed, in order to avoid lag if drawing of layers takes more time than it should.
2023-10-31 15:38:38 +01:00
Christophe Avenel
810987210c
Fix zoom out when wheel event.deltaY is zero
...
Don't apply zoom in or zoom out when deltaY is zero on wheel events.
Should fix https://github.com/openseadragon/openseadragon/issues/947 and not make OpenSeadragon zoom out when scrolling horizontally on a touchpad
2023-10-25 09:26:48 +02:00
Aiosa
cd9d340038
Removed date loader (will be handled by future OSD cache system). Attempt to use instanced rendering. Refactoring of the module.
2023-10-23 16:03:47 +02:00
Lutz Helm
b92a428e88
Sort levelSizes instead of sizes
2023-10-10 14:02:44 +02:00
Aiosa
31f9a71109
Working tiledimage-level transparency in a single pass.
2023-09-27 15:16:23 +02:00
Aiosa
174c4c709a
Remove logs from debugging.
2023-09-26 15:47:50 +02:00
Aiosa
e3024deb46
Modular webgl2 drawer: fix small bugs. Add drawer IDs to demo page urls to allow refreshing/direct running
2023-09-26 15:31:43 +02:00
Aiosa
f796925ae5
Remove irrelevant code and comments.
2023-09-25 08:52:45 +02:00
Aiosa
750d45be81
Implement asynchronous tile processing logic wrt. tile cache conversion.
2023-09-24 22:30:28 +02:00
Lutz Helm
5542ead48b
Fix #2415 , order IIIF sizes on tile source init
2023-09-19 09:55:53 +02:00
Aiosa
f01a7a4b3c
Cache Overhaul for OpenSeadragon (areas to discuss marked with FIXME).
2023-09-08 08:47:43 +02:00
ViratSr
ed49d46237
syntax fixed and if statement amended
2023-08-17 10:39:45 +05:30
ViratSr
9b051f55de
#fix496
2023-08-16 00:10:55 +05:30
ViratSr
b15ba75551
fixed position issue
2023-08-15 16:46:10 +05:30
Ian Gilman
cca81a37d5
Merge pull request #2387 from schuefflerlab/BestTiles
...
Introduced option maxTilesPerFrame
2023-08-08 09:25:17 -07:00
Peter
0bdd807d9d
Cleaned code according to comments in PR
2023-08-08 11:05:33 +02:00
Peter
f8ad0acfa4
Sort the N tiles only once instead of when adding new indiviual tiles
2023-08-02 21:04:43 +02:00
Peter
55a05963a2
Sort N tiles always for a better look and feel.
2023-08-02 20:30:30 +02:00
pearcetm
e07745d790
Merge pull request #4 from Aiosa/rotation-seams
...
First modular webgl drawer implementation by @Aiosa
Thanks for putting this together @Aiosa! I'm going to merge it into the large refactor PR. It'd be great to have a demo page that includes all these features, for testing/debugging and to show off the capabilities.
2023-08-01 17:18:32 -04:00
Mark Salsbery
1f47f5def1
MouseTracker options docs fixes
2023-07-31 13:08:07 -07:00
Tom
c77a7e7386
enhance performance demo. rename variables for clarity.
2023-07-28 17:49:24 -04:00
Peter
17873001b8
outsourced tile sorting from tile comparing.
2023-07-28 13:15:47 +02:00
Aiosa
a907aaa160
Merge remote-tracking branch 'origin/rotation-seams' into rotation-seams
2023-07-28 12:24:15 +02:00
Aiosa
b6273b95b8
First modular webgl drawer implementation.
2023-07-28 12:23:59 +02:00
Aiosa
ca45e96142
Merge branch 'rotation-seams' into rotation-seams
2023-07-26 23:58:07 +02:00
Aiosa
046612f8da
Better drawer resolution, also supporting inline class spec. Fix minor review stuff.
2023-07-26 23:55:46 +02:00
Tom
f4ded1630f
code cleanup
2023-07-26 15:42:18 -04:00
Aiosa
3c3842bdce
Change comments TO DO -> TODO. Add automatic recognition of drawers. Matrix as an exposed class.
2023-07-26 20:01:26 +02:00
Peter
ccb4ae9f86
Fixed _updateViewport to come to a fullyLoaded state with n tiles.
...
Improved _compareTiles
2023-07-20 17:27:49 +02:00
Peter
9684a83b8c
Updated Comment
2023-07-20 15:17:02 +02:00
P. Schueffler
7ad748799e
Pr for upstream ( #3 )
...
Added maxTilesPerFrame
2023-07-20 14:45:15 +02:00
Tom
f510301922
add performance test demo page. reduce number of drawing calls drawing pipeline of webgl drawer.
2023-07-19 18:18:56 -04:00
Tom
01a4ea6f2c
Update documentation and remove commented code. Change from get type to getType().
2023-07-09 14:10:20 -04:00
Tom
6feed0a68e
Add clipping to demo. Update documentation and remove commented code. Change from get type to getType().
2023-07-09 12:05:17 -04:00
Tom
0a3aa6172d
add type property to drawers. only add extra padding to tiles for drawers that need it.
2023-06-30 16:38:07 -04:00
Tom
048b43e196
remove forced transparency from images in drawercomparison demo. change from context2d naming to canvas.
2023-06-30 16:06:17 -04:00
Tom
cc412f0a20
add documentation; remove unnecessary deprecated code
2023-06-29 21:55:59 -04:00
Tom
3a5a738508
remove viewer.destroy() from some tests
2023-06-29 17:06:45 -04:00
Tom
83ec2bb1f0
tiled image opacity works now with no overlapping regions at tile borders
2023-06-29 16:41:45 -04:00
Tom
24c4d2d2bc
Remove tile-drawn event and replace with tiled-image-drawn for webgl drawer, and update related tests.
2023-06-27 13:57:02 -04:00
Tom
2ec2c0f2c7
remove three.js and associated plugin renderer; fix demo
2023-06-26 21:44:03 -04:00
Tom
386ca85db8
implement native webgl renderer, and many associated changes related to drawing pipeline and testing
2023-06-26 21:29:08 -04:00
akansjain
eaa41f7f05
Replaced the comment with Deprecated
2023-06-21 13:34:58 +05:30
Tom
128975ea0f
only calculate tile positions when necessary
2023-06-18 19:28:48 -04:00
Tom
0584ca7be9
add to-do comments
2023-06-18 19:09:22 -04:00
Tom
37b8ef9519
deprecate useCanvas option; add option for drawer and drawerOptions
2023-06-18 19:08:33 -04:00
Tom
7bb02d51d0
reverted change to argument order in _updateTile call
2023-06-14 07:51:50 -07:00
akansjain
7dec7b9aba
Added console.error() in createCallback() function
2023-06-09 17:58:22 +05:30
Tom
2e248baf91
additional fixes to get tests to pass
2023-06-08 12:10:55 -07:00
Tom
354590a17a
convert DrawerBase and drawer implementations to classes; add html drawer to the demo page
2023-06-07 12:42:16 -07:00
Tom
1bc93be3f2
update tile drawing logic
2023-06-06 19:37:24 -04:00
Tom
1089f79a5b
remove drawer class
2023-06-06 18:08:50 -04:00
Tom
dab8a9a3cd
move tile update logic back to TiledImage to keep drawing logic cleaner
2023-06-06 18:08:30 -04:00
Tom
2f3bef0865
split canvas from html rendering
2023-06-06 18:08:30 -04:00
Tom
467597e2c2
cleaning up drawer APIs
2023-06-06 18:08:30 -04:00
Tom
5328761877
finished many implementation details and demo
2023-06-06 18:08:01 -04:00
Tom
f9ab63944b
ThreeJSRenderer nearly complete, starting refactor of core to support plugin drawers.
2023-06-06 18:05:17 -04:00
akansjain
3fc156d513
Removed createCallback function
2023-06-06 23:04:04 +05:30
Delile Sebastien
f96db3cf0f
complete comment
2023-06-02 18:59:22 +02:00
Delile Sebastien
f004ecf323
fix comment
2023-06-01 10:20:14 +02:00
Delile Sebastien
2c03c1bbe9
workaround tile edge smoothing maxZoom + flip
2023-05-31 16:11:42 +02:00
Andrew Armbruster
c7df7be7f1
Catch rejected Promise on failed fullscreen request
...
Add a `catch()` rejection of request for fullscreen (standard Fullscreen API implementation), as well as fullscreen exit. For now there is no actual handling, but we send a message to the internal error channel.
Motivation: The fullscreen request was causing certain tests to fail when run with newer versions of QUnit (starting in 2.5.0), which now fails tests that have unhandled Promise rejections (as we did here).
The exit case is not currently covered by tests, but works the same way (also returns a promise).
See: https://fullscreen.spec.whatwg.org/#ref-for-dom-element-requestfullscreen%E2%91%A0
2023-05-28 14:15:55 +02:00
Ian Gilman
b9cb52a184
Updated copyright to 2023
2023-05-25 14:52:20 -07:00
lcl45
7fb5744495
Resolved suggestions
...
- Avoid useless parameters _navigatorRotate since it already exists within the navigator;
- Automatically rotate the image in the demo page.
2023-05-24 08:45:15 +02:00
oro.niccolo
d897e5454f
Added navigator's region rotation
...
When the "navigatorRotate" option is set to false, rotate the navigator's region accordigly to the image rotation.
2023-05-23 09:27:32 +02:00
Ian Gilman
e6f2d3e07b
Merge pull request #2346 from uschmidt83/ajax-headers
...
Add `setAjaxHeaders` method to Viewer and TiledImage
2023-05-19 15:01:54 -07:00
Uwe Schmidt
4060dee4f9
Make updateAjaxHeaders
private
2023-05-19 22:22:10 +02:00
Uwe Schmidt
e983bd8108
Add docs for updating ajax headers
2023-05-12 23:48:31 +02:00
Uwe Schmidt
857a825ed8
Fix some jsdoc typos
2023-05-12 23:37:34 +02:00
Uwe Schmidt
6fd828974d
Update navigator ajax headers
2023-05-12 21:46:16 +02:00
Uwe Schmidt
e51aa4a9c5
Refine setAjaxHeaders
...
- Allow null to clear headers (same as empty object)
- Add TiledImage._updateAjaxHeaders
- Add error message in case of invalid headers
2023-05-05 01:13:44 +02:00
Uwe Schmidt
182c11481e
Add tests for setAjaxHeaders
2023-05-05 00:03:22 +02:00
Tom
528df37335
update navigator size when calling setHeight or setWidth
2023-05-03 22:38:49 -04:00
Uwe Schmidt
b23e8295d3
Propagate updated ajax headers by default
2023-05-03 23:51:07 +02:00
Uwe Schmidt
13603dd5f4
Update reference strip ajax headers
2023-05-03 19:33:50 +02:00
Uwe Schmidt
fe7a5eb01b
Make ES5-compatible
2023-05-03 18:46:18 +02:00
Uwe Schmidt
3c2628f182
Add setAjaxHeaders method to Viewer and TiledImage
...
- First draft, not tested at all
- See openseadragon/openseadragon#1748
2023-05-03 16:05:58 +02:00
Ruven
c5404006b2
Further optimization: code moved into constructor thereby eliminating need for getLevelSize() function.
2023-04-25 12:06:27 +02:00
Ruven
5fd125dc92
Added implementation of getTileAtPoint() function. This eliminates flickering at level transitions caused by mis-match in resolution size calculation between the getTileAtPoint() and getNumTiles() functions.
2023-04-24 22:44:46 +02:00
Ruven
877c3b68ed
Refactored code to take into account optimization suggestions ( https://github.com/openseadragon/openseadragon/pull/2337#discussion_r1170931340 )
2023-04-24 17:24:18 +02:00
Ruven
0c358c140d
Use resolution level dimensions provided in the info.json "sizes" field to determine tile sizes as well as the number of tiles that exist at a particular resolution. Fall back to calculation using ceil() if no resolution sizes provided. Avoids rounding errors for edge tiles and fixes https://github.com/openseadragon/openseadragon/issues/2321
2023-04-17 21:08:18 +02:00