From 1e81a0075491673bed9bd0eff49df34891078bf4 Mon Sep 17 00:00:00 2001 From: deepend-tildeclub Date: Sun, 5 Jul 2026 17:53:03 -0600 Subject: [PATCH] Theme: Color mapping improvements/no theme defaults --- src/common/textevents.in | 306 +++++++++--------- src/fe-gtk/maingui.c | 17 +- .../theme/tests/test-theme-access-routing.c | 17 + src/fe-gtk/theme/theme-access.c | 15 +- 4 files changed, 188 insertions(+), 167 deletions(-) diff --git a/src/common/textevents.in b/src/common/textevents.in index 19b0d497..89583cdd 100644 --- a/src/common/textevents.in +++ b/src/common/textevents.in @@ -1,19 +1,19 @@ Add Notify XP_TE_ADDNOTIFY pevt_generic_nick_help -%C18*%O$t%C18$1%O added to notify list. +%C12*%O$t%C12$1%O added to notify list. 1 Ban List XP_TE_BANLIST pevt_banlist_help -%C22*%O$t%C22$1%O: %C18$2%O on %C24$4%O by %C26$3%O +%C10*%O$t%C10$1%O: %C12$2%O on %C12$4%O by %C06$3%O 4 Banned XP_TE_BANNED pevt_generic_channel_help -%C22*%O$tCannot join %C22$1 %O(%C20You are banned%O). +%C10*%O$tCannot join %C10$1 %O(%C04You are banned%O). 1 Beep @@ -25,91 +25,91 @@ n0 Capability Acknowledgement XP_TE_CAPACK pevt_capack_help -%C29*%O$tCapabilities acknowledged: %C29$2%O +%C02*%O$tCapabilities acknowledged: %C02$2%O 2 Capability Deleted XP_TE_CAPDEL pevt_capdel_help -%C29*%O$tCapabilities removed: %C29$2%O +%C02*%O$tCapabilities removed: %C02$2%O 2 Capability List XP_TE_CAPLIST pevt_caplist_help -%C23*%O$tCapabilities supported: %C29$2%O +%C11*%O$tCapabilities supported: %C02$2%O 2 Capability Request XP_TE_CAPREQ pevt_capreq_help -%C23*%O$tCapabilities requested: %C29$1%O +%C11*%O$tCapabilities requested: %C02$1%O 1 Change Nick XP_TE_CHANGENICK pevt_changenick_help -%C24*%O$t%C28$1%O is now known as %C18$2%O +%C12*%O$t%C13$1%O is now known as %C12$2%O 2 Channel Action XP_TE_CHANACTION pevt_chanaction_help -%C18*$t%B$1%O $2 +%C12*$t%B$1%O $2 n4 Channel Action Hilight XP_TE_HCHANACTION pevt_chanaction_help -%C19*$t%B$1%B $2%O +%C13*$t%B$1%B $2%O n4 Channel Ban XP_TE_CHANBAN pevt_chanban_help -%C22*%O$t%C26$1%O sets ban on %C18$2%O +%C10*%O$t%C06$1%O sets ban on %C12$2%O 2 Channel Creation XP_TE_CHANDATE pevt_chandate_help -%C22*%O$tChannel %C22$1%O created on %C24$2%O +%C10*%O$tChannel %C10$1%O created on %C12$2%O 2 Channel DeHalfOp XP_TE_CHANDEHOP pevt_chandehop_help -%C22*%O$t%C26$1%O removes channel half-operator status from %C18$2%O +%C10*%O$t%C06$1%O removes channel half-operator status from %C12$2%O 2 Channel DeOp XP_TE_CHANDEOP pevt_chandeop_help -%C22*%O$t%C26$1%O removes channel operator status from %C18$2%O +%C10*%O$t%C06$1%O removes channel operator status from %C12$2%O 2 Channel DeVoice XP_TE_CHANDEVOICE pevt_chandevoice_help -%C22*%O$t%C26$1%O removes voice from %C18$2%O +%C10*%O$t%C06$1%O removes voice from %C12$2%O 2 Channel Exempt XP_TE_CHANEXEMPT pevt_chanexempt_help -%C22*%O$t%C26$1%C sets exempt on %C18$2%O +%C10*%O$t%C06$1%C sets exempt on %C12$2%O 2 Channel Half-Operator XP_TE_CHANHOP pevt_chanhop_help -%C22*%O$t%C26$1%O gives channel half-operator status to %C18$2%O +%C10*%O$t%C06$1%O gives channel half-operator status to %C12$2%O 2 Channel INVITE XP_TE_CHANINVITE pevt_chaninvite_help -%C22*%O$t%C26$1%C sets invite exempt on %C18$2%O +%C10*%O$t%C06$1%C sets invite exempt on %C12$2%O 2 Channel List @@ -121,337 +121,337 @@ pevt_generic_none_help Channel Message XP_TE_CHANMSG pevt_chanmsg_help -%C18%H<%H$4$1%C18%H>%H%O$t$2 +%C12%H<%H$4$1%C12%H>%H%O$t$2 n4 Channel Mode Generic XP_TE_CHANMODEGEN pevt_chanmodegen_help -%C22*%O$t%C26$1%O sets mode %C24$2$3%O on %C22$4%O +%C10*%O$t%C06$1%O sets mode %C12$2$3%O on %C10$4%O 4 Channel Modes XP_TE_CHANMODES pevt_chanmodes_help -%C22*%O$tChannel %C22$1%O modes: %C24$2 +%C10*%O$tChannel %C10$1%O modes: %C12$2 2 Channel Msg Hilight XP_TE_HCHANMSG pevt_chanmsg_help -%C19%H<%H$4%B$1%B%H>%H$t$2%O +%C13%H<%H$4%B$1%B%H>%H$t$2%O n4 Channel Notice XP_TE_CHANNOTICE pevt_channotice_help --%C18$1%C/%C22$2%C-$t$3%O +-%C12$1%C/%C10$2%C-$t$3%O n3 Channel Operator XP_TE_CHANOP pevt_chanop_help -%C22*%O$t%C26$1%O gives channel operator status to %C18$2%O +%C10*%O$t%C06$1%O gives channel operator status to %C12$2%O 2 Channel Quiet XP_TE_CHANQUIET pevt_chanquiet_help -%C22*%O$t%C26$1%O sets quiet on %C18$2%O +%C10*%O$t%C06$1%O sets quiet on %C12$2%O 2 Channel Remove Exempt XP_TE_CHANRMEXEMPT pevt_chanrmexempt_help -%C22*%O$t%C26$1%O removes exempt on %C18$2%O +%C10*%O$t%C06$1%O removes exempt on %C12$2%O 2 Channel Remove Invite XP_TE_CHANRMINVITE pevt_chanrminvite_help -%C22*%O$t%C26$1%O removes invite exempt on %C18$2%O +%C10*%O$t%C06$1%O removes invite exempt on %C12$2%O 2 Channel Remove Keyword XP_TE_CHANRMKEY pevt_chanrmkey_help -%C22*%O$t%C26$1%O removes channel keyword +%C10*%O$t%C06$1%O removes channel keyword 1 Channel Remove Limit XP_TE_CHANRMLIMIT pevt_chanrmlimit_help -%C22*%O$t%C26$1%O removes user limit +%C10*%O$t%C06$1%O removes user limit 1 Channel Set Key XP_TE_CHANSETKEY pevt_chansetkey_help -%C22*%O$t%C26$1%O sets channel keyword to %C24$2%O +%C10*%O$t%C06$1%O sets channel keyword to %C12$2%O 2 Channel Set Limit XP_TE_CHANSETLIMIT pevt_chansetlimit_help -%C22*%O$t%C26$1%O sets channel limit to %C24$2%O +%C10*%O$t%C06$1%O sets channel limit to %C12$2%O 2 Channel UnBan XP_TE_CHANUNBAN pevt_chanunban_help -%C22*%O$t%C26$1%O removes ban on %C18$2%O +%C10*%O$t%C06$1%O removes ban on %C12$2%O 2 Channel UnQuiet XP_TE_CHANUNQUIET pevt_chanunquiet_help -%C22*%O$t%C26$1%O removes quiet on %C18$2%O +%C10*%O$t%C06$1%O removes quiet on %C12$2%O 2 Channel Url XP_TE_CHANURL pevt_chanurl_help -%C22*%O$tChannel %C22$1%O url: %C24$2 +%C10*%O$tChannel %C10$1%O url: %C12$2 2 Channel Voice XP_TE_CHANVOICE pevt_chanvoice_help -%C22*%O$t%C26$1%O gives voice to %C18$2%O +%C10*%O$t%C06$1%O gives voice to %C12$2%O 2 Connected XP_TE_CONNECTED pevt_generic_none_help -%C23*%O$tConnected. Now logging in. +%C11*%O$tConnected. Now logging in. 0 Connecting XP_TE_CONNECT pevt_connect_help -%C23*%O$tConnecting to %C29$1%C (%C23$2:$3%O) +%C11*%O$tConnecting to %C02$1%C (%C11$2:$3%O) 3 Connection Failed XP_TE_CONNFAIL pevt_connfail_help -%C20*%O$tConnection failed (%C20$1%O) +%C04*%O$tConnection failed (%C04$1%O) 1 CTCP Generic XP_TE_CTCPGEN pevt_ctcpgen_help -%C24*%O$tReceived a CTCP %C24$1%C from %C18$2%O +%C12*%O$tReceived a CTCP %C12$1%C from %C12$2%O 2 CTCP Generic to Channel XP_TE_CTCPGENC pevt_ctcpgenc_help -%C24*%C$tReceived a CTCP %C24$1%C from %C18$2%C (to %C22$3%C)%O +%C12*%C$tReceived a CTCP %C12$1%C from %C12$2%C (to %C10$3%C)%O 3 CTCP Send XP_TE_CTCPSEND pevt_ctcpsend_help ->%C18$1%C<$tCTCP %C24$2%O +>%C12$1%C<$tCTCP %C12$2%O n2 CTCP Sound XP_TE_CTCPSND pevt_ctcpsnd_help -%C24*%O$tReceived a CTCP Sound %C24$1%C from %C18$2%O +%C12*%O$tReceived a CTCP Sound %C12$1%C from %C12$2%O 2 CTCP Sound to Channel XP_TE_CTCPSNDC pevt_ctcpsnd_help -%C24*%O$tReceived a CTCP Sound %C24$1%C from %C18$2%C (to %C22$3%O) +%C12*%O$tReceived a CTCP Sound %C12$1%C from %C12$2%C (to %C10$3%O) 3 DCC CHAT Abort XP_TE_DCCCHATABORT pevt_dccchatabort_help -%C23*%O$tDCC CHAT to %C18$1%O aborted. +%C11*%O$tDCC CHAT to %C12$1%O aborted. 1 DCC CHAT Connect XP_TE_DCCCONCHAT pevt_dccchatcon_help -%C24*%O$tDCC CHAT connection established to %C18$1%C %C30[%C24$2%C30]%O +%C12*%O$tDCC CHAT connection established to %C12$1%C %C03[%C12$2%C03]%O 2 DCC CHAT Failed XP_TE_DCCCHATF pevt_dccchaterr_help -%C20*%O$tDCC CHAT to %C18$1%O lost (%C20$4%O) +%C04*%O$tDCC CHAT to %C12$1%O lost (%C04$4%O) 4 DCC CHAT Offer XP_TE_DCCCHATOFFER pevt_generic_nick_help -%C24*%O$tReceived a DCC CHAT offer from %C18$1%O +%C12*%O$tReceived a DCC CHAT offer from %C12$1%O 1 DCC CHAT Offering XP_TE_DCCCHATOFFERING pevt_generic_nick_help -%C24*%O$tOffering DCC CHAT to %C18$1%O +%C12*%O$tOffering DCC CHAT to %C12$1%O 1 DCC CHAT Reoffer XP_TE_DCCCHATREOFFER pevt_generic_nick_help -%C24*%O$tAlready offering CHAT to %C18$1%O +%C12*%O$tAlready offering CHAT to %C12$1%O 1 DCC Conection Failed XP_TE_DCCCONFAIL pevt_dccconfail_help -%C20*%O$tDCC $1 connect attempt to %C18$2%O failed (%C20$3%O) +%C04*%O$tDCC $1 connect attempt to %C12$2%O failed (%C04$3%O) 3 DCC Generic Offer XP_TE_DCCGENERICOFFER pevt_dccgenericoffer_help -%C23*%O$tReceived '%C23$1%C' from %C18$2%O +%C11*%O$tReceived '%C11$1%C' from %C12$2%O 2 DCC Header XP_TE_DCCHEAD pevt_generic_none_help -%C16,17 Type To/From Status Size Pos File +%C02,03 Type To/From Status Size Pos File 0 DCC Malformed XP_TE_MALFORMED pevt_malformed_help -%C20*%O$tReceived a malformed DCC request from %C18$1%O.$a010%C23*%O$tContents of packet: %C23$2%O +%C04*%O$tReceived a malformed DCC request from %C12$1%O.$a010%C11*%O$tContents of packet: %C11$2%O 2 DCC Offer XP_TE_DCCOFFER pevt_dccoffer_help -%C24*%O$tOffering '%C24$1%O' to %C18$2%O +%C12*%O$tOffering '%C12$1%O' to %C12$2%O 3 DCC Offer Not Valid XP_TE_DCCIVAL pevt_generic_none_help -%C23*%O$tNo such DCC offer. +%C11*%O$tNo such DCC offer. 0 DCC RECV Abort XP_TE_DCCRECVABORT pevt_dccfileabort_help -%C23*%O$tDCC RECV '%C23$2%O' to %C18$1%O aborted. +%C11*%O$tDCC RECV '%C11$2%O' to %C12$1%O aborted. 2 DCC RECV Complete XP_TE_DCCRECVCOMP pevt_dccrecvcomp_help -%C24*%O$tDCC RECV '%C23$1%O' from %C18$3%O complete %C30[%C24$4%O cps%C30]%O +%C12*%O$tDCC RECV '%C11$1%O' from %C12$3%O complete %C03[%C12$4%O cps%C03]%O 4 DCC RECV Connect XP_TE_DCCCONRECV pevt_dcccon_help -%C24*%O$tDCC RECV connection established to %C18$1 %C30[%O%C24$2%C30]%O +%C12*%O$tDCC RECV connection established to %C12$1 %C03[%O%C12$2%C03]%O 3 DCC RECV Failed XP_TE_DCCRECVERR pevt_dccrecverr_help -%C20*%O$tDCC RECV '%C23$1%O' from %C18$3%O failed (%C20$4%O) +%C04*%O$tDCC RECV '%C11$1%O' from %C12$3%O failed (%C04$4%O) 4 DCC RECV File Open Error XP_TE_DCCFILEERR pevt_generic_file_help -%C20*%O$tDCC RECV: Cannot open '%C23$1%C' for writing (%C20$2%O) +%C04*%O$tDCC RECV: Cannot open '%C11$1%C' for writing (%C04$2%O) 2 DCC Rename XP_TE_DCCRENAME pevt_dccrename_help -%C23*%O$tThe file '%C24$1%C' already exists, saving it as '%C23$2%O' instead. +%C11*%O$tThe file '%C12$1%C' already exists, saving it as '%C11$2%O' instead. 2 DCC RESUME Request XP_TE_DCCRESUMEREQUEST pevt_dccresumeoffer_help -%C24*%O$t%C18$1%C has requested to resume '%C23$2%C' from %C24$3%O. +%C12*%O$t%C12$1%C has requested to resume '%C11$2%C' from %C12$3%O. 3 DCC SEND Abort XP_TE_DCCSENDABORT pevt_dccfileabort_help -%C23*%O$tDCC SEND '%C23$2%C' to %C18$1%O aborted. +%C11*%O$tDCC SEND '%C11$2%C' to %C12$1%O aborted. 2 DCC SEND Complete XP_TE_DCCSENDCOMP pevt_dccsendcomp_help -%C24*%O$tDCC SEND '%C23$1%C' to %C18$2%C complete %C30[%C24$3%C cps%C30]%O +%C12*%O$tDCC SEND '%C11$1%C' to %C12$2%C complete %C03[%C12$3%C cps%C03]%O 3 DCC SEND Connect XP_TE_DCCCONSEND pevt_dcccon_help -%C24*%O$tDCC SEND connection established to %C18$1 %C30[%O%C24$2%C30]%O +%C12*%O$tDCC SEND connection established to %C12$1 %C03[%O%C12$2%C03]%O 3 DCC SEND Failed XP_TE_DCCSENDFAIL pevt_dccsendfail_help -%C20*%O$tDCC SEND '%C23$1%C' to %C18$2%C failed (%C20$3%O) +%C04*%O$tDCC SEND '%C11$1%C' to %C12$2%C failed (%C04$3%O) 3 DCC SEND Offer XP_TE_DCCSENDOFFER pevt_dccsendoffer_help -%C24*%O$t%C18$1%C has offered '%C23$2%C' (%C24$3%O bytes) +%C12*%O$t%C12$1%C has offered '%C11$2%C' (%C12$3%O bytes) 4 DCC Stall XP_TE_DCCSTALL pevt_dccstall_help -%C20*%O$tDCC $1 '%C23$2%C' to %C18$3%O stalled, aborting. +%C04*%O$tDCC $1 '%C11$2%C' to %C12$3%O stalled, aborting. 3 DCC Timeout XP_TE_DCCTOUT pevt_dccstall_help -%C20*%O$tDCC $1 '%C23$2%C' to %C18$3%O timed out, aborting. +%C04*%O$tDCC $1 '%C11$2%C' to %C12$3%O timed out, aborting. 3 Delete Notify XP_TE_DELNOTIFY pevt_generic_nick_help -%C24*%O$t%C18$1%O deleted from notify list. +%C12*%O$t%C12$1%O deleted from notify list. 1 Disconnected XP_TE_DISCON pevt_discon_help -%C20*%O$tDisconnected (%C20$1%O) +%C04*%O$tDisconnected (%C04$1%O) 1 Fail XP_TE_FAIL pevt_stdrpl_help -%C20*%O$t$2%O +%C04*%O$t$2%O 2 Fail Command XP_TE_FAILCMD pevt_stdrplcmd_help -%C20*%O$t$1: $3%O +%C04*%O$t$1: $3%O 3 Found IP XP_TE_FOUNDIP pevt_foundip_help -%C24*%O$tFound your IP: %C30[%C24$1%C30]%O +%C12*%O$tFound your IP: %C03[%C12$1%C03]%O 1 Generic Message @@ -463,31 +463,31 @@ n2 Ignore Add XP_TE_IGNOREADD pevt_ignoreaddremove_help -%O%C18$1%O added to ignore list. +%O%C12$1%O added to ignore list. 1 Ignore Changed XP_TE_IGNORECHANGE pevt_ignoreaddremove_help -%OIgnore on %C18$1%O changed. +%OIgnore on %C12$1%O changed. 1 Ignore Footer XP_TE_IGNOREFOOTER pevt_generic_none_help -%C16,17 +%C02,03 0 Ignore Header XP_TE_IGNOREHEADER pevt_generic_none_help -%C16,17 Hostmask PRIV NOTI CHAN CTCP DCC INVI UNIG +%C02,03 Hostmask PRIV NOTI CHAN CTCP DCC INVI UNIG 0 Ignore Remove XP_TE_IGNOREREMOVE pevt_ignoreaddremove_help -%O%C18$1%O removed from ignore list. +%O%C12$1%O removed from ignore list. 1 Ignorelist Empty @@ -499,127 +499,127 @@ pevt_generic_none_help Invite XP_TE_INVITE pevt_generic_channel_help -%C20*%O$tCannot join %C22$1%C (%C20Channel is invite only%O) +%C04*%O$tCannot join %C10$1%C (%C04Channel is invite only%O) 1 Invited XP_TE_INVITED pevt_invited_help -%C24*%O$tYou have been invited to %C22$1%O by %C18$2%O (%C29$3%O) +%C12*%O$tYou have been invited to %C10$1%O by %C12$2%O (%C02$3%O) 3 Invited Other XP_TE_INVITEDOTHER pevt_invitedother_help -%C24*%O$t%C26$3%C has been invited to %C22$1%O by %C18$2%O (%C29$4%O) +%C12*%O$t%C06$3%C has been invited to %C10$1%O by %C12$2%O (%C02$4%O) 4 Join XP_TE_JOIN pevt_join_help -%C23*$t$1 ($3%C23) has joined +%C11*$t$1 ($3%C11) has joined 4 Keyword XP_TE_KEYWORD pevt_generic_channel_help -%C20*%O$tCannot join %C22$1%C (%C20Requires keyword%O) +%C04*%O$tCannot join %C10$1%C (%C04Requires keyword%O) 1 Kick XP_TE_KICK pevt_kick_help -%C22*%O$t%C26$1%C has kicked %C18$2%C from %C22$3%C (%C24$4%O) +%C10*%O$t%C06$1%C has kicked %C12$2%C from %C10$3%C (%C12$4%O) 4 Killed XP_TE_KILL pevt_kill_help -%C19*%O$t%C19You have been killed by %C26$1%C (%C20$2%O) +%C13*%O$t%C13You have been killed by %C06$1%C (%C04$2%O) 2 Message Send XP_TE_MSGSEND pevt_ctcpsend_help -%O>%C18$1%C<%O$t$2 +%O>%C12$1%C<%O$t$2 n2 Motd XP_TE_MOTD pevt_servertext_help -%C29*%O$t%C29$1%O +%C02*%O$t%C02$1%O n1 MOTD Skipped XP_TE_MOTDSKIP pevt_generic_none_help -%C29*%O$t%C29MOTD Skipped%O +%C02*%O$t%C02MOTD Skipped%O 0 Nick Clash XP_TE_NICKCLASH pevt_nickclash_help -%C23*%O$t%C28$1%C is already in use. Retrying with %C18$2%O... +%C11*%O$t%C13$1%C is already in use. Retrying with %C12$2%O... 2 Nick Erroneous XP_TE_NICKERROR pevt_nickclash_help -%C23*%O$t%C28$1%C is erroneous. Retrying with %C18$2%O... +%C11*%O$t%C13$1%C is erroneous. Retrying with %C12$2%O... 2 Nick Failed XP_TE_NICKFAIL pevt_generic_none_help -%C20*%O$tNickname is erroneous or already in use. Use /NICK to try another. +%C04*%O$tNickname is erroneous or already in use. Use /NICK to try another. 0 No DCC XP_TE_NODCC pevt_generic_none_help -%C20*%O$tNo such DCC. +%C04*%O$tNo such DCC. 0 No Running Process XP_TE_NOCHILD pevt_generic_none_help -%C23*%O$tNo process is currently running +%C11*%O$tNo process is currently running 0 Note XP_TE_NOTE pevt_stdrpl_help -%C22*%O$t$2%O +%C10*%O$t$2%O 2 Note Command XP_TE_NOTECMD pevt_stdrplcmd_help -%C22*%O$t$1: $3%O +%C10*%O$t$1: $3%O 3 Notice XP_TE_NOTICE pevt_notice_help -%O-%C18$1%O-$t$2 +%O-%C12$1%O-$t$2 n2 Notice Send XP_TE_NOTICESEND pevt_ctcpsend_help -%O->%C18$1%O<-$t$2 +%O->%C12$1%O<-$t$2 n2 Notify Away XP_TE_NOTIFYAWAY pevt_notifyaway_help -%C23*%O$tNotify: %C18$1%C is away (%C24$2%O) +%C11*%O$tNotify: %C12$1%C is away (%C12$2%O) 2 Notify Back XP_TE_NOTIFYBACK pevt_generic_nick_help -%C23*%O$tNotify: %C18$1%C is back +%C11*%O$tNotify: %C12$1%C is back 1 Notify Empty @@ -631,25 +631,25 @@ $tNotify list is empty. Notify Header XP_TE_NOTIFYHEAD pevt_generic_none_help -%C16,17 Notify List +%C02,03 Notify List 0 Notify Number XP_TE_NOTIFYNUMBER pevt_notifynumber_help -%C23*%O$t%C23$1%O users in notify list. +%C11*%O$t%C11$1%O users in notify list. 1 Notify Offline XP_TE_NOTIFYOFFLINE pevt_generic_nick_help -%C23*%O$tNotify: %C18$1%C is offline (%C29$3%O) +%C11*%O$tNotify: %C12$1%C is offline (%C02$3%O) 3 Notify Online XP_TE_NOTIFYONLINE pevt_generic_nick_help -%C23*%O$tNotify: %C18$1%C is online (%C29$3%O) +%C11*%O$tNotify: %C12$1%C is online (%C02$3%O) 3 Open Dialog @@ -661,294 +661,294 @@ n0 Part XP_TE_PART pevt_part_help -%C24*$t$1 ($2%C24) has left +%C12*$t$1 ($2%C12) has left 3 Part with Reason XP_TE_PARTREASON pevt_partreason_help -%C24*$t$1 ($2%C24) has left ($4) +%C12*$t$1 ($2%C12) has left ($4) 4 Ping Reply XP_TE_PINGREP pevt_pingrep_help -%C24*%O$tPing reply from %C18$1%C: %C24$2%O second(s) +%C12*%O$tPing reply from %C12$1%C: %C12$2%O second(s) 2 Ping Timeout XP_TE_PINGTIMEOUT pevt_pingtimeout_help -%C20*%O$tNo ping reply for %C24$1%O seconds, disconnecting. +%C04*%O$tNo ping reply for %C12$1%O seconds, disconnecting. 1 Private Action XP_TE_PRIVACTION pevt_privmsg_help -%C18**$t$3$1%O $2 %C18** +%C12**$t$3$1%O $2 %C12** n3 Private Action to Dialog XP_TE_DPRIVACTION pevt_privmsg_help -%C18*$t$3$1%O $2 +%C12*$t$3$1%O $2 n3 Private Message XP_TE_PRIVMSG pevt_privmsg_help -%C18*%C18$3$1*%O$t$2 +%C12*%C12$3$1*%O$t$2 n3 Private Message to Dialog XP_TE_DPRIVMSG pevt_privmsg_help -%C18%H<%H$3$1%H>%H%O$t$2 +%C12%H<%H$3$1%H>%H%O$t$2 n3 Process Already Running XP_TE_ALREADYPROCESS pevt_generic_none_help -%C24*%O$tA process is already running +%C12*%O$tA process is already running 0 Quit XP_TE_QUIT pevt_quit_help -%C24*$t$1 has quit ($2) +%C12*$t$1 has quit ($2) 3 Raw Modes XP_TE_RAWMODES pevt_rawmodes_help -%C24*%O$t%C26$1%C sets modes %C30[%C24$2%C30]%O +%C12*%O$t%C06$1%C sets modes %C03[%C12$2%C03]%O 2 Receive Wallops XP_TE_WALLOPS pevt_privmsg_help -%O-%C29$1/Wallops%O-$t$2 +%O-%C02$1/Wallops%O-$t$2 2 Resolving User XP_TE_RESOLVINGUSER pevt_resolvinguser_help -%C24*%O$tLooking up IP number for %C18$1%O... +%C12*%O$tLooking up IP number for %C12$1%O... 2 SASL Authenticating XP_TE_SASLAUTH pevt_saslauth_help -%C23*%O$tAuthenticating via SASL as %C18$1%O (%C24$2%O) +%C11*%O$tAuthenticating via SASL as %C12$1%O (%C12$2%O) 2 SASL Response XP_TE_SASLRESPONSE pevt_saslresponse_help -%C29*%O$t$4 +%C02*%O$t$4 n4 Server Connected XP_TE_SERVERCONNECTED pevt_generic_none_help -%C29*%O$tConnected. +%C02*%O$tConnected. 0 Server Error XP_TE_SERVERERROR pevt_servererror_help -%C29*%O$t%C20$1%O +%C02*%O$t%C04$1%O n1 Server Lookup XP_TE_SERVERLOOKUP pevt_serverlookup_help -%C29*%O$tLooking up %C29$1%O +%C02*%O$tLooking up %C02$1%O 1 Server Notice XP_TE_SERVNOTICE pevt_servertext_help -%C29*%O$t$1 +%C02*%O$t$1 n2 Server Text XP_TE_SERVTEXT pevt_servertext_help -%C29*%O$t$1 +%C02*%O$t$1 n3 SSL Message XP_TE_SSLMESSAGE pevt_sslmessage_help -%C29*%O$t$1 +%C02*%O$t$1 n2 Stop Connection XP_TE_STOPCONNECT pevt_sconnect_help -%C23*%O$tStopped previous connection attempt (%C24$1%O) +%C11*%O$tStopped previous connection attempt (%C12$1%O) 1 Topic XP_TE_TOPIC pevt_topic_help -%C22*%O$tTopic for %C22$1%C is: $2%O +%C10*%O$tTopic for %C10$1%C is: $2%O 2 Topic Change XP_TE_NEWTOPIC pevt_newtopic_help -%C22*%O$t%C26$1%C has changed the topic to: $2%O +%C10*%O$t%C06$1%C has changed the topic to: $2%O 3 Topic Creation XP_TE_TOPICDATE pevt_topicdate_help -%C22*%O$tTopic for %C22$1%C set by %C26$2%C (%C24$3%O) +%C10*%O$tTopic for %C10$1%C set by %C06$2%C (%C12$3%O) 3 Unknown Host XP_TE_UKNHOST pevt_generic_none_help -%C20*%O$tUnknown host. Maybe you misspelled it? +%C04*%O$tUnknown host. Maybe you misspelled it? 0 User Limit XP_TE_USERLIMIT pevt_generic_channel_help -%C20*%O$tCannot join %C22$1%C (%C20User limit reached%O) +%C04*%O$tCannot join %C10$1%C (%C04User limit reached%O) 1 Users On Channel XP_TE_USERSONCHAN pevt_usersonchan_help -%C22*%O$tUsers on %C22$1%C: %C24$2%O +%C10*%O$tUsers on %C10$1%C: %C12$2%O 2 Warn XP_TE_WARN pevt_stdrpl_help -%C23*%O$t$2%O +%C11*%O$t$2%O 2 Warn Command XP_TE_WARNCMD pevt_stdrplcmd_help -%C23*%O$t$1: $3%O +%C11*%O$t$1: $3%O 3 WhoIs Authenticated XP_TE_WHOIS_AUTH pevt_whoisauth_help -%C23*%O$t%C28[%C18$1%C28]%O $2 %C18$3%O +%C11*%O$t%C13[%C12$1%C13]%O $2 %C12$3%O n3 WhoIs Away Line XP_TE_WHOIS5 pevt_whois5_help -%C23*%O$t%C28[%C18$1%C28]%C is away %C30(%C23$2%O%C30)%O +%C11*%O$t%C13[%C12$1%C13]%C is away %C03(%C11$2%O%C03)%O 2 WhoIs Channel/Oper Line XP_TE_WHOIS2 pevt_whois2_help -%C23*%O$t%C28[%C18$1%C28]%O $2 +%C11*%O$t%C13[%C12$1%C13]%O $2 n2 WhoIs End XP_TE_WHOIS6 pevt_whois6_help -%C23*%O$t%C28[%C18$1%C28] %OEnd of WHOIS list. +%C11*%O$t%C13[%C12$1%C13] %OEnd of WHOIS list. 1 WhoIs Identified XP_TE_WHOIS_ID pevt_whoisid_help -%C23*%O$t%C28[%C18$1%C28]%O $2 +%C11*%O$t%C13[%C12$1%C13]%O $2 n2 WhoIs Idle Line XP_TE_WHOIS4 pevt_whois4_help -%C23*%O$t%C28[%C18$1%C28]%O idle %C23$2%O +%C11*%O$t%C13[%C12$1%C13]%O idle %C11$2%O 2 WhoIs Idle Line with Signon XP_TE_WHOIS4T pevt_whois4t_help -%C23*%O$t%C28[%C18$1%C28]%O idle %C23$2%O, signon: %C23$3%O +%C11*%O$t%C13[%C12$1%C13]%O idle %C11$2%O, signon: %C11$3%O 3 WhoIs Name Line XP_TE_WHOIS1 pevt_whois1_help -%C23*%O$t%C28[%C18$1%C28] %C30(%C24$2@$3%C30)%O: %C18$4%O +%C11*%O$t%C13[%C12$1%C13] %C03(%C12$2@$3%C03)%O: %C12$4%O n4 WhoIs Real Host XP_TE_WHOIS_REALHOST pevt_whoisrealhost_help -%C23*%O$t%C28[%C18$1%C28]%O Real Host: %C23$2%O, Real IP: %C30[%C23$3%C30]%O +%C11*%O$t%C13[%C12$1%C13]%O Real Host: %C11$2%O, Real IP: %C03[%C11$3%C03]%O 4 WhoIs Server Line XP_TE_WHOIS3 pevt_whois3_help -%C23*%O$t%C28[%C18$1%C28]%O %C29$2%O +%C11*%O$t%C13[%C12$1%C13]%O %C02$2%O n2 WhoIs Special XP_TE_WHOIS_SPECIAL pevt_whoisid_help -%C23*%O$t%C28[%C18$1%C28]%O $2 +%C11*%O$t%C13[%C12$1%C13]%O $2 n3 You Join XP_TE_UJOIN pevt_join_help -%C19*%O$tNow talking on %C22$2%O +%C13*%O$tNow talking on %C10$2%O 3 You Kicked XP_TE_UKICK pevt_ukick_help -%C19*%O$tYou have been kicked from %C22$2%C by %C26$3%O (%C20$4%O) +%C13*%O$tYou have been kicked from %C10$2%C by %C06$3%O (%C04$4%O) 4 You Part XP_TE_UPART pevt_part_help -%C19*%O$tYou have left channel %C22$3%O +%C13*%O$tYou have left channel %C10$3%O 3 You Part with Reason XP_TE_UPARTREASON pevt_partreason_help -%C19*%O$tYou have left channel %C22$3%C (%C24$4%O) +%C13*%O$tYou have left channel %C10$3%C (%C12$4%O) 4 Your Action XP_TE_UACTION pevt_chanaction_help -%C20*$t%B$1%B %C30$2%O +%C04*$t%B$1%B %C03$2%O n3 Your Invitation XP_TE_UINVITE pevt_uinvite_help -%C20*%O$tYou've invited %C18$1%O to %C22$2%O (%C24$3%O) +%C04*%O$tYou've invited %C12$1%O to %C10$2%O (%C12$3%O) 3 Your Message XP_TE_UCHANMSG pevt_chanmsg_help -%C20%H<%H$4$1%H>%H%O%C30$t$2%O +%C04%H<%H$4$1%H>%H%O%C03$t$2%O n4 Your Nick Changing XP_TE_UCHANGENICK pevt_uchangenick_help -%C20*%O$tYou are now known as %C18$2%O +%C04*%O$tYou are now known as %C12$2%O 2 diff --git a/src/fe-gtk/maingui.c b/src/fe-gtk/maingui.c index fa4973c2..7344168b 100644 --- a/src/fe-gtk/maingui.c +++ b/src/fe-gtk/maingui.c @@ -3388,10 +3388,19 @@ mg_topicbar_update_height (GtkWidget *topic) if (parent && GTK_IS_SCROLLED_WINDOW (parent)) { - gtk_scrolled_window_set_max_content_height (GTK_SCROLLED_WINDOW (parent), -1); - gtk_scrolled_window_set_min_content_height (GTK_SCROLLED_WINDOW (parent), -1); - gtk_scrolled_window_set_max_content_height (GTK_SCROLLED_WINDOW (parent), target_height); - gtk_scrolled_window_set_min_content_height (GTK_SCROLLED_WINDOW (parent), target_height); + GtkScrolledWindow *scrolled = GTK_SCROLLED_WINDOW (parent); + int max_height = gtk_scrolled_window_get_max_content_height (scrolled); + + if (max_height != -1 && target_height > max_height) + { + gtk_scrolled_window_set_max_content_height (scrolled, target_height); + gtk_scrolled_window_set_min_content_height (scrolled, target_height); + } + else + { + gtk_scrolled_window_set_min_content_height (scrolled, target_height); + gtk_scrolled_window_set_max_content_height (scrolled, target_height); + } gtk_widget_set_size_request (parent, -1, target_height); } } diff --git a/src/fe-gtk/theme/tests/test-theme-access-routing.c b/src/fe-gtk/theme/tests/test-theme-access-routing.c index 8c423bcf..246553fd 100644 --- a/src/fe-gtk/theme/tests/test-theme-access-routing.c +++ b/src/fe-gtk/theme/tests/test-theme-access-routing.c @@ -267,6 +267,21 @@ test_access_xtext_palette_forwarding (void) g_assert_cmpuint (palette[3].blue, ==, 6); } +static void +test_access_xtext_palette_default_99_preserves_base (void) +{ + XTextColor palette[99] = { 0 }; + + reset_stubs (); + theme_get_xtext_colors (palette, G_N_ELEMENTS (palette)); + g_assert_cmpint (stub_runtime_xtext_calls, ==, 1); + g_assert_cmpfloat_with_epsilon (palette[0].red, 1.0, 0.0001); + g_assert_cmpfloat_with_epsilon (palette[31].blue, 34.0, 0.0001); + g_assert_cmpfloat_with_epsilon (palette[32].red, 0.0, 0.0001); + g_assert_cmpfloat_with_epsilon (palette[32].green, 0x74 / 255.0, 0.0001); + g_assert_cmpfloat_with_epsilon (palette[32].blue, 0.0, 0.0001); +} + static void test_access_widget_style_forwarding (void) @@ -361,6 +376,8 @@ main (int argc, char **argv) g_test_add_func ("/theme/access/semantic_token_routes_directly", test_access_semantic_token_routes_directly); g_test_add_func ("/theme/access/token_routes_without_legacy_accessor", test_access_token_routes_without_legacy_accessor); g_test_add_func ("/theme/access/xtext_palette_forwarding", test_access_xtext_palette_forwarding); + g_test_add_func ("/theme/access/xtext_palette_default_99_preserves_base", + test_access_xtext_palette_default_99_preserves_base); g_test_add_func ("/theme/access/xtext_palette_widget_mapping_when_gtk3_active", test_access_xtext_palette_widget_mapping_when_gtk3_active); g_test_add_func ("/theme/access/widget_style_forwarding", test_access_widget_style_forwarding); diff --git a/src/fe-gtk/theme/theme-access.c b/src/fe-gtk/theme/theme-access.c index eef82ba7..d1aca1a9 100644 --- a/src/fe-gtk/theme/theme-access.c +++ b/src/fe-gtk/theme/theme-access.c @@ -52,14 +52,13 @@ static const guint8 theme_default_99_mirc_colors[THEME_XTEXT_MIRC_COLS][3] = { }; static void -theme_access_apply_default_99_palette (XTextColor *palette, size_t palette_len, gboolean apply_base) +theme_access_apply_default_99_palette (XTextColor *palette, size_t palette_len) { size_t i; - size_t start = apply_base ? 0 : 32; if (palette_len == 0) return; - for (i = start; i < THEME_XTEXT_MIRC_COLS && i < palette_len; i++) + for (i = 32; i < THEME_XTEXT_MIRC_COLS && i < palette_len; i++) { palette[i].red = theme_default_99_mirc_colors[i][0] / 255.0; palette[i].green = theme_default_99_mirc_colors[i][1] / 255.0; @@ -148,11 +147,10 @@ gboolean theme_get_mirc_color (unsigned int mirc_index, GdkRGBA *out_rgba) { ThemeSemanticToken token = (ThemeSemanticToken) (THEME_TOKEN_MIRC_0 + (int) mirc_index); - gboolean has_user_colors = theme_runtime_mode_has_user_colors (theme_runtime_is_dark_active ()); if (mirc_index >= THEME_XTEXT_MIRC_COLS) return FALSE; - if (!has_user_colors || mirc_index >= 32) + if (mirc_index >= 32) { out_rgba->red = theme_default_99_mirc_colors[mirc_index][0] / 255.0; out_rgba->green = theme_default_99_mirc_colors[mirc_index][1] / 255.0; @@ -173,11 +171,10 @@ gboolean theme_get_mirc_color_rgb16 (unsigned int mirc_index, guint16 *red, guint16 *green, guint16 *blue) { ThemeSemanticToken token = (ThemeSemanticToken) (THEME_TOKEN_MIRC_0 + (int) mirc_index); - gboolean has_user_colors = theme_runtime_mode_has_user_colors (theme_runtime_is_dark_active ()); if (mirc_index >= THEME_XTEXT_MIRC_COLS) return FALSE; - if (!has_user_colors || mirc_index >= 32) + if (mirc_index >= 32) { *red = (guint16) (theme_default_99_mirc_colors[mirc_index][0] * 257); *green = (guint16) (theme_default_99_mirc_colors[mirc_index][1] * 257); @@ -227,7 +224,6 @@ void theme_get_xtext_colors_for_widget (GtkWidget *widget, XTextColor *palette, size_t palette_len) { ThemeWidgetStyleValues style_values; - gboolean has_user_colors; GdkRGBA marker_color; if (!palette) @@ -235,9 +231,8 @@ theme_get_xtext_colors_for_widget (GtkWidget *widget, XTextColor *palette, size_ theme_get_widget_style_values_for_widget (widget, &style_values); theme_runtime_get_xtext_colors (palette, palette_len); - has_user_colors = theme_runtime_mode_has_user_colors (theme_runtime_is_dark_active ()); if (palette_len >= THEME_XTEXT_MIRC_COLS) - theme_access_apply_default_99_palette (palette, palette_len, !has_user_colors); + theme_access_apply_default_99_palette (palette, palette_len); if (palette_len > THEME_XTEXT_MARK_FG_INDEX) { palette[THEME_XTEXT_MARK_FG_INDEX].red = style_values.selection_foreground.red;