bill 4 mēneši atpakaļ
vecāks
revīzija
702a197b61

+ 5 - 0
src/components/tagging/sign-new.vue

@@ -227,6 +227,11 @@ const showContent = computed(() => {
   );
 });
 watchEffect(() => {
+  if (props.scenePos.id === "1464") {
+    console.error(showContent.value);
+  }
+});
+watchEffect(() => {
   if (showContent.value) {
     recovery();
   } else {

+ 4 - 4
src/hook/ids.ts

@@ -6,7 +6,7 @@ export const useSelects = <T extends { id: any }>(items: Ref<T[]>, test = false)
 
   const updateSelect = (item: T, select: boolean) => {
     const ndx = selects.value.findIndex((s) => s.id === item.id);
-    test && console.log('updateSelect', item.id, select)
+    test && console.error('updateSelect', item.id, select)
     if (select) {
       if (~ndx) {
         selects.value[ndx] = item as any
@@ -37,15 +37,15 @@ export const useSelects = <T extends { id: any }>(items: Ref<T[]>, test = false)
         items.map((item) => item.id),
         oldItems.map((item) => item.id)
       );
-      // test && console.error('added', added)
-      // test && console.error('deleted', deleted)
+      test && console.error('added', added)
+      test && console.error('deleted', deleted)
       
       added.forEach((id) => updateSelectId(id, true));
       deleted.forEach((id) => updateSelectId(id, false));
       oldItems.length = 0;
       oldItems.push(...items);
     },
-    { deep: true, flush: 'post' }
+    { deep: true, flush: 'post', immediate: true }
   );
 
   return {

+ 0 - 1
src/layout/edit/fuse-edit.vue

@@ -80,7 +80,6 @@ watch(
   (_n, _, onClean) => {
     const meta = currentMeta.value;
     if (meta && "full" in meta && (meta as any).full) {
-      debugger;
       enterEdit(() => {
         back();
       });

+ 8 - 2
src/sdk/association/guide.ts

@@ -1,12 +1,13 @@
 import { SceneGuide, sdk } from "../sdk";
 import { toRaw, ref, watch, watchEffect, computed } from "vue";
-import { viewModeStack, showLeftPanoStack, custom, showTaggingsStack, showPathsStack, showMeasuresStack, showSearchStack, showViewSettingStack } from "@/env";
+import { viewModeStack, showLeftPanoStack, custom, showTaggingsStack, showPathsStack, showMeasuresStack, showSearchStack, showViewSettingStack, showModeTabStack } from "@/env";
 import { togetherCallback, asyncTimeout } from "@/utils";
 import { fuseModels, isEdit, sysBus, fuseModelsLoaded, selectPaths } from "@/store";
 import type { FuseModel, FuseModels, Guide, GuidePath } from "@/store";
 import { analysisPoseInfo } from ".";
 import { fullView, isScenePlayRun, pauseScene, playScene } from "@/utils/full";
 import { animationGroup, currentTime, play } from "./animation";
+import { mergeFuns } from "@/components/drawing/hook";
 
 // -----------------导览关联--------------------
 
@@ -117,7 +118,12 @@ export const playSceneGuide = (
           showSearchStack.push(ref(false))
         ]
         if (forceFull) {
-          cleanups.push(showViewSettingStack.push(ref(false)))
+          cleanups.push(
+            mergeFuns([
+              showViewSettingStack.push(ref(false)),
+              showModeTabStack.push(ref(false)),
+            ])
+          );
         }
 
         pop = togetherCallback(cleanups)

+ 5 - 2
src/sdk/association/path.ts

@@ -6,7 +6,7 @@ import { nextTick, reactive, ref, watch, watchEffect } from "vue";
 import { groupProxy } from "@/store/group";
 import { isScenePlayRun, pauseScene, playScene } from "@/utils/full";
 import { analysisPose, setPose } from ".";
-import { custom, showPathsStack, showPathStack, showSearchStack, showViewSettingStack } from "@/env";
+import { custom, showModeTabStack, showPathsStack, showPathStack, showSearchStack, showViewSettingStack } from "@/env";
 import { Message } from "bill/expose-common";
 import { mergeFuns } from "@/components/drawing/hook";
 
@@ -66,7 +66,10 @@ export const playScenePath = async (
     create: () => {
       const cleanups = [showSearchStack.push(ref(false))]
       if (forceFull) {
-        cleanups.push(showViewSettingStack.push(ref(false)))
+        cleanups.push(
+          showViewSettingStack.push(ref(false)),
+          showModeTabStack.push(ref(false))
+        )
       }
       pop = mergeFuns(cleanups)
 

+ 4 - 4
src/style.scss

@@ -171,12 +171,12 @@ input::-ms-clear,input::-ms-reveal {
   top: 0;
   text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
   pointer-events: none;
-  max-width: 240px;
+  max-width: 320px;
   border-radius: 4px;
-  font-size: 14px;
-  padding: 10px 20px;
+  font-size: 12px;
+  padding: 10px 10px;
   color: #ffffff;
-  line-height: 22px;
+  line-height: 18px;
   word-break: break-all;
 }
 

+ 2 - 1
src/views/animation/index.vue

@@ -22,7 +22,7 @@
     />
     <GlobalFrame
       class="global-frame"
-      v-if="activeAttrib?.key !== 'frames' && !play && focusAM"
+      v-if="activeAttrib?.key !== 'frames' && !play && focusAM && !currentIsFullView"
       :data="{ id: '0', name: 'global-frame', time: 0 }"
       :frame-action="frameAction"
       @change-frame-action="(action) => (frameAction = action.action)"
@@ -80,6 +80,7 @@ import {
 import { clickListener } from "@/utils/event";
 import { useRMenus } from "@/components/right-menu";
 import { asyncTimeout } from "@/utils";
+import { currentIsFullView } from "@/utils/full";
 
 enterEdit(() => back());
 useViewStack(autoSaveAnimationModel);

+ 1 - 1
src/views/animation/left.vue

@@ -72,7 +72,7 @@ const emit = defineEmits<{
 const activeKey = ref("model");
 const { updateSelect, selects: selectAMs, unSelects, all } = useSelects(ams, true);
 all.value = true;
-watchEffect(() => {
+watch([selectAMs, unSelects], () => {
   emit("changeSelect", { select: selectAMs.value, unSelect: unSelects.value });
 });
 const updateSelectAm = (item: AnimationModel, select: boolean) => {

+ 0 - 1
src/views/merge/index.vue

@@ -40,7 +40,6 @@
         </ui-input>
       </ui-group-option>
       <ui-group-option label="不透明度">
-        {{ currentItem?.text }}---
         <ui-input
           type="range"
           v-model="custom.currentModel.opacity"

+ 13 - 1
src/views/proportion/index.vue

@@ -22,10 +22,16 @@ import { router, RoutesName } from "@/router";
 import { ref, computed, watch, watchEffect } from "vue";
 import { getSceneModel } from "@/sdk";
 import { autoSaveFuseModels, FuseModel, getFuseModel, leave } from "@/store";
-import { currentModelStack } from "@/env";
+import {
+  currentModelStack,
+  showLeftCtrlPanoStack,
+  showLeftPanoStack,
+  showSearchStack,
+} from "@/env";
 
 import type { ScaleSet } from "@/sdk";
 import { round } from "@/utils";
+import { mergeFuns } from "@/components/drawing/hook";
 
 const isCurrent = computed(
   () => router.currentRoute.value.name === RoutesName.proportion
@@ -75,8 +81,14 @@ watchEffect((onCleanup) => {
 
 useViewStack(() => {
   const hide = Message.show({ msg: "请选择两点标记一段已知长度,并输入真实长度" });
+  const cleanups = mergeFuns([
+    showLeftPanoStack.push(ref(false)),
+    showLeftCtrlPanoStack.push(ref(false)),
+    showSearchStack.push(ref(false)),
+  ]);
   return () => {
     hide();
+    cleanups();
     length.value = null;
   };
 });

+ 10 - 2
src/views/registration/index.vue

@@ -77,9 +77,12 @@ import { router, RoutesName } from "@/router";
 import {
   currentModelStack,
   custom,
+  showLeftCtrlPanoStack,
+  showLeftPanoStack,
   showMeasuresStack,
   showPathsStack,
   showPathStack,
+  showSearchStack,
   showTaggingsStack,
 } from "@/env";
 
@@ -166,11 +169,16 @@ watchEffect((onCleanup) => {
 });
 
 useViewStack(() => {
-  showMeasuresStack.push(ref(false));
+  const cleanups = mergeFuns([
+    showMeasuresStack.push(ref(false)),
+    showLeftPanoStack.push(ref(false)),
+    showLeftCtrlPanoStack.push(ref(false)),
+    showSearchStack.push(ref(false)),
+  ]);
   sdk.showGrid();
 
   return () => {
-    showMeasuresStack.pop();
+    cleanups();
     if (selectOptions.value.length) {
       selectOptions.value = [];
     }