Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(105)

Side by Side Diff: chrome/browser/resources/settings/settings_menu/settings_menu.html

Issue 2651293003: Make MD Settings side bar keyboard accessible. (Closed)
Patch Set: Faster Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <link rel="import" href="chrome://resources/cr_elements/icons.html"> 1 <link rel="import" href="chrome://resources/cr_elements/icons.html">
2 <link rel="import" href="chrome://resources/html/action_link.html">
2 <link rel="import" href="chrome://resources/html/assert.html"> 3 <link rel="import" href="chrome://resources/html/assert.html">
3 <link rel="import" href="chrome://resources/html/polymer.html"> 4 <link rel="import" href="chrome://resources/html/polymer.html">
4 <link rel="import" href="chrome://resources/polymer/v1_0/iron-icon/iron-icon.htm l"> 5 <link rel="import" href="chrome://resources/polymer/v1_0/iron-icon/iron-icon.htm l">
5 <link rel="import" href="chrome://resources/polymer/v1_0/paper-menu/paper-menu.h tml"> 6 <link rel="import" href="chrome://resources/polymer/v1_0/paper-menu/paper-menu.h tml">
6 <link rel="import" href="chrome://resources/polymer/v1_0/paper-menu/paper-submen u.html"> 7 <link rel="import" href="chrome://resources/polymer/v1_0/paper-menu/paper-submen u.html">
7 <link rel="import" href="chrome://resources/polymer/v1_0/paper-ripple/paper-ripp le.html"> 8 <link rel="import" href="chrome://resources/polymer/v1_0/paper-ripple/paper-ripp le.html">
8 <link rel="import" href="/icons.html"> 9 <link rel="import" href="/icons.html">
9 <link rel="import" href="/route.html"> 10 <link rel="import" href="/route.html">
10 <link rel="import" href="/settings_shared_css.html"> 11 <link rel="import" href="/settings_shared_css.html">
11 12
12 <dom-module id="settings-menu"> 13 <dom-module id="settings-menu">
13 <template> 14 <template>
14 <style include="settings-shared"> 15 <style include="settings-shared">
15 #about-menu[about-selected] { 16 #about-menu[about-selected] {
16 color: var(--google-blue-700); 17 color: var(--google-blue-700);
17 } 18 }
18 19
19 iron-icon { 20 iron-icon {
20 --iron-icon-fill-color: var(--settings-nav-grey); 21 --iron-icon-fill-color: var(--settings-nav-grey);
21 -webkit-margin-end: 24px; 22 -webkit-margin-end: 24px;
23 padding-top: 10px; /* Center the 20px tall icon in a 40px space. */
24 }
25
26 .menu-trigger > iron-icon {
27 -webkit-margin-end: 22px; /* 24px - 2px from margin for outline. */
28 }
29
30 a[is='action-link'] span {
31 -webkit-margin-end: 16px;
32 flex: 1;
22 } 33 }
23 34
24 .iron-selected:not(.menu-trigger) > iron-icon { 35 .iron-selected:not(.menu-trigger) > iron-icon {
25 fill: var(--google-blue-700); 36 fill: var(--google-blue-700);
26 } 37 }
27 38
28 .menu-trigger span { 39 paper-menu {
29 -webkit-margin-end: 16px; 40 padding: 0;
30 flex: 1;
31 } 41 }
32 42
33 paper-menu { 43 a[is='action-link'].no-outline {
34 --paper-menu-selected-item: { 44 --paper-menu-focused-item: {
35 font-weight: 500; 45 outline: none;
46 };
47 }
48
49 a[is='action-link'] {
50 @apply(--settings-actionable);
51 --paper-menu-focused-item: {
52 outline: auto 5px -webkit-focus-ring-color;
36 }; 53 };
37 --paper-menu-focused-item-after: { 54 --paper-menu-focused-item-after: {
38 background: none; 55 background: none;
39 }; 56 };
57 --paper-menu-selected-item: {
58 color: var(--settings-nav-grey);
59 font-weight: 500;
60 };
61 -webkit-margin-end: 2px; /* Margin so selected outline is visible. */
62 -webkit-margin-start: 1px;
40 color: var(--settings-nav-grey); 63 color: var(--settings-nav-grey);
41 font-size: 100%; 64 display: flex;
42 padding: 0; 65 padding: 0;
43 } 66 }
44 67
45 div[data-path] {
46 @apply(--settings-actionable);
47 }
48
49 #basicPage { 68 #basicPage {
50 margin-top: 8px; 69 margin-top: 8px;
51 } 70 }
52 71
53 .page-menu > div { 72 .page-menu > a[is='action-link'] {
73 -webkit-padding-end: 0;
54 margin-top: 8px; 74 margin-top: 8px;
55 } 75 }
56 76
57 .page-menu { 77 .menu-trigger {
58 --paper-menu-selected-item: {
59 font-weight: 500;
60 };
61 }
62
63 paper-menu div {
64 position: relative; /* Needed for paper-ripple. */ 78 position: relative; /* Needed for paper-ripple. */
65 } 79 }
66 80
67 paper-ripple { 81 paper-ripple {
68 color: var(--google-blue-700); 82 color: var(--google-blue-700);
69 opacity: .5; 83 opacity: .5;
70 } 84 }
71 85
72 .page-menu paper-menu { 86 .page-menu paper-menu {
73 --paper-menu-selected-item: { 87 --paper-menu-selected-item: {
74 color: var(--google-blue-700); 88 color: var(--google-blue-700);
75 font-weight: 500; 89 font-weight: 500;
76 }; 90 };
77 } 91 }
78 92
79 .page-menu div { 93 .page-menu a[is='action-link'] {
80 -webkit-padding-start: 24px; 94 -webkit-padding-start: 23px; /* 24px - 1px from margin for outline. */
81 align-items: center;
82 display: flex;
83 font-size: 100%; 95 font-size: 100%;
84 font-weight: 500; 96 font-weight: 500;
85 min-height: 40px; 97 line-height: 40px;
98 text-transform: none;
86 word-break: break-word; 99 word-break: break-word;
87 } 100 }
88 101
89 .page-menu div iron-icon {
90 flex-shrink: 0;
91 }
92
93 .separator { 102 .separator {
94 /* Per Alan@, this line is different from the other separator lines. */ 103 /* Per Alan@, this line is different from the other separator lines. */
95 border-bottom: 1px solid rgba(0, 0, 0, 0.08); 104 border-bottom: 1px solid rgba(0, 0, 0, 0.08);
96 margin-top: 8px; 105 margin-top: 8px;
97 } 106 }
98 </style> 107 </style>
99 <paper-menu name="root-menu"> 108 <div class="page-menu" id="basicPage">
100 <div class="page-menu" id="basicPage"> 109 <paper-menu attr-for-selected="data-path" class="menu-content"
101 <paper-menu attr-for-selected="data-path" class="menu-content" 110 id="basicMenu" selected="[[currentRoute.path]]">
102 id="basicMenu" selected="[[currentRoute.path]]">
103 <if expr="chromeos"> 111 <if expr="chromeos">
104 <div data-path="/internet" on-tap="openPage_"> 112 <a is="action-link" data-path="/internet" on-tap="openPage_">
Dan Beam 2017/02/01 00:47:50 if you do something like: <button is="paper-icon-
hcarmona 2017/02/01 18:50:05 IIUC paper-icon-button-light is just for an icon,
105 <iron-icon icon="settings:network-wifi"></iron-icon> 113 <iron-icon icon="settings:network-wifi"></iron-icon>
106 $i18n{internetPageTitle} 114 <span>$i18n{internetPageTitle}</span>
107 </div> 115 </a>
108 </if> 116 </if>
109 <div id="people" data-path="/people" on-tap="openPage_" 117 <a is="action-link" id="people" data-path="/people" on-tap="openPage_"
110 hidden="[[!pageVisibility.people]]"> 118 hidden="[[!pageVisibility.people]]">
111 <iron-icon icon="settings:people"></iron-icon> 119 <iron-icon icon="settings:people"></iron-icon>
112 $i18n{peoplePageTitle} 120 <span>$i18n{peoplePageTitle}</span>
113 </div> 121 </a>
114 <div data-path="/appearance" on-tap="openPage_" 122 <a is="action-link" data-path="/appearance" on-tap="openPage_"
115 hidden="[[!pageVisibility.appearance]]"> 123 hidden="[[!pageVisibility.appearance]]">
116 <iron-icon icon="settings:palette"></iron-icon> 124 <iron-icon icon="settings:palette"></iron-icon>
117 $i18n{appearancePageTitle} 125 <span>$i18n{appearancePageTitle}</span>
118 </div> 126 </a>
119 <if expr="chromeos"> 127 <if expr="chromeos">
120 <div data-path="/device" on-tap="openPage_"> 128 <a is="action-link" data-path="/device" on-tap="openPage_">
121 <iron-icon icon="settings:laptop-chromebook"></iron-icon> 129 <iron-icon icon="settings:laptop-chromebook"></iron-icon>
122 $i18n{devicePageTitle} 130 <span>$i18n{devicePageTitle}</span>
123 </div> 131 </a>
124 </if> 132 </if>
125 <div data-path="/search" on-tap="openPage_"> 133 <a is="action-link" data-path="/search" on-tap="openPage_">
126 <iron-icon icon="cr:search"></iron-icon> 134 <iron-icon icon="cr:search"></iron-icon>
127 $i18n{searchPageTitle} 135 <span>$i18n{searchPageTitle}</span>
128 </div> 136 </a>
129 <if expr="chromeos"> 137 <if expr="chromeos">
130 <div data-path="/androidApps" on-tap="openPage_" 138 <a is="action-link" data-path="/androidApps" on-tap="openPage_"
131 hidden="[[!showAndroidApps]]"> 139 hidden="[[!showAndroidApps]]">
132 <iron-icon icon="settings:android"></iron-icon> 140 <iron-icon icon="settings:android"></iron-icon>
133 $i18n{androidAppsPageTitle} 141 <span>$i18n{androidAppsPageTitle}</span>
134 </div> 142 </a>
135 </if> 143 </if>
136 <if expr="not chromeos"> 144 <if expr="not chromeos">
137 <div data-path="/defaultBrowser" on-tap="openPage_" 145 <a is="action-link" data-path="/defaultBrowser" on-tap="openPage_"
138 hidden="[[!pageVisibility.defaultBrowser]]"> 146 hidden="[[!pageVisibility.defaultBrowser]]">
139 <iron-icon icon="settings:web"></iron-icon> 147 <iron-icon icon="settings:web"></iron-icon>
140 $i18n{defaultBrowser} 148 <span>$i18n{defaultBrowser}</span>
141 </div> 149 </a>
142 </if> 150 </if>
143 <div data-path="/onStartup" on-tap="openPage_" 151 <a is="action-link" data-path="/onStartup" on-tap="openPage_"
144 hidden="[[!pageVisibility.onStartup]]"> 152 hidden="[[!pageVisibility.onStartup]]">
145 <iron-icon icon="settings:power-settings-new"></iron-icon> 153 <iron-icon icon="settings:power-settings-new"></iron-icon>
146 $i18n{onStartup} 154 <span>$i18n{onStartup}</span>
147 </div> 155 </a>
148 </paper-menu> 156 </paper-menu>
149 </div>
150 <paper-submenu class="page-menu" id="advancedSubmenu" actionable 157 <paper-submenu class="page-menu" id="advancedSubmenu" actionable
151 opened="{{advancedOpened}}" 158 opened="{{advancedOpened}}"
152 hidden="[[!pageVisibility.advancedSettings]]"> 159 hidden="[[!pageVisibility.advancedSettings]]">
153 <div class="menu-trigger"> 160 <a is="action-link" class="menu-trigger" tabindex="0">
154 <span>$i18n{advancedPageTitle}</span> 161 <span>$i18n{advancedPageTitle}</span>
155 <iron-icon icon="[[arrowState_(advancedOpened)]]"></iron-icon> 162 <iron-icon icon="[[arrowState_(advancedOpened)]]"></iron-icon>
156 <paper-ripple></paper-ripple> 163 <paper-ripple></paper-ripple>
157 </div> 164 </a>
158 <paper-menu attr-for-selected="data-path" class="menu-content" 165 <paper-menu attr-for-selected="data-path" class="menu-content"
159 id="advancedMenu" selected="[[currentRoute.path]]"> 166 id="advancedMenu" selected="[[currentRoute.path]]">
160 <if expr="chromeos"> 167 <if expr="chromeos">
161 <div data-path="/dateTime" on-tap="openPage_"> 168 <a is="action-link" data-path="/dateTime" on-tap="openPage_">
162 <iron-icon icon="settings:access-time"></iron-icon> 169 <iron-icon icon="settings:access-time"></iron-icon>
163 $i18n{dateTimePageTitle} 170 <span>$i18n{dateTimePageTitle}</span>
164 </div> 171 </a>
165 </if> 172 </if>
166 <div data-path="/privacy" on-tap="openPage_"> 173 <a is="action-link" data-path="/privacy" on-tap="openPage_">
167 <iron-icon icon="settings:security"></iron-icon> 174 <iron-icon icon="settings:security"></iron-icon>
168 $i18n{privacyPageTitle} 175 <span>$i18n{privacyPageTitle}</span>
169 </div> 176 </a>
170 <if expr="chromeos"> 177 <if expr="chromeos">
171 <div data-path="/bluetooth" on-tap="openPage_"> 178 <a is="action-link" data-path="/bluetooth" on-tap="openPage_">
172 <iron-icon icon="settings:bluetooth"></iron-icon> 179 <iron-icon icon="settings:bluetooth"></iron-icon>
173 $i18n{bluetoothPageTitle} 180 <span>$i18n{bluetoothPageTitle}</span>
174 </div> 181 </a>
175 </if> 182 </if>
176 <div data-path="/passwordsAndForms" on-tap="openPage_" 183 <a is="action-link" data-path="/passwordsAndForms" on-tap="openPage_"
177 hidden="[[!pageVisibility.passwordsAndForms]]"> 184 hidden="[[!pageVisibility.passwordsAndForms]]">
178 <iron-icon icon="settings:assignment"></iron-icon> 185 <iron-icon icon="settings:assignment"></iron-icon>
179 $i18n{passwordsAndAutofillPageTitle} 186 <span>$i18n{passwordsAndAutofillPageTitle}</span>
180 </div> 187 </a>
181 <div data-path="/languages" on-tap="openPage_"> 188 <a is="action-link" data-path="/languages" on-tap="openPage_">
182 <iron-icon icon="settings:language"></iron-icon> 189 <iron-icon icon="settings:language"></iron-icon>
183 $i18n{languagesPageTitle} 190 <span>$i18n{languagesPageTitle}</span>
184 </div> 191 </a>
185 <div data-path="/downloads" on-tap="openPage_"> 192 <a is="action-link" data-path="/downloads" on-tap="openPage_">
186 <iron-icon icon="cr:file-download"></iron-icon> 193 <iron-icon icon="cr:file-download"></iron-icon>
187 $i18n{downloadsPageTitle} 194 <span>$i18n{downloadsPageTitle}</span>
188 </div> 195 </a>
189 <div data-path="/printing" on-tap="openPage_"> 196 <a is="action-link" data-path="/printing" on-tap="openPage_">
190 <iron-icon icon="cr:print"></iron-icon> 197 <iron-icon icon="cr:print"></iron-icon>
191 $i18n{printingPageTitle} 198 <span>$i18n{printingPageTitle}</span>
192 </div> 199 </a>
193 <div data-path="/accessibility" on-tap="openPage_"> 200 <a is="action-link" data-path="/accessibility" on-tap="openPage_">
194 <iron-icon icon="settings:accessibility"></iron-icon> 201 <iron-icon icon="settings:accessibility"></iron-icon>
195 $i18n{a11yPageTitle} 202 <span>$i18n{a11yPageTitle}</span>
196 </div> 203 </a>
197 <if expr="not chromeos"> 204 <if expr="not chromeos">
198 <div data-path="/system" on-tap="openPage_"> 205 <a is="action-link" data-path="/system" on-tap="openPage_">
199 <iron-icon icon="settings:build"></iron-icon> 206 <iron-icon icon="settings:build"></iron-icon>
200 $i18n{systemPageTitle} 207 <span>$i18n{systemPageTitle}</span>
201 </div> 208 </a>
202 </if> 209 </if>
203 <div data-path="/reset" on-tap="openPage_" 210 <a is="action-link" data-path="/reset" on-tap="openPage_"
204 hidden="[[!pageVisibility.reset]]"> 211 hidden="[[!pageVisibility.reset]]">
205 <iron-icon icon="settings:restore"></iron-icon> 212 <iron-icon icon="settings:restore"></iron-icon>
206 $i18n{resetPageTitle} 213 <span>$i18n{resetPageTitle}</span>
207 </div> 214 </a>
208 </paper-menu> 215 </paper-menu>
209 </paper-submenu> 216 </paper-submenu>
210 <div class="separator"></div> 217 </div>
211 <paper-submenu class="page-menu"> 218 <div class="separator"></div>
212 <div about-selected$="[[aboutSelected_]]" class="menu-trigger" 219 <paper-menu class="page-menu">
213 id="about-menu" on-tap="openPage_" data-path="/help"> 220 <a is="action-link" about-selected$="[[aboutSelected_]]"
214 $i18n{aboutPageTitle} 221 id="about-menu" on-tap="openPage_" data-path="/help">
215 </div> 222 <span>$i18n{aboutPageTitle}</span>
216 </paper-submenu> 223 </a>
217 </paper-menu> 224 </paper-menu>
218 </template> 225 </template>
219 <script src="settings_menu.js"></script> 226 <script src="settings_menu.js"></script>
220 </dom-module> 227 </dom-module>
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698