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

feat: pass through middle mouse click event to onCellClicked #693

Merged
merged 6 commits into from Aug 18, 2023

Conversation

hkang1
Copy link
Contributor

@hkang1 hkang1 commented Apr 26, 2023

Current State

Currently only the left mouse button event (button === 0) is being passed through to the mouse event handler handleMaybeClick.

Proposed Change

Also pass through the middle mouse button through to the cell onCellClicked event handler to allow for different behaviors between the two mouse buttons.

cc @jassmith @ivoelbert

@hkang1
Copy link
Contributor Author

hkang1 commented May 30, 2023

any thoughts on this small change to unlock the middle mouse button and passing it through to the hook 🙏

@@ -1821,7 +1821,7 @@ const DataEditorImpl: React.ForwardRefRenderFunction<DataEditorRef, DataEditorPr
(args: GridMouseEventArgs) => {
isPrevented.current = false;
touchDownArgs.current = visibleRegionRef.current;
if (args.button !== 0) {
if (args.button !== 0 && args.button !== 1) {
Copy link
Collaborator

Choose a reason for hiding this comment

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

This would let you "double click" by clicking the middle and left buttons in quick succession, and may also have other weird side effects. I'd suggest adding button to the mouseDownData and then having this compare args.button to that.

@jassmith jassmith changed the base branch from main to 5.2.2 August 18, 2023 01:14
@coveralls
Copy link

coveralls commented Aug 18, 2023

Pull Request Test Coverage Report for Build 5898640744

  • 8 of 8 (100.0%) changed or added relevant lines in 1 file are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.07%) to 79.703%

Totals Coverage Status
Change from base Build 5897525854: 0.07%
Covered Lines: 4609
Relevant Lines: 5389

💛 - Coveralls

@jassmith jassmith merged commit 36a6d2e into glideapps:5.2.2 Aug 18, 2023
2 checks passed
jassmith added a commit that referenced this pull request Aug 19, 2023
* 5.2.2-beta1

* Fix unable to select last col

* Find better react-laag fix

* Fix build error

* Prevent crash

* Ensure click off container properly supports touches

* 5.2.2-beta2

* Improve error messages

* Offer increased control over search

* Add dumb filter example

* Fix import

* Export GetRowThemeCallback

* Ensure canvas is in proper ltr/rtl mode

* Don't accidentally exclude final col when copying rows

* Make sure to support RTL in column headers

* Load up testing framework

* Fix build

* Add row marker stories

* Add more type exports

* Fix padding with wrapped text

* 5.2.2-beta3

* Fix copy pasta discovered during merge

* Bump to 5.2.2-beta5

* feat: pass through middle mouse click event to onCellClicked (#693)

* pass through middle mouse click event to onCellClicked

* Add tests and prevent werid behavior

* Add more tests and fixes

* Oops

* Fix build

---------

Co-authored-by: Jason Smith <jason@heyglide.com>

* Fix issue with missing ts distribution (#673)

* feat: expose the cell location in keyboard event (#664)

* feat: expose the cell location in keyboard event

* Add test

* Fix API

---------

Co-authored-by: Alex Corrado <alex.corrado@heyglide.com>
Co-authored-by: Jason Smith <jason@heyglide.com>

* DatePickerCell Implementation (#627)

* DatePickerCell Implementation with prettier

* Suggestions. Note, I do need to add more unit tests

* Actually remove the unit test beacuse infra does not support this as of yet.

* Rename variable to dateKind

* Add support.ts duplicate method into cells packagea and refactor import

* Put back try and catch. oops

* readd format parameter to support backwards compat and incorporate Lukas Feedback

* Adding basic unit test

* Add todos for myself

* lint

* Add max, min, step, readonly, and change cached displayDate behavior to undefined behavior

* Add more tests and dataid for date-picker-cell

* Add tests

* Add date, time, datetime tests

* cleanup

* Remove console.log

* Add more test cases for onPaste

* Add time test case for onPaste

* Add implementation for time in onPaste

* Cleanup tests a bit

* Add additional columns to storybook

* Apply correct formatting

* Apply correct formatting

* Clean up with correct prettier file

* Remove need for support functions

* Clean imports

* Revert "Clean up with correct prettier file"

This reverts commit 32e5b93.

* Add assert method

* Fix paste issue

* Delete support ts

* Fix cell stories display

* Add styling to apply gdg theme

* Fix tests

* Use outside read-only

* Remove theme

* Add cell tests to CI workflow

* Fix tests and remove extra test

* Remove tests because they're failing based on timezone

* Update date picker cell (#5)

* Fix unit tests

* Fix tests

* Remove min / max

* Add support for Date as min / max value (#6)

* Fix unit tests

* Fix tests

* Remove min / max

* Add support for date in min/max

---------

Co-authored-by: lukasmasuch <lukas.masuch@gmail.com>
Co-authored-by: Jason Smith <jassmith@gmail.com>

* 5.2.2-beta6

* Add obstructed playground

* Cleanup events a little more

* Bump to 5.3.0

---------

Co-authored-by: Alex Corrado <alex.corrado@heyglide.com>
Co-authored-by: Caleb Hoyoul Kang <caleb.kang@hpe.com>
Co-authored-by: Lukas Masuch <Lukas.Masuch@gmail.com>
Co-authored-by: Vigen <95758873+vabrahamyanadobe@users.noreply.github.com>
Co-authored-by: willhuang1997 <willhuang1997@gmail.com>
@hkang1 hkang1 deleted the middle-mouse-button-cell-click branch August 21, 2023 22:30
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