Changeset 102796 in webkit
- Timestamp:
- Dec 14, 2011 10:30:55 AM (12 years ago)
- Location:
- trunk/Websites/bugs.webkit.org
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Websites/bugs.webkit.org/ChangeLog
r102719 r102796 1 2011-12-13 Ojan Vafai <ojan@chromium.org> 2 3 Give a resize handle for sidebyside diffs. 4 https://bugs.webkit.org/show_bug.cgi?id=74465 5 6 Reviewed by Ryosuke Niwa. 7 8 This gives a drag handle so you can make the side-by-side 9 diff not be 50/50 on a per-file-diff basis. This is useful 10 for cases like new files where there's no value on the 11 left side. 12 13 * PrettyPatch/PrettyPatch.rb: 14 * code-review.js: 15 1 16 2011-12-13 Ojan Vafai <ojan@chromium.org> 2 17 -
trunk/Websites/bugs.webkit.org/PrettyPatch/PrettyPatch.rb
r100349 r102796 142 142 font-family: monospace; 143 143 margin: 1em 0; 144 position: relative; 144 145 } 145 146 … … 188 189 } 189 190 190 .LineSide:last-child {191 float: right;192 }193 194 191 .LineSide, 195 192 .sidebyside .DiffBlockPart.remove, 196 193 .sidebyside .DiffBlockPart.add { 197 194 display:inline-block; 198 width: 50%;195 width: 50%; 199 196 vertical-align: top; 197 } 198 199 .sidebyside .resizeHandle { 200 width: 5px; 201 height: 100%; 202 cursor: move; 203 position: absolute; 204 top: 0; 205 left: 50%; 206 } 207 208 .sidebyside .resizeHandle:hover { 209 background-color: grey; 210 opacity: 0.5; 200 211 } 201 212 -
trunk/Websites/bugs.webkit.org/code-review.js
r102719 r102796 64 64 console.log('No attachment ID'); 65 65 66 var minLeftSideRatio = 10; 67 var maxLeftSideRatio = 90; 68 var file_diff_being_resized = null; 66 69 var next_line_id = 0; 67 70 var files = {}; … … 1140 1143 updateToolbarAnchorState(); 1141 1144 loadDiffState(); 1145 generateFileDiffResizeStyleElement(); 1142 1146 }; 1143 1147 … … 1223 1227 if (diffState(file_diff) == diff_type) 1224 1228 return; 1229 1230 if (!$('.resizeHandle', file_diff).length) 1231 $(file_diff).append('<div class="resizeHandle"></div>'); 1225 1232 1226 1233 $(file_diff).removeClass('sidebyside unified'); … … 1714 1721 } 1715 1722 1716 $(document.body).bind('mouseup', processSelectedLines); 1723 $('.resizeHandle').live('mousedown', function(event) { 1724 file_diff_being_resized = $(this).parent('.FileDiff'); 1725 }); 1726 1727 function generateFileDiffResizeStyleElement() { 1728 // FIXME: Once we support calc, we can replace this with something that uses the attribute value. 1729 var styleText = ''; 1730 for (var i = minLeftSideRatio; i <= maxLeftSideRatio; i++) { 1731 // FIXME: Once we support calc, put the resize handle at calc(i% - 5) so it doesn't cover up 1732 // the right-side line numbers. 1733 styleText += '.FileDiff[leftsidewidth="' + i + '"] .resizeHandle {' + 1734 'left: ' + i + '%' + 1735 '}' + 1736 '.FileDiff[leftsidewidth="' + i + '"] .LineSide:first-child,' + 1737 '.FileDiff[leftsidewidth="' + i + '"].sidebyside .DiffBlockPart.remove {' + 1738 'width:' + i + '%;' + 1739 '}' + 1740 '.FileDiff[leftsidewidth="' + i + '"] .LineSide:last-child,' + 1741 '.FileDiff[leftsidewidth="' + i + '"].sidebyside .DiffBlockPart.add {' + 1742 'width:' + (100 - i) + '%;' + 1743 '}'; 1744 } 1745 var styleElement = document.createElement('style'); 1746 styleElement.innerText = styleText; 1747 document.head.appendChild(styleElement); 1748 } 1749 1750 $(document).bind('mousemove', function(event) { 1751 if (!file_diff_being_resized) 1752 return; 1753 1754 var ratio = event.pageX / window.innerWidth; 1755 var percentage = Math.floor(ratio * 100); 1756 if (percentage < minLeftSideRatio) 1757 percentage = minLeftSideRatio; 1758 if (percentage > maxLeftSideRatio) 1759 percentage = maxLeftSideRatio; 1760 file_diff_being_resized.attr('leftsidewidth', percentage); 1761 event.preventDefault(); 1762 }); 1763 1764 $(document).bind('mouseup', function(event) { 1765 file_diff_being_resized = null; 1766 processSelectedLines(); 1767 }); 1717 1768 1718 1769 $('.lineNumber').live('click', function(e) {
Note: See TracChangeset
for help on using the changeset viewer.