1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-11 20:01:10 +00:00

add context menu for libraries list (#6909)

* add context menu for libraries list

* support context menu on grid mode

* optimize code

---------

Co-authored-by: zhouwenxuan <aries@Mac.local>
This commit is contained in:
Aries
2024-10-18 10:54:58 +08:00
committed by GitHub
parent 675e2572da
commit b723b6436e
10 changed files with 419 additions and 33 deletions

View File

@@ -32,7 +32,8 @@ const propTypes = {
onItemUnshare: PropTypes.func.isRequired,
onItemRename: PropTypes.func,
onItemDelete: PropTypes.func,
onMonitorRepo: PropTypes.func
onMonitorRepo: PropTypes.func,
onContextMenu: PropTypes.func.isRequired,
};
class SharedRepoListItem extends React.Component {
@@ -157,7 +158,7 @@ class SharedRepoListItem extends React.Component {
};
onMenuItemClick = (e) => {
let operation = e.target.dataset.toggle;
let operation = e.target.dataset.toggle || e.target.dataset.operation;
switch (operation) {
case 'Rename':
this.onItemRenameToggle();
@@ -616,6 +617,10 @@ class SharedRepoListItem extends React.Component {
}
};
handleContextMenu = (e) => {
this.props.onContextMenu(e, this.props.repo);
};
renderPCUI = () => {
const { isStarred } = this.state;
let { iconUrl, iconTitle, libPath } = this.getRepoComputeParams();
@@ -627,6 +632,7 @@ class SharedRepoListItem extends React.Component {
onMouseOver={this.onMouseOver}
onMouseLeave={this.onMouseLeave}
onFocus={this.onMouseEnter}
onContextMenu={this.handleContextMenu}
>
<td className="text-center">
<i
@@ -659,6 +665,7 @@ class SharedRepoListItem extends React.Component {
onMouseEnter={this.onMouseEnter}
onMouseLeave={this.onMouseLeave}
onFocus={this.onMouseEnter}
onContextMenu={this.handleContextMenu}
>
<div className="d-flex align-items-center text-truncate">
<img src={iconUrl} title={iconTitle} alt={iconTitle} width="36" className="mr-2" />