Skip to content

Commit 823f300

Browse files
Added DontMergeClass and marked DontMergeAttributes as deprecated during confusing name
1 parent 7308f84 commit 823f300

File tree

2 files changed

+11
-6
lines changed

2 files changed

+11
-6
lines changed

core/util/src/main/scala/net/liftweb/util/CssSel.scala

100644100755
Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -393,16 +393,19 @@ private class SelectorMap(binds: List[CssBind]) extends Function1[NodeSeq, NodeS
393393
}
394394
}
395395

396-
case x if x.isInstanceOf[EmptyBox] || x == Full(DontMergeAttributes) => {
396+
case x if x.isInstanceOf[EmptyBox] ||
397+
x == Full(DontMergeClass) ||
398+
x == Full(DontMergeAttributes) => {
397399
val calced = bind.calculate(realE).map(findElemIfThereIsOne _)
400+
val skipClassMerge = x == Full(DontMergeClass) || x == Full(DontMergeAttributes)
398401

399402
calced.length match {
400403
case 0 => NodeSeq.Empty
401404
case 1 => {
402405
calced.head match {
403406
case Group(g) => g
404407
case e: Elem => new Elem(e.prefix,
405-
e.label, mergeAll(e.attributes, false, x == Full(DontMergeAttributes)),
408+
e.label, mergeAll(e.attributes, false, skipClassMerge),
406409
e.scope, e.minimizeEmpty, e.child: _*)
407410
case x => x
408411
}
@@ -425,7 +428,7 @@ private class SelectorMap(binds: List[CssBind]) extends Function1[NodeSeq, NodeS
425428
id => ids.contains(id)
426429
} getOrElse (false)
427430
val newIds = targetId filter (_ => keepId) map (i => ids - i) getOrElse (ids)
428-
val newElem = new Elem(e.prefix, e.label, mergeAll(e.attributes, !keepId, x == Full(DontMergeAttributes)), e.scope, e.minimizeEmpty, e.child: _*)
431+
val newElem = new Elem(e.prefix, e.label, mergeAll(e.attributes, !keepId, skipClassMerge), e.scope, e.minimizeEmpty, e.child: _*)
429432
(newIds, newElem :: result)
430433
}
431434
case x => (ids, x :: result)

core/util/src/main/scala/net/liftweb/util/CssSelector.scala

100644100755
Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,10 @@ final case class PrependKidsSubNode() extends SubNode with WithKids {
8080
def transform(original: NodeSeq, newNs: NodeSeq): NodeSeq = newNs ++ original
8181
}
8282

83-
final case object DontMergeAttributes extends SubNode {
84-
}
83+
@deprecated("Please use DontMergeClassValue instead.", "3.3.0")
84+
final case object DontMergeAttributes extends SubNode
85+
86+
final case object DontMergeClass extends SubNode
8587

8688
final case class SurroundKids() extends SubNode with WithKids {
8789
def transform(original: NodeSeq, newNs: NodeSeq): NodeSeq = {
@@ -253,7 +255,7 @@ object CssSelectorParser extends PackratParsers with ImplicitConversions {
253255
name => AttrSubNode(name)
254256
}) |
255257

256-
('!' ~ '!' ^^ (a => DontMergeAttributes)) |
258+
('!' ~ '!' ^^ (a => DontMergeClass)) |
257259
('<' ~ '*' ~ '>') ^^ (a => SurroundKids()) |
258260
('-' ~ '*' ^^ (a => PrependKidsSubNode())) |
259261
('>' ~ '*' ^^ (a => PrependKidsSubNode())) |

0 commit comments

Comments
 (0)