<!-- 
RSS generated by JIRA (9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b) at Mon Feb 12 09:21:34 CET 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>Magnolia - Issue tracker</title>
    <link>https://jira.magnolia-cms.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-uk</language>    <build-info>
        <version>9.4.2</version>
        <build-number>940002</build-number>
        <build-date>19-01-2023</build-date>
    </build-info>


<item>
            <title>[MGNLUI-4934] Offer list of keyboard shortcuts</title>
                <link>https://jira.magnolia-cms.com/browse/MGNLUI-4934</link>
                <project id="10625" key="MGNLUI">Magnolia UI</project>
                    <description>&lt;p&gt;Epic: Define and implement a small set of easy to remember keyboard shortcuts for main actions in the Magnolia 6 user interface.&lt;/p&gt;

&lt;p&gt;High-level tasks&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;Define a modern concept. Inspiration: &lt;a href=&quot;https://medium.com/@sashika/j-k-or-how-to-choose-keyboard-shortcuts-for-web-applications-a7c3b7b408ee&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;J, K, or How to choose keyboard shortcuts for web applications&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;Review &lt;a href=&quot;https://documentation.magnolia-cms.com/display/DOCS60/Keyboard+shortcuts&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;current shortcuts&lt;/a&gt;. See &lt;a href=&quot;https://jira.magnolia-cms.com/browse/DOCU-1728&quot; title=&quot;Check keyboard shortcut functionality&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DOCU-1728&quot;&gt;&lt;del&gt;DOCU-1728&lt;/del&gt;&lt;/a&gt; for what works and what doesn&apos;t in Magnolia 6.&lt;/li&gt;
	&lt;li&gt;Add new shortcuts for new actions introduced in Magnolia 6 such as moving focus to the Find Bar.&lt;/li&gt;
	&lt;li&gt;Add visual cues for shortcuts so that users can discover them in the UI.&#160;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;Actual planned keyboard shortcuts:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://wiki.magnolia-cms.com/display/UX/M6+Keyboard+navigation&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://wiki.magnolia-cms.com/display/UX/M6+Keyboard+navigation&lt;/a&gt;&lt;/p&gt;</description>
                <environment></environment>
        <key id="44750">MGNLUI-4934</key>
            <summary>Offer list of keyboard shortcuts</summary>
                <type id="13" iconUrl="https://jira.magnolia-cms.com/secure/viewavatar?size=xsmall&amp;avatarId=10887&amp;avatarType=issuetype">Epic</type>
                                            <priority id="3" iconUrl="https://jira.magnolia-cms.com/images/icons/priorities/major.svg">Major</priority>
                        <status id="10433" iconUrl="https://jira.magnolia-cms.com/images/icons/statuses/generic.png" description="This issue has been evaluated by development and accepted to be planned in.">Accepted</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="avongunten">Anja von Gunten</assignee>
                                    <reporter username="ahietala">Antti Hietala</reporter>
                        <labels>
                    </labels>
                <created>Thu, 30 Apr 2015 17:13:03 +0200</created>
                <updated>Thu, 25 Nov 2021 09:20:36 +0100</updated>
                                                                                <due></due>
                            <votes>5</votes>
                                    <watches>9</watches>
                                                                                                                <comments>
                            <comment id="113261" author="weder" created="Thu, 24 Sep 2015 15:11:17 +0200"  >&lt;p&gt;I see what you mean. My idea was indeed to come up with a first, convincing set, then expand on this and/or adjust it while we go. However, &lt;b&gt;it will be difficult to &lt;em&gt;change&lt;/em&gt; a mapping once we&apos;ve defined it&lt;/b&gt;. Users will hate it, if keyboard commands they&apos;re used to change in a new release.&lt;/p&gt;

&lt;p&gt;Solutions I see are:&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;We indeed define a small set first, but take great care to choose only shortcuts that seem to be common by analysing often used tools. That raises the probability we&apos;ll come up with a stable set right away.&lt;/li&gt;
	&lt;li&gt;We invest more time into a conclusive set of shortcuts.&lt;/li&gt;
	&lt;li&gt;We invest into a UI allowing users to change shortcuts. Apart from the convenience and customization this brings, it would allow us to change mappings later on. If users are not satisfied with our changes, they could define their own shortcuts, i.e. revert back to the mappings they learned.&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;In addition, we might also want to &lt;b&gt;consider investing into a &quot;revealing&quot; function that visually shows all keyboard shortcuts&lt;/b&gt; of all actions and UI elements currently in view (similar to pressing &quot;TAB&quot; in Asana task manager).&lt;/p&gt;</comment>
                            <comment id="113355" author="apchelintcev" created="Mon, 28 Sep 2015 14:57:08 +0200"  >&lt;p&gt;I&apos;d also revisit the strategy we currently have for shortcuts and try to eliminate hacks/inconsistencies, i.e:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;Some shortcuts are hardcoded on the client-side of MagnoliaShell component (e.g. 1-3 for shell apps and 0/9)&lt;/li&gt;
	&lt;li&gt;Some shortcuts are partially hardcoded in dialog/editor impls (enter/escape)&lt;/li&gt;
	&lt;li&gt;Lots of components have to wrapped into Panel&apos;s&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;One option we could research (just a suggestion) is the jQuery&apos;s hotkeys plugin - looks pretty promising, allows to bind a shortcut an id/classname etc. &lt;/p&gt;</comment>
                            <comment id="177254" author="mgeljic" created="Tue, 8 Jan 2019 12:07:16 +0100"  >&lt;p&gt;pasting here too now that this is revived as an epic; here&apos;s a reference read on single-key&#160;shortcuts: &lt;a href=&quot;https://medium.com/@sashika/j-k-or-how-to-choose-keyboard-shortcuts-for-web-applications-a7c3b7b408ee&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;J, K, or How to choose keyboard shortcuts for web applications&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="178184" author="creichenbach" created="Mon, 21 Jan 2019 13:27:59 +0100"  >&lt;p&gt;When defining keyboard shortcuts, I strongly suggest consulting the &lt;a href=&quot;https://www.w3.org/TR/WCAG21/#keyboard-accessible&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;official W3 content accessibility guidelines section on keyboards (2.1)&lt;/a&gt;. There are just 4 rules and pretty reasonable IMO, as well as up-to-date (published mid-2018).&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10160">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="64067">MGNLUI-4958</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="90785">MGNLUI-6226</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="72963">MGNLUI-4974</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10021">
                    <name>duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                        <issuelink>
            <issuekey id="32425">MGNLUI-1883</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10010">
                    <name>relation</name>
                                                                <inwardlinks description="is related to">
                                                        </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_14166" key="com.okapya.jira.checklist:checklist">
                        <customfieldname>Acceptance criteria</customfieldname>
                        <customfieldvalues>
                            
        <checklist>
        <![CDATA[
                            




                
                                    <div class="o-completion" style="display: flex; flex-shrink: 0;"><span  class="aui-lozenge aui-lozenge-complete" style="font-size: 12px; font-weight: normal; display: flex; flex-direction: row; align-items: center;" ><span style="padding-right: 4px; vertical-align: middle;"><svg width="15" height="15" viewBox="0 0 15 15" xmlns="http://www.w3.org/2000/svg" fill="white"><path clip-rule="evenodd" d="m10.41037,3.42544l-7.86501,0c-0.72395,0 -1.31084,0.58688 -1.31084,1.31084l0,7.86508c0,0.7239 0.58689,1.3108 1.31084,1.3108l7.86501,0c0.724,0 1.3109,-0.5869 1.3109,-1.3108l0,-7.86508c0,-0.72396 -0.5869,-1.31084 -1.3109,-1.31084zm-7.86501,-0.65542c-1.08593,0 -1.96626,0.88032 -1.96626,1.96626l0,7.86508c0,1.0859 0.88033,1.9662 1.96626,1.9662l7.86501,0c1.086,0 1.9663,-0.8803 1.9663,-1.9662l0,-7.86508c0,-1.08594 -0.8803,-1.96626 -1.9663,-1.96626l-7.86501,0z" fill-rule="evenodd"/><path d="m5.09049,10.18526l-1.82767,-1.82766l-0.78479,0.78479l2.61246,2.61246l5.38758,-5.38754l-0.78483,-0.78479l-4.60275,4.60274z"/></svg></span><span>Empty</span></span></div>
                        ]]>
    </checklist>


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10111" key="com.atlassian.jira.toolkit:reporterdomain">
                        <customfieldname>Company</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>magnolia-cms.com</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10031" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Thu, 24 Sep 2015 15:11:17 +0200</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_12730" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_14151" key="com.atlassian.jira.toolkit:message">
                        <customfieldname>Docu info</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10249" key="com.pyxis.greenhopper.jira:gh-epic-color">
                        <customfieldname>Epic Colour</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>ghx-label-13</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10247" key="com.pyxis.greenhopper.jira:gh-epic-label">
                        <customfieldname>Epic Name</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Keyboard shortcuts</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10061" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comm is not jira-dev</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10071" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last participant</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>avongunten</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_13136" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            5 years, 3 weeks, 6 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10020" key="com.atlassian.jira.toolkit:attachments">
                        <customfieldname>Number of attachments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10150" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname>Number of comments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>4.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>apchelintcev</customfieldvalue>
            <customfieldvalue>weder</customfieldvalue>
            <customfieldvalue>avongunten</customfieldvalue>
            <customfieldvalue>ahietala</customfieldvalue>
            <customfieldvalue>creichenbach</customfieldvalue>
            <customfieldvalue>mgeljic</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_10833" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|hzzyu8:4zoxg</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10244" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14145" key="com.intenso.jira.issue-templates:issue-templates-customfield">
                        <customfieldname>Template</customfieldname>
                        <customfieldvalues>
                            


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_15131" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Time in Discovery</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    </customfields>
    </item>
</channel>
</rss>