39 Commits

Author SHA1 Message Date
Martin Raifer
85022dcc6c render operations texts with lang attribute 2022-06-23 19:23:16 +02:00
Quincy Morgan
64ec6424db Enable additional eslint rules, including no-useless-concat 2020-10-23 11:12:47 -04:00
Quincy Morgan
a1c2b7f73d Support language-specific pluralization (re: #597, #4964) 2020-09-14 17:21:00 -04:00
Quincy Morgan
5f93da5a59 Add a reusable function for calculating the combined extent of multiple entities (re: #7706) 2020-06-16 13:17:43 -04:00
Quincy Morgan
02f8849bd0 Properly disable more operations for single nodes that aren't visible 2020-06-05 14:22:50 -04:00
Quincy Morgan
db9eed2434 Move the edit menu logic to uiInit
Make context the first argument of operation objects
Add Paste operation to edit menu when opening the context menu on a blank area of the map (close #2508)
2020-05-14 15:49:35 -04:00
Quincy Morgan
a1af118f0e Ensure locales and presets are loaded before the UI loads (close #7406)
Consolidate localization behavior and init to a coreLocalizer function and singleton
Explicitly support `en-US` locale
Rename coreData to coreFileFetcher and export a singleton rather than using a property of coreContext
Add `apiConnections` property of coreContext to simplify adding a source switcher
Replace some init functions with re-callable, promise-supporting `ensureLoaded` functions
Make coreContext itself load the UI if a container has been specified at init time
Fix code tests
2020-03-31 12:23:31 -07:00
Quincy Morgan
6087aae21f Remove map convenience functions of context 2020-03-22 10:57:17 -07:00
Quincy Morgan
3c0b926ec7 Replace coreContext.geometry function with a more explicit coreGraph.geometry function 2020-03-21 14:23:44 -07:00
Quincy Morgan
d1ad5a431f Don't check if data is downloaded for operations in the walkthrough 2019-05-10 12:44:02 -04:00
Bryan Housel
901cab57da Remove _disabled caches for operations
(re: #6296, reverts 81127d7)
see https://github.com/openstreetmap/iD/issues/6296#issuecomment-489259027
(I'll find another way to deal with the menu not matching the tooltip)
2019-05-07 10:32:12 -04:00
Bryan Housel
966f5c3586 Add explicit validation calls to each operation
This is cleaner than adding hooks to transitionable actions, or performing validation
on every history change.  We want validation to run after each operation, but not
while the user is drawing lines or typing in fields.
2019-05-06 14:49:46 -04:00
Quincy Morgan
e71470acf6 Remove disabled state cacheing for the delete operation 2019-05-03 13:31:28 -07:00
Quincy Morgan
d01bb78707 Reduce circular dependencies caused by importing from indexes, the location of the validation models, and the location of areaKeys (close #6237) 2019-04-24 13:45:59 -07:00
Bryan Housel
f309e925d8 Memoize disabled for all the other operations too
see 81127d71f
2019-04-10 11:28:41 -04:00
Bryan Housel
df1a2ea361 Prevent some actions on features that extend beyond the loaded map
(closes #2248)
2019-04-08 21:26:58 -04:00
Quincy Morgan
4cc8d796a6 Prevent deleting features with Wikidata tags (close #5853) 2019-03-27 16:02:02 -04:00
Bryan Housel
7e6f68a1b2 Remove lodash some
(re: #6087)
2019-03-23 00:07:52 -04:00
Bryan Housel
710a075a90 When deleting final nodes from a way, pan to final node's location
(closes #4541)
2017-11-20 16:16:33 -05:00
Bryan Housel
3def4db09f Convert lodah-es and d3 to named imports for operations 2017-09-25 13:58:53 -04:00
Bryan Housel
6f4d490c6f Prevent delete of objects when not 80% visible
(closes #3700)
2017-03-10 22:45:42 -05:00
Bryan Housel
e756520bd8 suppressMenu(true) is now the default 2017-02-21 15:47:22 -05:00
Bryan Housel
2ce78d6c43 Call annotation as a function instead of a property
This is because, like tooltip(), it doesn't always make sense to call it,
and it should never get called if the operation is not available.
2017-02-15 23:02:13 -05:00
Bryan Housel
028ef3de3f Expose annotations for each operation 2017-02-15 22:01:30 -05:00
Bryan Housel
37534aed0e More cleanup of operations and post-paste behavior
* Support move, rotate, reflect, delete post paste on multiselection
* Improve text and error msgs for singular vs multi selections
* Move `disabled` checks from actions to operations
* Reproject center of rotation (closes #3667)
* Cleanup tests
2016-12-21 23:58:13 -05:00
Bryan Housel
087a8c62d1 Behaviors for all Operations 2016-12-20 00:28:24 -05:00
Bryan Housel
dc5da7b480 Follow next vertex when deleting, add suppressMenu when vertex following 2016-12-09 12:11:24 -05:00
Bryan Housel
3abf1b5be8 Allow reselection of next vertex even if vertex has multiple parents 2016-12-09 11:57:26 -05:00
Bryan Housel
a55ab036aa Don't assume that all the ids in selectedIDs are valid
(This is becuse they might have been deleted in a delete operation
and we are immediately redrawing the results of that operation before
reselecting something else)
2016-12-09 11:46:22 -05:00
Bryan Housel
e83b2ea2be Allow delete key without modifier as shortcut for deleting
(closes #3455)

Also fixed a minor bug in `iD.uiCmd` that was causing keyboard shortcuts
like '⌘⌫' to convert to 'Ctrl+Backspace+'  (note extra trailing '+')
It affected only the tooltip display, not the key event binding.
2016-10-24 23:57:44 -04:00
Bryan Housel
3102a4ae6a Rename all the things to include pseudonamespaces 2016-10-04 19:06:20 -04:00
Bryan Housel
a86f34b4ef Pacify eslint, get build and tests running again 2016-08-26 01:15:07 -04:00
Tom MacWright
af776501d3 Require locale, second pass (#3259)
* Require locale, second pass

* Remove t global, remove t where it isn't needed
2016-07-21 16:20:13 -04:00
Tom MacWright
604d1e2719 import lodash (#3257) 2016-07-19 12:04:16 -04:00
Kushan Joshi
39c82af158 Sort modules [eslint rule] 2016-07-06 12:12:08 +05:30
Kushan Joshi
780960c711 interim 2016-07-06 00:34:35 +05:30
Kushan Joshi
9f2a251d31 Fixing Interdependecy between ui.preset and ui.core 2016-07-02 16:00:52 +05:30
Kushan Joshi
52c466bc27 external modules for operations 2016-06-22 12:34:43 +05:30
Kushan Joshi
2db0f636b1 modularize iD.operations 2016-06-16 00:42:43 +05:30