@@ -375,7 +375,7 @@ class EditAllAutoLayerRules extends ui.modal.Panel {
375375 for (r in copy .rules )
376376 invalidateRuleAndOnesBelow (r );
377377 },
378- enable : ()-> return App .ME .clipboard .is (CRuleGroup ),
378+ enable : ()-> App .ME .clipboard .is (CRuleGroup ),
379379 });
380380 });
381381
@@ -645,18 +645,26 @@ class EditAllAutoLayerRules extends ui.modal.Panel {
645645 ContextMenu .attachTo_new (jGroup , jGroupHeader , (ctx )-> {
646646 ctx .addElement ( Ctx_CopyPaster ({
647647 elementName : " group" ,
648- clipType : CRuleGroup ,
649648 copy : ()-> App .ME .clipboard .copyData (CRuleGroup , rg .toJson (li .def )),
650649 cut : ()-> {
651650 App .ME .clipboard .copyData (CRuleGroup , rg .toJson (li .def ));
652651 deleteRuleGroup (rg , false );
653652 },
654653 paste : ()-> {
655- var copy = ld .pasteRuleGroup (project , App .ME .clipboard , rg );
656- editor .ge .emit (LayerRuleGroupAdded (copy ));
657- for (r in copy .rules )
658- invalidateRuleAndOnesBelow (r );
654+ if ( App .ME .clipboard .is (CRule ) ) {
655+ var copy = ld .pasteRule (project , rg , App .ME .clipboard );
656+ lastRule = copy ;
657+ editor .ge .emit ( LayerRuleAdded (copy ) );
658+ invalidateRuleAndOnesBelow (copy );
659+ }
660+ else if ( App .ME .clipboard .is (CRuleGroup ) ) {
661+ var copy = ld .pasteRuleGroup (project , App .ME .clipboard , rg );
662+ editor .ge .emit (LayerRuleGroupAdded (copy ));
663+ for (r in copy .rules )
664+ invalidateRuleAndOnesBelow (r );
665+ }
659666 },
667+ pasteAcceptedTypes : [CRuleGroup , CRule ],
660668 duplicate : ()-> {
661669 var copy = ld .duplicateRuleGroup (project , rg );
662670 editor .ge .emit ( LayerRuleGroupAdded (copy ) );
@@ -1050,7 +1058,6 @@ class EditAllAutoLayerRules extends ui.modal.Panel {
10501058 ContextMenu .attachTo_new (jRule , (ctx : ContextMenu )-> {
10511059 ctx .addElement ( Ctx_CopyPaster ({
10521060 elementName : " rule" ,
1053- clipType : CRule ,
10541061
10551062 copy : ()-> App .ME .clipboard .copyData (CRule , r .toJson (ld )),
10561063 cut : ()-> {
@@ -1063,6 +1070,7 @@ class EditAllAutoLayerRules extends ui.modal.Panel {
10631070 editor .ge .emit ( LayerRuleAdded (copy ) );
10641071 invalidateRuleAndOnesBelow (copy );
10651072 },
1073+ pasteAcceptedTypes : [CRule ],
10661074 duplicate : ()-> {
10671075 var copy = ld .duplicateRule (project , rg , r );
10681076 lastRule = copy ;
0 commit comments