Commit graph

1432 commits

Author SHA1 Message Date
Yohan Boniface
cbb02f9890 Make sure we update the tilelayers switcher when setting a custom one 2023-12-16 09:17:02 +01:00
Yohan Boniface
5d2b968863 chore: prettier 2023-12-16 09:16:13 +01:00
Yohan Boniface
625131f7df i18n 2023-12-16 08:22:16 +01:00
Yohan Boniface
e54e5752ae chore: Remove duplicate key in Map.editable_options 2023-12-15 23:20:35 +01:00
Yohan Boniface
7bcf751d46
Merge pull request #1449 from umap-project/kbd
Replace "Ctrl" by "Cmd" under macOS and style the "kbd" tag in keyboard shortcuts labels
2023-12-15 17:48:42 +01:00
Yohan Boniface
97068bdfdf
Merge pull request #1469 from umap-project/iconlayers
Use Leaflet.IconLayers as tilelayers switcher
2023-12-15 17:30:11 +01:00
Yohan Boniface
7f5960d1c4 Add parenthesis around keyboard when there is no kbd tag
This happens in title attributes, for example.
2023-12-15 17:24:55 +01:00
Yohan Boniface
87132314df
Merge pull request #1446 from umap-project/interactive-layer
Allow to control the `interactive` option from the layer
2023-12-15 17:18:57 +01:00
Yohan Boniface
3ffa29802e Use a variable to make explicit max number of shown layers 2023-12-15 17:11:49 +01:00
Yohan Boniface
49c17d6fd1 Simplify eachTilelayer method
Having a custom layer also in the predefined layers list is a
edge case we can deal with.
2023-12-15 17:05:00 +01:00
Yohan Boniface
b6b6139c79 Hide overflow from tilelayer title for now 2023-12-15 16:19:31 +01:00
Yohan Boniface
34d3beef25 Make sure custom tilelayer is displayed first, if any 2023-12-15 16:19:15 +01:00
Yohan Boniface
afd57d6806 Control the tilelayer change, instead of letting iconLayers do it
We want to control min/max zoom and such.
2023-12-15 16:16:53 +01:00
Yohan Boniface
fe9f4b4a48 WIP: POC of using Leaflet.IconLayers as tilelayers switcher 2023-12-15 11:40:52 +01:00
Yohan Boniface
b9f6645162 Use real tile URL in tests
It's easier to debug integration tests screenshots (otherwise
background is only grey).
2023-12-15 09:37:21 +01:00
Yohan Boniface
2f89a76e08 Add minimal CSS for kbd tag 2023-12-15 09:14:20 +01:00
Yohan Boniface
5a6cd9a5b5 Do not display keyboard shortcuts in main help for now
This main help already display some of them, so let's first
focus on this label refactor, and then do a refactor of that
main help modal.
2023-12-15 09:14:20 +01:00
Yohan Boniface
d98d5686fb Display Cmd instead of Ctrl for shortcuts on MacOS 2023-12-15 09:14:20 +01:00
Yohan Boniface
9c71d74ec9 WIP 2023-12-15 09:14:20 +01:00
Yohan Boniface
445ce7b6ba
Merge pull request #1468 from umap-project/fix-toolbox-overflow
Fix toolbox overflow with facets’ search
2023-12-15 08:26:56 +01:00
Yohan Boniface
a32b680a74
Merge pull request #1465 from umap-project/defaultview-latest-path
Use bounds instead of center when zooming to Polyline/Polygon
2023-12-15 08:24:58 +01:00
Yohan Boniface
8568159589
Merge pull request #1466 from umap-project/fix-remove-tilelayer
Do not call AttributionControl._update for removed tile layer
2023-12-15 08:24:41 +01:00
David Larlet
45c0805319
Fix toolbox overflow with facets’ search 2023-12-14 17:03:53 -05:00
Yohan Boniface
d1912f57e9 Do not call AttributionControl._update for removed tile layer 2023-12-14 22:55:01 +01:00
David Larlet
b25bb16858
Merge pull request #1455 from jschleic/tooltip-and-headline
Unify tooltip and headline and add the corresponding icon
2023-12-14 14:26:06 -05:00
Yohan Boniface
0852077634 Use bounds instead of center when zooming to Polyline/Polygon
Here is the initial issue:
- when using defaultView=latest (means latest element of the default layer)
- when map loads, we find the element, call getCenter to center the map on it
- but Polygon/Polyline needs the element to be already on the map to call
  this method (at least because the map CRS is needed)

So while trying to fix that issue, I also found that using a centroid for
a complex geometry was not very friendly: the map zoom on a part of this
geometry, while it seems to be that it's better to have a full view of it.
Now that we highlight the selected element, it's also easier to get which
element is focused when there are a lot close one to the others.
2023-12-14 15:45:43 +01:00
Yohan Boniface
d93a963e1f Wait for data to be loaded before opening the data browser
We need the map bounds to compute the isOnScreen check
2023-12-14 15:20:59 +01:00
Yohan Boniface
8ce09b039f
Merge pull request #1458 from umap-project/fix-datachanged
Make sure DataLayer._dataloaded is set only once all data is imported
2023-12-12 10:20:54 +01:00
Joachim Schleicher
e020a3656c finetune
* left align share icon
* add light tilelayer icon in "view" mode
2023-12-11 11:39:54 +01:00
Yohan Boniface
f54992c0e5 Make sure DataLayer._dataloaded is set only once all data is imported
When DataLayer._dataloaded is set, DataLayer.addLayer will send 'datachanged'
event (for once for each feature). When the data browser panel is open, the
browser is listening to 'datachanged' to rebuild itself.

Not sure this is the real final fix, but that may need more refactoring, so
I think this approach is already a better situation than the current.

fix #1457
2023-12-11 10:36:39 +01:00
Joachim Schleicher
259a002705 fix picto tests 2023-12-09 20:32:07 +01:00
Joachim Schleicher
20bbbbad0c fixup tests 2023-12-08 21:47:11 +01:00
Joachim Schleicher
69939ec2a3 add title and heading to layer and tilelayer 2023-12-08 21:11:19 +01:00
Joachim Schleicher
3b89c22c23 add title and icon to buttons
* search and share icons on the left get an `title` attribute
* all panels start with an `h3` headline including the corresponding icon
* thus add smaller versions of the 24px-icons to 16.svg or 16-white.svg
* unify strings for button and headline to match
2023-12-08 21:11:19 +01:00
Yohan Boniface
7ef3fb2caa
Merge pull request #1445 from umap-project/importer-class
Make it easier to open file dialog
2023-12-08 06:48:38 +01:00
Yohan Boniface
50da2c0e1c Add integration test for textarea import 2023-12-05 14:28:11 +01:00
Yohan Boniface
c62c327878 Importer: call showPicker only on openFiles, not at each open
This allows to open the files dialog with Ctrl+O
2023-12-05 12:59:49 +01:00
David Larlet
1bfbde320c Add working showPicker to open files dialog 2023-12-05 12:59:49 +01:00
Yohan Boniface
67f6fa7587 Add non working ways to focus the importer file input 2023-12-05 12:59:49 +01:00
Yohan Boniface
42906ea8b4 Add non working way to open files dialog 2023-12-05 12:59:49 +01:00
Yohan Boniface
84b5e2188a Move importer panel to a separate class 2023-12-05 12:59:43 +01:00
3st3ban3
daeaf093f1 fix: no data in facet filters when set as default panel 2023-12-03 17:45:17 +01:00
Yohan Boniface
d928028a97 Allow to control the interactive flag from the layer
This flag deactivate all interactions for a path. It can be useful
when some polygon is used to delimitate an area on the map, but
when we don't want this area to be clickable.

I've a case where I've many of those polygons in a given map, and
they are imported, so I don't want to go one by one to deactivate it.
2023-12-02 10:13:35 +01:00
Yohan Boniface
e251c84298
Merge pull request #1442 from umap-project/log-tilelayer-error
Log error when loading tilelayer
2023-11-29 18:10:01 +01:00
Yohan Boniface
9b28a48c9b
Merge pull request #772 from umap-project/optimistic-merge
Optimistic conflicts resolution mecanism
2023-11-29 17:56:17 +01:00
Yohan Boniface
312863b2d4
Merge pull request #1443 from umap-project/minimap-style
Use map style options to style minimap bbox rectangle
2023-11-29 17:51:40 +01:00
Yohan Boniface
7591031e63 Add integration tests covering basic polygon drawing 2023-11-29 17:34:12 +01:00
Yohan Boniface
64e90bb4c1 Add integrations tests covering basic line creation 2023-11-29 17:26:01 +01:00
Yohan Boniface
60c002f94a Call commitDrawing instead of stopDrawing on ESC
fix #1428
2023-11-29 16:32:22 +01:00
Yohan Boniface
f8d2ecdd32 Use map style options to style minimap bbox rectangle
Ref:

https://forum.openstreetmap.fr/t/option-dexport-mini-carte/19223/6
2023-11-29 16:15:33 +01:00
Yohan Boniface
7a78645055 Log error when loading tilelayer
I see this message from time to time, but I've no details so I
cannot investigate easily. Let's log the error to help.
2023-11-29 15:49:17 +01:00
f37ed700f6 [feat] add a simple conflict resolution mecanism.
The server tries to merge conflicting saves of
the same layer.

What it does:

- use the `If-Unmodified-Since` header to check
  if changes happened to the stored data ;
- Compare the incoming version with its reference version
  to get a diff.
- Reapply the diff on top of the latest version.
- If the merge is not possible, return a
  "422 Conflict" HTTP response.
- If the merge worked, return the merged document,
  to be updated by the client.
2023-11-29 13:04:24 +01:00
Yohan Boniface
34e0461ca8 Run prettier on umap.layer.js 2023-11-28 15:28:57 +01:00
Yohan Boniface
fc2b7e5d4b
Merge pull request #1438 from umap-project/table-fullwidth
Always use fullwidth table editor
2023-11-28 08:47:06 +01:00
Yohan Boniface
b716530f99 Remove '|' from label, now added in CSS
(Since #1422)
2023-11-27 22:44:35 +01:00
Yohan Boniface
d47c6f3214 Always use fullwidth table editor
Adding a property when table is not in fullwidth is buguish, so
let's make it simple.

In the future, we'd replace this table editor with a dedicated lib.

cf #1363
2023-11-27 22:43:14 +01:00
Yohan Boniface
c34e39319e Mention more keyboard shortcuts
cf #1436
2023-11-27 20:24:50 +01:00
Yohan Boniface
f274b39fc9 Fix slideshow buttons not show when facets are active
cf #1422
2023-11-27 16:39:42 +01:00
Yohan Boniface
35ff0dd7ce 1.11.1 2023-11-27 09:50:41 +01:00
Yohan Boniface
c36696cc31 i18n 2023-11-27 09:34:17 +01:00
Yohan Boniface
ab2bb6bb5c
Merge pull request #1419 from umap-project/stop-drag
Prevent dragging a datalayer to activate drag on the map
2023-11-26 21:59:16 +01:00
Yohan Boniface
3d7f87354b
Merge pull request #1420 from umap-project/restore-button
Restore style of "restore version button"
2023-11-26 21:58:58 +01:00
Yohan Boniface
84d7c8771e
Merge pull request #1432 from umap-project/locate-easing
Set map default center even if waiting for user location
2023-11-26 21:58:36 +01:00
Yohan Boniface
25a61f1808 Reset increasing icon text size
There are some usage with 5 chars that do not fit anymore.
Let's reset for now and maybe introduce later a way for the user
to configure the size
2023-11-26 17:17:19 +01:00
Yohan Boniface
4347d40e64 Set map default center even if waiting for user location
There is an edge case when using "locate" a default view AND
activating easing for transitions: in this case, Leaflet.locate needs
a  "starting view" to compute the easing to the new position (the
user location).

I could have only set the default_view when easing is on, but I
thought it was simpler to just set it anyway…
2023-11-26 11:13:56 +01:00
aff0181636 [style] Format the code 2023-11-24 23:31:18 +01:00
72b0bc44ad [chore] remove python2 imports 2023-11-24 23:31:18 +01:00
35dc1acb07 [fix] Use timezone aware datetimes 2023-11-24 23:31:18 +01:00
51c3ee3ce4 [ci] Add support for Github Actions
This runs the tests for different python versions,
with different working sets, and also run
a linter.
2023-11-24 23:31:18 +01:00
David Larlet
56bb414113
Provide space/separators between Dashboard actions 2023-11-24 15:32:44 -05:00
David Larlet
b4464a7ca2
Reuse the map_download view/url for the dashboard
Refs #1396
2023-11-24 15:28:58 -05:00
Yohan Boniface
1b87df7a7f
Merge pull request #1422 from umap-project/slideshow-buttons
Restore missing buttons in caption bar
2023-11-23 21:22:09 +01:00
Yohan Boniface
09903a8808
Merge pull request #1425 from umap-project/blue-links
But back blue links in popup and small credit
2023-11-23 17:37:45 +01:00
Yohan Boniface
e891ed61dd But back blue links in popup and small credit
fix #1418
2023-11-23 17:19:31 +01:00
Yohan Boniface
42ebe43698 Add minimal playwright test case for slideshow 2023-11-23 14:53:52 +01:00
Yohan Boniface
9781f6eb9c Restore missing buttons in caption bar
Those button, being width: 100% and display: block were not displayed
AND were pushing out also the slideshow buttons.
2023-11-23 13:07:18 +01:00
Yohan Boniface
4936a97218 Use step=any by default for FloatInput
This is fixed in Leaflet.FormBuilder itself
2023-11-23 12:29:52 +01:00
Yohan Boniface
fd2fb2a405 Restore style of "restore version button" 2023-11-23 11:00:35 +01:00
Yohan Boniface
0c99bc45a8 Prevent dragging a datalayer to activate drag on the map 2023-11-23 10:00:02 +01:00
Yohan Boniface
160c4ae420 Do not exclude DEMO and SHOWCASE maps anymore from home
Those maps can be excluded by setting their share_status=OPEN

cf #1414
2023-11-21 10:15:31 +01:00
Yohan Boniface
37430ec159 1.11.0 2023-11-20 11:34:14 +01:00
Yohan Boniface
9fca9861dd i18n 2023-11-20 11:30:56 +01:00
Yohan Boniface
ed99a3642f Rename test 2023-11-20 11:27:44 +01:00
Yohan Boniface
9af5375dbf Fix heavy request for getting user maps
This was creating a huge INNER JOIN, and is replaced
by a UNION

cf https://explain.dalibo.com/plan/91af244fg9d1ec21

Also remove the conditional queryset, as now "my maps"
is serverd by the dashboard page, so we can only serve
public maps on this URL.
2023-11-18 20:09:19 +01:00
Yohan Boniface
0db7f377c3
Merge pull request #1395 from umap-project/picto-ui
Refactor icon selector: use tabs, make options more explicit
2023-11-18 12:13:14 +01:00
Yohan Boniface
c99892b51e Picto field: fix clicking on preview to open the form 2023-11-16 11:46:49 +01:00
Yohan Boniface
cdfcce297d picto field: better handling of default input values
We don't want to have an URL in the "char" field, and vice versa
2023-11-16 10:31:40 +01:00
Yohan Boniface
c581172197 Make icons search accent insensitive 2023-11-15 21:06:40 +01:00
David Larlet
13ca7e3e5d
Add tests for favicon-related views 2023-11-15 14:13:33 -05:00
Yohan Boniface
8a2109948f Picto field: add hover and selected style 2023-11-15 18:15:30 +01:00
Yohan Boniface
9d30e150a3
Merge pull request #1409 from umap-project/form-button-css
More targeted CSS rule for button color
2023-11-15 18:00:37 +01:00
Yohan Boniface
5aa7ea6a7f More targeted CSS rule for button color
Otherwise it override forms button (which are in dark mode and thus
need to keep the clear grey color)
2023-11-15 17:51:35 +01:00
Yohan Boniface
fdbf814fac Fix accordion arrow not displayed on Chromium 2023-11-15 16:54:20 +01:00
Yohan Boniface
91ea6ac318
Merge branch 'master' into highlight-style-for-selected-lines 2023-11-15 16:05:56 +01:00
Yohan Boniface
a850900891
Merge pull request #1407 from jschleic/fix-lineedit-icons
fix icons
2023-11-15 15:59:23 +01:00
Yohan Boniface
be0cefd02a
Merge pull request #1396 from umap-project/backup-api
Full map download endpoint
2023-11-15 15:39:36 +01:00
David Larlet
0a8848874c
Remove the static webmanifest (dynamic now) 2023-11-14 22:51:34 -05:00
David Larlet
6f73038f92
Redirect favicon.ico and dynamic webmanifest 2023-11-14 22:50:25 -05:00
David Larlet
915d6b6db4
Set a default favicon 2023-11-14 17:32:40 -05:00
Joachim Schleicher
637c982add fix icons
probably moved accidentally in c8065fb29e
2023-11-14 21:20:00 +01:00
Joachim Schleicher
34bb2d6eb8 fix null opacity
partly revert 952385 - since ´null´ is actually used in ternary fields.
Remove null opacity from the testcase. It should be either unset or a
numeric value.
2023-11-14 20:48:11 +01:00
David Larlet
bf4e481f28
Fix download umap data JS tests 2023-11-14 14:19:54 -05:00
David Larlet
2274243662
Fix integration tests for download view 2023-11-14 14:10:25 -05:00
David Larlet
30e83a143c
Tests download view for permissions 2023-11-14 13:37:02 -05:00
David Larlet
97fa8c2754
Allow the ?download option in URL 2023-11-14 13:26:52 -05:00
Yohan Boniface
4bfc3d6666 Picto field: make sure we open on the right tab 2023-11-14 18:45:40 +01:00
David Larlet
3a0bcd76da
Align link styles to button ones 2023-11-14 12:16:47 -05:00
Yohan Boniface
686ce1fe2d
Merge pull request #1403 from umap-project/fix-1400
Fix next/previous in popup footer in panel not openning next panel
2023-11-14 18:15:36 +01:00
David Larlet
207c47d078
Button to download umap backup from backend url 2023-11-14 12:07:17 -05:00
David Larlet
0be42d39cb
Full map download endpoint 2023-11-14 12:07:17 -05:00
David Larlet
bdd7ad17e6
Improve buttons’ contrasts on the homepage #a11y 2023-11-14 11:59:03 -05:00
Yohan Boniface
6602491511
Merge pull request #1405 from umap-project/almet/speedup-tests
Speedup the tests by using a weaker hash algo.
2023-11-14 17:51:17 +01:00
3cc5d3b2af Speedup the tests by using a weaker hash algo.
On my machine, it reduced the time to run the
test suite from 86s to 53s.

(Most of the remaining time is consumed by the
integration tests spawning chrome in the background)
2023-11-14 17:45:14 +01:00
Yohan Boniface
9e33144d34 Fix next/previous in popup footer in panel not openning next panel
fix #1400
cf #1240
2023-11-13 21:12:53 +01:00
Yohan Boniface
5267d3e9b8 Fix wrong css selector for umap-alert-container elements
umap-alert is set on the body to show/hide the alert container

fix #1398
2023-11-13 20:36:48 +01:00
Yohan Boniface
35afd02551 Increase pictogram category title font size 2023-11-13 19:55:37 +01:00
Yohan Boniface
7810cba660 Test: reset MEDIA_ROOT after each test
We need uploaded pictograms path to be deterministic.
2023-11-13 19:28:30 +01:00
Yohan Boniface
0562055b65 Picot fied: add test for changing picto from marker itself 2023-11-13 19:28:07 +01:00
Yohan Boniface
eaf6c17db4 Picto field: only add category when at least one picto matches search 2023-11-13 17:11:40 +01:00
Yohan Boniface
2026a2c7e6 picto field: only add close button once 2023-11-13 17:02:35 +01:00
Yohan Boniface
00a13acb83 Add test covering changing picto from the datalayer 2023-11-13 16:58:54 +01:00
Yohan Boniface
d63d81fec3 Refactor icon search 2023-11-09 08:31:24 +01:00
Yohan Boniface
e509687956 Add first test for pictogram selection 2023-11-09 00:02:44 +01:00
Yohan Boniface
1bf1543668 Refactor icon selector: use tabs, make options more explicit 2023-11-08 18:00:12 +01:00
Yohan Boniface
c16a01778b
Merge pull request #1393 from umap-project/fieldset-triangle
Add triangle icon to form fieldset to make toggle clearer
2023-11-07 22:39:00 +01:00
Yohan Boniface
09fda11242 Use smaller triangles for fieldsets 2023-11-07 19:24:05 +01:00
Yohan Boniface
41f5a51069 Change background in pictograms list 2023-11-07 19:09:37 +01:00
Yohan Boniface
3034ebc50b
Merge pull request #1388 from umap-project/pictogram-category
Pictogram category
2023-11-07 18:01:15 +01:00
Yohan Boniface
03b837ade6 Add triangle icon to form fieldset to make toggle clearer 2023-11-07 17:57:10 +01:00
Joachim Schleicher
952385b1cd default fill-opacity for polygons
'null' is not a sensible default
2023-11-01 15:55:06 +01:00
Joachim Schleicher
af969eb5c0 incorporate review feedback for markers
* drop and div marker increased to 36px size
* adjust drop arrow accordingly
* black box-shadow with increased spread
2023-11-01 14:32:09 +01:00
Yohan Boniface
407e2dc46a Fix race condition with cluster layer
This occurs when the cluster layer has a min/maxZoom defined, the
map is loaded inside this zoom range BUT the defaultView=data, and
would immediately change the current zoom to a value outside this range.

In this case, the datalayer is added to the map, then the data is requested,
then the map view is recomputed with the full data bounds.

There may be a better fix on our side, but given there is async in the middle,
it can be time consuming and can add complexity (with more events and listeners)
to properly make it work.
2023-11-01 10:49:31 +01:00
Yohan Boniface
e9deaab2bc i18n 2023-11-01 08:17:56 +01:00
Yohan Boniface
402455c494 Change edit toolbar secondary button style 2023-10-31 17:57:01 +01:00
Yohan Boniface
5d410c94e3 Update save button style 2023-10-31 17:28:42 +01:00
Yohan Boniface
37094ec6df Update white eye closed 2023-10-31 16:32:54 +01:00
Yohan Boniface
f61f1415ce Update pictograms import script to deal with category and SVG 2023-10-30 21:35:22 +01:00
Yohan Boniface
8c774fb7b3 Add Pictogram.category and list pictos grouped by category 2023-10-30 21:07:55 +01:00
Yohan Boniface
b10838c5ba Automagically change svg icon color according to background color 2023-10-30 18:14:41 +01:00
Yohan Boniface
b6aa201397 Use FileField instead of ImageField for pictogram to allow SVG 2023-10-30 12:45:05 +01:00
Yohan Boniface
e5c616b49c Fix tests 2023-10-27 20:51:50 +02:00
Yohan Boniface
c578decdec 1.10.0 2023-10-27 20:09:42 +02:00
Yohan Boniface
40addf2ce4 i18n 2023-10-27 20:06:37 +02:00
David Larlet
539175f89c
Default message when drawing an existing line/shape 2023-10-27 13:49:26 -04:00
David Larlet
4250712741
More consistent color for close button in alert 2023-10-27 13:40:44 -04:00
David Larlet
bfd4b96807
Better responsive alignment of topbar icons and texts 2023-10-27 13:37:17 -04:00
David Larlet
c25de24009
Fix the bottom padding of help button in topbar 2023-10-27 13:24:12 -04:00
David Larlet
0c4495e356
Fix the z-index of the tooltip above sidepanel 2023-10-27 13:19:47 -04:00
David Larlet
a79e165de1
Fix position of pencil for deactivated layers 2023-10-27 13:18:19 -04:00
Yohan Boniface
8773a63e90
Merge pull request #1386 from umap-project/update-eye-icon
Update eye icon
2023-10-27 19:12:33 +02:00