Malvoz/decoding-image-default-sync 1
A proposal for a policy-controlled feature for image decoding.
A community–driven effort to make web accessibility easier.
The AMP web component framework.
Malvoz/ApplicationInsights-JS 0
Microsoft Application Insights SDK for JavaScript
Assistive Technology ARIA Experience Assessment
Parse CSS and add vendor prefixes to rules by Can I Use
Malvoz/awesome-frontend-security 0
☔️A curated list of tools, articles & resources to help take your frontend security to the next level. Feel free to contribute!
Accessibility engine for automated Web UI testing
The most popular HTML, CSS, and JavaScript framework for developing responsive, mobile first projects on the web.
This repository contains compatibility data for Web technologies as displayed on MDN
issue commentMaps4HTML/HTML-Map-Element-UseCases-Requirements
Capability: Animate the re-centering of the map view
@NickFitz It's not possible to close PRs from within an issue, only from other PRs. 😃 Here's the keywords and syntax: https://docs.github.com/en/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword
comment created time in 3 hours
pull request commentMaps4HTML/HTML-Map-Element-UseCases-Requirements
In the "Related specs" section, I believe we should reference the CSS primitive proposal of "per-element panning and zooming": https://github.com/w3c/csswg-drafts/issues/5275.
comment created time in 3 hours
issue openedMaps4HTML/MapML
<input type="width|height"> vs <extent width="" height="">
Would it be feasible to (re-)use the HTML width and height attributes on the <extent> element:
<extent width="" height="">
...
</extent>
as opposed to:
<extent>
<input type="width" ...>
<input type="height" ...>
...
</extent>
?
created time in 11 hours
startedeeeps/responsive-image-client-hints
started time in 13 hours
issue openedMaps4HTML/chat
Web map tools accessibility evaluation
I have manually evaluated the accessibility support of the reviewed web map tools. While I don't consider the evaluation report complete, my intention is to open bug reports to get the attention of the web map tools' authors. I'm not an accessibility expert, though I have studied WAI-ARIA for some time, and have read the WCAG Evaluation Methodology. It hasn't been an easy task to interpret all the WCAG documentation, so I'd appreciate any feedback.
Here it is: web-maps-wcag-evaluation.
/cc @Maps4HTML/contributors
created time in a day
Pull request review commentMaps4HTML/Web-Map-Custom-Element
Extends the <map> api and adds a context menu to map which makes use of the api
border-top: 1px solid transparent; border-bottom: 1px solid transparent; cursor: default;- outline: none;
It should be possible to make it a popup submenu...
<details><summary>I think</summary>
<style>
.mapml-contextmenu {
position: absolute;
width: 150px;
left: 150px;
}
.mapml-contextmenu details[open] .mapml-submenu {
position: absolute;
top: 0;
width: 120px;
transform: translate(-120px, 0);
}
/* Remove default disclosure widget (https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details#Customizing_the_disclosure_widget) */
.mapml-contextmenu summary {
display: inline-block;
list-style: none;
}
.mapml-contextmenu ::-webkit-details-marker {
display: none;
}
/* Presentational, ignore these. */
map {
contain: content;
display: inline-block;
overflow: hidden;
height: 150px;
width: 300px;
border-width: 2px;
border-style: inset;
}
.mapml-contextmenu,
.mapml-submenu {
border: 2px dotted black;
}
.mapml-contextmenu-item {
color: #222;
cursor: default;
text-decoration: none;
}
</style>
<map>
<div class="mapml-contextmenu">
<a class="mapml-contextmenu-item" href="#" role="button">item 1</a>
<details class="mapml-contextmenu-item has-mapml-submenu">
<summary>item 2</summary>
<div class="mapml-submenu">
<a class="mapml-contextmenu-item" href="#" role="button">item 2.1</a>
</div>
</details>
<a class="mapml-contextmenu-item" href="#" role="button">item 3</a>
</div>
</map>
</details>
<details> is just nice because it has built in accessibility. Otherwise, the WAI-ARIA Authoring Practices has a set of established patterns, such as buttons (i.e. the menu items <a role="button">) and their recommended keyboard interactions, and menu button (i.e. the menu items which opens submenus) which might be helpful.
comment created time in a day
push eventMalvoz/Web-Map-Custom-Element
commit sha 2edf1b110ab81d7b67c896a8ee7344a3f4ec3dd6
Migrate to travis-ci.com (#123)
push time in a day
startedcsstools/postcss-logical
started time in 2 days
push eventMalvoz/MapML
commit sha 96e88a2e79b73f1ec850225ac2c873936dac9cb4
Move from single-page to multi-page WHATWG references (#115)
push time in 2 days
issue commentdequelabs/axe-core
Have commons consider presentational children
I imagine this doesn't happen much in practice (I sure hope not)
https://github.com/w3c/html-aam/issues/292 describes one such case.
comment created time in 2 days
issue commentLeaflet/Leaflet
Inconsistent behavior of the layers list expanding after layers control recieves focus
A quick&dirty solution for this would be to explicitly expand the layers control on a focus event.
Dirty indeed, that'd negate the benefits of having the menu only expand after button press as described in the "Additional context" section:
Having the layers list only expand after the layer control has been pressed would also meet WCAG success criterion 2.4.1 Bypass Blocks, the "Understanding 2.4.1: Bypass Blocks" documentation lists several benefits of hiding content (such as a layer list) behind a menu, including:
- People who use only the keyboard or a keyboard interface can reach content with fewer keystrokes. Otherwise, they might have to make dozens of keystrokes before reaching a link in the main content area. This can take a long time and may cause severe physical pain for some users.
comment created time in 4 days
Pull request review commentLeaflet/Leaflet
Improve popup and attribution accessibility
export var Popup = DivOverlay.extend({ if (this.options.closeButton) { var closeButton = this._closeButton = DomUtil.create('a', prefix + '-close-button', container); closeButton.href = '#close'; - closeButton.innerHTML = '×'; + // This is actually a button labelled "Close" for accessibility + closeButton.innerHTML = '<span role="button" aria-label="Close">×</span>';
Summary:
closeButton.href = '#close';
+closeButton.setAttribute('role', 'button');
+closeButton.setAttribute('aria-label', 'Close popup');
-closeButton.innerHTML = '×';
+closeButton.innerHTML = '<span aria-hidden="true">×</span>';
<details><summary>Before & After comparison of computed ARIA properties</summary>
</details>
@nkreer want to move forward with this? 🙏
comment created time in 4 days
Pull request review commentMaps4HTML/Web-Map-Custom-Element
Extends the <map> api and adds a context menu to map which makes use of the api
border-top: 1px solid transparent; border-bottom: 1px solid transparent; cursor: default;- outline: none;
It's unfortunate <menu> was abandoned, or that the plugin doesn't support submenus.
Would it make the implementation easier if we use the <details> element (also used in the layer control) where the open attribute could be toggled on hovering the menu items that have submenus? It'd require some additional CSS but I think it's doable.
<div class="mapml-contextmenu">
<!-- primary items goes here -->
<a class="mapml-contextmenu-item" href="#" role="button">
Toggle Controls (<kbd>T</kbd>)
</a>
...
<!-- primary item with submenu -->
<details>
<summary>
<a class="mapml-contextmenu-item" href="#" role="button">
Copy Coordinates (<kbd>C</kbd>)
</a>
</summary>
<div class="mapml-contextmenu mapml-submenu">
<!-- submenu items goes here -->
<a class="mapml-contextmenu-item" href="#" role="button">
map
</a>
...
</div>
</details>
<!-- primary items goes here -->
</div>
comment created time in 5 days
Pull request review commentMaps4HTML/Web-Map-Custom-Element
Extends the <map> api and adds a context menu to map which makes use of the api
border-top: 1px solid transparent; border-bottom: 1px solid transparent; cursor: default;- outline: none;
Allowing overflow would enable us to add more options to the menu and not have any of them clipped to the default size of the map element, but I think in most cases developers will increase the default dimensions so probably not an issue.
not 100% sure but removing the line seemed to fix it, maybe you might know why?
It's not immediately apparent to me why that is, but before digging deeper, there's substantial accessibility issues with the current implementation:
- The submenu cannot be accessed using a keyboard.
- The submenu's items come after other primary menu items in the DOM order. So opening a submenu and then tabbing would focus the next primary menu item, as opposed to the first item in that submenu.
- (Upsteam issue: There's no focus delegation on pressing Shift + F10 to open the context menu, this means that once the context menu has been opened using the keyboard shortcuts, tabbing will focus other map components before the menu items.)
comment created time in 5 days
Pull request review commentMaps4HTML/Web-Map-Custom-Element
Extends the <map> api and adds a context menu to map which makes use of the api
M.ContextMenu = L.Handler.extend({ html = ''; el.innerHTML = html + options.text;- el.href = '#';+ el.role="button";
Oh and we should probably not remove el.href = '#', the element will then be excluded from the tab order.
comment created time in 5 days
Pull request review commentMaps4HTML/Web-Map-Custom-Element
Extends the <map> api and adds a context menu to map which makes use of the api
M.ContextMenu = L.Handler.extend({ html = ''; el.innerHTML = html + options.text;- el.href = '#';+ el.role="button";
The Accessibility Object Model isn't implemented in all browsers (https://wicg.github.io/aom/caniuse.html), perhaps my comment was misleading, we should do setAttribute('role', 'button') instead.
comment created time in 5 days
issue commentMaps4HTML/Web-Map-Custom-Element
Can we settle on something better than <mm-mapp>?
I am willing but believe that the porting to
<map>will get forgotten or discounted.
In worst case scenario, we still have a beautiful map component that is easy to use for developers.
certain influential parties have recently dumped on the whole MapML project.
Interesting, it doesn't come as a total surprise, I'd like to learn more about their reasonings. Don't think we should be discouraged.
I would prefer to name the custom element mapml-viewer, because I have put my guts into this one. Would you be ok with that?
Yes.
comment created time in 5 days
pull request commentMaps4HTML/Web-Map-Custom-Element
Extends the <map> api and adds a context menu to map which makes use of the api
web-map.js:495
Uncaught TypeError: Cannot read property 'lat' of undefined
at HTMLMapElement.forward (web-map.js:495)
at NewClass._goForward (mapml.js:1137)
at HTMLAnchorElement.<anonymous> (mapml.js:1241)
at HTMLAnchorElement.handler (leaflet-src.js:2679)
Steps to reproduce:
- Pan map
- Reload
- Forward
comment created time in 5 days
issue commentMaps4HTML/Web-Map-Custom-Element
Can we settle on something better than <mm-mapp>?
@prushforth what's your opinion on this?
I suspect I haven't been clear enough on the severity of the accessibility issue of <map>, and it is my opinion that it would be ethically irresponsible to promote any usage of <map> at this point. The issue is equivalent of <map style="display: none"> to sighted users.
I suggest we update the README.md to include instructions and example code using <mm-mapp> (hence why I'm eager for a name change) with a note that it is the goal to have the same capabilities ported to <map>.
comment created time in 6 days
Pull request review commentMaps4HTML/Web-Map-Custom-Element
Extends the <map> api and adds a context menu to map which makes use of the api
M.QueryHandler = L.Handler.extend({ } } });++M.ContextMenu = L.Handler.extend({+ _touchstart: L.Browser.msPointer ? 'MSPointerDown' : L.Browser.pointer ? 'pointerdown' : 'touchstart',++ initialize: function (map) {+ L.Handler.prototype.initialize.call(this, map);++ //setting the items in the context menu and their callback functions+ this._items = [+ {+ text:"Back (B)",+ callback:this._goBack,+ },+ {+ text:"Forward (F)",+ callback:this._goForward,+ },+ {+ text:"Reload (R)",+ callback:this._reload,+ },+ '-',+ {+ text:"Toggle Controls (T)",+ callback:this._toggleControls,+ },+ {+ text:"Copy Coordinates (C)", + callback:this._copyCoords,+ },+ {+ text:"View Map Source (V)",+ callback:this._viewSource,+ },+ ];+ this._visible = false;++ this._container = L.DomUtil.create("div", "mapml-contextmenu", map._container);+ this._container.style.zIndex = 10000;+ this._container.style.position = "absolute";++ this._container.style.width = "150px";++ this._createItems();++ L.DomEvent+ .on(this._container, 'click', L.DomEvent.stop)+ .on(this._container, 'mousedown', L.DomEvent.stop)+ .on(this._container, 'dblclick', L.DomEvent.stop)+ .on(this._container, 'contextmenu', L.DomEvent.stop);+ },++ addHooks: function () {+ var container = this._map.getContainer();++ L.DomEvent+ .on(container, 'mouseleave', this._hide, this)+ .on(document, 'keydown', this._onKeyDown, this);++ if (L.Browser.touch) {+ L.DomEvent.on(document, this._touchstart, this._hide, this);+ }++ this._map.on({+ contextmenu: this._show,+ mousedown: this._hide,+ zoomstart: this._hide+ }, this);+ },++ removeHooks: function () {+ var container = this._map.getContainer();++ L.DomEvent+ .off(container, 'mouseleave', this._hide, this)+ .off(document, 'keydown', this._onKeyDown, this);++ if (L.Browser.touch) {+ L.DomEvent.off(document, this._touchstart, this._hide, this);+ }++ this._map.off({+ contextmenu: this._show,+ mousedown: this._hide,+ zoomstart: this._hide+ }, this);+ },++ _createItems: function () {+ var itemOptions = this._items,+ item,+ i, l;++ for (i = 0, l = itemOptions.length; i < l; i++) {+ this._items.push(this._createItem(this._container, itemOptions[i]));+ }+ },++ _goForward: function(e){+ let mapEl = e instanceof KeyboardEvent?this._map.options.mapEl:this.options.mapEl;+ mapEl.forward();+ },++ _goBack: function(e){+ let mapEl = e instanceof KeyboardEvent?this._map.options.mapEl:this.options.mapEl;+ mapEl.back();+ },++ _reload: function(e){+ let mapEl = e instanceof KeyboardEvent?this._map.options.mapEl:this.options.mapEl;+ mapEl.reload();+ },++ _toggleControls: function(e){+ let mapEl = e instanceof KeyboardEvent?this._map.options.mapEl:this.options.mapEl;+ mapEl._toggleControls(true);+ },++ _viewSource: function(e){+ let mapEl = e instanceof KeyboardEvent?this._map.options.mapEl:this.options.mapEl;+ mapEl.viewSource();+ },++ _copyCoords: function(e){+ const el = document.createElement('textarea');+ el.value = `Latitude:${e.latlng.lat}, Longitude:${e.latlng.lng}`;+ document.body.appendChild(el);+ el.select();+ document.execCommand('copy');+ document.body.removeChild(el);+ },++ _createItem: function (container, options, index) {+ if (options.separator || options === '-') {+ return this._createSeparator(container, index);+ }++ var itemCls = 'mapml-contextmenu-item',+ el = this._insertElementAt('a', itemCls, container, index),+ callback = this._createEventHandler(el, options.callback, options.context, options.hideOnSelect),+ html = '';++ el.innerHTML = html + options.text;+ el.href = '#';
These are generally button-like (i.e. doesn't initiate navigation); set attribute role="button".
comment created time in 6 days
Pull request review commentMaps4HTML/Web-Map-Custom-Element
Extends the <map> api and adds a context menu to map which makes use of the api
M.QueryHandler = L.Handler.extend({ } } });++M.ContextMenu = L.Handler.extend({+ _touchstart: L.Browser.msPointer ? 'MSPointerDown' : L.Browser.pointer ? 'pointerdown' : 'touchstart',++ initialize: function (map) {+ L.Handler.prototype.initialize.call(this, map);++ //setting the items in the context menu and their callback functions+ this._items = [+ {+ text:"Back (B)",
These items should preferably use the <kbd> element to denote keyboard user input, for example:
-text:"Back (B)"
+text:"Back (<kbd>B</kbd>)"
comment created time in 6 days
Pull request review commentMaps4HTML/Web-Map-Custom-Element
Extends the <map> api and adds a context menu to map which makes use of the api
border-top: 1px solid transparent; border-bottom: 1px solid transparent; cursor: default;- outline: none;
Is there a reason not to keep outlines here? This gets overridden: https://github.com/Maps4HTML/Web-Map-Custom-Element/blob/2edf1b110ab81d7b67c896a8ee7344a3f4ec3dd6/src/mapml.css#L73-L80
comment created time in 6 days
push eventahmadayubi/Web-Map-Custom-Element
commit sha e5952f6de58c08c26983cb8534ac41dd14baf4cf
Allow the context menu to overflow
push time in 6 days
push eventMalvoz/Web-Map-Custom-Element
commit sha a1484118e2c9b21d0d24b6aa638522ee3c3236fe
Make the map elements programmatically identifiable
push time in 6 days
create barnchMalvoz/Web-Map-Custom-Element
branch : programmatically-identifiable-map
created branch time in 6 days
issue commentLeaflet/Leaflet
Make the disabled state of zoom controls available to ATs
@mourner Sorry for the delay! I'm happy to defer this to @Augani.
comment created time in 6 days
push eventMalvoz/Web-Map-Custom-Element
commit sha d29ac65d4413bdbb7b06e8b795a47c4a5333db8b
Merge origin/master Conflicts: package.json test/karma.conf.js test/layerTests.js
commit sha 692cd60e9c2edb258017d2d59b309555c2a406f8
Merge origin/master Conflicts: package.json test/karma.conf.js test/layerTests.js
commit sha d512da303ca96d1d2e28edd8787aaea981899fd5
playwright testing added, karma testing moved to tempTests
commit sha d4f513f61ae655e58443b3b3402f1cb75e2cdc23
using Jest testing framework
commit sha a962b8c01a2bd941725f6bc318f10040fbfca925
added express server for development testing
commit sha 77270c8cde58e4da10ef9af398d24466f4fc50dc
jest fix
commit sha 8a512c6481ceb08ccbf69fe2f8634c61800b2f20
server files neatness
commit sha f21bf0c97432bbcf5e13fb7a252d39945657ee84
server.js moved
commit sha 4e9092316cb824bb0579cfe83e64daa6e88ea835
tests run one by one
commit sha b8315a996df0df5d87d8da78130f4b05edc980cf
readded karma for client side unit tests
commit sha cc6b95608c14c4ec2cf840a52c18dcc8dbac2e9e
jest framework fix, karma removed
commit sha e71b461dd229588223bc60aeeafb29328199c9c9
clean up
commit sha 11ca12b05c240f0b573371dde12b6d0cf050790e
converted rest of the test
commit sha d2e0579434faaae1133f6f8f64300d9f34839435
Fix drag and drop issue #96
commit sha 421249ea3d1f9d9b28de02574519d2d651514b50
Merge branch 'master' of https://github.com/Maps4HTML/Web-Map-Custom-Element
commit sha a9c552f1c40ce7792cb64ba93118b7c1e1f7c898
Fix karma issue
commit sha a6c0cc961ee8883e4afe7df4388f2131dbd0ac55
Fix karma firefox launcher issue
commit sha b2eaa45fe9f17fc12ebef40fd0251c3b8441bb38
needed for merge with upstream
commit sha f00690dea737a4124958f38982292a6604ca34b4
needed for upstream
commit sha 47dd50f9bd9f6b8eb699e011595b391ce7f1fea3
update with upstream and remove karma config
push time in 6 days
startedpostcss/postcss-100vh-fix
started time in 8 days
push eventMalvoz/responsive-area-coords
commit sha d577e7f1db3523aeaa00fc8985a1434c8affc8be
Update index.html
push time in 9 days
PR opened Maps4HTML/MapML-Proposal
Update links to <map> and <layer> element definitions to accommodate for the merging of the Map Element Proposal into the MapML spec.
pr created time in 9 days
push eventMalvoz/responsive-area-coords
commit sha debc7b1bf4e42e2b22cce2c10bf659befe3bbfd2
Update index.html
commit sha 376d3e4352cbe355d82382cffb1d0834fdffbe93
Merge branch 'master' of https://github.com/Malvoz/responsive-area-coords
push time in 9 days
push eventMalvoz/responsive-area-coords
commit sha caa7b7180ad60709480fb1ef568fd94c9f74b4d5
Update README.md
push time in 9 days
push eventMalvoz/responsive-area-coords
commit sha ef406fd27ee29b129a07ca079836ea24272fa2b7
Update index.html
push time in 9 days
push eventMalvoz/responsive-area-coords
commit sha f8f23ad55d858c25a65cb1c8963a3218b7191bca
Update index.html
push time in 9 days
push eventMalvoz/responsive-area-coords
commit sha 27ed8593759f5b19b8aaa23907a92fb85954681f
Update index.html
push time in 9 days
issue commentMaps4HTML/MapML
@prushforth I've updated the demo page, and included a list of issues with my approach (CSS modification of <area>): https://malvoz.github.io/responsive-area-coords/. The HTML/CSS has been simplified to its bare minimum, I think it should be more readable now.
comment created time in 9 days
push eventMalvoz/responsive-area-coords
commit sha 332eb768b3c034ac233e0f0300747fc39f5920d1
Update index.html
push time in 9 days
push eventMalvoz/responsive-area-coords
commit sha 4b81372ec6ca39f6693194779060af7af75b0dea
Update index.html
push time in 9 days
push eventMalvoz/responsive-area-coords
commit sha f9c187e3f15665180c66795b3bac0df48fa10da7
Update index.html
push time in 9 days
push eventMalvoz/responsive-area-coords
commit sha bc78afbeaa0c003042fb2b6a74b4dcc641959938
Update index.html
push time in 9 days
push eventMalvoz/responsive-area-coords
commit sha 6fec411697c25f975af4cb678d75e184b82a668b
Update index.html
push time in 9 days
push eventMalvoz/responsive-area-coords
commit sha 46c51a74f9f786fb43b520d2f1de965896e11b03
Update index.html
push time in 9 days
push eventMalvoz/responsive-area-coords
commit sha 4bf3864a922d6ecb50dd50d1cb377bd1b516e14d
Update
push time in 9 days
PR opened Maps4HTML/MapML
For performance reasons, we should use multi-page references (https://html.spec.whatwg.org/multipage/#the-thing) everywhere as opposed to the single-page version (https://html.spec.whatwg.org/#the-thing). The single-page loads in a lot slower.
In fact it seems WHATWG themselves mostly link to multi-page(s), and I have seemingly been inconsistent with this, prior to this PR.
pr created time in 14 days
Pull request review commentMaps4HTML/Web-Map-Custom-Element
Implementing a read-only `<layer->`.extent property
M.TemplatedImageLayer = L.Layer.extend({ axis = inputs[i].getAttribute("axis"), name = inputs[i].getAttribute("name"), position = inputs[i].getAttribute("position"),- select = (inputs[i].tagName.toLowerCase() === "select");+ select = (inputs[i].tagName.toLowerCase() === "select"),+ min = inputs[i].getAttribute("min") || min,
https://html.spec.whatwg.org/multipage/form-elements.html#the-select-element:
Global attributes
autocomplete— Hint for form autofill featuredisabled— Whether the form control is disabledform— Associates the element with a form elementmultiple— Whether to allow multiple valuesname— Name of the element to use for form submission and in the form.elements APIrequired— Whether the control is required for form submissionsize— Size of the control
comment created time in 14 days
issue closedMaps4HTML/MapML
Merge the <map> and <layer> elements into this specification
It is confusing to have two specifications which represent a single proposal. In MapML, there exist several instances of HTML elements which have proposed new attributes (as well as some new elements). This makes it not really worthwhile to separate the proposal for extending <map> and adding <layer> and IIRC, it has been my intention to remove the proposal to extend <area>. That removal could be done as part of the merge.
Ideally, as a community, we will become logical maintainers of existing <img> <map> and <area> elements' client side image map functionality, hopefully also providing support for responsive image maps via the <picture> element or CSS, TBD.
closed time in 14 days
prushforthissue commentMaps4HTML/MapML
Merge the <map> and <layer> elements into this specification
The main issue was resolved by https://github.com/Maps4HTML/MapML/pull/78.
IIRC, it has been my intention to remove the proposal to extend
<area>. That removal could be done as part of the merge.
@prushforth the proposal to extend <area> was not removed in #78, want to open a new issue for that?
comment created time in 14 days
pull request commentMaps4HTML/HTML-Map-Element
Warn users that the spec is outdated
Hm, I'm not sure, here's the Github resources on archiving a repo: https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/archiving-a-github-repository.
Anyhow, it is possible to unarchive a repo once it's been archived (according to this), so we could just try, I suppose.
comment created time in 14 days
pull request commentMaps4HTML/HTML-Map-Element
Warn users that the spec is outdated
Nice! I believe it is safe to archive this repository now, making it read-only. That's optional of course, but I don't see any reasons to keep this active.
comment created time in 14 days
issue openedMaps4HTML/MapML
`referrerpolicy` should be defined in <layer>'s content attributes
The referrerpolicy attribute.
Also see https://github.com/w3c/webappsec-referrer-policy/issues/121.
created time in 14 days
issue openedMaps4HTML/MapML
Lowercase projection identifiers?
In the spec, and in example usage elsewhere the projection attribute uses uppercase identifiers such as projection="OSMTILE", while I understand the convention may be to spell it out that way, I think when it comes to HTML we should keep it lowercase. You rarely come across crossorigin="ANONYMOUS" or type="VIDEO/MP4" for example, in the wild.
created time in 14 days
issue openedMaps4HTML/MapML
Remove the requirement for authors to provide dimensions for the map element?
As I understand it, there is a requirement for authors to provide the dimensions for the map element (with no description for how UAs should handle cases when they're missing):
The required
widthandheightattributes of themapelement allow the HTML author to explicitly set the size of the rectangular area devoted to the map. If the attributes are not set directly by the HTML author, their values must be established via CSS width and height properties or through script. In any case, these values must be established in order for themapto process and display its content. The map can be re-sized via changes to those properties.
In HTML dimension attributes "may" be specified: https://html.spec.whatwg.org/#dimension-attributes.
Instead, I think we can define a default object size (this is 300x150px for iframes), which I think would better match the expectations from authors.
created time in 14 days
push eventMalvoz/MapML-Proposal
commit sha f8866400525be9a375ac8e71925911b6f953c865
Improve readability - Remove bold text per Simon's feedback - Rename headings that are hard to digest - Add syntax highlighting to blocks of code
commit sha 2d519b6c1a8f14fd02bc42ea670b8212738f13b9
Update README.md
commit sha 71a907351db6e456162e94f05c241194bb6e522e
Update README.md
commit sha 4a8d5926b407470c5df5615b514e23875d478acb
Update README.md
commit sha fafff28a467050ce49a09c4b831fd5e39c535d95
Update README.md
commit sha ae6686346e48e4ba02179c488683d6877f529fc0
Update README.md
commit sha 2de6d8dec6cc15cd9a3b01a0516b273ba3d5cc57
Merge pull request #19 from Malvoz/readability Improve readability
push time in 14 days
pull request commentMaps4HTML/HTML-Map-Element
Warn users that the spec is outdated
@prushforth We'll also have to transfer Github issues to the MapML repo!
comment created time in 15 days
PR opened Maps4HTML/HTML-Map-Element
Because this spec has been merged into the MapML spec (https://github.com/Maps4HTML/MapML/pull/78), we should add a warning that this is outdated (similar to how it's done here and here), and refer users to the MapML specification instead.
pr created time in 15 days
push eventMalvoz/MapML
commit sha 4be1189634aa99492b21b57d0a7c7fd7233e92e7
Merge in the <map> element proposal (#78)
push time in 15 days
pull request commentMaps4HTML/MapML
Merge in the <map> element proposal
Notably I changed all instances of: "Content model: Empty" to "Content model: Nothing", however I'm not 100% sure if they mean the same thing, I couldn't find the W3C HTML definition of "Empty".
comment created time in 15 days
PR opened Maps4HTML/MapML
The way I've approached this, to merge in the <map> (and CO) element proposal, isn't very sophisticated, in a nutshell I have copied the contents (and some CSS) from the map element proposal into the corresponding section in the MapML specification (and changed link references accordingly).
I understand if you had different plans, or if you don't agree with the new document structure, or think that some sections have to be rewritten, taking into consideration the addition of the map element proposal's content. I'd take no offense if you wish to disregard this PR.
With that said I think this works and (for the most part) makes sense.
pr created time in 15 days
push eventMalvoz/MapML
commit sha 9fe6904cf2243b491427a21ee3363cf3bba4d4ce
Remove deprecated input types xmin,ymin,xmax,ymax,projection. (#77) * Remove deprecated input types xmin,ymin,xmax,ymax,projection. Remove action,enctype,method attributes. Update description of <extent> element. Resolves #76 Overal, description of <extent> still needs improvement, because since the removal of the action attribute, the meaning of extent has shifted slightly. Now that the requests for content are driven by link templates and associated inputs, an extent is represented the union of the extents of the templates, which is dictated by the min/ max values of the axes of the location inputs. * Get rid of reference to obsolete action attribute.
push time in 15 days
PR closed EsriCanada/WCAG-BasicViewer
As an aside, the link takes you to the WCAG map demo but the map never loads. I see some failing XHR's in my dev tools network inspector, might be it. It'd be great to be able to view the demo...
pr closed time in 17 days
PR closed csswizardry/csswizardry.github.com
Google's Web Light may transform secure pages, as explained in https://bugs.chromium.org/p/chromium/issues/detail?id=941948#c8, thus it'd be inaccurate to say that Cache-Control: no-transform is ineffective over https (notably Web Light does respect the no-transform directive).
pr closed time in 17 days
PR closed w3c/webappsec-clear-site-data
Spec is currently pointing to https://tools.ietf.org/html/rfc7230https#section-3.2.6 in several places.
pr closed time in 17 days
PR closed pollfish/docs
Change JQuery version from 1.11.2 to 3.4.1 .
Motivation: Developers tend to copy/paste from examples, and JQuery 1.11.2 has known security vulnerabilities, see https://snyk.io/test/npm/jquery/1.11.2 for details.
Also, the newer version is 6kb~ smaller 🎉
pr closed time in 17 days
PR closed GoogleChrome/samples
With the assumption that https://emerald-eon.appspot.com/ is down permanently, this PR removes the link and description to the server-side demo.
pr closed time in 17 days
PR closed w3c/websec
Mainly updating links (e.g. http://www.w3.org/TR/powerful-features/ is now https://www.w3.org/TR/secure-contexts/), changed all http links to https. Also added links to the specifications of Expect-CT, SRI, HPKP, HSTS.
pr closed time in 17 days
PR closed w3c/webappsec
I'm so sorry for a lenghty PR description... this PR changes:
- [x] Point all outgoing links to
https://. - [x] Change the CSP3 spec link from the level 2 to the level 3 URL.
- [x] List specs alphabetically within their categories (because slight OCD?).
- [x] Update specification's recommendation statuses (e.g. from FPWD to WD). As specified in the headline of the corresponding spec version.
- [x] (!) Added a "Non-Recommendation-Track" category for obsolete or no longer actively maintained specs that fall under webappsec, this included moving some already listed specs to that category as they have obsolete-notices in them. If this is unwanted, remove that category and all the specs with it. If you want to keep this category, is the naming "Non-Recommendation-Track" (inspired by https://www.w3.org/2011/webappsec/) viable in this context?
The following specifications that have been added I found in https://www.w3.org/2011/webappsec/ and https://github.com/w3c?q=webappsec:
- CORS for Developers (added as Non-Recommendation-Track)
- CSP: Cookie Controls (added as Non-Recommendation-Track)
- CSP: Embedded Enforcement
- Feature-Policy
- Fetch Metadata Request Headers
- Suborigins
- Uniform Messaging Policy Level 1 (added as Non-Recommendation-Track)
- User Interface Security and the Visibility API
<!--
Questions:
Does https://w3c.github.io/webauthn/ (Level 1: https://www.w3.org/TR/webauthn-1 and level 2: https://www.w3.org/TR/webauthn-2/) belong to webappsec? If so, I can add it.
If the "Non-Recommendation-Track" category is kept, should these be added (from https://www.w3.org/2011/webappsec/):
- "Security on the Web": https://www.w3.org/2001/tag/2011/02/security-web.html
- "Cross-Origin Resource Sharing": https://www.w3.org/TR/cors/ which is succeeded by: https://fetch.spec.whatwg.org/#http-cors-protocol
Also, I should point out that I probably have made incorrect conclusions about which specifications are "Complete", "Stable" or "WIP" for the specs I added or for what has changed since someone else reviewed.
-->
pr closed time in 17 days
PR closed danehrlich1/very-secure-apache
Correct the Header set syntax.
+ change vr policy to xr per https://github.com/w3c/webappsec-feature-policy/blob/master/features.md#standardized-features
pr closed time in 17 days
issue commentMaps4HTML/MapML
Remove mentions of deprecated input types
This line has a mention of extent@action:
https://github.com/Maps4HTML/MapML/blob/ec2a4ca58baf48fdedcf0b5d92421237eb11431a/spec/index.html#L1280
comment created time in 18 days
issue openedMaps4HTML/MapML
Remove mentions of deprecated input types
https://maps4html.org/MapML/spec/#the-input-element:
There must be at least four input element children of the extent element, including only one of each of the following
typeinputs:xmin,ymin,xmaxandymax.
According to the "Changes since the previous draft" section, these (and projection) have all been deprecated, so this text should be removed.
I suppose this means there is no requirement of minimum amount of input elements now?
Also probably want to remove (or at least comment out in HTML) the strikethrough text in this table: https://maps4html.org/MapML/spec/#attr-input-type-keywords.
created time in 18 days
push eventMalvoz/HTML-Map-Element
commit sha 573cb6a7c98e3a26a89846b179530150306522dd
Fix #32 (#50)
push time in 21 days
push eventMalvoz/MapML
commit sha 37b7b4fec7c059c56b04f8d8c5018ff45389c223
Close out a few minor issues - Fix #66 - Fix #67 - Fix #68
commit sha 2fd11aaf630b4130f2cd96e84bd4c4a7b960766e
Remove redundant link
commit sha 833e0eeddc85b9f2e950ad3799431ae72c0a1b3d
Merge pull request #75 from Malvoz/fix-minor-issues Close out a few minor issues
push time in 21 days
push eventMalvoz/HTML-Map-Element
commit sha 8cc401f25b5dcb068683e800837c531b4ee08502
Make (the latest version) of HTML-Map-Element spec more readable (#20) The https://github.com/Maps4HTML/HTML-Map-Element/pull/19 PR did not update the **latest** spec, this fixes that.
commit sha 67e2e267aeb5cc149b177374b765a607092183d1
Point links to HTTPS (#21)
commit sha 9855f02dc6cc954975f64e6738491fd2cbe51c8c
Add `referrerpolicy` to `<layer>`'s content attributes (#26) * Add `referrerpolicy` to <layer>'s content attributes Closes #23. * `referrerpolicy` IDL
commit sha ad6e51fbf67412518fbafd0e57a99fbfbe71e726
<layer> crossorigin attribute (#28) * Add `crossorigin` to `<layers>`'s content attributes * crossOrigin IDL * Update index.html * Fix indentation * Add `crossorigin` to <layer>s in <map> examples
commit sha 195b066d596f7171d616b7b14072c7b90aa61d57
referrerPolicy IDL (#27) * Add `referrerpolicy` to <layer>'s content attributes Closes #23. * `referrerpolicy` IDL * referrerPolicy IDL Co-authored-by: Peter Rushforth <[email protected]>
push time in 21 days
Pull request review commentMaps4HTML/MapML
<h5 id="the-coordinates-element">4.2.20 The <code><coordinates></code> ele </p> <p> The positions in the <code>coordinates</code> element define the location of the feature. For <code>geometry</code> elements whose value is , <code>linestring</code>, <code>multipoint</code> or <code>multilinestring</code>, this- specification neither assigns nor requires special ordering or other constraints, apart from the axis order described above. For <code>geometry></code> elements whose value is a <code>polygon</code> or+ specification neither assigns nor requires special ordering or other constraints, apart from the axis order described above. For <code>geometry</code> elements whose value is a <code>polygon</code> or <code>multipolygon</code> element, the descendant <code>coordinates</code> elements must follow additional constraints. </p>- <h5 id="styling">4.3 Styling</h5>+ <h2 id="styling">4.3 Styling</h2> <p>MapML documents can be styled with Cascading Style Sheets.</p>+ <p class="note"><a href="https://github.com/Maps4HTML/MapML/issues/71">Issue 71: How does styling MapML with CSS work?</a></p>
Added a note with a link to the discussion of how CSS should work with MapML for more exposure so people can discuss. If you don't want to include this here, let me know.
comment created time in 21 days
Pull request review commentMaps4HTML/MapML
<h5 id="the-properties-element">4.2.18 The <code><properties></code> eleme </dl> <p>- A <code>feature</code> element can have zero or one <code>properties</code> element, which contains zero or more unknown elements, whose content is text. Note: it would be better to a content model of property child elements whose- values could be HTML. TODO.
Removed this note, as there is already a "TODO allow HTML content." in the content model description.
comment created time in 21 days
push eventMalvoz/MapML
commit sha 2fd11aaf630b4130f2cd96e84bd4c4a7b960766e
Remove redundant link
push time in 21 days
Pull request review commentLeaflet/Leaflet
Improve popup and attribution accessibility
export var Popup = DivOverlay.extend({ if (this.options.closeButton) { var closeButton = this._closeButton = DomUtil.create('a', prefix + '-close-button', container); closeButton.href = '#close'; - closeButton.innerHTML = '×'; + // This is actually a button labelled "Close" for accessibility + closeButton.innerHTML = '<span role="button" aria-label="Close">×</span>';
The above suggestion would also be consistent with how it's done for zoom controls:
https://github.com/Leaflet/Leaflet/blob/71f73785c91f50821cee4f590c41b14eeddf394c/src/control/Control.Zoom.js#L91-L92
comment created time in 21 days
Pull request review commentLeaflet/Leaflet
Improve popup and attribution accessibility
export var Popup = DivOverlay.extend({ if (this.options.closeButton) { var closeButton = this._closeButton = DomUtil.create('a', prefix + '-close-button', container); closeButton.href = '#close'; - closeButton.innerHTML = '×'; + // This is actually a button labelled "Close" for accessibility + closeButton.innerHTML = '<span role="button" aria-label="Close">×</span>';
The HTML validator reports:
Error: An element with the attribute
role=buttonmust not appear as a descendant of theaelement.
I suggest setting role="button" on the <a> element instead.
comment created time in 21 days
issue openedLeaflet/Leaflet
Make the disabled state of zoom controls available to ATs
The leaflet-disabled class is set on zoom controls:
https://github.com/Leaflet/Leaflet/blob/71f73785c91f50821cee4f590c41b14eeddf394c/src/control/Control.Zoom.js#L102-L104
and styles are applied to convey a "disabled" state:
https://github.com/Leaflet/Leaflet/blob/71f73785c91f50821cee4f590c41b14eeddf394c/dist/leaflet.css#L310-L314
the zoom controls remain operable however, and the state is not available to assistive technologies such as screen readers. There are at least 3 ways to convey the disabled state of buttons:
tabindex="-1"- Bing Maps for example, uses this approach. Though it may be confusing to keyboard-only users, as the button is then removed from the tab order.- The
disabledattribute - Not applicable (Leaflet uses<a role="button">as opposed to<button>). aria-disabled="true"- May or may not be as well supported as a negativetabindexor thedisabledattribute, it does seem to be well supported though.
Whether tabindex="-1" or aria-disabled="true|false" is used (I personally vote for the latter), it could be set in addition to the leaflet-disabled class for backwards compatibility.
<hr>
Implementing this may satisfy (parts of) the WCAG 2.1 Success Criterion: 1.3.1 Info and Relationships and 4.1.2 Name, Role, Value for the zoom controls.
created time in 22 days
startedaccessibilitysupported/a11ysupport.io
started time in 22 days
issue commentMaps4HTML/MapML
Consider making MapML an extension to HTML
+html suffix will need to be registered first, and may be starting a new suffix, akin to +json etc.
Looks like I was mistaken here. :-) I thought +foo was a convention
There was a similar consideration for HTML Modules to use a +html suffix, while they concluded not to use such a suffix, nobody questioned its validity as response to this and the following comment, which at least indicates that text/mapml+html would be valid.
comment created time in 22 days
issue commentMaps4HTML/HTML-Map-Element
Remove the requirement for authors to provide dimensions for the map element?
@prushforth you could uncomment/re-use these demo styles to override the new default CSS to get the "full viewport" look.
comment created time in 22 days
Pull request review commentMaps4HTML/Web-Map-Custom-Element
Add native appearance to map element(s)
export class MmMapp extends HTMLElement { constructor() { // Always call super first in constructor super();- // SUPER IMPORTANT TO SET THIS UP FIRST SO THAT LEAFLET ISN'T WORKING WITH- // A HEIGHT=0 BOX BY DEFAULT.- this.style.display = "block";+ let tmpl = document.createElement('template'); tmpl.innerHTML = `<link rel="stylesheet" href="${new URL("leaflet.css", import.meta.url).href}">` + `<link rel="stylesheet" href="${new URL("leaflet.fullscreen.css", import.meta.url).href}">` + `<link rel="stylesheet" href="${new URL("mapml.css", import.meta.url).href}">`;+ let shadowRoot = this.attachShadow({mode: 'open'}); this._container = document.createElement('div');- // you have to include this otherwise you have to use quirks mode,
I believe this is the current situation, the shadowRoot host element has display: contents (i.e. it doesn't participate in box layout):
https://github.com/Maps4HTML/Web-Map-Custom-Element/blob/5f4ebde5b7d2e82fa8468687def65c35ac5b2de4/src/web-map.js#L104-L106
comment created time in 22 days
issue commentMaps4HTML/HTML-Map-Element
Remove the requirement for authors to provide dimensions for the map element?
Where's the above code in use? We deleted that custom CSS (map element inheriting height) in https://github.com/Maps4HTML/Web-Map-Custom-Element/pull/108.
You can set the dimensions like so:
map {
width: 100%;
height: 100%;
}
or in pixels. The idea is also that the author should be able to set the width and height attributes in CSS pixels, on the <map> element (where CSS takes precedence). But I don't think we're doing that yet with attributeChangedCallback(?).
comment created time in 22 days
push eventMalvoz/Web-Map-Custom-Element
commit sha 5f4ebde5b7d2e82fa8468687def65c35ac5b2de4
Add native appearance to map element(s) (#108) * Add native appearance to map element(s) - Add default size of 300x150px to the map element(s) - Restore default UA outline styles for accessible sequential navigation - Enable author controlled background-color on the map element(s) - Pre-style to mitigate FOUC * Address feedback
push time in 23 days
Pull request review commentMaps4HTML/Web-Map-Custom-Element
Add native appearance to map element(s)
export class WebMap extends HTMLMapElement { constructor() { // Always call super first in constructor super();- this.style.display = "block";+ let tmpl = document.createElement('template'); tmpl.innerHTML = `<link rel="stylesheet" href="${new URL("leaflet.css", import.meta.url).href}">` + `<link rel="stylesheet" href="${new URL("leaflet.fullscreen.css", import.meta.url).href}">` + `<link rel="stylesheet" href="${new URL("mapml.css", import.meta.url).href}">`; const rootDiv = document.createElement('div');- // without this you have to omit the doctype, which is bad because
Same as https://github.com/Maps4HTML/Web-Map-Custom-Element/pull/108#discussion_r453903771.
comment created time in 23 days
Pull request review commentMaps4HTML/Web-Map-Custom-Element
Add native appearance to map element(s)
export class MmMapp extends HTMLElement { constructor() { // Always call super first in constructor super();- // SUPER IMPORTANT TO SET THIS UP FIRST SO THAT LEAFLET ISN'T WORKING WITH- // A HEIGHT=0 BOX BY DEFAULT.- this.style.display = "block";+ let tmpl = document.createElement('template'); tmpl.innerHTML = `<link rel="stylesheet" href="${new URL("leaflet.css", import.meta.url).href}">` + `<link rel="stylesheet" href="${new URL("leaflet.fullscreen.css", import.meta.url).href}">` + `<link rel="stylesheet" href="${new URL("mapml.css", import.meta.url).href}">`;+ let shadowRoot = this.attachShadow({mode: 'open'}); this._container = document.createElement('div');- // you have to include this otherwise you have to use quirks mode,
This was setting the map element to a height of 100%, that's unlike any standard element, I believe it also required inheriting height from the body, which is probably not what authors would expect. It does require setting html { height|min-height: 100%; } though. Which I think is better, it's not unlike the behavior of <div>s.
comment created time in 23 days