Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix: Inconsistent natural image dimensions in IE #324

Merged
merged 5 commits into from Aug 21, 2017
Merged

Fix: Inconsistent natural image dimensions in IE #324

merged 5 commits into from Aug 21, 2017

Conversation

Minh-Ng
Copy link
Contributor

@Minh-Ng Minh-Ng commented Aug 18, 2017

@pramodsum
The data-scale attribute is set to infinity when an Image element has a naturalWidth and naturalHeight of 0. This circumvents the problem even though IE11 is supposed to support naturalWidth and naturalHeight. It might be that naturalWidth and naturalHeight are eventually set but the setting is not done on load. In any case, this seems to fix the issue (tested on IE11).

@@ -43,6 +43,7 @@ class ImageBaseViewer extends BaseViewer {
return;
}

ImageBaseViewer.setOriginalImageSize(this.imageEl);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this.setOriginalImageSize(this.imageEl);

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

setOriginalImageSize is implemented as a static method right now. Is there any preference for avoiding static methods? I know that only one Viewer will actually be instantiated so there will not be much of a difference in our use case but I am advocating for the use of static methods to avoid the creation of monolithic utility files.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't have a policy one way or another, but I'd lean towards making this a normal private function in the base viewer until otherwise needed since that's how we've organized other similar helper functions. The moment this is required in a different viewer outside of the ImageBaseViewer inheritance chain, we can easily update this to a static method.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated to be non-static

@Minh-Ng Minh-Ng merged commit 2889b0d into box:master Aug 21, 2017
* naturalHeight and naturalWidth attributes work correctly in IE 11.
*
* @private
* @param {Image} imageEl - The image to set the original size attributes on
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

{HTMLElement}

* @return {Promise} A promise that is resolved if the original image dimensions were set.
*/
setOriginalImageSize(imageEl) {
const image = imageEl;
Copy link
Contributor

@tonyjin tonyjin Aug 21, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think @JustinHoldstock mentioned at some point he prefers just disabling the eslint rule that warns against this when you mean to explicitly modify the passed in param. We also generally tend to keep the 'El' portion of a name to indicate an HTML Element.

Would look like:

/* eslint-disable no-param-reassign */
setOriginalImageSize(imageEl) {
    // implementation
}
/* eslint-enable no-param-reassign */

const image = imageEl;
const promise = new Promise((resolve, reject) => {
// Do not bother loading a new image when the natural size attributes exist
if (imageEl.naturalWidth > 0 && imageEl.naturalHeight > 0) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this the preferred way of checking whether natural size attributes are available? What happens for 0x0 or 0 by Y / X by 0 images?

Copy link
Contributor Author

@Minh-Ng Minh-Ng Aug 22, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For 0x0, the original width and height will be set to 1x1. It is not ideal but the original width/height are used to measure scale. Therefore if they are set to 0 we will have division by 0 that results in scale = Infinity.

naturalWidth and naturalHeight are supposed to be supported in IE 9+ but it doesn't appear to hold true. The reason for this PR is due to naturalWidth and naturalHeight being 0x0 on a non-zero image.

image.originalHeight = originalImg.height || 1;
resolve();
};
originalImg.src = imageEl.src;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you need to do this? finishLoading() is triggered after the image element loads (see ImageViewer.js) and this should be before zoom() is called so the image should already be in its natural width/height.

This implementation makes sense for the generic use case, but is probably less efficient for the exact use case you're solving for here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I had previously tested out just checking image.width and image.height in the onload function. It appears to have already been styled at that point, hence the need for this. I can go back through and see if there is a point in which the original loaded image can set its data attributes.

} else {
const originalImg = new Image();
image.originalWidth = 1;
image.originalHeight = 1;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of adding properties directly to an HTML element, it's better to add a data attribute, see: https://developer.mozilla.org/en-US/docs/Learn/HTML/Howto/Use_data_attributes

// Set
imageEl.dataset.originalWidth = 1;
imageEl.dataset.originalHeight = 1;

// Get
const originalWidth = imageEl.dataset.originalWidth;
const originalHeight = imageEl.dataset.originalHeight;

JustinHoldstock pushed a commit to JustinHoldstock/box-content-preview that referenced this pull request Jan 22, 2019
https://github.com/box/box-annotations/releases/tag/v3.7.0

## 3.7.0 (2019-01-22)
* Fix: Creation of highlights on Edge/IE11/Firefox browsers (box#322) ([3d9ee7f](box/box-annotations@3d9ee7f)), closes [box#322](box/box-annotations#322)
* Docs: Update badges (box#324) ([daf18a7](box/box-annotations@daf18a7)), closes [box#324](box/box-annotations#324)
## 3.6.0 (2019-01-15)
* Fix: Don't display @mention selector in ACF (box#323) ([a474251](box/box-annotations@a474251)), closes [box#323](box/box-annotations#323)
* Fix: Drawing threads now destroy their event handlers properly (box#317) ([ba3795d](box/box-annotations@ba3795d)), closes [box#317](box/box-annotations#317)
* Fix: Functional tests (box#320) ([bba4a9c](box/box-annotations@bba4a9c)), closes [box#320](box/box-annotations#320)
* Fix: Only unbind listeners from existing DOM elements (box#321) ([6a71a9e](box/box-annotations@6a71a9e)), closes [box#321](box/box-annotations#321)
* Update: Improve and simplify annotation button and icon styles (box#318) ([538fbd2](box/box-annotations@538fbd2)), closes [box#318](box/box-annotations#318)
* Chore: Add webpack-dev-server and basic fixture for local dev (box#316) ([7e3c01b](box/box-annotations@7e3c01b)), closes [box#316](box/box-annotations#316)
* Chore: Update doc and test fixtures to support IE11 (box#319) ([6f9d783](box/box-annotations@6f9d783)), closes [box#319](box/box-annotations#319)
## 3.5.0 (2018-12-13)
* Fix: AnnotationPopover CSS to not hide popover svgs (box#304) ([83ca5b7](box/box-annotations@83ca5b7)), closes [box#304](box/box-annotations#304)
* Fix: date appears incorrectly for point annotations in IE11 (box#312) ([bcd6ae5](box/box-annotations@bcd6ae5)), closes [box#312](box/box-annotations#312)
* Fix: Don't render until AFTER all are fetched (box#311) ([0e3fbff](box/box-annotations@0e3fbff)), closes [box#311](box/box-annotations#311)
* Fix: Ensure dialog is still visible on undo/redo (box#302) ([1c8a7e2](box/box-annotations@1c8a7e2)), closes [box#302](box/box-annotations#302)
* Fix: Ensure thread number is persisted for annotation replies (box#307) ([734fc6c](box/box-annotations@734fc6c)), closes [box#307](box/box-annotations#307)
* Fix: Functional tests to work with React components (box#303) ([4f0418e](box/box-annotations@4f0418e)), closes [box#303](box/box-annotations#303)
* Fix: Get mode button from header element rather than container (box#308) ([b50d72b](box/box-annotations@b50d72b)), closes [box#308](box/box-annotations#308)
* Fix: Point image annotations popover should be on annotated element (box#305) ([6d71dee](box/box-annotations@6d71dee)), closes [box#305](box/box-annotations#305)
* Fix: Reset current annotation thread immediately on save (box#313) ([19c89cc](box/box-annotations@19c89cc)), closes [box#313](box/box-annotations#313)
* Fix: Reset undo/redo buttons on drawing save/delete (box#306) ([441f0f2](box/box-annotations@441f0f2)), closes [box#306](box/box-annotations#306)
* Fix: Show comment list scrollbars only on overflow (box#314) ([83c143e](box/box-annotations@83c143e)), closes [box#314](box/box-annotations#314)
* Chore: Remove NSP from build (defunct) (box#315) ([720802f](box/box-annotations@720802f)), closes [box#315](box/box-annotations#315)
* Chore: Update test page for annotations 3.4 (box#301) ([71afd21](box/box-annotations@71afd21)), closes [box#301](box/box-annotations#301)
* Update: CSS className constants for react classNames (box#299) ([b472a2e](box/box-annotations@b472a2e)), closes [box#299](box/box-annotations#299)
## 3.4.0 (2018-11-28)
* Fix: Dialog not showing when creating points (box#295) ([c0ee86f](box/box-annotations@c0ee86f)), closes [box#295](box/box-annotations#295)
* Fix: Don't clear selection  if selecting outside of annotated element (box#298) ([5e277a0](box/box-annotations@5e277a0)), closes [box#298](box/box-annotations#298)
* Fix: Fix test site for IE 11 (box#300) ([359bda3](box/box-annotations@359bda3)), closes [box#300](box/box-annotations#300)
* Fix: Positioning of undo/redo drawing buttons in header on mobile (box#296) ([873394f](box/box-annotations@873394f)), closes [box#296](box/box-annotations#296)
* Chore: Add Annotations test page to be hosted by github pages (box#294) ([b91ade9](box/box-annotations@b91ade9)), closes [box#294](box/box-annotations#294)
* Chore: Ignore js and json in i18n (box#297) ([e691bdc](box/box-annotations@e691bdc)), closes [box#297](box/box-annotations#297)
## 3.3.0 (2018-11-20)
* Fix: Clear highlight selection on mousedown and hideAnnotations() (box#293) ([b60bc56](box/box-annotations@b60bc56)), closes [box#293](box/box-annotations#293)
* Fix: Ensure deleteSuccessHandler destroys thread when necessary (box#289) ([e972a72](box/box-annotations@e972a72)), closes [box#289](box/box-annotations#289)
* Fix: Ensure popover parent element is determined correctly (box#292) ([eab98ec](box/box-annotations@eab98ec)), closes [box#292](box/box-annotations#292)
* Fix: Popover CSS issues  (box#287) ([e64b3f8](box/box-annotations@e64b3f8)), closes [box#287](box/box-annotations#287)
* Fix: Reset create highlight UI when mouse hasn't moved on mouseup (box#290) ([4abd611](box/box-annotations@4abd611)), closes [box#290](box/box-annotations#290)
* Fix: Reset popover UI on re-render/scale events (box#284) ([43e5cb0](box/box-annotations@43e5cb0)), closes [box#284](box/box-annotations#284)
* Fix: Unfocus textarea on comment post/cancel (box#286) ([448347c](box/box-annotations@448347c)), closes [box#286](box/box-annotations#286)
* Fix: Unregister drawing on mode cancel (box#288) ([12d5f6d](box/box-annotations@12d5f6d)), closes [box#288](box/box-annotations#288)
* Chore: Remove unecesary highlightThread.onMouseDown() (box#291) ([a01db9f](box/box-annotations@a01db9f)), closes [box#291](box/box-annotations#291)
* Update: Husky scripts (box#285) ([eaff0f0](box/box-annotations@eaff0f0)), closes [box#285](box/box-annotations#285)
* Mojito: Update translations (box#283) ([529bbc0](box/box-annotations@529bbc0)), closes [box#283](box/box-annotations#283)
## 3.2.0 (2018-11-13)
* Mojito: Update translations (box#282) ([48d2f8f](box/box-annotations@48d2f8f)), closes [box#282](box/box-annotations#282)
## 3.1.0 (2018-11-07)
* Fix: Alignment of createdAt timestamp and user's name (box#277) ([b4980fb](box/box-annotations@b4980fb)), closes [box#277](box/box-annotations#277)
* Fix: Ensure drawings are only registered once with the controller (box#278) ([feedc87](box/box-annotations@feedc87)), closes [box#278](box/box-annotations#278)
* Fix: Ensure onSelectionChange isn't triggered while creating highlights (box#281) ([3130210](box/box-annotations@3130210)), closes [box#281](box/box-annotations#281)
* Fix: Remove clickHandler from DrawingModeController (box#280) ([0c7fe0f](box/box-annotations@0c7fe0f)), closes [box#280](box/box-annotations#280)
* Fix: Remove focus trap on AnnotationPopover on mobile (box#279) ([a14fe6b](box/box-annotations@a14fe6b)), closes [box#279](box/box-annotations#279)
* Chore: Fix publish script (box#275) ([25c40f7](box/box-annotations@25c40f7)), closes [box#275](box/box-annotations#275)
* Chore: Upgrade husky (box#276) ([14bda8a](box/box-annotations@14bda8a)), closes [box#276](box/box-annotations#276)
## 3.0.0 (2018-10-31)
* Chore: Adding rsync to yarn run watch (box#241) ([afe6ab6](box/box-annotations@afe6ab6)), closes [box#241](box/box-annotations#241)
* Chore: Cleanup flow types (box#274) ([33adb47](box/box-annotations@33adb47)), closes [box#274](box/box-annotations#274)
* Chore: Reduce redundant point creation via buffering (box#237) ([2bfc2f1](box/box-annotations@2bfc2f1)), closes [box#237](box/box-annotations#237)
* Breaking: Migrate Annotations UI into React (box#251) ([d853b80](box/box-annotations@d853b80)), closes [box#251](box/box-annotations#251)
## 2.3.0 (2018-10-16)
* Chore: Add supported excel types. Remove greenkeeper badge (box#227) ([8bd1bb9](box/box-annotations@8bd1bb9)), closes [box#227](box/box-annotations#227)
* Chore: break text to fit into dialog (box#230) ([3a5cc86](box/box-annotations@3a5cc86)), closes [box#230](box/box-annotations#230)
* Chore: Remove unused thread.mouseoutHandler() (box#206) ([1017082](box/box-annotations@1017082)), closes [box#206](box/box-annotations#206)
* Chore: Replace Karma with Jest for testing framework (box#199) ([a847b01](box/box-annotations@a847b01)), closes [box#199](box/box-annotations#199)
* Chore: Update preview version to 1.54.0 in functional tests (box#239) ([6de2cf4](box/box-annotations@6de2cf4)), closes [box#239](box/box-annotations#239)
* Fix: Cursor type in annotation dialog (box#195) ([b568288](box/box-annotations@b568288)), closes [box#195](box/box-annotations#195)
* Fix: Functional tests scripts ([2dfc22e](box/box-annotations@2dfc22e))
* Fix: travis.yml config (box#203) ([a71ecb6](box/box-annotations@a71ecb6)), closes [box#203](box/box-annotations#203)
* Update: Annotations with header (box#233) ([91cdce3](box/box-annotations@91cdce3)), closes [box#233](box/box-annotations#233)
* Update: box-react-ui to v25.6.0 (box#204) ([398b4c3](box/box-annotations@398b4c3)), closes [box#204](box/box-annotations#204)
* Update: Filter multi-image functional tests separately from image tests ([b15a007](box/box-annotations@b15a007))
* Update: Test yaml changes ([bb58296](box/box-annotations@bb58296))
* Update: Webpack 4 + dependencies (box#208) ([b2ba5df](box/box-annotations@b2ba5df)), closes [box#208](box/box-annotations#208)
* Update .travis.yml ([9c09e8e](box/box-annotations@9c09e8e))
* Update .travis.yml ([236c383](box/box-annotations@236c383))
* Update add-annotation-type.md ([fcceb3e](box/box-annotations@fcceb3e))
* Update add-annotation-type.md ([ca5c6f0](box/box-annotations@ca5c6f0))
* Update webpack.selenium.config.js ([e008f68](box/box-annotations@e008f68))
* New: Add functional tests for image files (box#197) ([7c7b39e](box/box-annotations@7c7b39e)), closes [box#197](box/box-annotations#197)
pramodsum added a commit to pramodsum/box-content-preview that referenced this pull request Jan 25, 2019
https://github.com/box/box-annotations/releases/tag/v3.7.1

## 3.7.0 (2019-01-22)
* Fix: Creation of highlights on Edge/IE11/Firefox browsers (box#322) ([3d9ee7f](box/box-annotations@3d9ee7f)), closes [box#322](box/box-annotations#322)
* Docs: Update badges (box#324) ([daf18a7](box/box-annotations@daf18a7)), closes [box#324](box/box-annotations#324)
## 3.6.0 (2019-01-15)
* Fix: Don't display @mention selector in ACF (box#323) ([a474251](box/box-annotations@a474251)), closes [box#323](box/box-annotations#323)
* Fix: Drawing threads now destroy their event handlers properly (box#317) ([ba3795d](box/box-annotations@ba3795d)), closes [box#317](box/box-annotations#317)
* Fix: Functional tests (box#320) ([bba4a9c](box/box-annotations@bba4a9c)), closes [box#320](box/box-annotations#320)
* Fix: Only unbind listeners from existing DOM elements (box#321) ([6a71a9e](box/box-annotations@6a71a9e)), closes [box#321](box/box-annotations#321)
* Update: Improve and simplify annotation button and icon styles (box#318) ([538fbd2](box/box-annotations@538fbd2)), closes [box#318](box/box-annotations#318)
* Chore: Add webpack-dev-server and basic fixture for local dev (box#316) ([7e3c01b](box/box-annotations@7e3c01b)), closes [box#316](box/box-annotations#316)
* Chore: Update doc and test fixtures to support IE11 (box#319) ([6f9d783](box/box-annotations@6f9d783)), closes [box#319](box/box-annotations#319)
## 3.5.0 (2018-12-13)
* Fix: AnnotationPopover CSS to not hide popover svgs (box#304) ([83ca5b7](box/box-annotations@83ca5b7)), closes [box#304](box/box-annotations#304)
* Fix: date appears incorrectly for point annotations in IE11 (box#312) ([bcd6ae5](box/box-annotations@bcd6ae5)), closes [box#312](box/box-annotations#312)
* Fix: Don't render until AFTER all are fetched (box#311) ([0e3fbff](box/box-annotations@0e3fbff)), closes [box#311](box/box-annotations#311)
* Fix: Ensure dialog is still visible on undo/redo (box#302) ([1c8a7e2](box/box-annotations@1c8a7e2)), closes [box#302](box/box-annotations#302)
* Fix: Ensure thread number is persisted for annotation replies (box#307) ([734fc6c](box/box-annotations@734fc6c)), closes [box#307](box/box-annotations#307)
* Fix: Functional tests to work with React components (box#303) ([4f0418e](box/box-annotations@4f0418e)), closes [box#303](box/box-annotations#303)
* Fix: Get mode button from header element rather than container (box#308) ([b50d72b](box/box-annotations@b50d72b)), closes [box#308](box/box-annotations#308)
* Fix: Point image annotations popover should be on annotated element (box#305) ([6d71dee](box/box-annotations@6d71dee)), closes [box#305](box/box-annotations#305)
* Fix: Reset current annotation thread immediately on save (box#313) ([19c89cc](box/box-annotations@19c89cc)), closes [box#313](box/box-annotations#313)
* Fix: Reset undo/redo buttons on drawing save/delete (box#306) ([441f0f2](box/box-annotations@441f0f2)), closes [box#306](box/box-annotations#306)
* Fix: Show comment list scrollbars only on overflow (box#314) ([83c143e](box/box-annotations@83c143e)), closes [box#314](box/box-annotations#314)
* Chore: Remove NSP from build (defunct) (box#315) ([720802f](box/box-annotations@720802f)), closes [box#315](box/box-annotations#315)
* Chore: Update test page for annotations 3.4 (box#301) ([71afd21](box/box-annotations@71afd21)), closes [box#301](box/box-annotations#301)
* Update: CSS className constants for react classNames (box#299) ([b472a2e](box/box-annotations@b472a2e)), closes [box#299](box/box-annotations#299)
## 3.4.0 (2018-11-28)
* Fix: Dialog not showing when creating points (box#295) ([c0ee86f](box/box-annotations@c0ee86f)), closes [box#295](box/box-annotations#295)
* Fix: Don't clear selection  if selecting outside of annotated element (box#298) ([5e277a0](box/box-annotations@5e277a0)), closes [box#298](box/box-annotations#298)
* Fix: Fix test site for IE 11 (box#300) ([359bda3](box/box-annotations@359bda3)), closes [box#300](box/box-annotations#300)
* Fix: Positioning of undo/redo drawing buttons in header on mobile (box#296) ([873394f](box/box-annotations@873394f)), closes [box#296](box/box-annotations#296)
* Chore: Add Annotations test page to be hosted by github pages (box#294) ([b91ade9](box/box-annotations@b91ade9)), closes [box#294](box/box-annotations#294)
* Chore: Ignore js and json in i18n (box#297) ([e691bdc](box/box-annotations@e691bdc)), closes [box#297](box/box-annotations#297)
## 3.3.0 (2018-11-20)
* Fix: Clear highlight selection on mousedown and hideAnnotations() (box#293) ([b60bc56](box/box-annotations@b60bc56)), closes [box#293](box/box-annotations#293)
* Fix: Ensure deleteSuccessHandler destroys thread when necessary (box#289) ([e972a72](box/box-annotations@e972a72)), closes [box#289](box/box-annotations#289)
* Fix: Ensure popover parent element is determined correctly (box#292) ([eab98ec](box/box-annotations@eab98ec)), closes [box#292](box/box-annotations#292)
* Fix: Popover CSS issues  (box#287) ([e64b3f8](box/box-annotations@e64b3f8)), closes [box#287](box/box-annotations#287)
* Fix: Reset create highlight UI when mouse hasn't moved on mouseup (box#290) ([4abd611](box/box-annotations@4abd611)), closes [box#290](box/box-annotations#290)
* Fix: Reset popover UI on re-render/scale events (box#284) ([43e5cb0](box/box-annotations@43e5cb0)), closes [box#284](box/box-annotations#284)
* Fix: Unfocus textarea on comment post/cancel (box#286) ([448347c](box/box-annotations@448347c)), closes [box#286](box/box-annotations#286)
* Fix: Unregister drawing on mode cancel (box#288) ([12d5f6d](box/box-annotations@12d5f6d)), closes [box#288](box/box-annotations#288)
* Chore: Remove unecesary highlightThread.onMouseDown() (box#291) ([a01db9f](box/box-annotations@a01db9f)), closes [box#291](box/box-annotations#291)
* Update: Husky scripts (box#285) ([eaff0f0](box/box-annotations@eaff0f0)), closes [box#285](box/box-annotations#285)
* Mojito: Update translations (box#283) ([529bbc0](box/box-annotations@529bbc0)), closes [box#283](box/box-annotations#283)
## 3.2.0 (2018-11-13)
* Mojito: Update translations (box#282) ([48d2f8f](box/box-annotations@48d2f8f)), closes [box#282](box/box-annotations#282)
## 3.1.0 (2018-11-07)
* Fix: Alignment of createdAt timestamp and user's name (box#277) ([b4980fb](box/box-annotations@b4980fb)), closes [box#277](box/box-annotations#277)
* Fix: Ensure drawings are only registered once with the controller (box#278) ([feedc87](box/box-annotations@feedc87)), closes [box#278](box/box-annotations#278)
* Fix: Ensure onSelectionChange isn't triggered while creating highlights (box#281) ([3130210](box/box-annotations@3130210)), closes [box#281](box/box-annotations#281)
* Fix: Remove clickHandler from DrawingModeController (box#280) ([0c7fe0f](box/box-annotations@0c7fe0f)), closes [box#280](box/box-annotations#280)
* Fix: Remove focus trap on AnnotationPopover on mobile (box#279) ([a14fe6b](box/box-annotations@a14fe6b)), closes [box#279](box/box-annotations#279)
* Chore: Fix publish script (box#275) ([25c40f7](box/box-annotations@25c40f7)), closes [box#275](box/box-annotations#275)
* Chore: Upgrade husky (box#276) ([14bda8a](box/box-annotations@14bda8a)), closes [box#276](box/box-annotations#276)
## 3.0.0 (2018-10-31)
* Chore: Adding rsync to yarn run watch (box#241) ([afe6ab6](box/box-annotations@afe6ab6)), closes [box#241](box/box-annotations#241)
* Chore: Cleanup flow types (box#274) ([33adb47](box/box-annotations@33adb47)), closes [box#274](box/box-annotations#274)
* Chore: Reduce redundant point creation via buffering (box#237) ([2bfc2f1](box/box-annotations@2bfc2f1)), closes [box#237](box/box-annotations#237)
* Breaking: Migrate Annotations UI into React (box#251) ([d853b80](box/box-annotations@d853b80)), closes [box#251](box/box-annotations#251)
## 2.3.0 (2018-10-16)
* Chore: Add supported excel types. Remove greenkeeper badge (box#227) ([8bd1bb9](box/box-annotations@8bd1bb9)), closes [box#227](box/box-annotations#227)
* Chore: break text to fit into dialog (box#230) ([3a5cc86](box/box-annotations@3a5cc86)), closes [box#230](box/box-annotations#230)
* Chore: Remove unused thread.mouseoutHandler() (box#206) ([1017082](box/box-annotations@1017082)), closes [box#206](box/box-annotations#206)
* Chore: Replace Karma with Jest for testing framework (box#199) ([a847b01](box/box-annotations@a847b01)), closes [box#199](box/box-annotations#199)
* Chore: Update preview version to 1.54.0 in functional tests (box#239) ([6de2cf4](box/box-annotations@6de2cf4)), closes [box#239](box/box-annotations#239)
* Fix: Cursor type in annotation dialog (box#195) ([b568288](box/box-annotations@b568288)), closes [box#195](box/box-annotations#195)
* Fix: Functional tests scripts ([2dfc22e](box/box-annotations@2dfc22e))
* Fix: travis.yml config (box#203) ([a71ecb6](box/box-annotations@a71ecb6)), closes [box#203](box/box-annotations#203)
* Update: Annotations with header (box#233) ([91cdce3](box/box-annotations@91cdce3)), closes [box#233](box/box-annotations#233)
* Update: box-react-ui to v25.6.0 (box#204) ([398b4c3](box/box-annotations@398b4c3)), closes [box#204](box/box-annotations#204)
* Update: Filter multi-image functional tests separately from image tests ([b15a007](box/box-annotations@b15a007))
* Update: Test yaml changes ([bb58296](box/box-annotations@bb58296))
* Update: Webpack 4 + dependencies (box#208) ([b2ba5df](box/box-annotations@b2ba5df)), closes [box#208](box/box-annotations#208)
* Update .travis.yml ([9c09e8e](box/box-annotations@9c09e8e))
* Update .travis.yml ([236c383](box/box-annotations@236c383))
* Update add-annotation-type.md ([fcceb3e](box/box-annotations@fcceb3e))
* Update add-annotation-type.md ([ca5c6f0](box/box-annotations@ca5c6f0))
* Update webpack.selenium.config.js ([e008f68](box/box-annotations@e008f68))
* New: Add functional tests for image files (box#197) ([7c7b39e](box/box-annotations@7c7b39e)), closes [box#197](box/box-annotations#197)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants