Skip to content

Commit 5087333

Browse files
committed
Fix and restyle menu on code line
1 parent 4c3e56d commit 5087333

File tree

6 files changed

+43
-65
lines changed

6 files changed

+43
-65
lines changed

templates/repo/view_file.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@
112112
</tbody>
113113
</table>
114114
{{if $.Permission.CanRead $.UnitTypeIssues}}
115-
<div class="code-view-menu-list ui fluid popup transition hidden">
115+
<div class="code-line-menu ui fluid popup transition hidden">
116116
<div class="ui column relaxed equal height">
117117
<div class="column">
118118
<div class="ui link list">

web_src/js/index.js

Lines changed: 7 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -2214,46 +2214,13 @@ function searchRepositories() {
22142214
}
22152215

22162216
function showCodeViewMenu() {
2217-
if ($('.code-view-menu-list').length === 0) {
2218-
return;
2219-
}
2220-
2221-
// Get clicked tr
2222-
const $code_tr = $('.code-view td.lines-code.active').parent();
2223-
2224-
// Reset code line marker
2225-
$('.code-view-menu-list').appendTo($('.code-view'));
2226-
$('.code-line-marker').remove();
2227-
2228-
// Generate new one
2229-
const icon_wrap = $('<div>', {
2230-
class: 'code-line-marker'
2231-
}).prependTo($code_tr.find('td:eq(0)').get(0)).hide();
2232-
2233-
const a_wrap = $('<a>', {
2234-
class: 'code-line-link'
2235-
}).appendTo(icon_wrap);
2236-
2237-
$('<i>', {
2238-
class: 'dropdown icon',
2239-
style: 'margin: 0px;'
2240-
}).appendTo(a_wrap);
2241-
2242-
icon_wrap.css({
2243-
left: '-7px',
2244-
display: 'block',
2245-
});
2246-
2247-
$('.code-view-menu-list').css({
2248-
'min-width': '220px',
2249-
});
2250-
2251-
// Popup the menu
2252-
$('.code-line-link').popup({
2253-
popup: $('.code-view-menu-list'),
2254-
on: 'click',
2255-
lastResort: 'bottom left',
2256-
});
2217+
if ($('.code-line-menu').length === 0) return;
2218+
$('.code-line-menu').appendTo($('.code-view'));
2219+
$('.code-line-button').remove();
2220+
$('.code-view td.lines-code.active').closest('tr').find('td:eq(0)').prepend(
2221+
$(`<button class="code-line-button">${svg('octicon-kebab-horizontal')}</button>`)
2222+
);
2223+
$('.code-line-button').popup({popup: $('.code-line-menu'), on: 'click'});
22572224
}
22582225

22592226
function initCodeView() {

web_src/js/svg.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import octiconGitMerge from '../../public/img/svg/octicon-git-merge.svg';
44
import octiconGitPullRequest from '../../public/img/svg/octicon-git-pull-request.svg';
55
import octiconIssueClosed from '../../public/img/svg/octicon-issue-closed.svg';
66
import octiconIssueOpened from '../../public/img/svg/octicon-issue-opened.svg';
7+
import octiconKebabHorizontal from '../../public/img/svg/octicon-kebab-horizontal.svg';
78
import octiconLink from '../../public/img/svg/octicon-link.svg';
89
import octiconLock from '../../public/img/svg/octicon-lock.svg';
910
import octiconMilestone from '../../public/img/svg/octicon-milestone.svg';
@@ -20,6 +21,7 @@ export const svgs = {
2021
'octicon-git-pull-request': octiconGitPullRequest,
2122
'octicon-issue-closed': octiconIssueClosed,
2223
'octicon-issue-opened': octiconIssueOpened,
24+
'octicon-kebab-horizontal': octiconKebabHorizontal,
2325
'octicon-link': octiconLink,
2426
'octicon-lock': octiconLock,
2527
'octicon-milestone': octiconMilestone,

web_src/less/_base.less

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -560,6 +560,19 @@ a.ui.card:hover,
560560
border-color: var(--color-secondary);
561561
}
562562

563+
.ui.link.list .item,
564+
.ui.link.list a.item,
565+
.ui.link.list .item a:not(.ui) {
566+
color: var(--color-text);
567+
}
568+
569+
.ui.link.list.list a.item:hover,
570+
.ui.link.list.list .item a:not(.ui):hover,
571+
.ui.link.list.list a.item:active,
572+
.ui.link.list.list .item a:not(.ui):active {
573+
color: var(--color-text-dark);
574+
}
575+
563576
.dont-break-out {
564577
overflow-wrap: break-word;
565578
word-wrap: break-word;
@@ -1565,20 +1578,8 @@ a.ui.label:hover {
15651578
border-bottom: 1px solid var(--color-secondary);
15661579
}
15671580
}
1568-
.code-view {
1569-
overflow: auto;
1570-
overflow-x: auto;
1571-
overflow-y: hidden;
1572-
1573-
&.has-context-menu {
1574-
overflow: visible;
1575-
overflow-x: visible;
1576-
overflow-y: visible;
1577-
}
1578-
1579-
table {
1580-
width: 100%;
1581-
}
1581+
.code-view table {
1582+
width: 100%;
15821583
}
15831584

15841585
.octicon-tiny {

web_src/less/_repository.less

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3140,9 +3140,23 @@ td.blob-excerpt {
31403140
box-shadow: 0 .5rem 1rem var(--color-shadow) !important;
31413141
}
31423142

3143-
.code-line-marker {
3144-
width: 13px;
3145-
height: 20px;
3146-
background-color: rgb(34 36 38 / 15%);
3143+
.code-line-menu {
3144+
width: auto !important;
3145+
}
3146+
3147+
.code-line-button {
3148+
background-color: var(--color-menu);
3149+
color: var(--color-text-light);
3150+
border: 1px solid var(--color-secondary);
3151+
border-radius: var(--border-radius);
3152+
padding: 1px 10px;
31473153
position: absolute;
3154+
font-family: var(--fonts-regular);
3155+
left: 0;
3156+
transform: translateX(-70%);
3157+
cursor: pointer;
3158+
3159+
&:hover {
3160+
color: var(--color-primary);
3161+
}
31483162
}

web_src/less/themes/theme-arc-green.less

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -153,12 +153,6 @@
153153
background: #353945;
154154
}
155155

156-
.ui.link.list .item,
157-
.ui.link.list a.item,
158-
.ui.link.list .item a:not(.ui) {
159-
color: #dbdbdb;
160-
}
161-
162156
.ui.red.label,
163157
.ui.red.labels .label {
164158
background-color: #7d3434 !important;

0 commit comments

Comments
 (0)