X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/555a821c3e1b79093b63b96e981c4766cf43baa9..424b6ef1cf760c4a3e27ac1e6f612ae42a9cd493:/vendor/assets/iD/iD.css.erb diff --git a/vendor/assets/iD/iD.css.erb b/vendor/assets/iD/iD.css.erb index 5066b7ab2..75ea2d0ac 100644 --- a/vendor/assets/iD/iD.css.erb +++ b/vendor/assets/iD/iD.css.erb @@ -161,29 +161,68 @@ input::-moz-focus-inner { .cf:after { clear: both; } - -use { pointer-events: none; } - /* base styles */ -.layer-osm path:not(.oneway) { fill: none; } /* IE needs :not(.oneway) */ +.layer-osm path:not(.oneway-marker-path) { /* IE/Edge needs :not(.oneway) */ + fill: none; +} +.layer-osm path.viewfield-marker-path { /* IE/Edge rule for marker style */ + fill: #333; + fill-opacity: 0.75; + stroke: #fff; + stroke-width: 0.5px; + stroke-opacity: 0.75; +} +.fill-wireframe .layer-osm path.viewfield-marker-path { /* IE/Edge rule for marker style */ + fill: none; +} /* the above fill: none rule affects paths in shadow dom only in Firefox */ .layer-osm use.icon path { fill: #333; } /* FF svg Maki icons */ .layer-osm .turn use path { fill: #000; } /* FF turn restriction icons */ -#turn-only-shape2, #turn-only-u-shape2 { fill: #7092FF; } /* FF turn-only, turn-only-u */ -#turn-no-shape2, #turn-no-u-shape2 { fill: #E06D5F; } /* FF turn-no, turn-no-u */ -#turn-yes-shape2, #turn-yes-u-shape2 { fill: #8CD05F; } /* FF turn-yes, turn-yes-u */ +#turn-only-shape2, #turn-only-u-shape2 { fill: #7092ff; } /* FF turn-only, turn-only-u */ +#turn-no-shape2, #turn-no-u-shape2 { fill: #e06d5f; } /* FF turn-no, turn-no-u */ +#turn-yes-shape2, #turn-yes-u-shape2 { fill: #8cd05f; } /* FF turn-yes, turn-yes-u */ -g.point .shadow, -g.vertex .shadow, -g.midpoint .shadow { - pointer-events: all; + +/* No interactivity except what we specifically allow */ +.layer-osm * { + pointer-events: none; } -path.shadow { +/* `.target` objects are interactive */ +/* They can be picked up, clicked, hovered, or things can connect to them */ +.node.target { + pointer-events: fill; + fill-opacity: 0.8; + fill: currentColor; + stroke: none; +} + +.way.target { pointer-events: stroke; + fill: none; + stroke-width: 12; + stroke-opacity: 0.8; + stroke: currentColor; + stroke-linecap: round; + stroke-linejoin: round; +} + +/* `.target-nope` objects are explicitly forbidden to join to */ +.surface:not(.nope-disabled) .node.target.target-nope, +.surface:not(.nope-disabled) .way.target.target-nope { + cursor: not-allowed; +} + + +/* `.active` objects (currently being drawn or dragged) are not interactive */ +/* This is important to allow the events to drop through to whatever is */ +/* below them on the map, so you can still hover and connect to other things. */ +.layer-osm .active { + pointer-events: none !important; } + /* points */ g.point .stroke { @@ -208,10 +247,6 @@ g.point.selected .shadow { stroke-opacity: 0.7; } -g.point.active, g.point.active * { - pointer-events: none; -} - g.point ellipse.stroke { display: none; } @@ -251,28 +286,6 @@ g.midpoint .shadow { fill-opacity: 0; } -g.vertex.vertex-hover { - display: none; -} - -.mode-draw-area g.vertex.vertex-hover, -.mode-draw-line g.vertex.vertex-hover, -.mode-add-area g.vertex.vertex-hover, -.mode-add-line g.vertex.vertex-hover, -.mode-add-point g.vertex.vertex-hover, -.mode-drag-node g.vertex.vertex-hover { - display: block; -} - -.mode-draw-area .hover-disabled g.vertex.vertex-hover, -.mode-draw-line .hover-disabled g.vertex.vertex-hover, -.mode-add-area .hover-disabled g.vertex.vertex-hover, -.mode-add-line .hover-disabled g.vertex.vertex-hover, -.mode-add-point .hover-disabled g.vertex.vertex-hover, -.mode-drag-node .hover-disabled g.vertex.vertex-hover { - display: none; -} - g.vertex.related:not(.selected) .shadow, g.vertex.hover:not(.selected) .shadow, g.midpoint.related:not(.selected) .shadow, @@ -284,13 +297,6 @@ g.vertex.selected .shadow { fill-opacity: 0.7; } -.mode-draw-area g.midpoint, -.mode-draw-line g.midpoint, -.mode-add-area g.midpoint, -.mode-add-line g.midpoint, -.mode-add-point g.midpoint { - display: none; -} /* lines */ @@ -301,7 +307,7 @@ g.vertex.selected .shadow { path.line { stroke-linecap: round; - stroke-linejoin: bevel; + stroke-linejoin: round; } path.stroke { @@ -333,8 +339,7 @@ path.line.stroke { /* Labels / Markers */ text { - font-size:10px; - pointer-events: none; + font-size: 10px; color: #222; opacity: 1; } @@ -343,11 +348,11 @@ text { fill: #002F35; } -path.oneway { +.onewaygroup path.oneway, +.viewfieldgroup path.viewfield { stroke-width: 6px; } - text.arealabel-halo, text.linelabel-halo, text.pointlabel-halo, @@ -359,7 +364,6 @@ text.pointlabel { font-size: 12px; font-weight: bold; fill: #333; - pointer-events: none; -webkit-transition: opacity 100ms linear; transition: opacity 100ms linear; -moz-transition: opacity 100ms linear; @@ -373,14 +377,14 @@ text.pointlabel { dominant-baseline: auto; } -.layer-halo text { +.layer-labels-halo text { opacity: 0.7; stroke: #fff; stroke-width: 5px; stroke-miterlimit: 1; } -text.proximate { +text.nolabel { opacity: 0; } @@ -410,8 +414,8 @@ g.turn circle { } .form-field-restrictions .vertex { - pointer-events: none; cursor: auto !important; + pointer-events: none; } .lasso #map { @@ -425,15 +429,30 @@ g.turn circle { } path.gpx { - stroke: #FF26D4; + stroke: #ff26d4; stroke-width: 2; fill: none; } -text.gpx { - fill: #FF26D4; +text.gpxlabel-halo, +text.gpxlabel { + font-size: 10px; + font-weight: bold; + dominant-baseline: middle; +} + +text.gpxlabel { + fill: #ff26d4; +} + +text.gpxlabel-halo { + opacity: 0.7; + stroke: #000; + stroke-width: 5px; + stroke-miterlimit: 1; } + /* Default - light gray */ path.area.stroke { stroke: #ddd; @@ -944,6 +963,7 @@ path.casing.tag-unclassified { /* narrow highways */ path.shadow.tag-highway-living_street, +path.shadow.tag-highway-bus_guideway, path.shadow.tag-highway-service, path.shadow.tag-highway-track, path.shadow.tag-highway-road, @@ -954,6 +974,7 @@ path.shadow.tag-road { stroke-width: 16; } path.casing.tag-highway-living_street, +path.casing.tag-highway-bus_guideway, path.casing.tag-highway-service, path.casing.tag-highway-track, path.casing.tag-highway-road, @@ -964,6 +985,7 @@ path.casing.tag-road { stroke-width: 7; } path.stroke.tag-highway-living_street, +path.stroke.tag-highway-bus_guideway, path.stroke.tag-highway-service, path.stroke.tag-highway-track, path.stroke.tag-highway-road, @@ -1024,6 +1046,7 @@ path.stroke.tag-steps { } .low-zoom path.shadow.tag-highway-living_street, +.low-zoom path.shadow.tag-highway-bus_guideway, .low-zoom path.shadow.tag-highway-service, .low-zoom path.shadow.tag-highway-track, .low-zoom path.shadow.tag-highway-road, @@ -1034,6 +1057,7 @@ path.stroke.tag-steps { stroke-width: 12; } .low-zoom path.casing.tag-highway-living_street, +.low-zoom path.casing.tag-highway-bus_guideway, .low-zoom path.casing.tag-highway-service, .low-zoom path.casing.tag-highway-track, .low-zoom path.casing.tag-highway-road, @@ -1044,6 +1068,7 @@ path.stroke.tag-steps { stroke-width: 5; } .low-zoom path.stroke.tag-highway-living_street, +.low-zoom path.stroke.tag-highway-bus_guideway, .low-zoom path.stroke.tag-highway-service, .low-zoom path.stroke.tag-highway-track, .low-zoom path.stroke.tag-highway-road, @@ -1174,15 +1199,19 @@ path.casing.tag-service { stroke:#666; } +/* special service roads and bus guideways */ /* with `service=* tag` (e.g. parking_aisle, alley, drive-through */ +.preset-icon .icon.highway-bus_guideway, .preset-icon .icon.highway-service.tag-service { color: #dcd9b9; fill: #666; } +path.stroke.tag-highway-bus_guideway, path.stroke.tag-highway-service.tag-service, path.stroke.tag-service.tag-service { stroke: #dcd9b9; } +path.casing.tag-highway-bus_guideway, path.casing.tag-highway-service.tag-service, path.casing.tag-service.tag-service { stroke: #666; @@ -1493,11 +1522,15 @@ path.stroke.tag-railway-subway { /* railway platforms - like sidewalks */ +.preset-icon .icon.highway-footway.tag-railway-platform { + color: #ae8681; + fill: #dcd9b9; +} path.shadow.tag-railway-platform { stroke-width: 16; } path.casing.tag-railway-platform { - stroke: #fff; + stroke: #dcd9b9; stroke-width: 5; stroke-linecap: round; stroke-dasharray: none; @@ -1535,6 +1568,7 @@ g.midpoint.tag-railway-platform .fill { } .preset-icon .icon.category-water, .preset-icon .icon.tag-route-ferry, +.preset-icon .icon.tag-type-waterway, .preset-icon .icon.tag-waterway { color: #77d3de; fill: #fff; @@ -1835,6 +1869,11 @@ path.fill.tag-amenity-shelter { } /* Cursors */ +.nope, +.nope * { + cursor: not-allowed !important; +} + .map-in-map, #map { cursor: auto; /* Opera */ @@ -1884,16 +1923,6 @@ path.fill.tag-amenity-shelter { cursor: url(<%= asset_path("iD/img/cursor-select-remove.png") %>), pointer; /* FF */ } -#map .point:active, -#map .vertex:active, -#map .line:active, -#map .area:active, -#map .midpoint:active, -#map .mode-select .selected { - cursor: pointer; /* Opera */ - cursor: url(<%= asset_path("iD/img/cursor-select-acting.png") %>), pointer; /* FF */ -} - .mode-draw-line #map, .mode-draw-area #map, .mode-add-line #map, @@ -1936,123 +1965,248 @@ path.fill.tag-amenity-shelter { .turn rect, .turn circle { - cursor: pointer; /* Opera */ - cursor: url(<%= asset_path("iD/img/cursor-pointer.png") %>) 6 1, pointer; /* FF */ + cursor: pointer; +} +/* photo viewer div */ +#photoviewer { + position: absolute; + bottom: 30px; + width: 330px; + height: 250px; + padding: 5px; + background-color: #fff; } -/* Mapillary Image Layer */ -.layer-mapillary-images { - pointer-events: none; +#photoviewer button.thumb-hide { + border-radius: 0; + padding: 5px; + position: absolute; + right: 0; + top: 0; + z-index: 48; +} + +.photo-wrapper, +.photo-wrapper img { + width: 100%; + height: 100%; + overflow: hidden; +} + +.photo-wrapper .photo-attribution { + width: 100%; + font-size: 10px; + text-align: right; + position: absolute; + bottom: 0; + right: 0; + padding: 4px 2px; + z-index: 10; } -.layer-mapillary-images .viewfield-group { +.photo-attribution a, +.photo-attribution a:visited, +.photo-attribution span { + padding: 4px 2px; + color: #fff; +} + +/* markers and sequences */ +.viewfield-group { pointer-events: visible; - cursor: pointer; /* Opera */ - cursor: url(<%= asset_path("iD/img/cursor-select-mapillary.png") %>) 6 1, pointer; /* FF */ + cursor: pointer; } -.layer-mapillary-images .viewfield-group * { - stroke-width: 1; - stroke: #444; - fill: #ffc600; - z-index: 50; +.viewfield-group.selected * { + fill: #ffee00 !important; +} +.viewfield-group.hovered * { + fill: #eebb00 !important; } -.layer-mapillary-images .viewfield-group:hover * { +.viewfield-group circle { + stroke: #555; stroke-width: 1; - stroke: #333; - fill: #ff9900; - z-index: 60; + stroke-opacity: 0.4; + fill-opacity: 0.4; } - -.layer-mapillary-images .viewfield-group.selected * { +.viewfield-group.highlighted circle { + stroke: #222; + stroke-opacity: 0.9; + fill-opacity: 0.9; +} +.viewfield-group.highlighted.hovered circle { + stroke: #222; stroke-width: 2; + stroke-opacity: 0.9; + fill-opacity: 0.9; +} +.viewfield-group.highlighted.selected circle { stroke: #222; - fill: #ff5800; - z-index: 60; + stroke-width: 2; + stroke-opacity: 1; + fill-opacity: 1; } -.layer-mapillary-images .viewfield-group:hover path.viewfield, -.layer-mapillary-images .viewfield-group.selected path.viewfield, -.layer-mapillary-images .viewfield-group path.viewfield { +.viewfield-group .viewfield { stroke-width: 0; - fill-opacity: 0.6; + stroke: #222; + fill-opacity: 0.4; +} +.viewfield-group.highlighted .viewfield { + stroke-width: 1; + fill-opacity: 0.8; +} +.viewfield-group.highlighted.hovered .viewfield { + stroke-width: 1; + fill-opacity: 0.8; +} +.viewfield-group.highlighted.selected .viewfield { + stroke-width: 1; + fill-opacity: 0.9; } -/* Mapillary Sign Layer */ +.viewfield-group.selected .viewfield-scale { + transform: scale(2,2); +} -.layer-mapillary-signs { +.sequence { + fill: none; + stroke-width: 2; + stroke-opacity: 0.4; +} +.sequence.highlighted, +.sequence.selected { + stroke-width: 4; + stroke-opacity: 1; +} + + +/* Mapillary Image Layer */ +.layer-mapillary-images { pointer-events: none; } +.layer-mapillary-images .viewfield-group * { + fill: #55ff22; +} +.layer-mapillary-images .sequence { + stroke: #55ff22; +} + +/* Mapillary Sign Layer */ +.layer-mapillary-signs { + pointer-events: none; +} .layer-mapillary-signs .icon-sign .icon-sign-body { min-width: 20px; height: 24px; width: 24px; outline: 2px solid transparent; pointer-events: visible; - cursor: pointer; /* Opera */ - cursor: url(<%= asset_path("iD/img/cursor-select-mapillary.png") %>) 6 1, pointer; /* FF */ - z-index: 70; + cursor: pointer; + z-index: 30; overflow: visible; } - .layer-mapillary-signs .icon-sign:hover .icon-sign-body { - outline: 2px solid rgba(255,198,0,0.8); - z-index: 80; + outline: 5px solid #eebb00; + background-color: #eebb00; + z-index: 70; } - .layer-mapillary-signs .icon-sign.selected .icon-sign-body { - outline: 2px solid rgba(255,0,0,0.8); - z-index: 80; + outline: 5px solid #ffee00; + background-color: #ffee00; + z-index: 40; +} + + +/* OpenStreetCam Image Layer */ +.layer-openstreetcam-images { + pointer-events: none; +} +.layer-openstreetcam-images .viewfield-group * { + fill: #77ddff; +} +.layer-openstreetcam-images .sequence { + stroke: #77ddff; } /* Mapillary viewer */ #mly .domRenderer .TagSymbol { font-size: 10px; - background-color: rgba(0, 0, 0, 0.4); + background-color: rgba(0,0,0,0.4); padding: 0 4px; border-radius: 4px; - transform: translate(-50%, -120%) !important; + top: -25px; } - #mly .domRenderer .Attribution { - width: 100%; - font-size: 10px; - text-align: right; + /* we will roll our own to avoid async update issues like #4526 */ + display: none; } -.mapillary-wrap { - position: absolute; - bottom: 30px; - width: 330px; - height: 250px; - padding: 5px; - background-color: #fff; +.mly-wrapper .photo-attribution a:active, +.mly-wrapper .photo-attribution a:hover { + color: #35af6d; } -.mapillary-wrap.hidden { - visibility: hidden; +.mly-wrapper .mapillary-js-dom { + z-index: 9; } -.mapillary-wrap button.thumb-hide { - border-radius: 0; - padding: 5px; - position: absolute; - right: 0; - top: 0; - z-index: 500; +/* OpenStreetCam viewer */ +.osc-wrapper { + position: relative; + background-color: #000; + background-image: url(<%= asset_path("iD/img/loader-black.gif") %>); + background-position: center; + background-repeat: no-repeat; +} + +.osc-wrapper .photo-attribution a:active, +.osc-wrapper .photo-attribution a:hover { + color: #77ddff; } -.mly-wrapper { - visibility: hidden; +.osc-controls-wrap { + text-align: center; + position: absolute; + top: 10px; width: 100%; - height: 100%; + z-index: 10; +} + +.osc-controls { + display: inline-block; + z-index: 10; +} + +.osc-controls button { + height: 18px; + width: 18px; + background: rgba(0,0,0,0.65); + color: #eee; + border-radius: 0; +} +.osc-controls button:first-of-type { + border-radius: 3px 0 0 3px; +} +.osc-controls button:last-of-type { + border-radius: 0 3px 3px 0; +} +.osc-controls button:hover, +.osc-controls button:active, +.osc-controls button:focus { + background: rgba(0,0,0,0.85); + color: #fff; } -.mly-wrapper.active { - visibility: visible; +.osc-image-wrap { + transform-origin:0 0; + -ms-transform-origin:0 0; + -webkit-transform-origin:0 0; + -moz-transform-origin:0 0; + -o-transform-origin:0 0; } /* Fill Styles */ @@ -2078,6 +2232,7 @@ path.fill.tag-amenity-shelter { } .fill-wireframe .point, +.fill-wireframe .vertex.active, .fill-wireframe .areaicon, .fill-wireframe .areaicon-halo, .fill-wireframe path.casing, @@ -2089,31 +2244,11 @@ path.fill.tag-amenity-shelter { .fill-partial path.area.fill { fill-opacity: 0; stroke-width: 60px; - pointer-events: visibleStroke; -} - -/* Modes */ - -.mode-draw-line .vertex.active, -.mode-draw-area .vertex.active, -.mode-drag-node .vertex.active { - display: none; -} - -.mode-draw-line .way.active, -.mode-draw-area .way.active, -.mode-drag-node .active { pointer-events: none; } - -/* Ensure drawing doesn't interact with area fills. */ -.mode-add-point path.area.fill, -.mode-draw-line path.area.fill, -.mode-draw-area path.area.fill, -.mode-add-line path.area.fill, -.mode-add-area path.area.fill, -.mode-drag-node path.area.fill { - pointer-events: none; +.mode-browse .fill-partial path.area.fill, +.mode-select .fill-partial path.area.fill { + pointer-events: visibleStroke; } /* Basics ------------------------------------------------------- */ @@ -2173,6 +2308,22 @@ body { transition-duration: 200ms; } +/* Firefox has its own ideas about fixed positioning when a css filter is active - #4348 */ +/* https://stackoverflow.com/questions/37949942/firefox-position-bug-by-parent-with-filter */ +@-moz-document url-prefix() { + #content > #bar { + width: 100vw; + } + #content.inactive > #bar > .spacer.col4 { + width: 0px; + } + #content.active > #bar > .spacer.col4 { + width: 33.3333%; + transition-duration: 200ms; + transition-timing-function: step-end; + } +} + #defs { /* Can't be display: none or the clippaths are ignored. */ position: absolute; @@ -2231,10 +2382,8 @@ a, button, input, textarea { a, button, .checkselect label:hover, -.opacity-options li, .radial-menu-item { - cursor: pointer; /* Opera */ - cursor: url(<%= asset_path("iD/img/cursor-pointer.png") %>) 6 1, pointer; /* FF */ + cursor: pointer; } h2 { @@ -2342,6 +2491,12 @@ input[type="radio"] { margin-right: 5px; margin-top: 3px; } +[dir='rtl'] input[type="checkbox"], +[dir='rtl'] input[type="radio"] { + float: right; + margin-left: 5px; + margin-right: 0; +} /* remove bottom border radius when combobox is open */ .combobox + * textarea:focus, @@ -2364,7 +2519,7 @@ table th { } table.tags, table.tags td, table.tags th { - border: 1px solid #CCC; + border: 1px solid #ccc; padding: 4px; } @@ -2400,7 +2555,7 @@ ul li { list-style: none;} display: block; height: 30px; background-color: white; - color: #7092FF; + color: #7092ff; cursor: pointer; } @@ -2570,23 +2725,37 @@ button.minor:hover { .button-wrap:last-of-type { padding-right: 0; } +[dir='rtl'] .button-wrap:last-of-type { + padding-left: 0; + padding-right: 10px; +} .joined button { border-radius:0; border-right: 1px solid rgba(0,0,0,.5); } +[dir='rtl'] .joined button { + border-left: 1px solid rgba(0,0,0,.5); + border-right: none; +} .fillL .joined button { border-right: 1px solid white; } .joined button:first-child { - border-radius:4px 0 0 4px; + border-radius: 4px 0 0 4px; +} +[dir='rtl'] .joined button:first-child { + border-radius: 0 4px 4px 0; } .joined button:last-child { border-right-width: 0; - border-radius:0 4px 4px 0; + border-radius: 0 4px 4px 0; +} +[dir='rtl'] .joined button:last-child { + border-radius: 4px 0 0 4px; } button.action { @@ -2633,6 +2802,10 @@ button.save.has-count .count { margin: auto; margin-left: 9.3333%; } +[dir='rtl'] button.save.has-count .count { + margin-left: auto; + margin-right: 8%; +} button.save.has-count .count::before { content: ""; @@ -2649,6 +2822,12 @@ button.save.has-count .count::before { border-right-style: solid; border-right-color: inherit; } +[dir='rtl'] button.save.has-count .count::before { + border-left: 6px solid rgba(255,255,255,.5); + border-right: none; + left: auto; + right: -6px; +} /* Icons */ @@ -2668,6 +2847,10 @@ button.save.has-count .count::before { .icon.pre-text { margin-right: 5px; } +[dir='rtl'] .icon.pre-text { + margin-left: 5px; + margin-right: 0; +} .icon.light { color: #fff; @@ -2700,12 +2883,18 @@ button.save.has-count .count::before { #bar { position: fixed; padding: 10px 0; - left:0; - top:0; - right:0; - height:60px; - z-index: 9; - min-width: 768px; + left: 0; + top: 0; + right: 0; + height: 60px; + z-index: 9; + min-width: 768px; +} + +[dir='rtl'] #bar .spacer, +[dir='rtl'] #bar .button-wrap, +[dir='rtl'] #bar .button-wrap button { + float: right; } @@ -2726,6 +2915,10 @@ button.save.has-count .count::before { overflow: hidden; padding: 20px 20px 20px 40px; } +[dir='rtl'] .header h3 { + text-align: right; + padding: 20px 40px 20px 20px; +} .header button, .modal > button { @@ -2746,12 +2939,21 @@ button.save.has-count .count::before { right: 0; top: 0; } +[dir='rtl'] .entity-editor-pane .header button.preset-close, +[dir='rtl'] .preset-list-pane .header button.preset-choose { + left: 0; + right: auto; +} .entity-editor-pane .header button.preset-choose { position: absolute; left: 0; top: 0; } +[dir='rtl'] .entity-editor-pane .header button.preset-choose { + left: auto; + right: 0; +} .preset-choose { font-size: 16px; @@ -2763,9 +2965,13 @@ button.save.has-count .count::before { position: absolute; right: 0; top: 0; - height: 60px; + height: 59px; z-index: 50; } +[dir='rtl'] .modal > button { + left: 0; + right: unset; +} .footer { position: absolute; @@ -2785,6 +2991,30 @@ button.save.has-count .count::before { position: absolute; } + +/* Hide-Toggle +------------------------------------------------------- */ + +.hide-toggle .icon.pre-text { + vertical-align: text-top; + width: 16px; + height: 16px; + margin-left: -3px; +} +[dir='rtl'] .hide-toggle .icon.pre-text { + margin-left: 0; + margin-right: -3px; +} + +a:visited.hide-toggle, +a.hide-toggle { + display: inline-block; + font-size: 14px; + font-weight: bold; + padding-bottom: 5px; +} + + /* Inspector ------------------------------------------------------- */ @@ -2797,6 +3027,9 @@ button.save.has-count .count::before { background: #f6f6f6; -ms-user-select: element; } +[dir='rtl'] #sidebar { + float: right; +} .sidebar-component { position: absolute; @@ -2824,7 +3057,6 @@ button.save.has-count .count::before { bottom: 0; } - .feature-list-pane .inspector-body { top: 120px; } @@ -2853,6 +3085,10 @@ button.save.has-count .count::before { top: 80px; pointer-events: none; } +[dir='rtl'] #sidebar .search-header .icon { + left: auto; + right: 10px; +} #sidebar .search-header input { position: absolute; @@ -2906,6 +3142,9 @@ button.save.has-count .count::before { overflow: hidden; border-left: 1px solid rgba(0, 0, 0, .1); } +[dir='rtl'] .feature-list-item .label { + text-align: right; +} .feature-list-item .label .icon { opacity: .5; @@ -2933,6 +3172,11 @@ button.save.has-count .count::before { color: #666; padding-left: 10px; } +[dir='rtl'] .feature-list-item .entity-name { + padding-left: 0; + padding-right: 10px; +} + /* Presets ------------------------------------------------------- */ @@ -2982,6 +3226,7 @@ button.save.has-count .count::before { border: 1.5px solid #333; border-radius: 20px; background-color: #efefef; + backface-visibility: hidden; } [dir='rtl'] .preset-icon-fill-vertex, @@ -3056,6 +3301,19 @@ button.save.has-count .count::before { height: 24px; } +[dir='rtl'] .preset-list-button-wrap .preset-icon { + left: auto; + right: auto; +} + +[dir='rtl'] .preset-list-button-wrap .preset-icon-28 { + right: 16px; +} + +[dir='rtl'] .preset-list-button-wrap .preset-icon-24 { + right: 18px; +} + .preset-list-button .label { background-color: #f6f6f6; text-align: left; @@ -3071,7 +3329,15 @@ button.save.has-count .count::before { overflow: hidden; border-left: 1px solid rgba(0, 0, 0, .1); border-radius: 0 3px 3px 0; - } +} +[dir='rtl'] .preset-list-button .label { + text-align: right; + left: 0; + right: 60px; + border-left: none; + border-right: 1px solid rgba(0, 0, 0, .1); + border-radius: 3px 0 0 3px; +} .preset-list-button:hover .label { background-color: #ececec; @@ -3079,14 +3345,19 @@ button.save.has-count .count::before { .preset-list-item button.tag-reference-button { height: 100%; - border: 1px solid #CCC; + border: 1px solid #ccc; border-radius: 0 3px 3px 0; position: absolute; top: 0; right: 0; - width: 10%; + width: 32px; background: #fafafa; } +[dir='rtl'] .preset-list-item button.tag-reference-button { + left: 0; + right: auto; + border-radius: 3px 0 0 3px; +} .preset-list-item button.tag-reference-button:hover { background: #f1f1f1; @@ -3140,21 +3411,25 @@ button.save.has-count .count::before { /* preset form basics */ -.inspector-preset { +.preset-editor { overflow: hidden; padding-bottom: 10px; } -.inspector-preset a.hide-toggle { - margin: 0 20px 10px 20px; +.preset-editor a.hide-toggle { + margin: 0 20px 5px 20px; } -.inspector-preset .preset-form { +.preset-editor .form-fields-container { padding: 10px; margin: 0 10px 10px 10px; border-radius: 8px; } +.preset-editor .form-fields-container:empty { + display: none; +} + .entity-editor-pane .preset-list-item .preset-list-button-wrap { margin-bottom: 0; } @@ -3168,7 +3443,8 @@ button.save.has-count .count::before { transition: margin-bottom 200ms; } -.form-field:last-child { +.form-field.nowrap, +.wrap-form-field:last-child .form-field { margin-bottom: 0; } @@ -3209,15 +3485,16 @@ button.save.has-count .count::before { .form-label button { border-left: 1px solid #ccc; - width: 10%; + width: 32px; height: 100%; border-radius: 0; background: #f6f6f6; } [dir='rtl'] .form-label button { border-left: none; - border-right: 1px solid #CCC; + border-right: 1px solid #ccc; border-radius: 4px 0 0 0; + width: 31px; } .form-label button:hover { background: #f1f1f1; @@ -3258,6 +3535,7 @@ button.save.has-count .count::before { .inspector-hover .form-field-multicombo, .inspector-hover .structure-extras-wrap, .inspector-hover input, +.inspector-hover textarea, .inspector-hover label { background: #ececec; } @@ -3381,6 +3659,9 @@ button.save.has-count .count::before { padding: 0 20px 20px 20px; font-weight: bold; } +.changeset-editor .more-fields { + padding: 15px 20px 0 20px; +} .more-fields label { display: flex; @@ -3404,17 +3685,21 @@ button.save.has-count .count::before { padding: 5px 10px; } +[dir='rtl'] .preset-input-wrap .col6 { + float: right; +} /* preset form access */ /* preset form cycleway */ +/* preset form structure extras */ -.form-field-structure .structure-extras-wrap li, +.structure-extras-wrap li, .form-field-cycleway .preset-input-wrap li, .form-field-access .preset-input-wrap li { border-bottom: 1px solid #ccc; } -.form-field-structure .structure-extras-wrap li:last-child, +.structure-extras-wrap li:last-child, .form-field-cycleway .preset-input-wrap li:last-child, .form-field-access .preset-input-wrap li:last-child { border-bottom: 0; @@ -3447,6 +3732,34 @@ button.save.has-count .count::before { border: 1px solid #ccc; border-radius: 4px; } +.structure-extras-wrap li:first-child span { + border-top-left-radius: 4px; +} +.structure-extras-wrap li:first-child input { + border-top-right-radius: 4px; +} +.structure-extras-wrap li:last-child span { + border-bottom-left-radius: 4px; +} +.structure-extras-wrap li:last-child input { + border-bottom-right-radius: 4px; +} +[dir='rtl'] .structure-extras-wrap li:first-child span { + border-top-left-radius: 0; + border-top-right-radius: 4px; +} +[dir='rtl'] .structure-extras-wrap li:first-child input { + border-top-right-radius: 0; + border-top-left-radius: 4px; +} +[dir='rtl'] .structure-extras-wrap li:last-child span { + border-bottom-left-radius: 0; + border-bottom-right-radius: 4px; +} +[dir='rtl'] .structure-extras-wrap li:last-child input { + border-bottom-right-radius: 0; + border-bottom-left-radius: 4px; +} /* preset form multicombo */ @@ -3471,14 +3784,15 @@ button.save.has-count .count::before { } .form-field-multicombo li { + display: inline-flex; + flex-flow: row nowrap; + align-items: center; background-color: #eff2f7; border: 1px solid #ccd5e3; border-radius: 4px; line-height: 25px; - display: inline-block; padding: 2px 5px; margin: 3px; - height: 30px; } .form-field-multicombo a { @@ -3496,6 +3810,7 @@ button.save.has-count .count::before { border: 1px solid #ddd; width: 100px; margin: 3px; + height: 31px; } .form-field-multicombo .combobox-caret { @@ -3515,28 +3830,43 @@ input[type=number] { } .spin-control { - width: 20%; - height: 29px; + width: 64px; + height: 30px; display: inline-block; - margin-left: -20%; + margin-left: -64px; margin-bottom: -11px; position: relative; } +[dir='rtl'] .spin-control{ + margin-left: 0; + margin-right: -64px; +} .spin-control button { right: 1px; position: relative; float: left; height: 100%; - width: 50%; - border-left: 1px solid #CCC; + width: 32px; + border-left: 1px solid #ccc; border-radius: 0; background: rgba(0, 0, 0, 0); } +[dir='rtl'] .spin-control button{ + border-left: 0; + border-right: 1px solid #ccc; +} .spin-control button.decrement { border-bottom-right-radius: 3px; } +[dir='rtl'] .spin-control button.decrement { + border-bottom-right-radius: 0; +} +[dir='rtl'] .spin-control button.increment { + border-bottom-left-radius: 3px; + right: 0; +} .spin-control button.decrement::after, .spin-control button.increment::after { @@ -3548,24 +3878,25 @@ input[type=number] { } .spin-control button.decrement::after { - border-top: 5px solid #CCC; + border-top: 5px solid #ccc; border-left: 5px solid transparent; border-right: 5px solid transparent; } .spin-control button.increment::after { - border-bottom: 5px solid #CCC; + border-bottom: 5px solid #ccc; border-left: 5px solid transparent; border-right: 5px solid transparent; } + /* preset form checkbox */ .checkselect label:last-of-type { display: block; background: white; padding: 5px 10px; - color: #7092FF; + color: #7092ff; } .checkselect label:hover { @@ -3642,11 +3973,11 @@ input[type=number] { } .form-field .wiki-title ~ .combobox-caret { - right: 10%; + right: 32px; } [dir='rtl'] .form-field .wiki-title ~ .combobox-caret { right: auto; - left: 10%; + left: 32px; } /* Localized field */ @@ -3661,9 +3992,9 @@ input[type=number] { .form-field .button-input-action { position: relative; right: 1px; - width: 10%; - margin-left: -10%; - border: 1px solid #CCC; + width: 32px; + margin-left: -32px; + border: 1px solid #ccc; border-top-width: 0; border-right-width: 0; border-radius: 0 0 4px 0; @@ -3672,7 +4003,7 @@ input[type=number] { } [dir='rtl'] .form-field .button-input-action { margin-left: 0; - margin-right: -10%; + margin-right: -32px; border-right-width: 1px; border-radius: 0 0 0 4px; } @@ -3777,6 +4108,28 @@ input[type=number] { text-align: center; } +/* Changeset editor while comment text is empty */ + +.form-field-comment:not(.present) #preset-input-comment { + border-color: rgb(230, 100, 100); +} + +.form-field-comment:not(.present) .form-label { + border-color: rgb(230, 100, 100); + background: rgba(230, 100, 100, 0.2); +} + +.form-field-comment:not(.present) .form-label { +} + +.form-field-comment:not(.present) .form-label-button-wrap { + border-color: rgb(230, 100, 100); +} + +.form-field-comment:not(.present) button { + border-color: rgb(230, 100, 100); +} + /* combobox dropdown */ div.combobox { @@ -3818,6 +4171,10 @@ div.combobox { margin-left: -30px; vertical-align: top; } +[dir='rtl'] .combobox-caret { + margin-left: 0; + margin-right: -30px; +} .combobox-caret::after { content:""; @@ -3855,12 +4212,12 @@ div.combobox { height: 31px; border: 0; border-radius: 0; - border-bottom: 1px solid #CCC; - border-left: 1px solid #CCC; + border-bottom: 1px solid #ccc; + border-left: 1px solid #ccc; } [dir='rtl'] .tag-row input { border-left: none; - border-right: 1px solid #CCC; + border-right: 1px solid #ccc; } .tag-row .key-wrap, @@ -3880,14 +4237,14 @@ div.combobox { } .tag-row input.value { - border-right: 1px solid #CCC; + border-right: 1px solid #ccc; } [dir='rtl'] .tag-row input.value { - border-left: 1px solid #CCC; + border-left: 1px solid #ccc; } .tag-row:first-child input.key { - border-top: 1px solid #CCC; + border-top: 1px solid #ccc; border-top-left-radius: 4px; } [dir='rtl'] .tag-row:first-child input.key { @@ -3896,14 +4253,14 @@ div.combobox { } .tag-row:first-child input.value { - border-top: 1px solid #CCC; + border-top: 1px solid #ccc; } .tag-row button { position: absolute; height: 31px; right: 10%; - border: 1px solid #CCC; + border: 1px solid #ccc; border-top-width: 0; border-left-width: 0; } @@ -3990,18 +4347,17 @@ button.minor.tag-reference-loading { clear: both; } -.tag-reference-body p, -.tag-reference-body img { - margin-top: 20px; -} - -.tag-reference-body p:last-child { - padding-bottom: 10px; +.tag-reference-body .tag-reference-description { + margin: 10px 5px 0 5px; } .tag-reference-body a { display: block; - padding-bottom: 10px; +} + +.tag-reference-body .tag-reference-description:last-child, +.tag-reference-body a:last-child { + margin-bottom: 15px; } .preset-list .tag-reference-body { @@ -4009,41 +4365,35 @@ button.minor.tag-reference-loading { width: 100%; } -.preset-list .tag-reference-body a { - padding-bottom: 20px; -} - -.preset-list .tag-reference-body p, -.preset-list .tag-reference-body img { - margin-top: 10px; -} - .raw-tag-editor .tag-reference-body { - border-bottom: 1px solid #ccc; float: left; width: 100%; } -.raw-tag-editor .tag-reference-body p:last-child { - padding-bottom: 20px; +.raw-tag-editor .tag-row.readonly .tag-reference-body { + background: #f6f6f6; + color: #333; +} + +.raw-tag-editor .tag-row:not(:last-child) .tag-reference-body { + border-bottom: 1px solid #ccc; } -.raw-tag-editor .tag-reference-body a { - padding-bottom: 20px; +.raw-tag-editor .tag-row.readonly .tag-reference-body.expanded { + border-top: 1px solid #ccc; } -img.wiki-image { +img.tag-reference-wiki-image { float: right; width: 33.3333%; width: -webkit-calc(33.3333% - 10px); width: calc(33.3333% - 10px); - margin-left: 20px; - margin-right: 10px; border-radius: 4px; max-height: 200px; - margin-bottom: 20px; + margin: 10px 5px 15px 20px; } + /* Raw relation membership editor */ .raw-member-editor .member-list li:first-child, @@ -4121,6 +4471,10 @@ div.full-screen > button:hover { position: fixed; z-index: 100; } +[dir='rtl'] .map-controls { + left: 0; + right: auto; +} .map-control > button { width: 40px; @@ -4142,6 +4496,9 @@ div.full-screen > button:hover { .zoombuttons button.zoom-in { border-radius: 4px 0 0 0; } +[dir='rtl'] .zoombuttons button.zoom-in { + border-radius: 0 4px 0 0; +} /* Background / Map Data Settings */ @@ -4152,6 +4509,9 @@ div.full-screen > button:hover { .background-control button { border-radius: 4px 0 0 0; } +[dir='rtl'] .background-control button { + border-radius: 0 4px 0 0; +} .map-data-control, .background-control { @@ -4160,16 +4520,12 @@ div.full-screen > button:hover { .imagery-faq { margin-bottom: 10px; -} - -.map-data-control .hide-toggle, -.background-control .hide-toggle { - padding-bottom: 10px; + white-space: nowrap; } .layer-list, .controls-list { margin-bottom: 10px; - border: 1px solid #CCC; + border: 1px solid #ccc; border-radius: 4px; } @@ -4177,7 +4533,7 @@ div.full-screen > button:hover { position: relative; height: 30px; background-color: white; - color: #7092FF; + color: #7092ff; } .layer-list:empty { @@ -4206,7 +4562,7 @@ div.full-screen > button:hover { .layer-list li.active, .layer-list li.switch { - background: #E8EBFF; + background: #e8ebff; } .layer-list li.best > div.best { @@ -4215,6 +4571,10 @@ div.full-screen > button:hover { float: right; } +[dir='rtl'] .list-item-gpx-browse svg { + transform: rotateY(180deg); +} + /* make sure tooltip fits in map-control panel */ /* if too wide, placement will be wrong the first time it displays */ .layer-list li.best .tooltip-inner { @@ -4234,48 +4594,41 @@ div.full-screen > button:hover { text-overflow: ellipsis; } -.minimap-toggle { - display: block; - padding: 5px 10px; - cursor: pointer; - color: #7092FF; - border-radius: 3px; -} -.minimap-toggle.active { - background: #E8EBFF; +/* Background Display Options */ + +.display-options-container { + padding: 10px; } -.minimap-toggle:hover { - background-color: #ececec; +.display-control h5 { + padding-bottom: 0; + padding-top: 10px; } -.hide-toggle { - display: block; - padding-left:12px; - position: relative; +.display-control h5 span { + margin: 5px; } -.hide-toggle:before { - content: ''; - display: block; - position: absolute; - height: 0; - width: 0; - left: 0; - top: 5px; - border-top: 4px solid transparent; - border-bottom: 4px solid transparent; - border-left: 8px solid #7092ff; +.display-control .display-option-input { + height: 20px; + width: 155px; } -.hide-toggle.expanded:before { - border-top: 8px solid #7092ff; - border-bottom: 0; - border-right: 4px solid transparent; - border-left: 4px solid transparent; +.display-control button { + height: 30px; + width: 30px; + margin-left: 5px; + margin-right: 0px; + vertical-align: text-bottom; + border-radius: 4px; +} +[dir='rtl'] .display-control button { + margin-left: 0px; + margin-right: 5px; } + /* Adjust Alignment controls */ .background-control .nudge-container { @@ -4328,7 +4681,7 @@ div.full-screen > button:hover { } .nudge-container input.error { - border: 1px solid #FF7878; + border: 1px solid #ff7878; border-radius: 2px; background: #ffb; } @@ -4380,93 +4733,58 @@ div.full-screen > button:hover { } .background-control .nudge.right::after { - border-top: 5px solid transparent; - border-bottom: 5px solid transparent; - border-left: 5px solid #222; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + border-left: 5px solid #222; } .background-control .nudge.left::after { - border-top: 5px solid transparent; - border-bottom: 5px solid transparent; - border-right: 5px solid #222; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + border-right: 5px solid #222; } .background-control .nudge.top::after { - border-right: 5px solid transparent; - border-left: 5px solid transparent; - border-bottom: 5px solid #222; + border-right: 5px solid transparent; + border-left: 5px solid transparent; + border-bottom: 5px solid #222; } .background-control .nudge.bottom::after { - border-right: 5px solid transparent; - border-left: 5px solid transparent; - border-top: 5px solid #222; + border-right: 5px solid transparent; + border-left: 5px solid transparent; + border-top: 5px solid #222; } -.opacity-options { - background: url(<%= asset_path("iD/img/background-pattern-opacity.png") %>) 0 0 repeat; - height:20px; - width:82px; - position: absolute; - right: 50px; - top: 20px; - border: 1px solid #ccc; -} -.opacity-options li { +.map-data-control .layer-list button, +.background-control .layer-list button { + float: right; height: 100%; - display: block; + width: 10%; + border-left: 1px solid #ccc; + border-radius: 0; +} +[dir='rtl'] .map-data-control .layer-list button, +[dir='rtl'] .background-control .layer-list button { float: left; + border-left: none; + border-right: 1px solid #ccc; } -.opacity-options li .select-box{ - position: absolute; - width:20px; - height:18px; - z-index: 9999; -} - -.map-data-control li:hover .select-box, -.map-data-control li.selected .select-box, -.background-control li:hover .select-box, -.background-control li.selected .select-box { - border: 2px solid #7092ff; - background: rgba(89, 123, 231, .5); - opacity: .5; -} - -.map-data-control li.selected:hover .select-box, -.map-data-control li.selected .select-box, -.background-control li.selected:hover .select-box, -.background-control li.selected .select-box { - opacity: 1; -} - -.background-control .opacity { - background:#222; - display:inline-block; - width:20px; - height:18px; -} - -.map-data-control .layer-list button, -.background-control .layer-list button { - float: right; - height: 100%; - width: 10%; - border-left: 1px solid #CCC; - border-radius: 0; -} - -.map-data-control .layer-list button .icon, -.background-control .layer-list button .icon { - opacity: 0.5; +.map-data-control .layer-list button .icon, +.background-control .layer-list button .icon { + opacity: 0.5; } .map-data-control .layer-list button:first-of-type, .background-control .layer-list button:first-of-type { border-radius: 0 3px 3px 0; } +[dir='rtl'] .map-data-control .layer-list button:first-of-type, +[dir='rtl'] .background-control .layer-list button:first-of-type { + border-radius: 3px 0 0 3px; +} .map-data-control .map-overlay, .background-control .map-overlay, @@ -4474,7 +4792,6 @@ div.full-screen > button:hover { z-index: -1; } - /* Geolocator */ .geolocate-control { @@ -4484,21 +4801,36 @@ div.full-screen > button:hover { .geolocate-control button { border-radius: 0 0 0 4px; } +[dir='rtl'] .geolocate-control button { + border-radius: 0 0 4px 0; +} .map-overlay.content { position: fixed; - top:60px; + top: 60px; bottom: 30px; padding: 20px 50px 20px 20px; right: 0; overflow: auto; } +[dir='rtl'] .map-overlay.content { + padding: 20px 20px 20px 50px; + left: 0; + right: auto !important; +} + +.map-overlay.content > div { + padding-bottom: 15px; +} /* Help */ .help-control button { border-radius: 0 0 0 4px; } +[dir='rtl'] .help-control button { + border-radius: 0 0 4px 0; +} .help-wrap p { font-size: 15px; @@ -4506,13 +4838,27 @@ div.full-screen > button:hover { } .help-wrap .left-content .body p code { - padding:2px 4px; - background:#eee; + padding: 3px 4px; + font-size: 12px; + color: #555; + vertical-align: baseline; + background-color: #f6f6f6; + border: solid 1px #ccc; + margin: 0 2px; + border-bottom-color: #bbb; + border-radius: 3px; + box-shadow: inset 0 -1px 0 #bbb; +} + +.help-wrap .left-content .icon.pre-text { + vertical-align: text-top; + margin-right: 0; + margin-left: 0; + display: inline-block; } .help-wrap .toc { - /* This is two columns, 41.66666 x .4 = 16.6666 */ - width:40%; + width: 40%; float:right; margin-left: 20px; margin-bottom: 20px; @@ -4522,7 +4868,7 @@ div.full-screen > button:hover { .help-wrap .toc li a, .help-wrap .nav a { display: block; - border: 1px solid #CCC; + border: 1px solid #ccc; padding: 5px 10px; } @@ -4536,7 +4882,7 @@ div.full-screen > button:hover { } .help-wrap .toc li a.selected { - background: #E8EBFF; + background: #e8ebff; } .help-wrap .toc li:first-child a { @@ -4544,7 +4890,7 @@ div.full-screen > button:hover { } .help-wrap .toc li:nth-last-child(3) a { - border-bottom: 1px solid #CCC; + border-bottom: 1px solid #ccc; border-radius: 0 0 4px 4px } @@ -4589,12 +4935,12 @@ div.full-screen > button:hover { ------------------------------------------------------- */ img.tile { - position:absolute; - transform-origin:0 0; - -ms-transform-origin:0 0; - -webkit-transform-origin:0 0; - -moz-transform-origin:0 0; - -o-transform-origin:0 0; + position: absolute; + transform-origin: 0 0; + -ms-transform-origin: 0 0; + -webkit-transform-origin: 0 0; + -moz-transform-origin: 0 0; + -o-transform-origin: 0 0; -moz-user-select: none; -webkit-user-select: none; @@ -4604,8 +4950,16 @@ img.tile { opacity: 0; -webkit-transition: opacity 200ms linear; - transition: opacity 200ms linear; -moz-transition: opacity 200ms linear; + transition: opacity 200ms linear; +} + +img.tile-loaded { + opacity: 1; +} + +img.tile-removing { + opacity: 0; } .tile-label-debug { @@ -4617,14 +4971,14 @@ img.tile { padding: 5px; border-radius: 3px; z-index: 2; - margin-left: -50px; + margin-left: -70px; margin-top: -20px; - transform-origin:0 0; - -ms-transform-origin:0 0; - -webkit-transform-origin:0 0; - -moz-transform-origin:0 0; - -o-transform-origin:0 0; + transform-origin: 0 0; + -ms-transform-origin: 0 0; + -webkit-transform-origin: 0 0; + -moz-transform-origin: 0 0; + -o-transform-origin: 0 0; -moz-user-select: none; -webkit-user-select: none; @@ -4636,23 +4990,15 @@ img.tile-debug { outline: 1px solid red; } -img.tile-loaded { - opacity: 1; -} - -img.tile-removing { - opacity: 0; -} - /* Map ------------------------------------------------------- */ #map { - position:relative; - overflow:hidden; - height:100%; - background:#000; + position: relative; + overflow: hidden; + height: 100%; + background: #000; -moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; @@ -4660,11 +5006,11 @@ img.tile-removing { } #supersurface { - transform-origin:0 0; - -ms-transform-origin:0 0; - -webkit-transform-origin:0 0; - -moz-transform-origin:0 0; - -o-transform-origin:0 0; + transform-origin: 0 0; + -ms-transform-origin: 0 0; + -webkit-transform-origin: 0 0; + -moz-transform-origin: 0 0; + -o-transform-origin: 0 0; } #supersurface, .layer { @@ -4743,6 +5089,7 @@ img.tile-removing { stroke-width: 1; } +.nocolor { color: rgba(0, 0, 0, 0); } .red { color: rgba(255, 0, 0, 0.75); } .green { color: rgba(0, 255, 0, 0.75); } .blue { color: rgba(0, 0, 255, 0.75); } @@ -4820,6 +5167,9 @@ img.tile-removing { background: none; color: #ddd; } +[dir='rtl'] .panel-title button.close { + float: left; +} .panel-title button.close:hover { color: #fff; @@ -4835,21 +5185,32 @@ img.tile-removing { position: relative; } +.panel-content li span { + display: inline-block; + white-space: nowrap; + margin: 0 8px; +} + .panel-content .button { display: inline-block; background: #7092ff; border-radius: 2px; padding: 0 4px; margin-top: 10px; + margin-right: 10px; color: white; } +[dir='rtl'] .panel-content .button { + margin-right: auto; + margin-left: 10px; +} .panel-content-history .links a { - margin-left: 10px; + margin-left: 8px; } [dir='rtl'] .panel-content-history .links a { margin-left: auto; - margin-right: 10px; + margin-right: 8px; } .panel-content-history .view-history-on-osm { @@ -4923,13 +5284,13 @@ img.tile-removing { margin: 0 3px; } - #footer { pointer-events: all; display: block; height: 30px; } +/* footer flash message */ #flash-wrap { display: flex; @@ -4942,7 +5303,7 @@ img.tile-removing { left: 0; } -#flash-wrap .content { +.flash-content { display: flex; flex: 1 0 auto; flex-flow: row nowrap; @@ -4951,15 +5312,38 @@ img.tile-removing { height: 30px; } - -#flash-wrap svg.operation-icon { +.flash-icon { flex: 0 0 auto; width: 20px; height: 20px; margin: 0 8px; } -#flash-wrap div.operation-tip { +.flash-icon circle { + fill: #eee; +} +.flash-icon.disabled circle { + cursor: auto; + fill: rgba(255,255,255,0.7); +} + +.flash-icon use { + color: #222; +} +.flash-icon.disabled use { + color: rgba(32,32,32,0.7); +} + +.flash-icon.operation use { + fill: #222; + color: #79f; +} +.flash-icon.operation.disabled use { + fill: rgba(32,32,32,0.7); + color: rgba(40,40,40,0.7); +} + +.flash-text { flex: 1 1 auto; } @@ -4989,6 +5373,8 @@ img.tile-removing { } +/* footer scale */ + #scale-block { vertical-align: bottom; width: 250px; @@ -5185,7 +5571,7 @@ img.tile-removing { .modal-section { padding: 20px; - border-bottom: 1px solid #CCC; + border-bottom: 1px solid #ccc; } .modal-section.header h3 { @@ -5218,8 +5604,8 @@ img.tile-removing { .modal-actions button, .save-success a.button { font-weight: normal; - color: #7092FF; - border-bottom: 1px solid #CCC; + color: #7092ff; + border-bottom: 1px solid #ccc; border-radius: 0; height: 160px; text-align: center; @@ -5239,7 +5625,7 @@ img.tile-removing { } .modal-actions > :first-child { - border-right: 1px solid #CCC; + border-right: 1px solid #ccc; } .modal-section:last-child { @@ -5249,7 +5635,7 @@ img.tile-removing { /* Restore Modal ------------------------------------------------------- */ .modal-actions .logo-restore { - color: #7092FF; + color: #7092ff; } .modal-actions .logo-reset { color: #E06C5E; @@ -5267,7 +5653,7 @@ img.tile-removing { padding-top: 15px; } .save-success .logo-osm { - color: #7092FF; + color: #7092ff; margin-bottom: 10px; } .save-success a.button.social { @@ -5277,14 +5663,14 @@ img.tile-removing { .save-success .icon.social { height: 80px; width: 80px; - color: #7092FF; + color: #7092ff; } /* Splash Modal ------------------------------------------------------- */ .modal-actions .logo-walkthrough, .modal-actions .logo-features { - color: #7092FF; + color: #7092ff; } @@ -5373,11 +5759,11 @@ img.tile-removing { box-shadow: inset 0 -1px 0 #bbb; } -.modal-shortcuts .shortcut-keys svg.mouseclick use.left { +svg.mouseclick use.left { fill: rgba(112, 146, 255, 1); color: rgba(112, 146, 255, 0); } -.modal-shortcuts .shortcut-keys svg.mouseclick use.right { +svg.mouseclick use.right { fill: rgba(112, 146, 255, 0); color: rgba(112, 146, 255, 1); } @@ -5409,32 +5795,55 @@ img.tile-removing { float: left; height: 12px; min-width: 12px; - font-size:12px; + font-size: 12px; line-height: 12px; - border-radius:24px; - padding:5px; - background:#7092ff; - color:#fff; + border-radius: 24px; + padding: 5px; + background: #7092ff; + color: #fff; } +.mode-save .field-warning { + background: #ffb; + border: 1px solid #ccc; + border-radius: 4px; + padding: 10px; +} + +.mode-save .field-warning:empty { + display: none; +} + +.mode-save .field-warning, +.mode-save .changeset-info, +.mode-save .request-review, .mode-save .commit-info { margin-bottom: 10px; } +.mode-save .request-review label { + cursor: pointer; +} + .mode-save .changeset-list { - border:1px solid #ccc; + border: 1px solid #ccc; border-radius: 4px; - background:#fff; + background: #fff; + margin-bottom: 10px; +} + +.mode-save .warning-section { + background: #ffb; } .mode-save .warning-section .changeset-list button { - border-left: 1px solid #CCC; + border-left: 1px solid #ccc; } .mode-save .changeset-list li { position: relative; - border-top:1px solid #ccc; - padding:5px 10px; + border-top: 1px solid #ccc; + padding: 5px 10px; cursor: pointer; } @@ -5447,12 +5856,12 @@ img.tile-removing { } .changeset-list li span.count { - font-size:10px; - color:#555; + font-size: 10px; + color: #555; } .mode-save .commit-section .changeset-list button { - border-left: 1px solid #CCC; + border-left: 1px solid #ccc; } .changeset-list li span.count:before { content: '('; } @@ -5516,31 +5925,33 @@ img.tile-removing { .notice { position: absolute; - top: 0; - bottom: 0; + top: 45px; left: 0; right: 0; text-align: center; - background: #fff; } .notice .zoom-to { margin: auto; - width: 80%; - height: 100px; - border-radius: 5px; - line-height: 40px; - color: #000; - opacity: 0.9; + width: 300px; + height: 70px; + font-size: 150%; + border-radius: 8px; } .notice .zoom-to:hover { - background: #d8e1ff; + background: rgba(0,0,0,0.6); } .notice .zoom-to .icon { - margin-top:10px; - margin-right:10px; + width: 30px; + height: 30px; + vertical-align: middle; + margin-right: 10px; +} +[dir='rtl'] .notice .zoom-to .icon { + margin-left: 10px; + margin-right: 0; } /* Tooltips @@ -5752,6 +6163,10 @@ img.tile-removing { .add-point .tooltip { left: 33.3333% !important; } +[dir='rtl'] .add-point .tooltip { + left: inherit !important; +} + .add-point .tooltip .tooltip-arrow { left: 60px; } @@ -5835,6 +6250,7 @@ li.hide + li.version .badge .tooltip .tooltip-arrow { .edit-menu-item rect { fill: #eee; + cursor: default; } .edit-menu-item rect:active, @@ -5853,6 +6269,7 @@ li.hide + li.version .badge .tooltip .tooltip-arrow { .edit-menu-item use { fill: #222; color: #79f; + pointer-events: none; } .edit-menu-item.disabled use { @@ -6003,7 +6420,7 @@ li.hide + li.version .badge .tooltip .tooltip-arrow { .curtain-tooltip .tooltip-inner .instruction { font-weight: bold; display: block; - border-top: 1px solid #CCC; + border-top: 1px solid #ccc; margin-top: 10px; margin-left: -20px; margin-right: -20px; @@ -6081,224 +6498,5 @@ li.hide + li.version .badge .tooltip .tooltip-arrow { .huge-modal-button .illustration { height: 100px; width: 100px; - color: #7092FF; -} - - -/* Right-to-left localization settings */ - -[dir='rtl'] #sidebar { - float: right; -} - -[dir='rtl'] #sidebar .search-header .icon { - left: auto; - right: 10px; -} - -/* header */ -[dir='rtl'] .header h3 { - text-align: right; - padding: 20px 40px 20px 20px; -} - -[dir='rtl'] .entity-editor-pane .header button.preset-choose { - left: auto; - right: 0; -} - -[dir='rtl'] .entity-editor-pane .header button.preset-close, [dir='rtl'] .preset-list-pane .header button.preset-choose { - left: 0; - right: auto; -} - -[dir='rtl'] .map-data-control .layer-list button, [dir='rtl'] .background-control .layer-list button { - float: left; - border-left: none; - border-right: 1px solid #CCC; -} - -[dir='rtl'] .map-data-control .layer-list button:first-of-type, [dir='rtl'] .background-control .layer-list button:first-of-type { - border-radius: 3px 0 0 3px; -} - -/* search */ -[dir='rtl'] .feature-list-item .label { - text-align: right; -} - -[dir='rtl'] .feature-list-item .entity-name { - padding-left: 0; - padding-right: 10px; -} - -/* preset form */ - -[dir='rtl'] .combobox-caret { - margin-left: 0; - margin-right: -30px; -} - -[dir='rtl'] .icon.pre-text { - margin-left: 5px; - margin-right: 0; -} - -[dir='rtl'] .notice .zoom-to .icon { - margin-left: 10px; - margin-right: 0; -} - -[dir='rtl'] .preset-list-button .label { - text-align: right; - left: 0; - right: 60px; - border-left: none; - border-right: 1px solid rgba(0, 0, 0, .1); - border-radius: 3px 0 0 3px; -} - -[dir='rtl'] .preset-list-item button.tag-reference-button { - left: 0; - right: auto; - border-radius: 3px 0 0 3px; -} - -[dir='rtl'] .preset-list-button-wrap .preset-icon { - left: auto; - right: auto; -} - -[dir='rtl'] .preset-list-button-wrap .preset-icon-28 { - right: 16px; -} - -[dir='rtl'] .preset-list-button-wrap .preset-icon-24 { - right: 18px; -} - -[dir='rtl'] input[type="checkbox"], [dir='rtl'] input[type="radio"] { - float: right; - margin-left: 5px; - margin-right: 0; -} - -[dir='rtl'] .preset-input-wrap .col6 { - float: right; -} - -/* map control buttons */ -[dir='rtl'] .map-controls { - left: 0; - right: auto; -} - -[dir='rtl'] .background-control button, -[dir='rtl'] .zoombuttons button.zoom-in { - border-radius: 0 4px 0 0; -} - -[dir='rtl'] .help-control button, -[dir='rtl'] .geolocate-control button { - border-radius: 0 0 4px 0; -} - -[dir='rtl'] .list-item-gpx-browse svg { - transform: rotateY(180deg); -} - -/* map control button overlays */ -[dir='rtl'] .map-overlay { - padding: 20px 20px 20px 50px; - left: 0; - right: auto !important; -} - -[dir='rtl'] .opacity-options { - left: 50px; - right: auto; -} - -[dir='rtl'] .hide-toggle { - padding-left: 0; - padding-right: 12px; -} - -[dir='rtl'] .hide-toggle:before { - left: auto; - right: 0; - border-left: none; - border-right: 8px solid #7092ff; -} - -[dir='rtl'] .hide-toggle.expanded:before { - border-left: 4px solid transparent; - border-right: 4px solid transparent; -} - -/* navbar */ -[dir='rtl'] #bar .spacer, -[dir='rtl'] #bar .button-wrap, -[dir='rtl'] #bar .button-wrap button { - float: right; -} - -[dir='rtl'] .add-point .tooltip { - left: inherit !important; -} - -[dir='rtl'] .button-wrap:last-of-type { - padding-left: 0; - padding-right: 10px; -} - -[dir='rtl'] button.save.has-count .count { - margin-left: auto; - margin-right: 8%; -} - -[dir='rtl'] button.save.has-count .count::before { - border-left: 6px solid rgba(255,255,255,.5); - border-right: none; - left: auto; - right: -6px; -} - -[dir='rtl'] .joined button { - border-left: 1px solid rgba(0,0,0,.5); - border-right: none; -} - -[dir='rtl'] .joined button:first-child { - border-radius: 0 4px 4px 0; -} - -[dir='rtl'] .joined button:last-child { - border-radius: 4px 0 0 4px; -} - - -/* increment / decrement control - code by Naoufel Razouane */ - -[dir='rtl'] .spin-control{ - margin-left: 0; - margin-right: -20%; -} -[dir='rtl'] .spin-control button{ - border-left: 0; - border-right: 1px solid #CCC; -} -[dir='rtl'] .spin-control button.decrement{ - border-bottom-right-radius: 0; -} -[dir='rtl'] .spin-control button.increment{ - border-bottom-left-radius: 3px; -} -/* modal */ -[dir='rtl'] .modal > button { - position: absolute; - left: 0; - right: unset; - top: 0; + color: #7092ff; } -