@@ -440,7 +440,9 @@ namespace Config {
440440
441441 vector<string> available_batteries = {" Auto" };
442442
443+ bool did_proc_graph_symbol_change = false ;
443444 vector<string> current_boxes;
445+ vector<string> seen_boxes;
444446 vector<string> preset_list = {" cpu:0:default,mem:0:default,net:0:default,proc:0:default" };
445447 int current_preset = -1 ;
446448
@@ -509,6 +511,8 @@ namespace Config {
509511 if (vals.at (0 ).starts_with (" gpu" )) {
510512 set (" graph_symbol_gpu" , vals.at (2 ));
511513 } else {
514+ if (vals.at (0 ) == " proc" and getS (" graph_symbol_proc" ) != vals.at (2 ))
515+ did_proc_graph_symbol_change = true ;
512516 set (strings.find (" graph_symbol_" + vals.at (0 ))->first , vals.at (2 ));
513517 }
514518 }
@@ -686,6 +690,20 @@ namespace Config {
686690 locked = false ;
687691 }
688692
693+ // Add boxes to seen_boxes if they haven't been seen before
694+ bool set_seen_boxes (const string& boxes) {
695+ auto new_boxes = ssplit (boxes);
696+ bool were_new_boxes_seen = false ;
697+
698+ for (auto & box : new_boxes) {
699+ if (not v_contains (seen_boxes, box)) {
700+ seen_boxes.push_back (box);
701+ were_new_boxes_seen = true ;
702+ }
703+ }
704+ return were_new_boxes_seen;
705+ }
706+
689707 bool set_boxes (const string& boxes) {
690708 auto new_boxes = ssplit (boxes);
691709 for (auto & box : new_boxes) {
0 commit comments