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

Oligrapher does not work with touch devices #143

Open
betsydupuis opened this issue Jul 13, 2024 · 6 comments
Open

Oligrapher does not work with touch devices #143

betsydupuis opened this issue Jul 13, 2024 · 6 comments
Labels
enhancement New feature or request needs discussion

Comments

@betsydupuis
Copy link

Devices:

  • iPhone
  • iPad.

Oligrapher does not allow interaction on touch based devices.

@betsydupuis betsydupuis changed the title Oligrapher does not work with touch Oligrapher does not work with touch devices Jul 13, 2024
@josephlacey
Copy link
Contributor

This is a known issue for creating and editing maps. Given the complications even on large screens and with a pointing device, defining how this would work on a smaller screen is daunting.

Viewing maps does work, though again smaller screens aren't ideal for it. Any maps with Annotations do seem to have rendering issues that should be addressed at some point.

I wonder if we should have a message that renders at the top of the page when a small screen is detected and we recommend larger screens for better viewing.

@betsydupuis
Copy link
Author

Is there an update or library for D3 that handles this?

I'm not too familiar with D3. Never used before, but it looks like there's a few libs that aren't being used by oligrapher that support touch.

Is it possible that the interactions are custom to Oligrapher or predate changes to D3?

https://www.npmjs.com/package/d3-brush
https://d3js.org/d3-drag
https://d3js.org/d3-zoom

@betsydupuis
Copy link
Author

I wonder if we should have a message that renders at the top of the page when a small screen is detected and we recommend larger screens for better viewing.

Sounds like a good temporary fix.

There's still a lot of basic browsing that doesn't work with mobile. That's probably higher priority.

I can't imagine someone wanting to use a phone to make a map, but I at least have tried to use an iPad.

@aepyornis
Copy link
Contributor

We don't use d3 (an early version many years ago did, so let's remove references to it in the documentation)

But react-draggable the library we use for dragging supports touch event so with some effort (start with app/components/DraggableComponent) we might be able to get this touch screen workings.

but agreed that in general there are lots of issues with small screen sizes and non-standard ratios

@betsydupuis
Copy link
Author

We don't use d3 (an early version many years ago did, so let's remove references to it in the documentation)

It's in the node dependencies, so that's a good place to start.

I think remember years ago that Littlesis was featured on the D3 examples page.

@aepyornis
Copy link
Contributor

We don't use d3 (an early version many years ago did, so let's remove references to it in the documentation)

It's in the node dependencies, so that's a good place to start.

ah that's right, we do have one d3 dependency, d3-force, which is used to create force-directed graph layouts (sadly I think this stopped working and has been disabled but it would be fun to get that working again)

I think remember years ago that Littlesis was featured on the D3 examples page.

cool! I didn't know that. The overview page is D3 - https://littlesis.org/oligrapher

@josephlacey josephlacey added enhancement New feature or request needs discussion labels Aug 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request needs discussion
Development

No branches or pull requests

3 participants