| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) |
| 3 * (C) 2000 Antti Koivisto (koivisto@kde.org) | 3 * (C) 2000 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2000 Dirk Mueller (mueller@kde.org) | 4 * (C) 2000 Dirk Mueller (mueller@kde.org) |
| 5 * Copyright (C) 2003, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All | 5 * Copyright (C) 2003, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All |
| 6 * rights reserved. | 6 * rights reserved. |
| 7 * Copyright (C) 2006 Graham Dennis (graham.dennis@gmail.com) | 7 * Copyright (C) 2006 Graham Dennis (graham.dennis@gmail.com) |
| 8 * | 8 * |
| 9 * This library is free software; you can redistribute it and/or | 9 * This library is free software; you can redistribute it and/or |
| 10 * modify it under the terms of the GNU Library General Public | 10 * modify it under the terms of the GNU Library General Public |
| (...skipping 2744 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2755 return BorderLeftWidthInternal() == o.BorderLeftWidthInternal() && | 2755 return BorderLeftWidthInternal() == o.BorderLeftWidthInternal() && |
| 2756 BorderTopWidthInternal() == o.BorderTopWidthInternal() && | 2756 BorderTopWidthInternal() == o.BorderTopWidthInternal() && |
| 2757 BorderRightWidthInternal() == o.BorderRightWidthInternal() && | 2757 BorderRightWidthInternal() == o.BorderRightWidthInternal() && |
| 2758 BorderBottomWidthInternal() == o.BorderBottomWidthInternal(); | 2758 BorderBottomWidthInternal() == o.BorderBottomWidthInternal(); |
| 2759 } | 2759 } |
| 2760 | 2760 |
| 2761 BorderValue BorderBefore() const; | 2761 BorderValue BorderBefore() const; |
| 2762 BorderValue BorderAfter() const; | 2762 BorderValue BorderAfter() const; |
| 2763 BorderValue BorderStart() const; | 2763 BorderValue BorderStart() const; |
| 2764 BorderValue BorderEnd() const; | 2764 BorderValue BorderEnd() const; |
| 2765 |
| 2765 float BorderAfterWidth() const; | 2766 float BorderAfterWidth() const; |
| 2766 float BorderBeforeWidth() const; | 2767 float BorderBeforeWidth() const; |
| 2767 float BorderEndWidth() const; | 2768 float BorderEndWidth() const; |
| 2768 float BorderStartWidth() const; | 2769 float BorderStartWidth() const; |
| 2769 float BorderOverWidth() const; | 2770 float BorderOverWidth() const; |
| 2770 float BorderUnderWidth() const; | 2771 float BorderUnderWidth() const; |
| 2771 | 2772 |
| 2773 EBorderStyle BorderAfterStyle() const; |
| 2774 EBorderStyle BorderBeforeStyle() const; |
| 2775 EBorderStyle BorderEndStyle() const; |
| 2776 EBorderStyle BorderStartStyle() const; |
| 2777 |
| 2772 bool HasBorderFill() const { | 2778 bool HasBorderFill() const { |
| 2773 return BorderImage().HasImage() && BorderImage().Fill(); | 2779 return BorderImage().HasImage() && BorderImage().Fill(); |
| 2774 } | 2780 } |
| 2775 bool HasBorder() const { | 2781 bool HasBorder() const { |
| 2776 return BorderLeftNonZero() || BorderRightNonZero() || BorderTopNonZero() || | 2782 return BorderLeftNonZero() || BorderRightNonZero() || BorderTopNonZero() || |
| 2777 BorderBottomNonZero(); | 2783 BorderBottomNonZero(); |
| 2778 } | 2784 } |
| 2779 bool HasBorderDecoration() const { return HasBorder() || HasBorderFill(); } | 2785 bool HasBorderDecoration() const { return HasBorder() || HasBorderFill(); } |
| 2780 bool HasBorderRadius() const { | 2786 bool HasBorderRadius() const { |
| 2781 if (!BorderTopLeftRadius().Width().IsZero()) | 2787 if (!BorderTopLeftRadius().Width().IsZero()) |
| 2782 return true; | 2788 return true; |
| 2783 if (!BorderTopRightRadius().Width().IsZero()) | 2789 if (!BorderTopRightRadius().Width().IsZero()) |
| 2784 return true; | 2790 return true; |
| 2785 if (!BorderBottomLeftRadius().Width().IsZero()) | 2791 if (!BorderBottomLeftRadius().Width().IsZero()) |
| 2786 return true; | 2792 return true; |
| 2787 if (!BorderBottomRightRadius().Width().IsZero()) | 2793 if (!BorderBottomRightRadius().Width().IsZero()) |
| 2788 return true; | 2794 return true; |
| 2789 return false; | 2795 return false; |
| 2790 } | 2796 } |
| 2791 bool HasBorderColorReferencingCurrentColor() const { | 2797 bool HasBorderColorReferencingCurrentColor() const { |
| 2792 return (BorderLeft().NonZero() && BorderLeftColor().IsCurrentColor()) || | 2798 return (BorderLeftNonZero() && BorderLeftColor().IsCurrentColor()) || |
| 2793 (BorderRight().NonZero() && BorderRightColor().IsCurrentColor()) || | 2799 (BorderRightNonZero() && BorderRightColor().IsCurrentColor()) || |
| 2794 (BorderTop().NonZero() && BorderTopColor().IsCurrentColor()) || | 2800 (BorderTopNonZero() && BorderTopColor().IsCurrentColor()) || |
| 2795 (BorderBottom().NonZero() && BorderBottomColor().IsCurrentColor()); | 2801 (BorderBottomNonZero() && BorderBottomColor().IsCurrentColor()); |
| 2796 } | 2802 } |
| 2797 | 2803 |
| 2798 bool RadiiEqual(const ComputedStyle& o) const { | 2804 bool RadiiEqual(const ComputedStyle& o) const { |
| 2799 return BorderTopLeftRadius() == o.BorderTopLeftRadius() && | 2805 return BorderTopLeftRadius() == o.BorderTopLeftRadius() && |
| 2800 BorderTopRightRadius() == o.BorderTopRightRadius() && | 2806 BorderTopRightRadius() == o.BorderTopRightRadius() && |
| 2801 BorderBottomLeftRadius() == o.BorderBottomLeftRadius() && | 2807 BorderBottomLeftRadius() == o.BorderBottomLeftRadius() && |
| 2802 BorderBottomRightRadius() == o.BorderBottomRightRadius(); | 2808 BorderBottomRightRadius() == o.BorderBottomRightRadius(); |
| 2803 } | 2809 } |
| 2804 | 2810 |
| 2805 bool BorderLeftEquals(const ComputedStyle& o) const { | 2811 bool BorderLeftEquals(const ComputedStyle& o) const { |
| 2806 return BorderLeftWidthInternal() == o.BorderLeftWidthInternal() && | 2812 return BorderLeftWidthInternal() == o.BorderLeftWidthInternal() && |
| 2807 BorderLeftStyle() == o.BorderLeftStyle() && | 2813 BorderLeftStyle() == o.BorderLeftStyle() && |
| 2808 BorderLeftColor() == o.BorderLeftColor() && | 2814 BorderLeftColor() == o.BorderLeftColor() && |
| 2809 BorderLeftColorIsCurrentColor() == o.BorderLeftColorIsCurrentColor(); | 2815 BorderLeftColorIsCurrentColor() == o.BorderLeftColorIsCurrentColor(); |
| 2810 } | 2816 } |
| 2817 bool BorderLeftEquals(const BorderValue& o) const { |
| 2818 return BorderLeftWidthInternal().ToFloat() == o.Width() && |
| 2819 BorderLeftStyle() == o.Style() && |
| 2820 BorderLeftColor() == o.GetColor() && |
| 2821 BorderLeftColorIsCurrentColor() == o.ColorIsCurrentColor(); |
| 2822 } |
| 2811 | 2823 |
| 2812 bool BorderLeftVisuallyEqual(const ComputedStyle& o) const { | 2824 bool BorderLeftVisuallyEqual(const ComputedStyle& o) const { |
| 2813 if (BorderLeftStyle() == EBorderStyle::kNone && | 2825 if (BorderLeftStyle() == EBorderStyle::kNone && |
| 2814 o.BorderLeftStyle() == EBorderStyle::kNone) | 2826 o.BorderLeftStyle() == EBorderStyle::kNone) |
| 2815 return true; | 2827 return true; |
| 2816 if (BorderLeftStyle() == EBorderStyle::kHidden && | 2828 if (BorderLeftStyle() == EBorderStyle::kHidden && |
| 2817 o.BorderLeftStyle() == EBorderStyle::kHidden) | 2829 o.BorderLeftStyle() == EBorderStyle::kHidden) |
| 2818 return true; | 2830 return true; |
| 2819 return BorderLeftEquals(o); | 2831 return BorderLeftEquals(o); |
| 2820 } | 2832 } |
| 2821 | 2833 |
| 2822 bool BorderRightEquals(const ComputedStyle& o) const { | 2834 bool BorderRightEquals(const ComputedStyle& o) const { |
| 2823 return BorderRightWidthInternal() == o.BorderRightWidthInternal() && | 2835 return BorderRightWidthInternal() == o.BorderRightWidthInternal() && |
| 2824 BorderRightStyle() == o.BorderRightStyle() && | 2836 BorderRightStyle() == o.BorderRightStyle() && |
| 2825 BorderRightColor() == o.BorderRightColor() && | 2837 BorderRightColor() == o.BorderRightColor() && |
| 2826 BorderRightColorIsCurrentColor() == | 2838 BorderRightColorIsCurrentColor() == |
| 2827 o.BorderRightColorIsCurrentColor(); | 2839 o.BorderRightColorIsCurrentColor(); |
| 2828 } | 2840 } |
| 2841 bool BorderRightEquals(const BorderValue& o) const { |
| 2842 return BorderRightWidthInternal().ToFloat() == o.Width() && |
| 2843 BorderRightStyle() == o.Style() && |
| 2844 BorderRightColor() == o.GetColor() && |
| 2845 BorderRightColorIsCurrentColor() == o.ColorIsCurrentColor(); |
| 2846 } |
| 2829 | 2847 |
| 2830 bool BorderRightVisuallyEqual(const ComputedStyle& o) const { | 2848 bool BorderRightVisuallyEqual(const ComputedStyle& o) const { |
| 2831 if (BorderRightStyle() == EBorderStyle::kNone && | 2849 if (BorderRightStyle() == EBorderStyle::kNone && |
| 2832 o.BorderRightStyle() == EBorderStyle::kNone) | 2850 o.BorderRightStyle() == EBorderStyle::kNone) |
| 2833 return true; | 2851 return true; |
| 2834 if (BorderRightStyle() == EBorderStyle::kHidden && | 2852 if (BorderRightStyle() == EBorderStyle::kHidden && |
| 2835 o.BorderRightStyle() == EBorderStyle::kHidden) | 2853 o.BorderRightStyle() == EBorderStyle::kHidden) |
| 2836 return true; | 2854 return true; |
| 2837 return BorderRightEquals(o); | 2855 return BorderRightEquals(o); |
| 2838 } | 2856 } |
| 2839 | 2857 |
| 2840 bool BorderTopVisuallyEqual(const ComputedStyle& o) const { | 2858 bool BorderTopVisuallyEqual(const ComputedStyle& o) const { |
| 2841 if (BorderTopStyle() == EBorderStyle::kNone && | 2859 if (BorderTopStyle() == EBorderStyle::kNone && |
| 2842 o.BorderTopStyle() == EBorderStyle::kNone) | 2860 o.BorderTopStyle() == EBorderStyle::kNone) |
| 2843 return true; | 2861 return true; |
| 2844 if (BorderTopStyle() == EBorderStyle::kHidden && | 2862 if (BorderTopStyle() == EBorderStyle::kHidden && |
| 2845 o.BorderTopStyle() == EBorderStyle::kHidden) | 2863 o.BorderTopStyle() == EBorderStyle::kHidden) |
| 2846 return true; | 2864 return true; |
| 2847 return BorderTopEquals(o); | 2865 return BorderTopEquals(o); |
| 2848 } | 2866 } |
| 2849 | 2867 |
| 2850 bool BorderTopEquals(const ComputedStyle& o) const { | 2868 bool BorderTopEquals(const ComputedStyle& o) const { |
| 2851 return BorderTopWidthInternal() == o.BorderTopWidthInternal() && | 2869 return BorderTopWidthInternal() == o.BorderTopWidthInternal() && |
| 2852 BorderTopStyle() == o.BorderTopStyle() && | 2870 BorderTopStyle() == o.BorderTopStyle() && |
| 2853 BorderTopColor() == o.BorderTopColor() && | 2871 BorderTopColor() == o.BorderTopColor() && |
| 2854 BorderTopColorIsCurrentColor() == o.BorderTopColorIsCurrentColor(); | 2872 BorderTopColorIsCurrentColor() == o.BorderTopColorIsCurrentColor(); |
| 2855 } | 2873 } |
| 2874 bool BorderTopEquals(const BorderValue& o) const { |
| 2875 return BorderTopWidthInternal().ToFloat() == o.Width() && |
| 2876 BorderTopStyle() == o.Style() && BorderTopColor() == o.GetColor() && |
| 2877 BorderTopColorIsCurrentColor() == o.ColorIsCurrentColor(); |
| 2878 } |
| 2856 | 2879 |
| 2857 bool BorderBottomVisuallyEqual(const ComputedStyle& o) const { | 2880 bool BorderBottomVisuallyEqual(const ComputedStyle& o) const { |
| 2858 if (BorderBottomStyle() == EBorderStyle::kNone && | 2881 if (BorderBottomStyle() == EBorderStyle::kNone && |
| 2859 o.BorderBottomStyle() == EBorderStyle::kNone) | 2882 o.BorderBottomStyle() == EBorderStyle::kNone) |
| 2860 return true; | 2883 return true; |
| 2861 if (BorderBottomStyle() == EBorderStyle::kHidden && | 2884 if (BorderBottomStyle() == EBorderStyle::kHidden && |
| 2862 o.BorderBottomStyle() == EBorderStyle::kHidden) | 2885 o.BorderBottomStyle() == EBorderStyle::kHidden) |
| 2863 return true; | 2886 return true; |
| 2864 return BorderBottomEquals(o); | 2887 return BorderBottomEquals(o); |
| 2865 } | 2888 } |
| 2866 | 2889 |
| 2867 bool BorderBottomEquals(const ComputedStyle& o) const { | 2890 bool BorderBottomEquals(const ComputedStyle& o) const { |
| 2868 return BorderBottomWidthInternal() == o.BorderBottomWidthInternal() && | 2891 return BorderBottomWidthInternal() == o.BorderBottomWidthInternal() && |
| 2869 BorderBottomStyle() == o.BorderBottomStyle() && | 2892 BorderBottomStyle() == o.BorderBottomStyle() && |
| 2870 BorderBottomColor() == o.BorderBottomColor() && | 2893 BorderBottomColor() == o.BorderBottomColor() && |
| 2871 BorderBottomColorIsCurrentColor() == | 2894 BorderBottomColorIsCurrentColor() == |
| 2872 o.BorderBottomColorIsCurrentColor(); | 2895 o.BorderBottomColorIsCurrentColor(); |
| 2873 } | 2896 } |
| 2897 bool BorderBottomEquals(const BorderValue& o) const { |
| 2898 return BorderBottomWidthInternal().ToFloat() == o.Width() && |
| 2899 BorderBottomStyle() == o.Style() && |
| 2900 BorderBottomColor() == o.GetColor() && |
| 2901 BorderBottomColorIsCurrentColor() == o.ColorIsCurrentColor(); |
| 2902 } |
| 2874 | 2903 |
| 2875 bool BorderEquals(const ComputedStyle& o) const { | 2904 bool BorderEquals(const ComputedStyle& o) const { |
| 2876 return BorderLeftEquals(o) && BorderRightEquals(o) && BorderTopEquals(o) && | 2905 return BorderLeftEquals(o) && BorderRightEquals(o) && BorderTopEquals(o) && |
| 2877 BorderBottomEquals(o) && BorderImage() == o.BorderImage(); | 2906 BorderBottomEquals(o) && BorderImage() == o.BorderImage(); |
| 2878 } | 2907 } |
| 2879 | 2908 |
| 2880 bool BorderVisuallyEqual(const ComputedStyle& o) const { | 2909 bool BorderVisuallyEqual(const ComputedStyle& o) const { |
| 2881 return BorderLeftVisuallyEqual(o) && BorderRightVisuallyEqual(o) && | 2910 return BorderLeftVisuallyEqual(o) && BorderRightVisuallyEqual(o) && |
| 2882 BorderTopVisuallyEqual(o) && BorderBottomVisuallyEqual(o) && | 2911 BorderTopVisuallyEqual(o) && BorderBottomVisuallyEqual(o) && |
| 2883 BorderImage() == o.BorderImage(); | 2912 BorderImage() == o.BorderImage(); |
| (...skipping 12 matching lines...) Expand all Loading... |
| 2896 ResetBorderTopLeftRadius(); | 2925 ResetBorderTopLeftRadius(); |
| 2897 ResetBorderTopRightRadius(); | 2926 ResetBorderTopRightRadius(); |
| 2898 ResetBorderBottomLeftRadius(); | 2927 ResetBorderBottomLeftRadius(); |
| 2899 ResetBorderBottomRightRadius(); | 2928 ResetBorderBottomRightRadius(); |
| 2900 } | 2929 } |
| 2901 | 2930 |
| 2902 void ResetBorderTop() { | 2931 void ResetBorderTop() { |
| 2903 SetBorderTopStyle(EBorderStyle::kNone); | 2932 SetBorderTopStyle(EBorderStyle::kNone); |
| 2904 SetBorderTopWidth(3); | 2933 SetBorderTopWidth(3); |
| 2905 SetBorderTopColorInternal(0); | 2934 SetBorderTopColorInternal(0); |
| 2906 SetBorderTopColorInternal(true); | 2935 SetBorderTopColorIsCurrentColor(true); |
| 2907 } | 2936 } |
| 2908 void ResetBorderRight() { | 2937 void ResetBorderRight() { |
| 2909 SetBorderRightStyle(EBorderStyle::kNone); | 2938 SetBorderRightStyle(EBorderStyle::kNone); |
| 2910 SetBorderRightWidth(3); | 2939 SetBorderRightWidth(3); |
| 2911 SetBorderRightColorInternal(0); | 2940 SetBorderRightColorInternal(0); |
| 2912 SetBorderRightColorInternal(true); | 2941 SetBorderRightColorIsCurrentColor(true); |
| 2913 } | 2942 } |
| 2914 void ResetBorderBottom() { | 2943 void ResetBorderBottom() { |
| 2915 SetBorderBottomStyle(EBorderStyle::kNone); | 2944 SetBorderBottomStyle(EBorderStyle::kNone); |
| 2916 SetBorderBottomWidth(3); | 2945 SetBorderBottomWidth(3); |
| 2917 SetBorderBottomColorInternal(0); | 2946 SetBorderBottomColorInternal(0); |
| 2918 SetBorderBottomColorInternal(true); | 2947 SetBorderBottomColorIsCurrentColor(true); |
| 2919 } | 2948 } |
| 2920 void ResetBorderLeft() { | 2949 void ResetBorderLeft() { |
| 2921 SetBorderLeftStyle(EBorderStyle::kNone); | 2950 SetBorderLeftStyle(EBorderStyle::kNone); |
| 2922 SetBorderLeftWidth(3); | 2951 SetBorderLeftWidth(3); |
| 2923 SetBorderLeftColorInternal(0); | 2952 SetBorderLeftColorInternal(0); |
| 2924 SetBorderLeftColorInternal(true); | 2953 SetBorderLeftColorIsCurrentColor(true); |
| 2925 } | 2954 } |
| 2926 | 2955 |
| 2927 void SetBorderRadius(const LengthSize& s) { | 2956 void SetBorderRadius(const LengthSize& s) { |
| 2928 SetBorderTopLeftRadius(s); | 2957 SetBorderTopLeftRadius(s); |
| 2929 SetBorderTopRightRadius(s); | 2958 SetBorderTopRightRadius(s); |
| 2930 SetBorderBottomLeftRadius(s); | 2959 SetBorderBottomLeftRadius(s); |
| 2931 SetBorderBottomRightRadius(s); | 2960 SetBorderBottomRightRadius(s); |
| 2932 } | 2961 } |
| 2933 void SetBorderRadius(const IntSize& s) { | 2962 void SetBorderRadius(const IntSize& s) { |
| 2934 SetBorderRadius( | 2963 SetBorderRadius( |
| (...skipping 793 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3728 PseudoBitsInternal() | 1 << (pseudo - kFirstPublicPseudoId))); | 3757 PseudoBitsInternal() | 1 << (pseudo - kFirstPublicPseudoId))); |
| 3729 } | 3758 } |
| 3730 | 3759 |
| 3731 inline bool ComputedStyle::HasPseudoElementStyle() const { | 3760 inline bool ComputedStyle::HasPseudoElementStyle() const { |
| 3732 return PseudoBitsInternal() & kElementPseudoIdMask; | 3761 return PseudoBitsInternal() & kElementPseudoIdMask; |
| 3733 } | 3762 } |
| 3734 | 3763 |
| 3735 } // namespace blink | 3764 } // namespace blink |
| 3736 | 3765 |
| 3737 #endif // ComputedStyle_h | 3766 #endif // ComputedStyle_h |
| OLD | NEW |