Przeglądaj źródła

逻辑完善及页面动态效果

liupeng 3 lat temu
rodzic
commit
dbf6045fbc
26 zmienionych plików z 439 dodań i 227 usunięć
  1. 10 12
      public/static/css/style/style.css
  2. 20 19
      src/common/common.js
  3. 2 2
      src/component/Container/Desktop/FixWindow/Changelog/index.vue
  4. 2 2
      src/component/Container/Desktop/FixWindow/ConnectedUser/index.vue
  5. 2 2
      src/component/Container/Desktop/FixWindow/Copy/index.vue
  6. 2 2
      src/component/Container/Desktop/FixWindow/NewLog/index.vue
  7. 1 1
      src/component/Container/Desktop/FixWindow/ResourceMonitor/index.vue
  8. 2 2
      src/component/Container/Desktop/FixWindow/RunningState/index.vue
  9. 2 2
      src/component/Container/Desktop/FixWindow/ScheduledTask/index.vue
  10. 2 2
      src/component/Container/Desktop/FixWindow/Storage/index.vue
  11. 17 12
      src/component/Container/Desktop/FixWindow/index.vue
  12. 3 4
      src/component/Container/Desktop/NotifySetting/index.vue
  13. 8 9
      src/component/Container/Desktop/NotifyShowall/index.vue
  14. 6 6
      src/component/Container/Desktop/NotifyTrayPanel/index.vue
  15. 2 4
      src/component/Container/Desktop/NotifyTrayPanelDetail/index.vue
  16. 34 13
      src/component/Container/Desktop/PortaSelectPosition/index.vue
  17. 4 4
      src/component/Container/Desktop/PortalSelectDialogWindow/index.vue
  18. 21 20
      src/component/Container/Desktop/SearchInput/index.vue
  19. 0 10
      src/component/Container/Desktop/Shortcut/index.vue
  20. 5 5
      src/component/Container/Desktop/UserSetting/index.vue
  21. 4 4
      src/component/Container/Desktop/UserTrayPanel/index.vue
  22. 0 6
      src/component/Container/Desktop/index.vue
  23. 290 80
      src/component/Container/DesktopAppView/AppViewItem/index.vue
  24. 0 1
      src/component/Container/DesktopAppView/PortalTarget/index.vue
  25. 0 1
      src/component/Container/DesktopAppView/index.vue
  26. 0 2
      src/component/Container/index.vue

+ 10 - 12
public/static/css/style/style.css

@@ -496,18 +496,20 @@ ul.sds-desktop-shortcut {
 .x-tool-maximize {
     background-position: 0 -30px;
 }
+.x-panel-ghost.v-window .v-window-body{
+    background-color: #f2f2f2;
+}
 
-/* 右侧固定栏 */
+.x-panel-ghost.v-window .v-trap-focus-body,
+.x-panel-ghost.sds-window-v5 .x-window-mc * {
+    opacity: 0;
+}
 
-.v-window {
-    overflow: hidden;
-    box-shadow: 0 4px 16px 0 rgba(0, 0, 0, .6);
-    border-radius: 3px;
-    display: flex;
-    flex-direction: column;
-    background-color: #fff;
+.x-panel-ghost .x-window-bwrap{
+    opacity: 0.9;
 }
 
+/* 右侧固定栏 */
 .v-widget-window {
     opacity: 0;
     background: rgba(40, 50, 60, 0.85);
@@ -515,10 +517,6 @@ ul.sds-desktop-shortcut {
     transition: top ease-in 0.2s, bottom ease-in 0.2s, left ease-in 0.2s, right ease-in 0.2s, opacity ease-in 0.2s;
 }
 
-.v-widget-window.move{
-    opacity: 0.5;
-}
-
 .v-widget-window.ghost {
     transition: none;
 }

+ 20 - 19
src/common/common.js

@@ -1,21 +1,22 @@
 // 移动窗口位置
-export function moveWindow(e,el,firstLayerX,firstLayerY,firstScrollX,firstScrollY) {
-    // X轴
-    let moveX = e.pageX - firstLayerX;
-    if (moveX > firstScrollX - el.offsetWidth) {
-      moveX = firstScrollX - el.offsetWidth;
-    }
-    // Y轴
-    if (moveX < 0) {
-      moveX = 0;
-    }
-    let moveY = e.pageY - firstLayerY;
-    if (moveY > firstScrollY - el.offsetHeight) {
-      moveY = firstScrollY - el.offsetHeight;
-    }
-    if (moveY < 0) {
-      moveY = 0;
-    }
-    let obj = {moveX,moveY}
-    return obj
+export function moveWindow(e, el, firstLayerX, firstLayerY, firstScrollX, firstScrollY) {
+  // X轴
+  let moveX = e.pageX - firstLayerX;
+  // if (moveX > firstScrollX - el.offsetWidth) {
+  //   moveX = firstScrollX - el.offsetWidth;
+  // }
+  // if (moveX < 0) {
+  //   moveX = 0;
+  // }
+  // Y轴
+
+  let moveY = e.pageY - firstLayerY;
+  // if (moveY > firstScrollY - el.offsetHeight) {
+  //   moveY = firstScrollY - el.offsetHeight;
+  // }
+  // if (moveY < 0) {
+  //   moveY = 0;
+  // }
+  let obj = { moveX, moveY }
+  return obj
 }

+ 2 - 2
src/component/Container/Desktop/FixWindow/Changelog/index.vue

@@ -2,7 +2,7 @@
   <!-- 文件更改日志 -->
   <div
     :style="{ height: height + 'px' }"
-    :class="cls">
+    :class="cls" :data-id="ChangeLogDetail.id">
     <div class="v-widget-item-header">
       <img
         :src="ChangeLogDetail.titleImgUrl"
@@ -98,7 +98,7 @@ export default {
       cls: "v-widget-item sds-window-v5 syno-sds-widget-item",
       maxHeight: true,
       ChangeLogDetail: {
-        id: 1,
+        id: 5,
         title: "文件更改日志",
         titleImgUrl:
           "../../../../../../public/image/index/wdgt_icn_title_file_change_logs.png",

+ 2 - 2
src/component/Container/Desktop/FixWindow/ConnectedUser/index.vue

@@ -2,7 +2,7 @@
     <!-- 已连接用户 -->
     <div 
     :style="{ height: height + 'px' }"
-    :class="cls">
+    :class="cls" :data-id="connectedUserDetail.id">
         <div class="v-widget-item-header"><img
                 :src="connectedUserDetail.titleImgUrl"
                 class="v-widget-item-header-icon">
@@ -131,7 +131,7 @@ export default {
       cls: "v-widget-item sds-window-v5 syno-sds-widget-item",
       maxHeight: true,
         connectedUserDetail:{
-            id: 1,
+            id: 3,
             title: '已连接用户',
             titleImgUrl: '../../../../public/image/index/wdgt_icn_title_current_connections.png',
             detailMessageList: [

+ 2 - 2
src/component/Container/Desktop/FixWindow/Copy/index.vue

@@ -2,7 +2,7 @@
     <!-- 备份 -->
     <div
     :style="{ height: height + 'px' }"
-    :class="cls">
+    :class="cls" :data-id="copyDetail.id">
         <div class="v-widget-item-header"><img
                 :src="copyDetail.titleImgUrl"
                 class="v-widget-item-header-icon">
@@ -119,7 +119,7 @@ export default {
       cls: "v-widget-item sds-window-v5 syno-sds-widget-item",
       maxHeight: true,
         copyDetail:{
-            id: 1,
+            id: 7,
             title: '备份',
             titleImgUrl: '../../../../../public/image/index/fileCopy.png',
             detailMessageList: [

+ 2 - 2
src/component/Container/Desktop/FixWindow/NewLog/index.vue

@@ -3,7 +3,7 @@
     <!-- 最新日志 -->
     <div
     :style="{ height: height + 'px' }"
-    :class="cls">
+    :class="cls" :data-id="logDetail.id">
         <div class="v-widget-item-header"><img
                 :src="logDetail.titleImgUrl"
                 class="v-widget-item-header-icon">
@@ -104,7 +104,7 @@ export default {
       cls: "v-widget-item sds-window-v5 syno-sds-widget-item",
       maxHeight: true,
         logDetail:{
-            id: 1,
+            id: 6,
             title: '最新日志',
             titleImgUrl: '../../../../public/image/index/recentLogs.png',
             detailMessageList: [

+ 1 - 1
src/component/Container/Desktop/FixWindow/ResourceMonitor/index.vue

@@ -2,7 +2,7 @@
     <!-- 资源监控 -->
     <div
     :style="{ height: height + 'px' }"
-    :class="cls">
+    :class="cls" :data-id="resourceMonitorDetail.id">
         <div class="v-widget-item-header"><img
                 :src="resourceMonitorDetail.titleImgUrl"
                 class="v-widget-item-header-icon">

+ 2 - 2
src/component/Container/Desktop/FixWindow/RunningState/index.vue

@@ -2,7 +2,7 @@
   <!-- 系统状况 -->
   <div
     :style="{ height: height + 'px' }"
-    :class="cls"
+    :class="cls" :data-id="runningStateDetail.id"
   >
     <div class="v-widget-item-header">
       <img
@@ -213,7 +213,7 @@ export default {
       cls:'v-widget-item sds-window-v5 syno-sds-widget-item active',
       maxHeight: true,
       runningStateDetail: {
-        id: 1,
+        id: 0,
         title: "系统状况",
         titleImgUrl: "../../../../public/image/index/windowInfo.png",
         centerDetail: {

+ 2 - 2
src/component/Container/Desktop/FixWindow/ScheduledTask/index.vue

@@ -2,7 +2,7 @@
     <!-- 计划的任务 -->
     <div 
     :style="{ height: height + 'px' }"
-    :class="cls">
+    :class="cls" :data-id="scheduledTaskDetail.id">
         <div class="v-widget-item-header"><img
                 :src="scheduledTaskDetail.titleImgUrl"
                 class="v-widget-item-header-icon">
@@ -116,7 +116,7 @@ export default {
       cls: "v-widget-item sds-window-v5 syno-sds-widget-item",
       maxHeight: true,
         scheduledTaskDetail:{
-            id: 1,
+            id: 4,
             title: '计划的任务',
             titleImgUrl: '../../../../public/image/index/wdgt_icn_title_scheduled_tasks.png',
             detailMessageList: [

+ 2 - 2
src/component/Container/Desktop/FixWindow/Storage/index.vue

@@ -2,7 +2,7 @@
     <!-- 存储 -->
     <div
     :style="{ height: height + 'px' }"
-    :class="cls">
+    :class="cls" :data-id="storageDetail.id">
         <div class="v-widget-item-header"><img
                 :src="storageDetail.titleImgUrl"
                 class="v-widget-item-header-icon">
@@ -97,7 +97,7 @@ export default {
       cls: "v-widget-item sds-window-v5 syno-sds-widget-item",
       maxHeight: true,
         storageDetail:{
-            id: 1,
+            id: 2,
             title: '存储',
             titleImgUrl: '../../../../public/image/index/wdgt_icn_title_storage_manager.png',
             detailMessageList: [

+ 17 - 12
src/component/Container/Desktop/FixWindow/index.vue

@@ -17,11 +17,11 @@
       right: right ? right : '',
     }"
     :class="fixWindowMessage.cls"
-    @click.capture="clickFixWindow"
+    @mousedown.capture="clickFixWindow"
   >
     <div
       class="v-window-header-wrapper draggable"
-      @mousedown.stop="mousedownWidgetHeader"
+      @mousedown.capture="mousedownWidgetHeader"
     >
       <div class="v-widget-header">
         <div class="v-widget-header-left">
@@ -70,7 +70,7 @@
           class="v-trap-focus-indicator"
         ></div>
         <div class="v-widget-items-wrapper">
-          <div class="v-ps show ps--active-y">
+          <div class="v-ps show ps--active-y" @mousedown="clickFixWindow">
             <div class="v-widget-list">
               <RunningState></RunningState>
               <ResourceMonitor></ResourceMonitor>
@@ -245,7 +245,6 @@ export default {
     ChangeLog,
     NewLog,
     Copy,
-
     // 弹出小窗口选择框
     PortalSelectDialogWindow,
     // 弹出位置选择框
@@ -294,7 +293,18 @@ export default {
     },
     // 点击小窗口选择框的每一项
     showOrHiddenWidgetItem(obj) {
-      this.portalDetail.detailMessageList[obj.index].cls = obj.cls1;
+      let index = this.portalDetail.detailMessageList.findIndex(item=>{
+        return item.title === obj.title
+      })
+      this.portalDetail.detailMessageList[index].cls = obj.cls1;
+      if (obj.cls1 && obj.cls1.includes('v-menu-item-select-selected selected')){
+        let widgetItemList = Array.from(document.querySelectorAll('.v-widget-item'))
+        let index1 = widgetItemList.findIndex(item1=>{
+          return item1.dataset.id == this.portalDetail.detailMessageList[index].id
+        })
+        let el = document.querySelector('.v-widget-list')
+        el.insertBefore(widgetItemList[index1],widgetItemList[0])
+      }
       this.portalDetail.detailMessageList.forEach((item, index) => {
         if (item.cls && item.cls.includes("active") && index !== 0) {
           item.cls = item.cls.replace("active", "");
@@ -341,9 +351,7 @@ export default {
       }
       this.left = moveX + "px";
       this.top = moveY + "px";
-      if (!el1.className.includes(" move")) {
-        el1.className = el1.className + " move";
-      }
+      el1.style.opacity = 0.5
       if (!el1.className.includes(" ghost")) {
         el1.className = el1.className + " ghost";
       }
@@ -365,7 +373,7 @@ export default {
       document.removeEventListener("mousemove", this.mousemoveWidgetHeader);
       document.removeEventListener("mouseup", this.mouseupWidgetHeader);
       el1.style.display = "flex";
-      el2.className = el2.className.replace(" move", "");
+      el2.style.opacity = 1
       el2.className = el2.className.replace(" ghost", "");
     },
     //显示或隐藏固定窗口
@@ -380,7 +388,6 @@ export default {
             ""
           );
         }
-        console.log(this.fixWindowisMaxZindex,111)
         if (this.fixWindowMessage.zIndex >= this.defaultZIndex) {
           if (
             this.fixWindowMessage.zIndex > 9050 && this.fixWindowMessage.cls === 'active-win'
@@ -478,10 +485,8 @@ export default {
   },
   watch: {
     defaultZIndex() {
-      console.log(this.fixWindowisMaxZindex,this.maskIsShow)
       if (this.fixWindowisMaxZindex && !this.maskIsShow) {
         this.fixWindowMessage.zIndex = this.defaultZIndex + 10;
-        console.log(this.fixWindowMessage.zIndex)
       }
     },
   },

+ 3 - 4
src/component/Container/Desktop/NotifySetting/index.vue

@@ -16,11 +16,11 @@
       width:notifySettingContant.width
       }"
       :class="notifySettingContant.cls"
-      @click="clickNotifySetting"
+      @mousedown="clickNotifySetting"
     >
       <div class="x-dlg-focus"></div>
       <div class="x-window-tl"
-      @mousedown.stop="mousedownNotifyTrayPanelDetail">
+      @mousedown.capture="mousedownNotifyTrayPanelDetail">
         <div class="x-window-tr">
           <div class="x-window-tc">
             <div class="x-window-header x-panel-icon x-window-draggable">
@@ -1117,8 +1117,7 @@ export default {
     },
     // 鼠标按下该页面头部
     mousedownNotifyTrayPanelDetail(e){
-      document.documentElement.click()
-      this.clickNotifySetting()
+      // document.documentElement.click()
       this.windowFirstClick.layerX = e.layerX;
       this.windowFirstClick.screenX = document.documentElement.clientWidth;
       this.windowFirstClick.layerY = e.layerY;

+ 8 - 9
src/component/Container/Desktop/NotifyShowall/index.vue

@@ -13,10 +13,10 @@
         left: notifyShowAllContant.left,
         zIndex: notifyShowAllContant.zIndex,
       }"
-      @click.capture="clickNotifyShowall"
+      @mousedown.capture="clickNotifyShowall"
     >
       <div class="v-window-header-wrapper draggable"
-      @mousedown.stop="mousedownNotifyTrayPanelDetail">
+      @mousedown.capture="mousedownNotifyTrayPanelDetail">
         <div class="app-icon"></div>
         <div class="v-window-header-text">
           <div class="v-window-header-title">消息</div>
@@ -324,7 +324,7 @@
             notifyShowAllContant.clearAllNotifyData
               .clearAllNotifyMessageDisplay,
         }"
-        @click.capture="maskClick()"
+        @mousedown.capture="maskMousedown()"
       >
         <div
           class="v-window v-message-box-window auto-height"
@@ -348,7 +348,7 @@
           :class="
             notifyShowAllContant.clearAllNotifyData.clearAllNotifyMessageCls
           "
-          @click="clickClearAllNotifyMessage"
+          @mousedown="mousedownClearAllNotifyMessage"
         >
           <div>
             <div class="v-trap-focus-indicator"></div>
@@ -620,7 +620,7 @@ export default {
       this.$bus.emit("showOrHiddenNotifyShowallClearAll", true);
     },
     // 点击清除全部信息弹出框
-    clickClearAllNotifyMessage() {
+    mousedownClearAllNotifyMessage() {
       let el = document.querySelector(
         ".notifyShowall .v-message-box-window"
       );
@@ -628,8 +628,8 @@ export default {
         el.className = el.className.replace(" no-shadow", "");
       }
     },
-    //没关闭清除全部信息弹出框时点击遮罩层
-    maskClick() {
+    //没关闭清除全部信息弹出框时鼠标按下遮罩层
+    maskMousedown() {
       if (
         this.notifyShowAllContant.clearAllNotifyData
           .clearAllNotifyMessageZIndex < this.defaultZIndex &&
@@ -679,8 +679,7 @@ export default {
     },
     // 鼠标按下该页面头部
     mousedownNotifyTrayPanelDetail(e){
-      document.documentElement.click()
-      this.clickNotifyShowall()
+      // document.documentElement.click()
       if(!this.windowIsMax){
         this.windowFirstClick.layerX = e.layerX;
         this.windowFirstClick.screenX = document.documentElement.clientWidth;

+ 6 - 6
src/component/Container/Desktop/NotifyTrayPanel/index.vue

@@ -10,11 +10,11 @@
       top: 41px;
     "
     :style="{ display: display }"
-    @click.stop="clickNotifyTrayPanel"
+    @mousedown.stop="clickNotifyTrayPanel"
   >
     <div class="x-panel-header">
       <span class="x-panel-header-text"
-        ><div class="sds-notify-setting-btn" @click.stop="openNotifySetting">
+        ><div class="sds-notify-setting-btn" @click="openNotifySetting">
           &nbsp;
         </div>
         <span class="x-panel-header-text">消息</span></span
@@ -91,7 +91,7 @@
                       <div class="detail" v-html="detailMessage.text"></div>
                       <a
                         class="link-font"
-                        @click.stop="
+                        @click="
                           openNotifyDetail(
                             detailMessage,
                             detailMessageIndex,
@@ -474,7 +474,7 @@ export default {
           e.srcElement.className = e.srcElement.className + " pressed";
         }
         this.$bus.emit("notifyMessageRead");
-        window.addEventListener("click", this.hiddenNotifyAndchangeIconColor);
+        window.addEventListener("mousedown", this.hiddenNotifyAndchangeIconColor);
       } else {
         this.display = "none";
         if (e.srcElement.className.includes(" pressed")) {
@@ -492,14 +492,14 @@ export default {
     hiddenNotifyAndchangeIconColor(e) {
       let el = document.querySelector(".tray-item.notify-button");
       if (e.srcElement === el) {
-        window.addEventListener("click", this.hiddenNotifyAndchangeIconColor);
+        window.addEventListener("mousedown", this.hiddenNotifyAndchangeIconColor);
       } else {
         this.display = "none";
         if (el.className && el.className.includes(" pressed")) {
           el.className = el.className.replace(" pressed", "");
         }
         window.removeEventListener(
-          "click",
+          "mousedown",
           this.hiddenNotifyAndchangeIconColor
         );
       }

+ 2 - 4
src/component/Container/Desktop/NotifyTrayPanelDetail/index.vue

@@ -14,10 +14,10 @@
       top:notifyTrayPanelDetailContant.top
     }"
     :class="notifyTrayPanelDetailContant.cls"
-    @click.capture="openNotifyDetail"
+    @mousedown.capture="openNotifyDetail"
   >
     <div class="v-window-header-wrapper draggable"
-      @mousedown.stop="mousedownNotifyTrayPanelDetail">
+      @mousedown.capture="mousedownNotifyTrayPanelDetail">
       <div class="app-icon"></div>
       <div class="v-window-header-text">
         <div class="v-window-header-title">事件详情</div>
@@ -213,8 +213,6 @@ export default {
     },
     // 鼠标按下该页面头部
     mousedownNotifyTrayPanelDetail(e){
-      document.documentElement.click()
-      this.openNotifyDetail()
       this.windowFirstClick.layerX = e.layerX;
       this.windowFirstClick.screenX = document.documentElement.clientWidth;
       this.windowFirstClick.layerY = e.layerY;

+ 34 - 13
src/component/Container/Desktop/PortaSelectPosition/index.vue

@@ -8,6 +8,7 @@
         syno-id="components-header-menu-1"
         style="height: auto; width: auto; right: 4px; top: 0px; z-index: 15000"
         :style="{ display: portalDetail.display }"
+        @mousedown.capture="mousedownMenuSelectPositionWidget"
       >
         <div tabindex="0" class="v-trap-focus-indicator"></div>
         <div class="v-trap-focus-body">
@@ -112,8 +113,26 @@ export default {
     };
   },
   methods: {
+    // 点击本页面
+    mousedownMenuSelectPositionWidget(){
+      this.portalDetail.display = 'block'
+          window.addEventListener("mousedown", fn, true);
+    },
     // 鼠标移入选择框的每一项
     mouseenterMenuItem(detailMessageIndex) {
+      if (
+        this.portalDetail.detailMessageList[0].cls &&
+        this.portalDetail.detailMessageList[0].cls.includes(" active")
+      ) {
+        this.portalDetail.detailMessageList[0].cls =
+          this.portalDetail.detailMessageList[0].cls.replace(" active", "");
+      } else if (
+        this.portalDetail.detailMessageList[0].cls &&
+        this.portalDetail.detailMessageList[0].cls.includes("active")
+      ) {
+        this.portalDetail.detailMessageList[0].cls =
+          this.portalDetail.detailMessageList[0].cls.replace("active", "");
+      }
       let cls = this.portalDetail.detailMessageList[detailMessageIndex].cls;
       if (cls && cls.includes("v-menu-item-select-selected selected")) {
         this.portalDetail.detailMessageList[detailMessageIndex].cls =
@@ -126,10 +145,12 @@ export default {
     mouseleaveMenuItem(detailMessageIndex) {
       let cls = this.portalDetail.detailMessageList[detailMessageIndex].cls;
       if (cls && cls.includes("active")) {
-        if(cls.includes(" active")){
-          this.portalDetail.detailMessageList[detailMessageIndex].cls  = cls.replace(" active", "");
-        }else if(cls.includes("active")){
-          this.portalDetail.detailMessageList[detailMessageIndex].cls  = cls.replace("active", "");
+        if (cls.includes(" active")) {
+          this.portalDetail.detailMessageList[detailMessageIndex].cls =
+            cls.replace(" active", "");
+        } else if (cls.includes("active")) {
+          this.portalDetail.detailMessageList[detailMessageIndex].cls =
+            cls.replace("active", "");
         }
       }
     },
@@ -189,19 +210,19 @@ export default {
             this.portalDetail.detailMessageList[0].cls =
               this.portalDetail.detailMessageList[0].cls + "active";
           } else if (
-            !this.portalDetail.detailMessageList[0].cls.includes(" active")
+            !this.portalDetail.detailMessageList[0].cls.includes("active") && !this.portalDetail.detailMessageList[0].cls.includes(" active")
           ) {
             this.portalDetail.detailMessageList[0].cls =
               this.portalDetail.detailMessageList[0].cls + " active";
           }
-          let fn = (e)=>{
-              let el = document.querySelector('.v-widget-header-tool-icon.dock')
-              if(e.srcElement !== el){
-                  this.portalDetail.display = 'none'
-              }
-              window.removeEventListener('click',fn,true)
-          }
-          window.addEventListener('click',fn,true)
+          let fn = (e) => {
+            let el = document.querySelector(".v-widget-header-tool-icon.dock");
+            if (e.srcElement !== el) {
+              this.portalDetail.display = "none";
+            }
+            window.removeEventListener("mousedown", fn, true);
+          };
+          window.addEventListener("mousedown", fn, true);
         } else if (this.portalDetail.display === "block") {
           this.portalDetail.display = "none";
         }

+ 4 - 4
src/component/Container/Desktop/PortalSelectDialogWindow/index.vue

@@ -13,7 +13,7 @@
           overflow: scroll;
         "
         :style="{ display: portalDetail.display, height: height }"
-        @click.capture="clickMenuSelectWidget"
+        @mousedown.capture="clickMenuSelectWidget"
       >
         <div tabindex="0" class="v-trap-focus-indicator"></div>
         <div class="v-trap-focus-body">
@@ -97,7 +97,7 @@ export default {
     // 点击本页面
     clickMenuSelectWidget() {
       this.portalDetail.display = "block";
-      window.addEventListener("click", this.hiddenSelectWidgetItem, true);
+      window.addEventListener("mousedown", this.hiddenSelectWidgetItem, true);
     },
     // 点击选择框的每一项
     clickMenuItem(detailMessageIndex) {
@@ -160,7 +160,7 @@ export default {
         if (this.portalDetail.display === "none") {
           this.portalDetail.display = "block";
           this.$bus.emit("showOrHiddenSelectWidgetPosition", "none");
-          window.addEventListener("click", this.hiddenSelectWidgetItem, true);
+          window.addEventListener("mousedown", this.hiddenSelectWidgetItem, true);
           this.changeSelectedMenuItem();
           window.addEventListener("resize", this.changeSelectedMenuItem());
         } else if (this.portalDetail.display === "block") {
@@ -175,7 +175,7 @@ export default {
       if (e.srcElement !== el) {
         this.portalDetail.display = "none";
       }
-      window.removeEventListener("click", this.hiddenSelectWidgetItem, true);
+      window.removeEventListener("mousedown", this.hiddenSelectWidgetItem, true);
     },
     //统计已选择的个数
     countSelectedMenuItem() {

+ 21 - 20
src/component/Container/Desktop/SearchInput/index.vue

@@ -1,21 +1,21 @@
 <template>
   <!-- 搜索框 -->
   <div
-      style="
-        position: absolute;
-        left: 50%;
-        transform: translate(-50%,-50%);
-        top: 50%;
-        width: 638px;
-        height:418px;
-        border-radius:7px;
-      "
-      :style="{
-        display: searchInputContant.display,
-        zIndex: searchInputContant.zIndex,
-      }"
-      :class="searchInputContant.cls"
-      @click.stop="clickSearchInput">
+    style="
+      position: absolute;
+      left: 50%;
+      transform: translate(-50%, -50%);
+      top: 50%;
+      width: 638px;
+      height: 418px;
+      border-radius: 7px;
+    "
+    :style="{
+      display: searchInputContant.display,
+      zIndex: searchInputContant.zIndex,
+    }"
+    :class="searchInputContant.cls"
+  >
     <div
       class="
         x-window
@@ -24,6 +24,7 @@
         sds-window-v5
         spotlight-init
       "
+      @mousedown.stop="clickSearchInput"
     >
       <div class="x-dlg-focus"></div>
       <div class="x-window-tl">
@@ -300,7 +301,7 @@ export default {
         if (!e.srcElement.className.includes(" pressed")) {
           e.srcElement.className = e.srcElement.className + " pressed";
         }
-        window.addEventListener("click", this.hiddenSearchInput);
+        window.addEventListener("mousedown", this.hiddenSearchInput);
       } else {
         this.searchInputContant.display = "none";
         this.searchInputContant.zIndex = this.defaultZIndex - 10;
@@ -315,7 +316,7 @@ export default {
             ""
           );
         }
-        window.removeEventListener("click", this.hiddenSearchInput);
+        window.removeEventListener("mousedown", this.hiddenSearchInput);
       }
     },
     // 隐藏本页面
@@ -323,10 +324,10 @@ export default {
       let el = document.querySelector(".tray-item.search-button");
       let el1 = document.querySelector(".syno-finder.spotlight-main-window");
       if (e.srcElement === el) {
-        window.addEventListener("click", this.hiddenSearchInput);
+        window.addEventListener("mousedown", this.hiddenSearchInput);
       } else {
         this.searchInputContant.display = "none";
-        window.removeEventListener("click", this.hiddenSearchInput);
+        window.removeEventListener("mousedown", this.hiddenSearchInput);
         this.panelBwrapDisplay = "none";
         if (el.className && el.className.includes(" pressed")) {
           el.className = el.className.replace(" pressed", "");
@@ -335,7 +336,7 @@ export default {
         this.selectDisplay = "none";
         this.searchCls = "";
         if (el1.className.includes(" merge")) {
-          el1.className = el1.className.replace(" merge",'');
+          el1.className = el1.className.replace(" merge", "");
         }
         this.keyword = "";
         if (this.searchInputContant.zIndex >= this.defaultZIndex) {

+ 0 - 10
src/component/Container/Desktop/Shortcut/index.vue

@@ -207,13 +207,11 @@ export default {
     },
     // 新添加的快捷方式
     pushShortcutList(selectedItem) {
-      console.log(selectedItem);
       let bol = this.shortcutDetail.detailMessageList.some((item) => {
         return item.id === selectedItem.id;
       });
       if (!bol) {
         this.shortcutDetail.detailMessageList.push(selectedItem);
-        console.log(this.shortcutDetail.detailMessageList);
       } else {
         let obj = {
           cls: "",
@@ -238,13 +236,6 @@ export default {
     },
     // 鼠标点击右键
     contextmenuAppViewItem(e, item, selectList) {
-      console.log(
-        e,
-        item,
-        selectList,
-        e.target.offsetLeft,
-        e.target.offsetHeight
-      );
       let obj = { left: e.pageX - 120, top: e.pageY - 40, item, selectList };
       this.$bus.emit("showPortalTarget", obj);
     },
@@ -255,7 +246,6 @@ export default {
       });
       if (index !== -1) {
         this.shortcutDetail.detailMessageList.splice(index, 1);
-        console.log(this.shortcutDetail.detailMessageList);
       }
       this.$bus.emit("hiddenPortalTarget");
     },

+ 5 - 5
src/component/Container/Desktop/UserSetting/index.vue

@@ -10,11 +10,11 @@
       left: userSettingDetail.left,
     }"
     :class="userSettingDetail.cls"
-    @click.capture="clickUserSetting"
+    @mousedown.capture="mousedownUserSetting"
     v-if="userSettingDetail.display === 'block'"
   >
     <div class="v-window-header-wrapper draggable"
-      @mousedown.stop="mousedownUserSetting">
+      @mousedown.capture="mousedownUserSettingHeader">
       <div
         class="app-icon"
         :style="{
@@ -100,7 +100,7 @@ export default {
       );
     },
     // 点击本页面
-    clickUserSetting() {
+    mousedownUserSetting() {
       if (this.userSettingDetail.zIndex < this.defaultZIndex) {
         this.userSettingDetail.zIndex = this.defaultZIndex + 10;
         this.$bus.emit("changeDefaultZIndex", this.defaultZIndex + 10);
@@ -147,9 +147,9 @@ export default {
       }
     },
     // 鼠标按下该页面头部
-    mousedownUserSetting(e){
+    mousedownUserSettingHeader(e){
       document.documentElement.click()
-      this.clickUserSetting()
+      this.mousedownUserSetting()
       if(this.userSettingDetail.iconMaximize === "block"){
         this.windowFirstClick.layerX = e.layerX;
         this.windowFirstClick.screenX = document.documentElement.clientWidth;

+ 4 - 4
src/component/Container/Desktop/UserTrayPanel/index.vue

@@ -5,7 +5,7 @@
     class="taskbar-menu user-menu v-menu"
     style="height: auto; width: 200px; right: 20px; top: 41px; z-index: 15000"
     :style="{display: display}"
-    @click.stop="clickUserTrayPanel"
+    @mousedown.stop="clickUserTrayPanel"
   >
     <div class="v-trap-focus-indicator"></div>
     <div class="v-trap-focus-body">
@@ -60,7 +60,7 @@ export default {
        if(! e.srcElement.className.includes(' pressed')){
          e.srcElement.className = e.srcElement.className + " pressed"
        }
-        window.addEventListener('click',this.hiddenUserAndchangeIconColor)
+        window.addEventListener('mousedown',this.hiddenUserAndchangeIconColor)
       }else {
         this.display = "none";
         if (e.srcElement.className.includes(" pressed")) {
@@ -78,13 +78,13 @@ export default {
     hiddenUserAndchangeIconColor(e){
       let el = document.querySelector(".tray-item.user-button");
       if(e.srcElement === el){
-        window.addEventListener("click", this.hiddenUserAndchangeIconColor);
+        window.addEventListener("mousedown", this.hiddenUserAndchangeIconColor);
       }else{
         this.display = "none";
         if (el.className && el.className.includes(" pressed")) {
           el.className = el.className.replace(" pressed", "");
         }
-        window.removeEventListener('click',this.hiddenUserAndchangeIconColor)
+        window.removeEventListener('mousedown',this.hiddenUserAndchangeIconColor)
       }
       
     },

+ 0 - 6
src/component/Container/Desktop/index.vue

@@ -31,8 +31,6 @@
     ></UserSetting>
     <UserAbout :defaultZIndex="defaultZIndex"></UserAbout>
     <SearchInput :searchInputData="searchInputData"  :defaultZIndex="defaultZIndex"></SearchInput>
-    <!-- <Message></Message> -->
-    <!-- <Mask></Mask> -->
   </div>
 </template>
 
@@ -48,8 +46,6 @@ import UserTrayPanel from "./UserTrayPanel";
 import UserSetting from "./UserSetting";
 import UserAbout from "./UserAbout";
 import SearchInput from "./SearchInput";
-// import Message from "./Message";
-// import Mask from './Mask'
 
 export default {
   props: [
@@ -96,8 +92,6 @@ export default {
     UserSetting,
     UserAbout,
     SearchInput,
-    // Message,
-    // Mask,
   },
   name: "Desktop",
 };

+ 290 - 80
src/component/Container/DesktopAppView/AppViewItem/index.vue

@@ -7,13 +7,9 @@
   >
     <div
       class="x-window synopkg-window sds-window-v5 x-resizable-pinned"
-      style="
-        position: absolute;
-        visibility: visible;
-      "
+      style="position: absolute; visibility: visible"
       :style="{
         width: detailMessage.width,
-        height: detailMessage.height,
         minHeight: detailMessage.minHeight,
         display: detailMessage.display,
         zIndex: detailMessage.zIndex,
@@ -21,15 +17,20 @@
         top: detailMessage.top,
       }"
       :class="detailMessage.cls"
+      :data-id="detailMessage.id"
       v-for="(
         detailMessage, detailMessageIndex
       ) in resizablePinnedDetail.detailMessageList"
       :key="detailMessage.id"
-      @click.capture="changeDialogMenuWindow(detailMessage.id)"
+      @mousedown.capture="changeDialogMenuWindow(detailMessage.id)"
     >
       <div></div>
-      <div class="x-window-tl"
-              @mousedown.stop="mousedownWindowHeader($event, detailMessageIndex)">
+      <div
+        class="x-window-tl"
+        @mousedown.capture="
+          mousedownWindowHeader($event, detailMessageIndex, detailMessage.id)
+        "
+      >
         <div class="x-window-tr">
           <div class="x-window-tc">
             <div
@@ -277,17 +278,18 @@
 </template>
 
 <script>
-import {moveWindow} from '../../../../common/common'
+import { moveWindow } from "../../../../common/common";
 export default {
   props: ["defaultZIndex", "detailMessageList"],
   data() {
     return {
       display: "block",
-      windowFirstClick:{
-        layerX:0,
-        layerY:0,
-        screenX:0,
-        screenY:0,
+      moveWindowId: 0,
+      windowFirstClick: {
+        layerX: 0,
+        layerY: 0,
+        screenX: 0,
+        screenY: 0,
       },
       resizablePinnedDetail: {
         detailMessageList: [],
@@ -309,11 +311,72 @@ export default {
     this.$bus.on("clickMenuItem", this.clickMenuItem);
     this.$bus.on("hiddenOrShowOtherWindow", this.hiddenDialogWindow);
     this.resizablePinnedDetail.detailMessageList = this.detailMessageList;
-    this.resizablePinnedDetail.detailMessageList.forEach(
-      (item, index) => {
-        this.detailMessageWidthList[index] = item.width;
-      }
-    );
+    this.resizablePinnedDetail.detailMessageList.forEach((item, index) => {
+      this.detailMessageWidthList[index] = item.width;
+    });
+    window.addEventListener("resize", () => {
+      let windowList = document.querySelectorAll(
+        ".sds-window-v5.x-resizable-pinned"
+      );
+      windowList.forEach((item) => {
+        let index = this.resizablePinnedDetail.detailMessageList.findIndex(
+          (item1) => {
+            return item1.id == item.dataset.id;
+          }
+        );
+        if (item.style.display === "block") {
+          if (
+            document.documentElement.scrollHeight <
+              item.offsetHeight + item.offsetTop &&
+            document.documentElement.scrollHeight > item.offsetHeight
+          ) {
+            let top = document.documentElement.scrollHeight - item.offsetHeight;
+            this.resizablePinnedDetail.detailMessageList[index].top =
+              top + "px";
+            if (top < 0) {
+              this.resizablePinnedDetail.detailMessageList[index].top = 0;
+            }
+          } else if (
+            document.documentElement.scrollHeight >
+            item.offsetHeight
+          ) {
+            this.resizablePinnedDetail.detailMessageList[index].top =
+              (document.documentElement.scrollHeight - item.offsetHeight) / 2 +'px'
+          } else if (
+            document.documentElement.scrollHeight < item.offsetHeight
+          ) {
+            this.resizablePinnedDetail.detailMessageList[index].top = 0;
+          }
+          console.log(
+            document.documentElement.scrollWidth,
+            document.documentElement.scrollHeight,
+            item.offsetHeight,
+            item.offsetWidth
+          );
+          if (
+            document.documentElement.scrollWidth <
+              item.offsetWidth + item.offsetLeft &&
+            document.documentElement.scrollWidth > item.offsetWidth
+          ) {
+            let left = document.documentElement.scrollWidth - item.offsetWidth;
+            this.resizablePinnedDetail.detailMessageList[index].left =
+              left + "px";
+            console.log(left);
+            if (left < 0) {
+              this.resizablePinnedDetail.detailMessageList[index].left = 0;
+            }
+          } else if (
+            document.documentElement.scrollWidth >
+            item.offsetWidth
+          ) {
+            this.resizablePinnedDetail.detailMessageList[index].left = (document.documentElement.scrollWidth-
+            item.offsetWidth)/2 +'px'
+          } else if (document.documentElement.scrollWidth < item.offsetWidth) {
+            this.resizablePinnedDetail.detailMessageList[index].left = 0;
+          }
+        }
+      });
+    });
   },
   methods: {
     // 显示本页面
@@ -366,6 +429,7 @@ export default {
       });
       this.resizablePinnedDetail.detailMessageList[detailMessageIndex].cls =
         "active-win";
+
       let defaultZIndex = this.defaultZIndex + 10;
       this.resizablePinnedDetail.detailMessageList[detailMessageIndex].zIndex =
         defaultZIndex;
@@ -373,10 +437,119 @@ export default {
       this.resizablePinnedDetail.detailMessageList[detailMessageIndex].zIndex =
         defaultZIndex;
       this.lastCheckIndex = detailMessageIndex;
-      if(this.resizablePinnedDetail.detailMessageList[detailMessageIndex].width !== '100%'){
-        let left = (document.documentElement.clientWidth - parseInt(this.resizablePinnedDetail.detailMessageList[detailMessageIndex].width.replace('px',''))) / 2
-        this.resizablePinnedDetail.detailMessageList[detailMessageIndex].left = left + 'px'
+      let left, top;
+      if (
+        this.resizablePinnedDetail.detailMessageList[detailMessageIndex]
+          .width !== "100%"
+      ) {
+        left =
+          (document.documentElement.clientWidth -
+            parseInt(
+              this.resizablePinnedDetail.detailMessageList[
+                detailMessageIndex
+              ].width.replace("px", "")
+            )) /
+          2;
+        this.resizablePinnedDetail.detailMessageList[detailMessageIndex].left =
+          left + "px";
+      }
+      if (
+        typeof this.resizablePinnedDetail.detailMessageList[detailMessageIndex]
+          .left === "string"
+      ) {
+        if (
+          parseFloat(
+            this.resizablePinnedDetail.detailMessageList[
+              detailMessageIndex
+            ].left.replace("px", "")
+          ) < 0
+        ) {
+          this.resizablePinnedDetail.detailMessageList[
+            detailMessageIndex
+          ].left = 0;
+        }
       }
+      this.$nextTick(() => {
+        let windowList = document.querySelectorAll(
+          ".sds-window-v5.x-resizable-pinned"
+        );
+        windowList.forEach((item) => {
+          if (
+            item.dataset.id ==
+            this.resizablePinnedDetail.detailMessageList[detailMessageIndex].id
+          ) {
+            if (
+              document.documentElement.scrollHeight >
+                item.offsetHeight + item.offsetTop &&
+              document.documentElement.scrollHeight > item.offsetHeight
+            ) {
+              top =
+                (document.documentElement.clientHeight - item.offsetHeight) / 2;
+              this.resizablePinnedDetail.detailMessageList[
+                detailMessageIndex
+              ].top = top + "px";
+            } else if (
+              document.documentElement.scrollHeight <
+                item.offsetHeight + item.offsetTop &&
+              document.documentElement.scrollHeight > item.offsetHeight
+            ) {
+              this.resizablePinnedDetail.detailMessageList[
+                detailMessageIndex
+              ].top =
+                document.documentElement.scrollHeight -
+                item.offsetHeight +
+                "px";
+            } else if (
+              document.documentElement.scrollHeight < item.offsetHeight
+            ) {
+              this.resizablePinnedDetail.detailMessageList[
+                detailMessageIndex
+              ].top = 0;
+            }
+            if (
+              typeof this.resizablePinnedDetail.detailMessageList[
+                detailMessageIndex
+              ].top === "string"
+            ) {
+              if (
+                parseFloat(
+                  this.resizablePinnedDetail.detailMessageList[
+                    detailMessageIndex
+                  ].top.replace("px", "")
+                ) < 0
+              ) {
+                this.resizablePinnedDetail.detailMessageList[
+                  detailMessageIndex
+                ].top = 0;
+              }
+            }
+            // if (
+            //   document.documentElement.scrollHeight <
+            //     item.offsetHeight + item.offsetTop &&
+            //   document.documentElement.scrollHeight > item.offsetHeight
+            // ) {
+            //   this.resizablePinnedDetail.detailMessageList[
+            //     detailMessageIndex
+            //   ].top =
+            //     document.documentElement.scrollHeight -
+            //     item.offsetHeight +
+            //     "px";
+            //   if (
+            //     document.documentElement.scrollHeight - item.offsetHeight <
+            //     0
+            //   ) {
+            //     this.resizablePinnedDetail.detailMessageList[
+            //       detailMessageIndex
+            //     ].top = 0;
+            //   }
+            // } else {
+            //   this.resizablePinnedDetail.detailMessageList[
+            //     detailMessageIndex
+            //   ].top = "40px";
+            // }
+          }
+        });
+      });
     },
     // 切换弹出的menu窗口
     changeDialogMenuWindow(id) {
@@ -429,7 +602,6 @@ export default {
       this.resizablePinnedDetail.detailMessageList[detailMessageIndex].zIndex =
         this.defaultZIndex - 10;
       this.$bus.emit("changeDefaultZIndex", this.defaultZIndex - 10);
-      this.countOpenWindowNum();
     },
     //最大化弹出窗口
     maxiSizeWindow(id) {
@@ -437,7 +609,8 @@ export default {
         this.resizablePinnedDetail.detailMessageList.findIndex((item) => {
           return item.id === id;
         });
-      this.resizablePinnedDetail.detailMessageList[detailMessageIndex].top = '40px'
+      this.resizablePinnedDetail.detailMessageList[detailMessageIndex].top =
+        "40px";
       this.resizablePinnedDetail.detailMessageList[detailMessageIndex].width =
         "100%";
       this.resizablePinnedDetail.detailMessageList[
@@ -446,11 +619,14 @@ export default {
       this.resizablePinnedDetail.detailMessageList[
         detailMessageIndex
       ].iconMaximize = "none";
-      this.resizablePinnedDetail.detailMessageList[detailMessageIndex].left = 0
-      this.resizablePinnedDetail.detailMessageList[detailMessageIndex].top = '40px'
-      let window = document.querySelector('.sds-window-v5.x-resizable-pinned.active-win')
-      if(! window.className.includes(' x-window-maximized')){
-        window.className = window.className + ' x-window-maximized'
+      this.resizablePinnedDetail.detailMessageList[detailMessageIndex].left = 0;
+      this.resizablePinnedDetail.detailMessageList[detailMessageIndex].top =
+        "40px";
+      let window = document.querySelector(
+        ".sds-window-v5.x-resizable-pinned.active-win"
+      );
+      if (!window.className.includes(" x-window-maximized")) {
+        window.className = window.className + " x-window-maximized";
       }
     },
     //恢复弹出窗口宽度
@@ -459,7 +635,21 @@ export default {
         this.resizablePinnedDetail.detailMessageList.findIndex((item) => {
           return item.id === id;
         });
-      this.resizablePinnedDetail.detailMessageList[detailMessageIndex].top = 0
+      if (
+       typeof ( this.resizablePinnedDetail.detailMessageList[detailMessageIndex]
+          .top) === 'string'
+      ) {
+        if (
+          parseFloat(
+            this.resizablePinnedDetail.detailMessageList[
+              detailMessageIndex
+            ].top.replace("px", "")
+          ) < 0
+        )
+          this.resizablePinnedDetail.detailMessageList[
+            detailMessageIndex
+          ].top = 0;
+      }
       this.resizablePinnedDetail.detailMessageList[detailMessageIndex].width =
         this.detailMessageWidthList[detailMessageIndex];
       this.resizablePinnedDetail.detailMessageList[
@@ -468,11 +658,21 @@ export default {
       this.resizablePinnedDetail.detailMessageList[
         detailMessageIndex
       ].iconMaximize = "block";
-      let left = (document.documentElement.clientWidth - parseInt(this.resizablePinnedDetail.detailMessageList[detailMessageIndex].width.replace('px',''))) / 2
-      this.resizablePinnedDetail.detailMessageList[detailMessageIndex].left = left + 'px'
-      let window = document.querySelector('.sds-window-v5.x-resizable-pinned.active-win')
-      if(window.className.includes(' x-window-maximized')){
-        window.className = window.className.replace(' x-window-maximized','')
+      let left =
+        (document.documentElement.clientWidth -
+          parseInt(
+            this.resizablePinnedDetail.detailMessageList[
+              detailMessageIndex
+            ].width.replace("px", "")
+          )) /
+        2;
+      this.resizablePinnedDetail.detailMessageList[detailMessageIndex].left =
+        left + "px";
+      let window = document.querySelector(
+        ".sds-window-v5.x-resizable-pinned.active-win"
+      );
+      if (window.className.includes(" x-window-maximized")) {
+        window.className = window.className.replace(" x-window-maximized", "");
       }
     },
     //关闭弹出窗口
@@ -487,23 +687,6 @@ export default {
       this.resizablePinnedDetail.detailMessageList[detailMessageIndex].zIndex =
         this.defaultZIndex - 10;
       this.$bus.emit("changeDefaultZIndex", this.defaultZIndex - 10);
-      // }
-      this.countOpenWindowNum();
-    },
-    //统计打开的弹出窗口
-    countOpenWindowNum() {
-      this.openWindowNum = 0;
-      this.resizablePinnedDetail.detailMessageList.forEach((item) => {
-        if (item.display === "block") {
-          this.openWindowNum++;
-        }
-      });
-      if (!this.openWindowNum) {
-        this.resizablePinnedDetail.detailMessageList.forEach((item) => {
-          item.zIndex = 9050;
-          item.cls = "deactive-win";
-        });
-      }
     },
     // 按z-index 给menuItem排序
     arraySort(array, key) {
@@ -514,46 +697,73 @@ export default {
       });
     },
     // 鼠标按下弹出框窗口头部
-    mousedownWindowHeader(e, index) {
-      document.documentElement.click()
-      this.openDialogWindow(index)
-      if(this.resizablePinnedDetail.detailMessageList[
-        index
-      ].iconMaximize === "block"){
+    mousedownWindowHeader(e, index, id) {
+      this.moveWindowId = id;
+      document.documentElement.click();
+      if (
+        this.resizablePinnedDetail.detailMessageList[index].iconMaximize ===
+        "block"
+      ) {
         this.windowFirstClick.layerX = e.layerX;
         this.windowFirstClick.screenX = document.documentElement.clientWidth;
         this.windowFirstClick.layerY = e.layerY;
         this.windowFirstClick.screenY = document.documentElement.clientHeight;
-        document.addEventListener(
-          "mousemove",
-          this.moveWindowPosition
-        );
-        document.addEventListener(
-          "mouseup",
-          this.upWindowPosition
-        );
+        document.addEventListener("mousemove", this.moveWindowPosition);
+        document.addEventListener("mouseup", this.upWindowPosition);
       }
     },
     // 移动弹出框窗口位置
     moveWindowPosition(e) {
-      let window = document.querySelector('.sds-window-v5.x-resizable-pinned.active-win')
-      let obj = moveWindow(e,window,this.windowFirstClick.layerX,this.windowFirstClick.layerY,this.windowFirstClick.screenX,this.windowFirstClick.screenY)
-      window.style.left = obj.moveX +'px'
-      window.style.top = obj.moveY +'px'
-      if (!window.className.includes(' x-panel-ghost')){
-        window.className = window.className + ' x-panel-ghost'
+      let windowList = document.querySelectorAll(
+        ".sds-window-v5.x-resizable-pinned"
+      );
+
+      let index = this.resizablePinnedDetail.detailMessageList.findIndex(
+        (item) => {
+          return item.id == this.moveWindowId;
+        }
+      );
+      let index1 = Array.from(windowList).findIndex((item) => {
+        console.dir(item);
+        return item.dataset.id == this.moveWindowId;
+      });
+      if (index1 !== -1 && index1 !== undefined) {
+        let window = windowList[index1];
+        let obj = moveWindow(
+          e,
+          window,
+          this.windowFirstClick.layerX,
+          this.windowFirstClick.layerY,
+          this.windowFirstClick.screenX,
+          this.windowFirstClick.screenY
+        );
+        if (!window.className.includes(" x-panel-ghost")) {
+          window.className = window.className + " x-panel-ghost";
+        }
+        if (index1 !== -1 && index !== undefined) {
+          this.resizablePinnedDetail.detailMessageList[index].left =
+            obj.moveX + "px";
+          this.resizablePinnedDetail.detailMessageList[index].top =
+            obj.moveY + "px";
+        }
       }
     },
     // 鼠标松开
-    upWindowPosition(e){
-      let window = document.querySelector('.sds-window-v5.x-resizable-pinned.active-win')
-      if (window.className.includes(' x-panel-ghost')){
-        window.className = window.className.replace(' x-panel-ghost','')
+    upWindowPosition(e) {
+      let windowList = document.querySelectorAll(
+        ".sds-window-v5.x-resizable-pinned"
+      );
+      let index1 = Array.from(windowList).findIndex((item) => {
+        return item.dataset.id == this.moveWindowId;
+      });
+      if (index1 !== -1 && index1 !== undefined) {
+        let window = windowList[index1];
+        if (window.className.includes(" x-panel-ghost")) {
+          window.className = window.className.replace(" x-panel-ghost", "");
+        }
+        document.removeEventListener("mousemove", this.moveWindowPosition);
+        document.removeEventListener("mouseup", this.upWindowPosition);
       }
-      let index = -1
-      // document.removeEventListener("mousemove", this.moveWindowPosition.bind(this,e,index));
-      document.removeEventListener("mousemove", this.moveWindowPosition);
-      document.removeEventListener("mouseup", this.upWindowPosition);
     },
     // 小图标被改变了
     menuItemChanged(menuList) {

+ 0 - 1
src/component/Container/DesktopAppView/PortalTarget/index.vue

@@ -49,7 +49,6 @@ export default {
       this.top = obj.top + "px";
       this.selectList = obj.selectList;
       this.selectedItem = JSON.parse(JSON.stringify(obj.item));
-      console.log(this.selectedItem);
       this.selectList.forEach((item, index) => {
         if (index === 0) {
           item.cls = "active";

+ 0 - 1
src/component/Container/DesktopAppView/index.vue

@@ -174,7 +174,6 @@ export default {
     // 鼠标点击右键
     contextmenuAppViewItem(e, item, selectList) {
       e.preventDefault();
-      console.log(e, item, selectList);
       let obj = { left: e.clientX, top: e.clientY, item, selectList };
       this.$bus.emit("showPortalTarget", obj);
     },

+ 0 - 2
src/component/Container/index.vue

@@ -988,7 +988,6 @@ export default {
     },
     // 固定窗口的层级固定成最大的
     fixWindowZIndexFix(bol) {
-      console.log(bol)
       this.fixWindowZIndexFixMax = bol;
     },
   },
@@ -997,7 +996,6 @@ export default {
       let appViewIndex = this.appViewData.findIndex((item) => {
         return item.zIndex >= this.defaultZIndex && item.display === "block";
       });
-      console.log(this.fixWindowZIndexFixMax)
       let fixWindowZIndexIsMax =
         this.fixWindowData.zIndex >= this.defaultZIndex &&
         this.fixWindowData.display === "block" &&