Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 64c65ce6 authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka
Browse files

Add missing MoreKeySpec.hashCode

Bug: 7149235
Change-Id: I14ba1017dffccc690e24289052a3ad7265a5f5f7
parent 655be140
Loading
Loading
Loading
Loading
+26 −1
Original line number Diff line number Diff line
@@ -16,12 +16,14 @@

package com.android.inputmethod.keyboard.internal;

import android.text.TextUtils;

import com.android.inputmethod.keyboard.Keyboard;
import com.android.inputmethod.latin.StringUtils;

import java.util.Locale;

public class MoreKeySpec {
public final class MoreKeySpec {
    public final int mCode;
    public final String mLabel;
    public final String mOutputText;
@@ -46,6 +48,29 @@ public class MoreKeySpec {
        mIconId = KeySpecParser.getIconId(moreKeySpec);
    }

    @Override
    public int hashCode() {
        int hashCode = 1;
        hashCode = 31 + mCode;
        hashCode = hashCode * 31 + mIconId;
        hashCode = hashCode * 31 + (mLabel == null ? 0 : mLabel.hashCode());
        hashCode = hashCode * 31 + (mOutputText == null ? 0 : mOutputText.hashCode());
        return hashCode;
    }

    @Override
    public boolean equals(final Object o) {
        if (this == o) return true;
        if (o instanceof MoreKeySpec) {
            final MoreKeySpec other = (MoreKeySpec)o;
            return mCode == other.mCode
                    && mIconId == other.mIconId
                    && TextUtils.equals(mLabel, other.mLabel)
                    && TextUtils.equals(mOutputText, other.mOutputText);
        }
        return false;
    }

    @Override
    public String toString() {
        final String label = (mIconId == KeyboardIconsSet.ICON_UNDEFINED ? mLabel