roster-state-colors.diff
author Myhailo Danylenko <isbear@ukrpost.net>
Sat, 07 Nov 2015 17:39:49 +0200
changeset 88 0a87df8ad9c1
parent 87 78238d26911a
child 92 66f7e2aa040c
permissions -rw-r--r--
Refresh queue for new mcabber
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
29
335662766a88 Some updates to add-cmake
Myhailo Danylenko <isbear@ukrpost.net>
parents: 26
diff changeset
     1
Change roster item colors on chatstate change
335662766a88 Some updates to add-cmake
Myhailo Danylenko <isbear@ukrpost.net>
parents: 26
diff changeset
     2
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
     3
diff -r f17324b6c882 mcabber/contrib/themes/light.txt
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
     4
--- a/mcabber/contrib/themes/light.txt	Tue Nov 11 21:21:09 2014 +0200
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
     5
+++ b/mcabber/contrib/themes/light.txt	Tue Nov 11 22:35:16 2014 +0200
57
cfa24a16e928 Drop accepted, add guide to seaprate-build
Myhailo Danylenko <isbear@ukrpost.net>
parents: 36
diff changeset
     6
@@ -14,7 +14,6 @@
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     7
 set color_bgrostersel  = green
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     8
 set color_rostersel    = yellow
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     9
 set color_rosterselmsg = red
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    10
-set color_rosternewmsg = red
57
cfa24a16e928 Drop accepted, add guide to seaprate-build
Myhailo Danylenko <isbear@ukrpost.net>
parents: 36
diff changeset
    11
 set color_readmark     = red
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    12
 
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    13
 # vim:set ft=conf:
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    14
diff -r f17324b6c882 mcabber/contrib/themes/light2.txt
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    15
--- a/mcabber/contrib/themes/light2.txt	Tue Nov 11 21:21:09 2014 +0200
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    16
+++ b/mcabber/contrib/themes/light2.txt	Tue Nov 11 22:35:16 2014 +0200
57
cfa24a16e928 Drop accepted, add guide to seaprate-build
Myhailo Danylenko <isbear@ukrpost.net>
parents: 36
diff changeset
    17
@@ -14,7 +14,6 @@
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    18
 set color_bgrostersel  = black
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    19
 set color_rostersel    = brightgreen
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    20
 set color_rosterselmsg = red
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    21
-set color_rosternewmsg = red
57
cfa24a16e928 Drop accepted, add guide to seaprate-build
Myhailo Danylenko <isbear@ukrpost.net>
parents: 36
diff changeset
    22
 set color_readmark     = red
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    23
 
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    24
 # vim:set ft=conf:
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    25
diff -r f17324b6c882 mcabber/contrib/themes/oliver.txt
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    26
--- a/mcabber/contrib/themes/oliver.txt	Tue Nov 11 21:21:09 2014 +0200
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    27
+++ b/mcabber/contrib/themes/oliver.txt	Tue Nov 11 22:35:16 2014 +0200
57
cfa24a16e928 Drop accepted, add guide to seaprate-build
Myhailo Danylenko <isbear@ukrpost.net>
parents: 36
diff changeset
    28
@@ -14,7 +14,6 @@
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    29
 set color_bgrostersel  = yellow
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    30
 set color_rostersel    = blue
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    31
 set color_rosterselmsg = red
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    32
-set color_rosternewmsg = red
57
cfa24a16e928 Drop accepted, add guide to seaprate-build
Myhailo Danylenko <isbear@ukrpost.net>
parents: 36
diff changeset
    33
 set color_readmark     = red
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    34
 
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    35
 # vim:set ft=conf:
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    36
diff -r f17324b6c882 mcabber/doc/help/en/hlp_color.txt
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    37
--- a/mcabber/doc/help/en/hlp_color.txt	Tue Nov 11 21:21:09 2014 +0200
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    38
+++ b/mcabber/doc/help/en/hlp_color.txt	Tue Nov 11 22:35:16 2014 +0200
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    39
@@ -11,6 +11,7 @@
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    40
  Set a color rule (or overwrite, if it already exists).  The status is string containing all statuses the roster item can have for the rule to match, or * if any status is OK.  Wildcard is the file-matching wildcard that will be applied to JID.  Color is the wanted color.
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    41
  If color is -, the rule is removed.
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    42
  If more than one rule matches, the color from the last created (not overwritten) is used.
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    43
+ Also mask can contain symbols '!', '#', '+' and '.', that represent buddies with urgent condition, with new messages, that are typing and that have ceased typing. These symbols have higher priority than status ones.
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    44
 /color mucnick nick (color|-)
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    45
  Marks the nick to be colored by given color.  If a MUC has colored nicks, this one will be used.  If color is -, the color is marked as chosen automatically, which means it will not be used in 'preset' coloring mode, but will stay the same in 'on' coloring mode.
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    46
 /color muc (jid|.|*) [on|preset|off|-]
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    47
diff -r f17324b6c882 mcabber/doc/help/uk/hlp_color.txt
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    48
--- a/mcabber/doc/help/uk/hlp_color.txt	Tue Nov 11 21:21:09 2014 +0200
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    49
+++ b/mcabber/doc/help/uk/hlp_color.txt	Tue Nov 11 22:35:16 2014 +0200
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    50
@@ -11,6 +11,7 @@
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    51
  Додає нове чи змінює існуюче правило кольору. "Статус" складений з літер статусу, до яких докладається це правило (наприклад "n_d?"). Зірочка ("*") відповідає будь-якому статусу. "Маска" подібна до файлової маски й докладається до jid. Правило встановлює колір контактів, що йому відповідають.
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    52
  Щоб вилучити правило, вкажіть колір "-".
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    53
  Коли є декілька правил, що відповідають контакту, спрацьовує останнє додане (_не_ змінене).
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    54
+ Також рядок статусів може містити символи '!', '#', '+' та '.', що відповідають користувачам, які відповідно мають негайні події, нові повідомлення, друкують та друкували але спинилися. Ці символи мають більший пріоритет ніж символи статусів.
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    55
 /color muc (jid|.|*) [on|preset|off|-]
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    56
  Встановлює режим забарвлення прізвиськ у чаті. Якщо замість jid вказано * режим докладається до всіх чатів, для яких не визначено особистого правила (з вказанням jid).
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    57
  У режимі on забарвлюються усі прізвиська, у режимі preset - лише ті, для яких колір встановлено командою /color mucnick, а режим off вимикає забарвлення прізвиськ. Режим - прибирає з вказаних jid особисті режими забарвлення. Тоді до них докладається глобальний. Глобальний режим прибрати не можна.
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    58
diff -r f17324b6c882 mcabber/mcabber/screen.c
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    59
--- a/mcabber/mcabber/screen.c	Tue Nov 11 21:21:09 2014 +0200
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    60
+++ b/mcabber/mcabber/screen.c	Tue Nov 11 22:35:16 2014 +0200
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    61
@@ -222,6 +222,8 @@
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    62
 
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    63
 /* Functions */
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    64
 
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    65
+static unsigned int attention_sign(void);
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    66
+
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    67
 static int find_color(const char *name)
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    68
 {
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    69
   int result;
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    70
@@ -445,7 +447,7 @@
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    71
     "roster",
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    72
     "rostersel",
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    73
     "rosterselmsg",
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    74
-    "rosternewmsg",
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    75
+    "rosternewmsg", /* not removing this to not break binary compatibility with mainstream */
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    76
     "info",
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    77
     "msgin",
18
2714b95de09d Sync with development version
Mikael Berthe <mikael@lilotux.net>
parents: 16
diff changeset
    78
     "readmark",
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    79
@@ -519,10 +521,6 @@
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    80
           init_pair(i+1, ((color) ? find_color(color) : COLOR_RED),
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    81
                     find_color(backselected));
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    82
           break;
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    83
-      case COLOR_ROSTERNMSG:
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    84
-          init_pair(i+1, ((color) ? find_color(color) : COLOR_RED),
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    85
-                    find_color(background));
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    86
-          break;
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    87
       case COLOR_INFO:
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    88
           init_pair(i+1, ((color) ? find_color(color) : COLOR_WHITE),
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    89
                     find_color(background));
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    90
@@ -826,6 +824,24 @@
16
ca5a2f1def20 Rebase to new development version
Mikael Berthe <mikael@lilotux.net>
parents: 1
diff changeset
    91
   settings_set_guard("color_rosternewmsg", scr_color_guard);
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    92
   settings_set_guard("color_timestamp", scr_color_guard);
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    93
 
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    94
+  { // Add default rule only if user has not defined one already
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    95
+    GSList *rel;
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    96
+    gboolean found = FALSE;
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    97
+    for (rel = rostercolrules; rel; rel = rel->next) {
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    98
+      rostercolor *rule = rel->data;
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
    99
+      if ((strchr(rule->status, '#') || strchr(rule->status, attention_sign()))
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   100
+          && (!strcmp(rule->wildcard, "*"))) {
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   101
+        found = TRUE;
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   102
+        break;
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   103
+      }
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   104
+    }
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   105
+    if (!found) {
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   106
+      char statuses[3] = "#!";
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   107
+      statuses[1] = attention_sign();
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   108
+      scr_roster_color(statuses, "*", "red");
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   109
+    }
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   110
+  }
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   111
+
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   112
   getmaxyx(stdscr, maxY, maxX);
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   113
   Log_Win_Height = DEFAULT_LOG_WIN_HEIGHT;
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   114
   // Note scr_draw_main_window() should be called early after scr_init_curses()
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   115
@@ -2168,6 +2184,10 @@
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   116
     // for unfolded groups.
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   117
     if (ismsg && (!isgrp || ishid)) {
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   118
       pending = '#';
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   119
+      // Attention sign?
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   120
+      if ((ismuc && isurg >= ui_attn_sign_prio_level_muc) ||
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   121
+          (!ismuc && isurg >= ui_attn_sign_prio_level))
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   122
+        pending = attention_sign();
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   123
     }
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   124
 
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   125
     if (ismuc) {
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   126
@@ -2191,24 +2211,22 @@
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   127
       for (n = 0; n < maxx; n++)
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   128
         waddch(rosterWnd, ' ');
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   129
     } else {
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   130
-      if (pending == '#')
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   131
-        wattrset(rosterWnd, get_color(COLOR_ROSTERNMSG));
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   132
-      else {
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   133
-        int color = get_color(COLOR_ROSTER);
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   134
-        if ((!isspe) && (!isgrp)) { // Look for color rules
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   135
-          GSList *head;
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   136
-          const char *bjid = buddy_getjid(BUDDATA(buddy));
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   137
-          for (head = rostercolrules; head; head = g_slist_next(head)) {
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   138
-            rostercolor *rc = head->data;
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   139
-            if (g_pattern_match_string(rc->compiled, bjid) &&
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   140
-                (!strcmp("*", rc->status) || strchr(rc->status, status))) {
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   141
-              color = compose_color(rc->color);
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   142
-              break;
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   143
-            }
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   144
+      int color = get_color(COLOR_ROSTER);
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   145
+      if ((!isspe) && (!isgrp)) { // Look for color rules
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   146
+        GSList *head;
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   147
+        const char *jid = buddy_getjid(BUDDATA(buddy));
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   148
+        for (head = rostercolrules; head; head = g_slist_next(head)) {
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   149
+          rostercolor *rc = head->data;
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   150
+          if (g_pattern_match_string(rc->compiled, jid) &&
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   151
+              (!strcmp("*", rc->status) ||
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   152
+               strchr(rc->status, pending) ||
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   153
+               strchr(rc->status, status))) {
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   154
+            color = compose_color(rc->color);
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   155
+            break;
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   156
           }
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   157
         }
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   158
-        wattrset(rosterWnd, color);
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   159
       }
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   160
+      wattrset(rosterWnd, color);
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   161
     }
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   162
 
26
65d81aec6691 Resync to mainstream, drop extend-caps
Myhailo Danylenko <isbear@ukrpost.net>
parents: 24
diff changeset
   163
     if (Roster_Width > prefix_length)
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   164
@@ -2216,13 +2234,6 @@
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   165
     else
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   166
       name[0] = 0;
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   167
 
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   168
-    if (pending == '#') {
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   169
-      // Attention sign?
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   170
-      if ((ismuc && isurg >= ui_attn_sign_prio_level_muc) ||
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   171
-          (!ismuc && isurg >= ui_attn_sign_prio_level))
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   172
-        pending = attention_sign();
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   173
-    }
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   174
-
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   175
     if (isgrp) {
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   176
       if (ishid) {
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   177
         int group_count = 0;
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   178
diff -r f17324b6c882 mcabber/mcabber/screen.h
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   179
--- a/mcabber/mcabber/screen.h	Tue Nov 11 21:21:09 2014 +0200
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   180
+++ b/mcabber/mcabber/screen.h	Tue Nov 11 22:35:16 2014 +0200
57
cfa24a16e928 Drop accepted, add guide to seaprate-build
Myhailo Danylenko <isbear@ukrpost.net>
parents: 36
diff changeset
   181
@@ -47,7 +47,7 @@
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   182
   COLOR_ROSTER,
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   183
   COLOR_ROSTERSEL,
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   184
   COLOR_ROSTERSELNMSG,
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   185
-  COLOR_ROSTERNMSG,
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   186
+  COLOR_ROSTERNMSG, /* not removing this to not break binary compatibility with mainstream */
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   187
   COLOR_INFO,
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   188
   COLOR_MSGIN,
18
2714b95de09d Sync with development version
Mikael Berthe <mikael@lilotux.net>
parents: 16
diff changeset
   189
   COLOR_READMARK,
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   190
diff -r f17324b6c882 mcabber/mcabberrc.example
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   191
--- a/mcabber/mcabberrc.example	Tue Nov 11 21:21:09 2014 +0200
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   192
+++ b/mcabber/mcabberrc.example	Tue Nov 11 22:35:16 2014 +0200
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   193
@@ -429,16 +429,25 @@
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   194
 #set color_bgrostersel  = cyan
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   195
 #set color_rostersel    = blue
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   196
 #set color_rosterselmsg = red
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   197
-#set color_rosternewmsg = red
18
2714b95de09d Sync with development version
Mikael Berthe <mikael@lilotux.net>
parents: 16
diff changeset
   198
 #set color_readmark     = red
87
78238d26911a Update series to current dev version
Myhailo Danylenko <isbear@ukrpost.net>
parents: 85
diff changeset
   199
 #set color_timestamp    = brightblue
1
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   200
 
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   201
-# You can color roster items by their status and JID.  For example, to have
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   202
-# all roster items white, just all contacts from jabber.org that are away,
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   203
-# not available or do not disturb yellow, you do this:
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   204
+# You can color roster items by their status, state and JID.  For example,
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   205
+# to have all roster items white, just all contacts from jabber.org that
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   206
+# are away, not available or do not disturb yellow, you do this:
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   207
 #
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   208
 #color roster * * white
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   209
 #color roster adn *@jabber.org yellow
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   210
+#
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   211
+# You can specify '!', '#', '+' and '.' in status mask, they will take
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   212
+# precedence over status letters and will select buddies accordingly with
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   213
+# urgent condition, with new messages, that are typing and that ceased
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   214
+# typing. By default there exists one rule:
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   215
+#
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   216
+#color roster !# * red
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   217
+#
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   218
+# However, if you define a rule with either '!' or '#', this default rule
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   219
+# will not be added.
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   220
 
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   221
 # You can let mcabber color nicks in MUC.
024f3a2dda3e Add roster-state-colors (hg ignored it for some reason)
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
   222
 # These colors will by used automatically: