@@ -425,6 +425,8 @@ bool modest_finder_selector_sub_type_pseudo_class_undef(modest_finder_t* finder,
425
425
426
426
bool modest_finder_selector_sub_type_pseudo_class_active (modest_finder_t * finder , myhtml_tree_node_t * base_node , mycss_selectors_entry_t * selector , mycss_selectors_specificity_t * spec )
427
427
{
428
+ if (base_node -> token )
429
+ return modest_finder_match_attribute_only_key (base_node -> token -> attr_first , "focus" , 5 );
428
430
return false;
429
431
}
430
432
@@ -506,10 +508,14 @@ bool modest_finder_selector_sub_type_pseudo_class_checked(modest_finder_t* finde
506
508
attr = attr -> next ;
507
509
}
508
510
}
509
- else if (base_node -> tag_id == MyHTML_TAG_OPTION ) {
511
+ else if (base_node -> tag_id == MyHTML_TAG_OPTION )
512
+ {
510
513
return modest_finder_match_attribute_only_key (base_node -> token -> attr_first , "selected" , 8 );
511
514
}
512
-
515
+ else if (base_node -> token && base_node -> tag_id >= MyHTML_TAG_LAST_ENTRY )
516
+ {
517
+ return modest_finder_match_attribute_only_key (base_node -> token -> attr_first , "checked" , 8 );
518
+ }
513
519
return false;
514
520
}
515
521
@@ -600,6 +606,14 @@ bool modest_finder_selector_sub_type_pseudo_class_disabled(modest_finder_t* find
600
606
601
607
return false;
602
608
}
609
+
610
+ /* custom HTML tag*/
611
+ if (base_node -> token && base_node -> tag_id >= MyHTML_TAG_LAST_ENTRY )
612
+ {
613
+ if (modest_finder_match_attribute_only_key (base_node -> token -> attr_first , "disabled" , 8 ))
614
+ return true;
615
+ return false;
616
+ }
603
617
604
618
return false;
605
619
}
@@ -668,6 +682,8 @@ bool modest_finder_selector_sub_type_pseudo_class_first_of_type(modest_finder_t*
668
682
669
683
bool modest_finder_selector_sub_type_pseudo_class_focus (modest_finder_t * finder , myhtml_tree_node_t * base_node , mycss_selectors_entry_t * selector , mycss_selectors_specificity_t * spec )
670
684
{
685
+ if (base_node -> token )
686
+ return modest_finder_match_attribute_only_key (base_node -> token -> attr_first , "focus" , 5 );
671
687
return false;
672
688
}
673
689
@@ -678,6 +694,8 @@ bool modest_finder_selector_sub_type_pseudo_class_future(modest_finder_t* finder
678
694
679
695
bool modest_finder_selector_sub_type_pseudo_class_hover (modest_finder_t * finder , myhtml_tree_node_t * base_node , mycss_selectors_entry_t * selector , mycss_selectors_specificity_t * spec )
680
696
{
697
+ if (base_node -> token )
698
+ return modest_finder_match_attribute_only_key (base_node -> token -> attr_first , "hover" , 5 );
681
699
return false;
682
700
}
683
701
0 commit comments