bsegraves / custom-folds

Atom plugin for defining custom markers for foldable regions.
MIT License
24 stars 9 forks source link

Fold labels duplicating above fold tags on fold #38

Open drew0530 opened 6 years ago

drew0530 commented 6 years ago

image This happens to me when I have them all folded up, and then open and close one of the bottom containers. it only seems to duplicate the tags that are directly above it.

bsegraves commented 6 years ago

I can't repro this behavior.

Can you provide an example file and the rules for your fold regions?

drew0530 commented 6 years ago
  // *f Order Information
  selBranch: { get: function () { return element(by.name('Branch')); } },
  selAgent: { get: function () { return element(by.id('AgentID')); } },
  selLoadType: { get: function () { return element(by.id('TruckloadTypeID')); } },
  selCustomer: { get: function () { return element(by.name('Customer_input')); } },
  inpCustomerOrderNum: { get: function () { return element(by.model('vm.order.CustomerOrder.CustomerShipmentNumber')); } },
  inpDistance: { get: function () { return element(by.model('vm.order.CustomerOrder.DistanceTotal')); } },
  inpWeight: { get: function () { return element(by.model('vm.order.CustomerOrder.WeightTotal')); } },
  inpVolume: { get: function () { return element(by.model('vm.order.CustomerOrder.Volume')); } },
  // &f
  // *f Reference Information [Order]
  tblRefs: { get: function () { return $$('tr[ng-dblclick="vm.editRef($index)"]'); } },
  selOrderReferenceType: { get: function() { return element(by.model('vm.customerOrderReferenceIdentifier.ReferenceIdentifierType')); } },
  inpOrderReferenceNumber: { get: function() { return element(by.model('vm.customerOrderReferenceIdentifier.ReferenceNumber')); } },
  btnOrderAddReference: { get: function() { return element(by.css('button[ng-click="vm.addReferenceToOrder()"]')); } },
  // &f
  // *f Rate Information [Order]
  tblRates: { get: function () { return $$('tr[ng-dblclick="vm.editRate($index)"]'); } },
  selOrderRateCode: { get: function() { return element(by.css('[aria-owns="RateTypeID_listbox"]')); } },
  inpOrderBillQty: { get: function() { return element(by.model('vm.customerOrderRate.BillQuantity')); } },
  inpOrderBillRate: { get: function() { return element(by.model('vm.customerOrderRate.BillRate')); } },
  inpOrderPayQty: { get: function() { return element(by.model('vm.customerOrderRate.PayQuantity')); } },
  inpOrderPayRate: { get: function() { return element(by.model('vm.customerOrderRate.PayRate')); } },
  btnOrderAddRate: { get: function() { return element(by.css('button[ng-click="vm.addRateToOrder()"]')); } },
  // &f
  // *f Miscellaneous Information
  selCommodityType: { get: function() { return element(by.name('CommodityType')); } },
  inpMinTemp: { get: function() { return element(by.name('Min Temp')); } },
  inpMaxTemp: { get: function() { return element(by.name('Max Temp')); } },
  selPaymentType: { get: function() { return element(by.name('PaymentTypeID')); } },
  inpPalletCount: { get: function() { return element(by.name('PalletCount')); } },
  // &f
  // *f Notes
  txtNotes: { get: function () { return element(by.name('Notes')); } },
  txtInternalNotes: { get: function () { return element(by.name('InternalNotes')); } },
  // &f
  // *f Equipment Information
  selEquipmentType: { get: function() { return element(by.name('EquipmentTypeID')); } },
  inpEquipmentLength: { get: function() { return element(by.name('EquipmentLength')); } },
  inpEquipmentHeight: { get: function() { return element(by.name('EquipmentHeight')); } },
  inpEquipmentWidth: { get: function() { return element(by.name('EquipmentWidth')); } },
  // &f
  // *f Handling Requirements
  chkTarps: { get: function() { return element(by.css('label[for="HandlingRequirement0"]')); } },
  chkPalletExchange: { get: function() { return element(by.css('label[for="HandlingRequirement1"]')); } },
  chkTeam: { get: function() { return element(by.css('label[for="HandlingRequirement2"]')); } },
  chkExpedited: { get: function() { return element(by.css('label[for="HandlingRequirement3"]')); } },
  // &f
  // *f Stop Information
  tblStops: { get: function () { return $$('div[ng-repeat="stop in vm.order.CustomerOrder.CustomerOrderStops | orderBy:\'StopSequence\'"]'); } },
  lblStops: { get: function () { return element(by.css('div[data-intro="Combined stop information."]')); } },
  btnNewStop: { get: function() { return element(by.css('button[ng-click="vm.newStop()"]')); } },
  radPick: { get: function() { return element.all(by.name('StopTypeID')).get(0); } },
  radDrop: { get: function() { return element.all(by.name('StopTypeID')).get(1); } },
  inpStopDate: { get: function() { return element.all(by.id('StopDate')); } },
  inpStopTime: { get: function () { return element(by.model('vm.customerOrderStop.CustomerOrderStopDates[0].StopTime')); } },
  inpStopLocation: { get: function() { return element(by.name('StopLocation_input')); } },
  btnAddBranch: { get: function () { return element(by.css('[ng-click="vm.addBranchLocation()"]')); } },
  inpStopReferences: { get: function() { return element(by.css('input[placeholder="PU#/DL#"]')); } },
  inpStopWeight: { get: function() { return element(by.model('vm.customerOrderStop.Weight')); } },
  inpStopVolume: { get: function() { return element(by.model('vm.customerOrderStop.Volume')); } },
  txtInstructions: { get: function () { return element(by.model('vm.customerOrderStop.Notes')); } },
  btnAddStop: { get: function() { return element(by.css('button[ng-click="vm.addStopToOrder()"]')); } },
  // &f
  // *f Reference Information [Stop]
  selStopReferenceType: { get: function() { return element(by.model('vm.customerOrderStop.CustomerOrderStopReferenceIdentifier.ReferenceIdentifierType')); } },
  inpStopReferenceNumber: { get: function() { return element(by.model('vm.customerOrderStop.CustomerOrderStopReferenceIdentifier.ReferenceNumber')); } },
  btnStopAddReference: { get: function() { return element(by.css('button[ng-click="vm.addReferenceToStop()"]')); } },
  // &f
  // *f Rate Information [Stop]
  selStopRateCode: { get: function() { return element(by.css('[aria-owns="StopItemRateTypeID_listbox"]')); } },
  inpStopBillQty: { get: function() { return element(by.model('vm.customerOrderStop.CustomerOrderStopItem.CustomerOrderStopItemRate.BillQuantity')); } },
  inpStopBillRate: { get: function() { return element(by.model('vm.customerOrderStop.CustomerOrderStopItem.CustomerOrderStopItemRate.BillRate')); } },
  inpStopPayQty: { get: function() { return element(by.model('vm.customerOrderStop.CustomerOrderStopItem.CustomerOrderStopItemRate.PayQuantity')); } },
  inpStopPayRate: { get: function() { return element(by.model('vm.customerOrderStop.CustomerOrderStopItem.CustomerOrderStopItemRate.PayRate')); } },
  selStopRateType: { get: function () { return element(by.model('vm.customerOrderStop.CustomerOrderStopItem.PieceQuantityType')); } },
  btnStopAddRate: { get: function() { return element(by.css('button[ng-click="vm.addItemToStop()"]')); } },
  // &f

And as you can see, the fold rule is to start the region on '*f', and then close on '&f'

bsegraves commented 6 years ago

I've tried but I still can't repro this.

What version of custom-folds and atom are you running. Also, I assume the file type is JavaScript?

fold