Advance Wayland and KDE package bring-up

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
2026-04-14 10:51:06 +01:00
parent 51f3c21121
commit cf12defd28
15214 changed files with 20594243 additions and 269 deletions
@@ -0,0 +1,66 @@
/* -*- C++ -*-
SPDX-FileCopyrightText: 1998 Netscape Communications Corporation <developer@mozilla.org>
SPDX-License-Identifier: MIT
*/
#include "nsEUCKRProber.h"
namespace kencodingprober
{
void nsEUCKRProber::Reset(void)
{
mCodingSM->Reset();
mState = eDetecting;
mDistributionAnalyser.Reset();
// mContextAnalyser.Reset();
}
nsProbingState nsEUCKRProber::HandleData(const char *aBuf, unsigned int aLen)
{
if (aLen == 0) {
return mState;
}
for (unsigned int i = 0; i < aLen; i++) {
const nsSMState codingState = mCodingSM->NextState(aBuf[i]);
if (codingState == eError) {
mState = eNotMe;
break;
}
if (codingState == eItsMe) {
mState = eFoundIt;
break;
}
if (codingState == eStart) {
unsigned int charLen = mCodingSM->GetCurrentCharLen();
if (i == 0) {
mLastChar[1] = aBuf[0];
mDistributionAnalyser.HandleOneChar(mLastChar, charLen);
} else {
mDistributionAnalyser.HandleOneChar(aBuf + i - 1, charLen);
}
}
}
mLastChar[0] = aBuf[aLen - 1];
if (mState == eDetecting) {
if (mDistributionAnalyser.GotEnoughData() && GetConfidence() > SHORTCUT_THRESHOLD) {
mState = eFoundIt;
}
}
// else
// mDistributionAnalyser.HandleData(aBuf, aLen);
return mState;
}
float nsEUCKRProber::GetConfidence(void)
{
float distribCf = mDistributionAnalyser.GetConfidence();
return (float)distribCf;
}
}