Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Delta Between Two Patch Sets: skin/options.css

Issue 29321417: Issue 2357 - Added "predefined list" dialog to options page (Closed)
Left Patch Set: Created July 3, 2015, 3:55 p.m.
Right Patch Set: Post-review: Merged Created July 16, 2015, 11:36 a.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
Left: Side by side diff | Download
Right: Side by side diff | Download
« options.js ('K') | « options.js ('k') | no next file » | no next file with change/comment »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
LEFTRIGHT
1 /* 1 /*
2 * This file is part of Adblock Plus <https://adblockplus.org/>, 2 * This file is part of Adblock Plus <https://adblockplus.org/>,
3 * Copyright (C) 2006-2015 Eyeo GmbH 3 * Copyright (C) 2006-2015 Eyeo GmbH
4 * 4 *
5 * Adblock Plus is free software: you can redistribute it and/or modify 5 * Adblock Plus is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 3 as 6 * it under the terms of the GNU General Public License version 3 as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
8 * 8 *
9 * Adblock Plus is distributed in the hope that it will be useful, 9 * Adblock Plus is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details. 12 * GNU General Public License for more details.
13 * 13 *
14 * You should have received a copy of the GNU General Public License 14 * You should have received a copy of the GNU General Public License
15 * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. 15 * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>.
16 */ 16 */
17 17
18 @font-face
19 {
20 font-family: "Source Sans Pro";
21 src: url(fonts/SourceSansPro-Light.woff);
22 /* local("Ø") forces using no local font called Source Sans Pro */
23 src: local("Ø"), url(fonts/SourceSansPro-Light.woff) format("woff");
24 font-weight: 300;
25 font-style: normal;
26 }
27
28 @font-face
29 {
30 font-family: "Source Sans Pro";
31 src: url(fonts/SourceSansPro-Regular.woff);
32 /* local("Ø") forces using no local font called Source Sans Pro */
33 src: local("Ø"), url(fonts/SourceSansPro-Regular.woff) format("woff");
34 font-weight: 400;
35 font-style: normal;
36 }
37
38 @font-face
39 {
40 font-family: "Source Sans Pro";
41 src: url(fonts/SourceSansPro-Semibold.woff);
42 /* local("Ø") forces using no local font called Source Sans Pro */
43 src: local("Ø"), url(fonts/SourceSansPro-Semibold.woff) format("woff");
44 font-weight: 600;
45 font-style: normal;
46 }
47
18 body 48 body
19 { 49 {
20 background-color: #F5F5F5; 50 background-color: #F5F5F5;
21 display: flex; 51 display: flex;
52 margin: 20px 10px;
22 font-family: "Source Sans Pro", sans-serif; 53 font-family: "Source Sans Pro", sans-serif;
23 font-size: 14px; 54 font-size: 14px;
24 white-space: nowrap;
25 } 55 }
26 56
27 h1 57 h1
28 { 58 {
29 font-size: 24px; 59 font-size: 24px;
30 font-weight: 100; 60 line-height: 1em;
61 font-weight: 300;
31 } 62 }
32 63
33 h2 64 h2
34 { 65 {
35 font-size: 16px; 66 font-size: 16px;
36 font-weight: 500; 67 font-weight: 600;
37 } 68 }
38 69
39 p 70 p
40 { 71 {
41 font-weight: 100; 72 font-weight: 300;
42 } 73 }
43 74
44 hr 75 hr
45 { 76 {
46 background-color: #CDCDCD; 77 background-color: #CDCDCD;
47 border: 0px; 78 border: 0px;
48 height: 1px; 79 height: 1px;
49 margin: 0px; 80 margin: 0px;
50 } 81 }
51 82
52 input[type="search"]::-webkit-search-cancel-button 83 input[type="search"]::-webkit-search-cancel-button
53 { 84 {
54 display: none; 85 display: none;
55 } 86 }
56 87
88 input[type="text"], input[type="search"]
89 {
90 -webkit-box-sizing: border-box;
91 -moz-box-sizing: border-box;
92 box-sizing: border-box;
93 }
94
57 .option-name 95 .option-name
58 { 96 {
59 display: flex; 97 display: flex;
60 } 98 }
61 99
62 .option-name > * 100 .option-name > *
63 { 101 {
64 -moz-margin-end: 6px; 102 -moz-margin-end: 6px;
65 -webkit-margin-end: 6px; 103 -webkit-margin-end: 6px;
66 } 104 }
67 105
68 #nav-sidebar 106 #nav-sidebar
69 { 107 {
70 position: relative;
71 padding: 0px 0px 16px 0px;
72 -moz-padding-start: 10px;
73 -webkit-padding-start: 10px;
74 min-width: 198px; 108 min-width: 198px;
75 } 109 }
76 110
77 #nav-sidebar .fixed 111 #nav-sidebar .fixed
78 { 112 {
79 height: 100%; 113 top: 40px;
114 bottom: 2px;
115 height: auto;
80 position: fixed; 116 position: fixed;
81 } 117 }
82 118
83 #page-title 119 #page-title
84 { 120 {
85 -webkit-margin-start: 10px; 121 padding: 0px 20px;
86 -moz-margin-start: 10px;
87 } 122 }
88 123
89 #page-title p 124 #page-title p
90 { 125 {
91 margin: 0px; 126 margin: 0px;
92 padding: 40px 0px 0px 0px;
93 font-size: 16px; 127 font-size: 16px;
128 line-height: 1em;
94 } 129 }
95 130
96 #page-title h1 131 #page-title h1
97 { 132 {
98 margin: 0px; 133 margin: 0px;
99 padding: 8px 0px 16px 0px; 134 padding: 8px 0px 16px 0px;
100 } 135 }
101 136
102 .flex-container 137 .flex-container
103 { 138 {
104 display: flex; 139 display: flex;
105 flex-flow: row wrap; 140 flex-flow: row wrap;
106 } 141 }
107 142
108 .tabs li 143 .tabs li
109 { 144 {
110 cursor: pointer; 145 cursor: pointer;
111 display: flex; 146 display: flex;
112 } 147 }
113 148
114 .tabs li a:first-child 149 .tabs li a
115 { 150 {
116 flex: 1; 151 flex: 1;
117 color: inherit; 152 color: inherit;
118 text-decoration: none; 153 text-decoration: none;
119 } 154 }
120 155
121 .tabs.vertical 156 .tabs.vertical
122 { 157 {
123 list-style: none; 158 list-style: none;
124 margin: 0px; 159 margin: 0px;
125 position: relative; 160 position: relative;
126 padding: 0px; 161 padding: 0px;
127 width: 198px; 162 width: 198px;
128 } 163 }
129 164
130 .tabs.vertical li 165 .tabs.vertical li
131 { 166 {
132 border-color: #CDCDCD; 167 border-color: #CDCDCD transparent;
133 border-style: solid; 168 border-style: solid;
134 border-width: 1px 0px 0px 0px; 169 border-width: 1px;
135 font-size: 16px; 170 font-size: 16px;
136 font-weight: 100; 171 font-weight: 300;
137 padding: 16px 0px; 172 line-height: 1em;
138 -moz-padding-end: 20px; 173 margin-top: -1px;
139 -webkit-padding-end: 20px; 174 padding: 14px 20px;
140 -moz-padding-start: 11px;
141 -webkit-padding-start: 11px;
142 }
143
144 body[data-tab="general"] #tab-general + li,
145 body[data-tab="advanced"] #tab-advanced + li,
146 body[data-tab="help"] #tab-help + li
147 {
148 border-width: 0px;
149 }
150
151 #tab-help,
152 body[data-tab="advanced"] #tab-advanced + li
153 {
154 border-bottom-width: 1px;
155 } 175 }
156 176
157 body[data-tab="general"] #tab-general, 177 body[data-tab="general"] #tab-general,
158 body[data-tab="advanced"] #tab-advanced, 178 body[data-tab="advanced"] #tab-advanced,
159 body[data-tab="help"] #tab-help 179 body[data-tab="help"] #tab-help
160 { 180 {
161 background-color: #FFFFFF; 181 background-color: #FFFFFF;
162 border-radius: 3px 0px 0px 3px; 182 border-radius: 3px 0px 0px 3px;
163 border-width: 1px; 183 border-width: 1px;
164 -moz-border-end: 0px; 184 font-weight: 600;
165 -webkit-border-end: 0px; 185 -moz-border-start-color: #CDCDCD;
166 font-weight: 900; 186 -webkit-border-start-color: #CDCDCD;
167 -moz-margin-end: -1px; 187 -moz-margin-end: -1px;
168 -webkit-margin-end: -1px; 188 -webkit-margin-end: -1px;
169 -moz-padding-start: 10px; 189 -moz-margin-start: -1px;
170 -webkit-padding-start: 10px; 190 -webkit-margin-start: -1px;
171 position: relative; 191 -moz-padding-end: 21px;
192 -webkit-padding-end: 21px;
193 -moz-padding-start: 21px;
194 -webkit-padding-start: 21px;
195 }
196
197 html[dir="rtl"] body[data-tab="general"] #tab-general,
198 html[dir="rtl"] body[data-tab="advanced"] #tab-advanced,
199 html[dir="rtl"] body[data-tab="help"] #tab-help
200 {
201 border-radius: 0px 3px 3px 0px;
172 } 202 }
173 203
174 .tabs.vertical.bottom 204 .tabs.vertical.bottom
175 { 205 {
176 bottom: 0px; 206 bottom: 0px;
177 position: absolute; 207 position: absolute;
178 } 208 }
179 209
180 .tabs.vertical.bottom li:first-child 210 .tabs.vertical.bottom li:first-child
181 { 211 {
182 border-top: 0px; 212 border-top: 0px;
183 } 213 }
184 214
185 .tabs.vertical .icon 215 #tab-contribute
186 { 216 {
187 margin: 2px 0px 0px 0px; 217 border-bottom: none;
218 }
219
220 #nav-sidebar ul li .icon
221 {
222 height: 14px;
223 width: 14px;
188 } 224 }
189 225
190 #tab-general .icon 226 #tab-general .icon
191 { 227 {
192 background-position: -15px -17px; 228 background-position: -16px -18px;
193 height: 16px;
194 width: 16px;
195 } 229 }
196 230
197 #tab-advanced .icon 231 #tab-advanced .icon
198 { 232 {
199 background-position: -45px -18px; 233 background-position: -46px -18px;
200 height: 16px;
201 width: 16px;
202 } 234 }
203 235
204 #tab-help .icon 236 #tab-help .icon
205 { 237 {
206 background-position: 0px -17px; 238 background-position: -1px -18px;
207 height: 16px;
208 width: 16px;
209 } 239 }
210 240
211 #tab-share .icon 241 #tab-share .icon
212 { 242 {
213 background-position: -60px -17px; 243 background-position: -61px -18px;
214 height: 16px;
215 width: 16px;
216 } 244 }
217 245
218 #tab-contribute .icon 246 #tab-contribute .icon
219 { 247 {
220 background-position: -30px -17px; 248 background-position: -31px -18px;
221 height: 16px;
222 width: 16px;
223 } 249 }
224 250
225 #tab-content 251 #tab-content
226 { 252 {
227 background-color: #FFFFFF; 253 background-color: #FFFFFF;
228 border: 1px solid #CDCDCD; 254 border: 1px solid #CDCDCD;
229 border-radius: 8px; 255 border-radius: 8px;
230 padding: 0px 60px 40px 60px; 256 padding: 0px 60px 40px 60px;
231 width: 960px; 257 width: 960px;
232 } 258 }
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after
419 color: #3A7BA6; 445 color: #3A7BA6;
420 padding: 10px 0px 11px 0px; 446 padding: 10px 0px 11px 0px;
421 text-align: center; 447 text-align: center;
422 width: 50%; 448 width: 50%;
423 } 449 }
424 450
425 .tabs.horizontal li.active 451 .tabs.horizontal li.active
426 { 452 {
427 border-bottom: 2px solid #1E8728; 453 border-bottom: 2px solid #1E8728;
428 color: black; 454 color: black;
429 font-weight: bold; 455 font-weight: 600;
430 padding-bottom: 10px; 456 padding-bottom: 10px;
431 } 457 }
432 458
433 .icon, .table input[type="checkbox"]::before, .table button.delete, 459 .icon, .table input[type="checkbox"]::before, .table button.delete,
434 #content-help a::before, #dialog-close::before 460 #content-help a::before, #dialog-close::before,
461 #custom-filters-add button::after
435 { 462 {
436 background-image: url(options-sprite.png); 463 background-image: url(options-sprite.png);
437 display: inline-block; 464 display: inline-block;
438 } 465 }
439 466
440 .icon-add 467 .icon-add
441 { 468 {
442 background-position: -0px -0px; 469 background-position: -0px -0px;
443 cursor: pointer; 470 cursor: pointer;
444 height: 18px; 471 height: 18px;
445 width: 18px; 472 min-width: 18px;
446 } 473 }
447 474
448 .icon-update 475 .icon-update
449 { 476 {
450 background-position: -34px -0px; 477 background-position: -34px -0px;
451 cursor: pointer; 478 cursor: pointer;
452 height: 18px; 479 height: 18px;
453 width: 18px; 480 width: 18px;
454 } 481 }
455 482
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
539 { 566 {
540 border: 0px; 567 border: 0px;
541 border-bottom: 1px solid #A1A1A1; 568 border-bottom: 1px solid #A1A1A1;
542 -moz-padding-end: 25px; 569 -moz-padding-end: 25px;
543 -webkit-padding-end: 25px; 570 -webkit-padding-end: 25px;
544 -moz-margin-start: 14px; 571 -moz-margin-start: 14px;
545 -webkit-margin-start: 14px; 572 -webkit-margin-start: 14px;
546 outline: 0px; 573 outline: 0px;
547 padding-bottom: 5px; 574 padding-bottom: 5px;
548 vertical-align: text-bottom; 575 vertical-align: text-bottom;
549 width: 330px; 576 width: 100%;
550 } 577 }
551 578
552 #whitelisting .controls .button-add span 579 #whitelisting .controls .button-add span
553 { 580 {
554 -moz-margin-start: 5px; 581 -moz-margin-start: 5px;
555 -webkit-margin-start: 5px; 582 -webkit-margin-start: 5px;
556 } 583 }
557 584
558 #whitelisting .button-add 585 #whitelisting .button-add
559 { 586 {
(...skipping 23 matching lines...) Expand all
583 background-color: transparent; 610 background-color: transparent;
584 border: 0px; 611 border: 0px;
585 color: #3A7BA6; 612 color: #3A7BA6;
586 cursor: pointer; 613 cursor: pointer;
587 } 614 }
588 615
589 /* 616 /*
590 Advanced tab content 617 Advanced tab content
591 */ 618 */
592 619
593 #blocking-list-own .table 620 #custom-filters-header
621 {
622 padding: 0px 20px;
623 margin-bottom: 10px;
624 }
625
626 #custom-filters-raw-controls
627 {
628 display: flex;
629 }
630
631 #custom-filters:not(.mode-edit) #custom-filters-raw,
632 #custom-filters:not(.mode-edit) #custom-filters-raw-controls,
633 #custom-filters.mode-edit #custom-filters-show-edit,
634 #custom-filters.mode-edit #custom-filters-list-wrapper
635 {
636 display: none;
637 }
638
639 #custom-filters-raw-save
640 {
641 padding: 0px 16px;
642 }
643
644 #custom-filters .table
594 { 645 {
595 height: 290px; 646 height: 290px;
596 overflow: auto; 647 overflow: auto;
597 width: auto; 648 width: auto;
598 } 649 }
599 650
600 #blocking-list-own .controls 651 #custom-filters-add
601 { 652 {
602 display: flex; 653 display: flex;
603 padding: 0px; 654 padding: 0px;
604 border: none; 655 border: none;
605 } 656 }
606 657
607 #blocking-list-own input[type="text"], 658 #custom-filters .controls
608 #blocking-list-own input[type="text"]:focus 659 {
609 { 660 border-top: none;
610 border: 0px; 661 }
611 border-bottom: 1px solid; 662
612 border-top: 1px solid; 663 #custom-filters-raw
664 {
665 width: 100%;
666 height: 100%;
667 }
668
669 #custom-filters-wrapper
670 {
671 height: 330px;
672 }
673
674 #custom-filters input[type="text"]
675 {
676 border-width: 1px 0px 1px 0px;
677 border-bottom-style: solid;
678 border-top-style: solid;
613 border-color: #1E8728; 679 border-color: #1E8728;
614 box-sizing: border-box;
615 height: 25px; 680 height: 25px;
616 outline: 0px;
617 -moz-padding-start: 10px; 681 -moz-padding-start: 10px;
618 -webkit-padding-start: 10px; 682 -webkit-padding-start: 10px;
683 -moz-padding-end: 60px;
684 -webkit-padding-end: 60px;
685 padding-top: 18px;
686 padding-bottom: 18px;
619 width: 100%; 687 width: 100%;
620 } 688 }
621 689
622 .icon-enter-blue 690 #custom-filters input[type="text"]:focus
623 { 691 {
624 background-position: -28px -85px; 692 outline: 0px;
625 cursor: pointer; 693 }
626 height: 10px; 694
627 margin: 0px 0px -2px 2px; 695 #custom-filters-add input
628 width: 10px; 696 {
629 } 697 font-size: 13px;
630 698 background-color: #F5F5F5;
631 #blocking-list-own .input-control 699 }
632 { 700
633 position: absolute; 701 #custom-filters-add input::-webkit-input-placeholder
634 -webkit-margin-start: -50px; 702 {
635 -moz-margin-start: -50px; 703 font-weight: 600;
636 bottom: 5px; 704 }
637 } 705 #custom-filters-add input::-moz-placeholder
638 706 {
639 #blocking-list-own .input-separator 707 font-weight: 600;
640 { 708 }
709
710 #custom-filters-table
711 {
712 border-top: 1px solid #CDCDCD;
713 }
714
715 #custom-filters-add button
716 {
717 font-size: 14px;
718 -webkit-margin-start: -60px;
719 -moz-margin-start: -60px;
720 -webkit-padding-end: 6px;
721 -moz-padding-end: 6px;
722 cursor: pointer;
723 color: #3A7BA6;
724 }
725
726 #custom-filters-add button::before
727 {
728 content: "";
641 display: inline-block; 729 display: inline-block;
642 -moz-border-end: 1px solid #CDCDCD; 730 -moz-border-end: 1px solid #CDCDCD;
643 -webkit-border-end: 1px solid #CDCDCD; 731 -webkit-border-end: 1px solid #CDCDCD;
644 height: 15px; 732 height: 15px;
645 margin: 0px 4px -4px 0px; 733 -webkit-margin-end: 10px;
734 -moz-margin-end: 10px;
735 margin-bottom: -2px;
646 width: 1px; 736 width: 1px;
647 } 737 }
648 738
649 #blocking-list-own .input-button-text 739 #custom-filters-add button::after
650 { 740 {
651 font-size: 12px; 741 content: "";
742 background-position: -28px -85px;
743 cursor: pointer;
744 height: 10px;
745 -webkit-margin-start: 6px;
746 -moz-margin-start: 6px;
747 width: 10px;
652 } 748 }
653 749
654 .tooltip, #block-element-explanation a 750 .tooltip, #block-element-explanation a
655 { 751 {
656 border-bottom: dotted 2px; 752 border-bottom: dotted 2px;
657 color: #3A7BA6; 753 color: #3A7BA6;
658 font-size: 12px; 754 font-size: 12px;
659 text-decoration: none; 755 text-decoration: none;
660 } 756 }
661 757
662 #content-advanced .tooltip 758 #content-advanced .tooltip
663 { 759 {
664 -moz-margin-start: 8px; 760 -moz-margin-start: 8px;
665 -webkit-margin-start: 8px; 761 -webkit-margin-start: 8px;
666 } 762 }
667 763
668 #block-element-explanation a 764 #block-element-explanation a
669 { 765 {
670 color: black; 766 color: black;
671 border-bottom-color: #3A7BA6; 767 border-bottom-color: #3A7BA6;
672 font-weight: bold; 768 font-weight: 600;
673 -moz-padding-start: 0px; 769 -moz-padding-start: 0px;
674 -webkit-padding-start: 0px; 770 -webkit-padding-start: 0px;
675 } 771 }
676 772
677 /* 773 /*
678 Help tab content 774 Help tab content
679 */ 775 */
680 776
681 #content-help 777 #content-help
682 { 778 {
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
780 876
781 #dialog h3 877 #dialog h3
782 { 878 {
783 font-size: 14px; 879 font-size: 14px;
784 margin: 0px; 880 margin: 0px;
785 } 881 }
786 882
787 #dialog input[type="text"], 883 #dialog input[type="text"],
788 #dialog input[type="search"] 884 #dialog input[type="search"]
789 { 885 {
790 -webkit-box-sizing: border-box;
791 -moz-box-sizing: border-box;
792 box-sizing: border-box;
793 font-size: 16px; 886 font-size: 16px;
794 margin-top: 10px; 887 margin-top: 10px;
795 padding: 5px; 888 padding: 5px;
796 width: 100%; 889 width: 100%;
797 } 890 }
798 891
799 #dialog .table 892 #dialog .table
800 { 893 {
801 width: 100%; 894 width: 100%;
802 } 895 }
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
844 vertical-align: top; 937 vertical-align: top;
845 } 938 }
846 939
847 #dialog .url 940 #dialog .url
848 { 941 {
849 margin-top: 10px; 942 margin-top: 10px;
850 margin-bottom: 20px; 943 margin-bottom: 20px;
851 word-wrap: break-word; 944 word-wrap: break-word;
852 } 945 }
853 946
854 body:not([data-dialog="addSubscription"]) #dialog-title-addSubscription, 947 body:not([data-dialog="custom"]) #dialog-title-custom,
855 body:not([data-dialog="addSubscription"]) #dialog-content-addSubscription, 948 body:not([data-dialog="custom"]) #dialog-content-custom,
856 body:not([data-dialog="customlist"]) #dialog-title-customlist,
857 body:not([data-dialog="customlist"]) #dialog-content-customlist,
858 body:not([data-dialog="language"]) #dialog-title-language, 949 body:not([data-dialog="language"]) #dialog-title-language,
859 body:not([data-dialog="language"]) #dialog-content-language, 950 body:not([data-dialog="language"]) #dialog-content-language,
951 body:not([data-dialog="predefined"]) #dialog-title-predefined,
952 body:not([data-dialog="predefined"]) #dialog-content-predefined,
860 body:not([data-dialog]) #dialog 953 body:not([data-dialog]) #dialog
861 { 954 {
862 display: none; 955 display: none;
863 } 956 }
864 957
865 #other-language .button-add 958 #other-language .button-add
866 { 959 {
867 -webkit-border-end: 1px solid #CDCDCD; 960 -webkit-border-end: 1px solid #CDCDCD;
868 -moz-border-end: 1px solid #CDCDCD; 961 -moz-border-end: 1px solid #CDCDCD;
869 -webkit-padding-end: 10px; 962 -webkit-padding-end: 10px;
870 -moz-padding-end: 10px; 963 -moz-padding-end: 10px;
871 -webkit-padding-start: 0px; 964 -webkit-padding-start: 0px;
872 -moz-padding-start: 0px; 965 -moz-padding-start: 0px;
873 } 966 }
874 967
875 #other-language .display 968 #other-language .display
876 { 969 {
877 -webkit-margin-start: 10px; 970 -webkit-margin-start: 10px;
878 -moz-margin-start: 10px; 971 -moz-margin-start: 10px;
879 } 972 }
LEFTRIGHT
« options.js ('k') | no next file » | Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Toggle Comments ('s')

Powered by Google App Engine
This is Rietveld