diff -Nru khtml-5.24.0/CMakeLists.txt khtml-5.26.0/CMakeLists.txt --- khtml-5.24.0/CMakeLists.txt 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/CMakeLists.txt 2016-09-06 12:04:32.000000000 +0000 @@ -3,7 +3,7 @@ project(KHtml) include(FeatureSummary) -find_package(ECM 5.24.0 NO_MODULE) +find_package(ECM 5.26.0 NO_MODULE) set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://projects.kde.org/projects/kdesupport/extra-cmake-modules") feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES) @@ -14,14 +14,14 @@ include(ECMSetupVersion) include(ECMGenerateHeaders) -set(REQUIRED_QT_VERSION 5.4.0) +set(REQUIRED_QT_VERSION 5.5.0) find_package(Qt5 "${REQUIRED_QT_VERSION}" CONFIG REQUIRED Widgets Network DBus PrintSupport Xml) include(KDEInstallDirs) include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE) include(KDECMakeSettings) -set(KF5_VERSION "5.24.0") # handled by release scripts -set(KF5_DEP_VERSION "5.24.0") # handled by release scripts +set(KF5_VERSION "5.26.0") # handled by release scripts +set(KF5_DEP_VERSION "5.26.0") # handled by release scripts find_package(KF5Archive ${KF5_DEP_VERSION} REQUIRED) find_package(KF5Codecs ${KF5_DEP_VERSION} REQUIRED) find_package(KF5GlobalAccel ${KF5_DEP_VERSION} REQUIRED) diff -Nru khtml-5.24.0/COPYING.LGPL-2 khtml-5.26.0/COPYING.LGPL-2 --- khtml-5.24.0/COPYING.LGPL-2 1970-01-01 00:00:00.000000000 +0000 +++ khtml-5.26.0/COPYING.LGPL-2 2016-09-06 12:04:32.000000000 +0000 @@ -0,0 +1,481 @@ + GNU LIBRARY GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1991 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the library GPL. It is + numbered 2 because it goes with version 2 of the ordinary GPL.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Library General Public License, applies to some +specially designated Free Software Foundation software, and to any +other libraries whose authors decide to use it. You can use it for +your libraries, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if +you distribute copies of the library, or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link a program with the library, you must provide +complete object files to the recipients so that they can relink them +with the library, after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + Our method of protecting your rights has two steps: (1) copyright +the library, and (2) offer you this license which gives you legal +permission to copy, distribute and/or modify the library. + + Also, for each distributor's protection, we want to make certain +that everyone understands that there is no warranty for this free +library. If the library is modified by someone else and passed on, we +want its recipients to know that what they have is not the original +version, so that any problems introduced by others will not reflect on +the original authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that companies distributing free +software will individually obtain patent licenses, thus in effect +transforming the program into proprietary software. To prevent this, +we have made it clear that any patent must be licensed for everyone's +free use or not licensed at all. + + Most GNU software, including some libraries, is covered by the ordinary +GNU General Public License, which was designed for utility programs. This +license, the GNU Library General Public License, applies to certain +designated libraries. This license is quite different from the ordinary +one; be sure to read it in full, and don't assume that anything in it is +the same as in the ordinary license. + + The reason we have a separate public license for some libraries is that +they blur the distinction we usually make between modifying or adding to a +program and simply using it. Linking a program with a library, without +changing the library, is in some sense simply using the library, and is +analogous to running a utility program or application program. However, in +a textual and legal sense, the linked executable is a combined work, a +derivative of the original library, and the ordinary General Public License +treats it as such. + + Because of this blurred distinction, using the ordinary General +Public License for libraries did not effectively promote software +sharing, because most developers did not use the libraries. We +concluded that weaker conditions might promote sharing better. + + However, unrestricted linking of non-free programs would deprive the +users of those programs of all benefit from the free status of the +libraries themselves. This Library General Public License is intended to +permit developers of non-free programs to use free libraries, while +preserving your freedom as a user of such programs to change the free +libraries that are incorporated in them. (We have not seen how to achieve +this as regards changes in header files, but we have achieved it as regards +changes in the actual functions of the Library.) The hope is that this +will lead to faster development of free libraries. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, while the latter only +works together with the library. + + Note that it is possible for a library to be covered by the ordinary +General Public License rather than by this special one. + + GNU LIBRARY GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library which +contains a notice placed by the copyright holder or other authorized +party saying it may be distributed under the terms of this Library +General Public License (also called "this License"). Each licensee is +addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also compile or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + c) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + d) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the source code distributed need not include anything that is normally +distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Library General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! diff -Nru khtml-5.24.0/debian/changelog khtml-5.26.0/debian/changelog --- khtml-5.24.0/debian/changelog 2016-09-22 07:07:10.000000000 +0000 +++ khtml-5.26.0/debian/changelog 2016-09-22 12:45:04.000000000 +0000 @@ -1,3 +1,10 @@ +khtml (5.26.0-0ubuntu1) yakkety; urgency=medium + + [ Rik Mills ] + * New upstream release (5.26.0) + + -- Philip Muškovac Thu, 22 Sep 2016 13:45:04 +0100 + khtml (5.24.0-0ubuntu3) yakkety; urgency=medium * Update symbols. @@ -13,7 +20,7 @@ [ Scarlett Clark ] * Release to archive. - -- José Manuel Santamaría Lema Thu, 11 Aug 2016 17:50:27 +0200 + -- Philip Muškovac Tue, 26 Jul 2016 08:41:14 +0000 khtml (5.24.0-0ubuntu1) yakkety; urgency=medium diff -Nru khtml-5.24.0/debian/control khtml-5.26.0/debian/control --- khtml-5.24.0/debian/control 2016-09-15 22:37:33.000000000 +0000 +++ khtml-5.26.0/debian/control 2016-09-22 12:45:04.000000000 +0000 @@ -5,24 +5,24 @@ Uploaders: Maximiliano Curia Build-Depends: cmake (>= 2.8.12), debhelper (>= 9), - extra-cmake-modules (>= 5.24.0~), - kio-dev (>= 5.24.0~), + extra-cmake-modules (>= 5.26.0~), + kio-dev (>= 5.26.0~), libgif-dev, libjpeg-dev, - libkf5archive-dev (>= 5.24.0~), - libkf5codecs-dev (>= 5.24.0~), - libkf5globalaccel-dev (>= 5.24.0~), - libkf5i18n-dev (>= 5.24.0~), - libkf5iconthemes-dev (>= 5.24.0~), - libkf5kjs-dev (>= 5.24.0~), - libkf5notifications-dev (>= 5.24.0~), - libkf5parts-dev (>= 5.24.0~), - libkf5sonnet-dev (>= 5.24.0~), - libkf5textwidgets-dev (>= 5.24.0~), - libkf5wallet-dev (>= 5.24.0~), - libkf5widgetsaddons-dev (>= 5.24.0~), - libkf5windowsystem-dev (>= 5.24.0~), - libkf5xmlgui-dev (>= 5.24.0~), + libkf5archive-dev (>= 5.26.0~), + libkf5codecs-dev (>= 5.26.0~), + libkf5globalaccel-dev (>= 5.26.0~), + libkf5i18n-dev (>= 5.26.0~), + libkf5iconthemes-dev (>= 5.26.0~), + libkf5kjs-dev (>= 5.26.0~), + libkf5notifications-dev (>= 5.26.0~), + libkf5parts-dev (>= 5.26.0~), + libkf5sonnet-dev (>= 5.26.0~), + libkf5textwidgets-dev (>= 5.26.0~), + libkf5wallet-dev (>= 5.26.0~), + libkf5widgetsaddons-dev (>= 5.26.0~), + libkf5windowsystem-dev (>= 5.26.0~), + libkf5xmlgui-dev (>= 5.26.0~), libphonon4qt5-dev (>= 4:4.6.0), libphonon4qt5experimental-dev (>= 4:4.6.0), libpng-dev, @@ -40,19 +40,19 @@ Package: libkf5khtml-dev Section: libdevel Architecture: any -Depends: kio-dev (>= 5.21.0~), - libkf5archive-dev (>= 5.21.0~), - libkf5globalaccel-dev (>= 5.21.0~), - libkf5i18n-dev (>= 5.21.0~), - libkf5iconthemes-dev (>= 5.21.0~), +Depends: kio-dev (>= 5.26.0~), + libkf5archive-dev (>= 5.26.0~), + libkf5globalaccel-dev (>= 5.26.0~), + libkf5i18n-dev (>= 5.26.0~), + libkf5iconthemes-dev (>= 5.26.0~), libkf5khtml5 (= ${binary:Version}), - libkf5kjs-dev (>= 5.21.0~), - libkf5notifications-dev (>= 5.21.0~), - libkf5parts-dev (>= 5.21.0~), - libkf5sonnet-dev (>= 5.21.0~), - libkf5wallet-dev (>= 5.21.0~), - libkf5widgetsaddons-dev (>= 5.21.0~), - libkf5windowsystem-dev (>= 5.21.0~), + libkf5kjs-dev (>= 5.26.0~), + libkf5notifications-dev (>= 5.26.0~), + libkf5parts-dev (>= 5.26.0~), + libkf5sonnet-dev (>= 5.26.0~), + libkf5wallet-dev (>= 5.26.0~), + libkf5widgetsaddons-dev (>= 5.26.0~), + libkf5windowsystem-dev (>= 5.26.0~), qtbase5-dev (>= 5.4), ${misc:Depends} Description: HTML widget and component diff -Nru khtml-5.24.0/src/css/cssparser.cpp khtml-5.26.0/src/css/cssparser.cpp --- khtml-5.24.0/src/css/cssparser.cpp 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/css/cssparser.cpp 2016-09-06 12:04:32.000000000 +0000 @@ -753,10 +753,6 @@ valid_primitive = true; } break; - case CSS_PROP__KHTML_BORDER_TOP_RIGHT_RADIUS: - case CSS_PROP__KHTML_BORDER_BOTTOM_RIGHT_RADIUS: - case CSS_PROP__KHTML_BORDER_BOTTOM_LEFT_RADIUS: - case CSS_PROP__KHTML_BORDER_TOP_LEFT_RADIUS: case CSS_PROP_BORDER_TOP_RIGHT_RADIUS: case CSS_PROP_BORDER_BOTTOM_RIGHT_RADIUS: case CSS_PROP_BORDER_BOTTOM_LEFT_RADIUS: @@ -766,7 +762,7 @@ return false; } - if (!validUnit(value, FLength | FNonNeg, strict)) { + if (!validUnit(value, FLength | FPercent | FNonNeg, strict)) { return false; } @@ -776,7 +772,7 @@ if (num == 2) { value = valueList->next(); - if (!validUnit(value, FLength | FNonNeg, strict)) { + if (!validUnit(value, FLength | FPercent | FNonNeg, strict)) { delete horiz; return false; } @@ -789,7 +785,6 @@ return true; } - case CSS_PROP__KHTML_BORDER_RADIUS: case CSS_PROP_BORDER_RADIUS: return parseBorderRadius(important); @@ -882,15 +877,12 @@ break; case CSS_PROP_BACKGROUND_ATTACHMENT: - case CSS_PROP__KHTML_BACKGROUND_CLIP: case CSS_PROP_BACKGROUND_CLIP: case CSS_PROP_BACKGROUND_IMAGE: - case CSS_PROP__KHTML_BACKGROUND_ORIGIN: case CSS_PROP_BACKGROUND_ORIGIN: case CSS_PROP_BACKGROUND_POSITION: case CSS_PROP_BACKGROUND_POSITION_X: case CSS_PROP_BACKGROUND_POSITION_Y: - case CSS_PROP__KHTML_BACKGROUND_SIZE: case CSS_PROP_BACKGROUND_SIZE: case CSS_PROP_BACKGROUND_REPEAT: { CSSValueImpl *val1 = 0, *val2 = 0; @@ -1509,7 +1501,7 @@ break; //Saw slash -- exit w/o consuming as we'll use it below. } - if (!validUnit(value, FLength | FNonNeg, strict)) { + if (!validUnit(value, FLength | FPercent | FNonNeg, strict)) { return false; } @@ -1534,7 +1526,7 @@ break; } - if (!validUnit(value, FLength | FNonNeg, strict)) { + if (!validUnit(value, FLength | FPercent | FNonNeg, strict)) { return false; } @@ -2095,13 +2087,6 @@ valueList->next(); } break; - case CSS_PROP__KHTML_BACKGROUND_CLIP: - case CSS_PROP__KHTML_BACKGROUND_ORIGIN: - if (val->id == CSS_VAL_BORDER || val->id == CSS_VAL_PADDING || val->id == CSS_VAL_CONTENT) { - currValue = new CSSPrimitiveValueImpl(val->id); - valueList->next(); - } - break; case CSS_PROP_BACKGROUND_POSITION: parseBackgroundPosition(currValue, currValue2); // parseBackgroundPosition advances the valueList pointer @@ -2138,7 +2123,6 @@ valueList->next(); } break; - case CSS_PROP__KHTML_BACKGROUND_SIZE: case CSS_PROP_BACKGROUND_SIZE: currValue = parseBackgroundSize(); // parseBackgroundSize advances the valueList pointer diff -Nru khtml-5.24.0/src/css/cssproperties.c khtml-5.26.0/src/css/cssproperties.c --- khtml-5.24.0/src/css/cssproperties.c 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/css/cssproperties.c 2016-09-06 12:04:32.000000000 +0000 @@ -1,4 +1,4 @@ -/* ANSI-C code produced by gperf version 3.0.4 */ +/* ANSI-C code produced by gperf version 3.0.3 */ /* Command-line: gperf -a -L ANSI-C -E -C -c -o -t -k '*' -NfindProp -Hhash_prop -Wwordlist_prop -D -s 2 cssproperties.gperf */ #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \ @@ -39,8 +39,8 @@ int id; }; -static const struct css_prop *findProp(register const char *str, register unsigned int len); -/* maximum key range = 902, duplicates = 0 */ +static const struct css_prop * findProp (register const char *str, register unsigned int len); +/* maximum key range = 797, duplicates = 0 */ #ifdef __GNUC__ __inline @@ -50,846 +50,815 @@ #endif #endif static unsigned int -hash_prop(register const char *str, register unsigned int len) +hash_prop (register const char *str, register unsigned int len) { - static const unsigned short asso_values[] = { - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 0, 907, 907, 907, 907, - 907, 0, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 5, 0, 0, - 0, 0, 230, 0, 25, 20, 0, 120, 0, 70, - 20, 0, 0, 5, 0, 10, 5, 145, 30, 370, - 5, 220, 25, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907, 907, 907, 907, 907, - 907, 907, 907, 907, 907, 907 + static const unsigned short asso_values[] = + { + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 0, 802, 802, 802, 802, + 802, 0, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 5, 0, 0, + 0, 0, 240, 0, 180, 20, 0, 55, 0, 20, + 20, 0, 0, 10, 0, 10, 5, 80, 45, 265, + 60, 230, 0, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802 }; - register int hval = len; + register int hval = len; - switch (hval) { - default: - hval += asso_values[(unsigned char)str[32]]; - /*FALLTHROUGH*/ - case 32: + switch (hval) + { + default: hval += asso_values[(unsigned char)str[31]]; - /*FALLTHROUGH*/ - case 31: + /*FALLTHROUGH*/ + case 31: hval += asso_values[(unsigned char)str[30]]; - /*FALLTHROUGH*/ - case 30: + /*FALLTHROUGH*/ + case 30: hval += asso_values[(unsigned char)str[29]]; - /*FALLTHROUGH*/ - case 29: + /*FALLTHROUGH*/ + case 29: hval += asso_values[(unsigned char)str[28]]; - /*FALLTHROUGH*/ - case 28: + /*FALLTHROUGH*/ + case 28: hval += asso_values[(unsigned char)str[27]]; - /*FALLTHROUGH*/ - case 27: + /*FALLTHROUGH*/ + case 27: hval += asso_values[(unsigned char)str[26]]; - /*FALLTHROUGH*/ - case 26: + /*FALLTHROUGH*/ + case 26: hval += asso_values[(unsigned char)str[25]]; - /*FALLTHROUGH*/ - case 25: + /*FALLTHROUGH*/ + case 25: hval += asso_values[(unsigned char)str[24]]; - /*FALLTHROUGH*/ - case 24: + /*FALLTHROUGH*/ + case 24: hval += asso_values[(unsigned char)str[23]]; - /*FALLTHROUGH*/ - case 23: + /*FALLTHROUGH*/ + case 23: hval += asso_values[(unsigned char)str[22]]; - /*FALLTHROUGH*/ - case 22: + /*FALLTHROUGH*/ + case 22: hval += asso_values[(unsigned char)str[21]]; - /*FALLTHROUGH*/ - case 21: + /*FALLTHROUGH*/ + case 21: hval += asso_values[(unsigned char)str[20]]; - /*FALLTHROUGH*/ - case 20: + /*FALLTHROUGH*/ + case 20: hval += asso_values[(unsigned char)str[19]]; - /*FALLTHROUGH*/ - case 19: + /*FALLTHROUGH*/ + case 19: hval += asso_values[(unsigned char)str[18]]; - /*FALLTHROUGH*/ - case 18: + /*FALLTHROUGH*/ + case 18: hval += asso_values[(unsigned char)str[17]]; - /*FALLTHROUGH*/ - case 17: + /*FALLTHROUGH*/ + case 17: hval += asso_values[(unsigned char)str[16]]; - /*FALLTHROUGH*/ - case 16: + /*FALLTHROUGH*/ + case 16: hval += asso_values[(unsigned char)str[15]]; - /*FALLTHROUGH*/ - case 15: + /*FALLTHROUGH*/ + case 15: hval += asso_values[(unsigned char)str[14]]; - /*FALLTHROUGH*/ - case 14: + /*FALLTHROUGH*/ + case 14: hval += asso_values[(unsigned char)str[13]]; - /*FALLTHROUGH*/ - case 13: + /*FALLTHROUGH*/ + case 13: hval += asso_values[(unsigned char)str[12]]; - /*FALLTHROUGH*/ - case 12: + /*FALLTHROUGH*/ + case 12: hval += asso_values[(unsigned char)str[11]]; - /*FALLTHROUGH*/ - case 11: + /*FALLTHROUGH*/ + case 11: hval += asso_values[(unsigned char)str[10]]; - /*FALLTHROUGH*/ - case 10: + /*FALLTHROUGH*/ + case 10: hval += asso_values[(unsigned char)str[9]]; - /*FALLTHROUGH*/ - case 9: + /*FALLTHROUGH*/ + case 9: hval += asso_values[(unsigned char)str[8]]; - /*FALLTHROUGH*/ - case 8: + /*FALLTHROUGH*/ + case 8: hval += asso_values[(unsigned char)str[7]]; - /*FALLTHROUGH*/ - case 7: + /*FALLTHROUGH*/ + case 7: hval += asso_values[(unsigned char)str[6]]; - /*FALLTHROUGH*/ - case 6: + /*FALLTHROUGH*/ + case 6: hval += asso_values[(unsigned char)str[5]]; - /*FALLTHROUGH*/ - case 5: + /*FALLTHROUGH*/ + case 5: hval += asso_values[(unsigned char)str[4]]; - /*FALLTHROUGH*/ - case 4: + /*FALLTHROUGH*/ + case 4: hval += asso_values[(unsigned char)str[3]]; - /*FALLTHROUGH*/ - case 3: + /*FALLTHROUGH*/ + case 3: hval += asso_values[(unsigned char)str[2]]; - /*FALLTHROUGH*/ - case 2: + /*FALLTHROUGH*/ + case 2: hval += asso_values[(unsigned char)str[1]]; - /*FALLTHROUGH*/ - case 1: + /*FALLTHROUGH*/ + case 1: hval += asso_values[(unsigned char)str[0]]; break; } - return hval; + return hval; } #ifdef __GNUC__ __inline -#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__ -__attribute__((__gnu_inline__)) +#ifdef __GNUC_STDC_INLINE__ +__attribute__ ((__gnu_inline__)) #endif #endif const struct css_prop * -findProp(register const char *str, register unsigned int len) +findProp (register const char *str, register unsigned int len) { - enum { - TOTAL_KEYWORDS = 187, - MIN_WORD_LENGTH = 3, - MAX_WORD_LENGTH = 33, - MIN_HASH_VALUE = 5, - MAX_HASH_VALUE = 906 + enum + { + TOTAL_KEYWORDS = 179, + MIN_WORD_LENGTH = 3, + MAX_WORD_LENGTH = 32, + MIN_HASH_VALUE = 5, + MAX_HASH_VALUE = 801 }; - static const struct css_prop wordlist_prop[] = { -#line 57 "cssproperties.gperf" - {"color", CSS_PROP_COLOR}, -#line 134 "cssproperties.gperf" - {"border", CSS_PROP_BORDER}, -#line 122 "cssproperties.gperf" - {"top", CSS_PROP_TOP}, -#line 55 "cssproperties.gperf" - {"clear", CSS_PROP_CLEAR}, -#line 135 "cssproperties.gperf" - {"border-color", CSS_PROP_BORDER_COLOR}, + static const struct css_prop wordlist_prop[] = + { +#line 49 "cssproperties.gperf" + {"color", CSS_PROP_COLOR}, +#line 126 "cssproperties.gperf" + {"border", CSS_PROP_BORDER}, #line 114 "cssproperties.gperf" - {"src", CSS_PROP_SRC}, + {"top", CSS_PROP_TOP}, +#line 47 "cssproperties.gperf" + {"clear", CSS_PROP_CLEAR}, +#line 127 "cssproperties.gperf" + {"border-color", CSS_PROP_BORDER_COLOR}, +#line 106 "cssproperties.gperf" + {"src", CSS_PROP_SRC}, +#line 129 "cssproperties.gperf" + {"border-top", CSS_PROP_BORDER_TOP}, +#line 33 "cssproperties.gperf" + {"border-top-color", CSS_PROP_BORDER_TOP_COLOR}, +#line 48 "cssproperties.gperf" + {"clip", CSS_PROP_CLIP}, +#line 180 "cssproperties.gperf" + {"stop-color", CSS_PROP_STOP_COLOR}, +#line 29 "cssproperties.gperf" + {"border-collapse", CSS_PROP_BORDER_COLLAPSE}, +#line 105 "cssproperties.gperf" + {"size", CSS_PROP_SIZE}, +#line 45 "cssproperties.gperf" + {"bottom", CSS_PROP_BOTTOM}, +#line 131 "cssproperties.gperf" + {"border-bottom", CSS_PROP_BORDER_BOTTOM}, +#line 35 "cssproperties.gperf" + {"border-bottom-color", CSS_PROP_BORDER_BOTTOM_COLOR}, +#line 140 "cssproperties.gperf" + {"scrollbar-base-color", CSS_PROP_SCROLLBAR_BASE_COLOR}, +#line 139 "cssproperties.gperf" + {"padding", CSS_PROP_PADDING}, +#line 50 "cssproperties.gperf" + {"content", CSS_PROP_CONTENT}, +#line 94 "cssproperties.gperf" + {"padding-top", CSS_PROP_PADDING_TOP}, +#line 30 "cssproperties.gperf" + {"border-spacing", CSS_PROP_BORDER_SPACING}, #line 137 "cssproperties.gperf" - {"border-top", CSS_PROP_BORDER_TOP}, -#line 41 "cssproperties.gperf" - {"border-top-color", CSS_PROP_BORDER_TOP_COLOR}, -#line 56 "cssproperties.gperf" - {"clip", CSS_PROP_CLIP}, -#line 188 "cssproperties.gperf" - {"stop-color", CSS_PROP_STOP_COLOR}, -#line 37 "cssproperties.gperf" - {"border-collapse", CSS_PROP_BORDER_COLLAPSE}, -#line 148 "cssproperties.gperf" - {"scrollbar-base-color", CSS_PROP_SCROLLBAR_BASE_COLOR}, -#line 147 "cssproperties.gperf" - {"padding", CSS_PROP_PADDING}, -#line 112 "cssproperties.gperf" - {"right", CSS_PROP_RIGHT}, -#line 58 "cssproperties.gperf" - {"content", CSS_PROP_CONTENT}, -#line 113 "cssproperties.gperf" - {"size", CSS_PROP_SIZE}, + {"margin", CSS_PROP_MARGIN}, +#line 54 "cssproperties.gperf" + {"direction", CSS_PROP_DIRECTION}, +#line 157 "cssproperties.gperf" + {"color-rendering", CSS_PROP_COLOR_RENDERING}, +#line 182 "cssproperties.gperf" + {"stroke", CSS_PROP_STROKE}, +#line 65 "cssproperties.gperf" + {"letter-spacing", CSS_PROP_LETTER_SPACING}, +#line 70 "cssproperties.gperf" + {"margin-top", CSS_PROP_MARGIN_TOP}, #line 102 "cssproperties.gperf" - {"padding-top", CSS_PROP_PADDING_TOP}, + {"position", CSS_PROP_POSITION}, +#line 173 "cssproperties.gperf" + {"marker", CSS_PROP_MARKER}, +#line 96 "cssproperties.gperf" + {"padding-bottom", CSS_PROP_PADDING_BOTTOM}, +#line 46 "cssproperties.gperf" + {"caption-side", CSS_PROP_CAPTION_SIDE}, +#line 177 "cssproperties.gperf" + {"mask", CSS_PROP_MASK}, +#line 53 "cssproperties.gperf" + {"cursor", CSS_PROP_CURSOR}, +#line 146 "cssproperties.gperf" + {"scrollbar-track-color", CSS_PROP_SCROLLBAR_TRACK_COLOR}, +#line 124 "cssproperties.gperf" + {"z-index", CSS_PROP_Z_INDEX}, +#line 72 "cssproperties.gperf" + {"margin-bottom", CSS_PROP_MARGIN_BOTTOM}, +#line 153 "cssproperties.gperf" + {"clip-rule", CSS_PROP_CLIP_RULE}, +#line 174 "cssproperties.gperf" + {"marker-end", CSS_PROP_MARKER_END}, +#line 103 "cssproperties.gperf" + {"quotes", CSS_PROP_QUOTES}, +#line 154 "cssproperties.gperf" + {"color-interpolation", CSS_PROP_COLOR_INTERPOLATION}, +#line 176 "cssproperties.gperf" + {"marker-start", CSS_PROP_MARKER_START}, +#line 170 "cssproperties.gperf" + {"image-rendering", CSS_PROP_IMAGE_RENDERING}, +#line 171 "cssproperties.gperf" + {"kerning", CSS_PROP_KERNING}, +#line 108 "cssproperties.gperf" + {"text-align", CSS_PROP_TEXT_ALIGN}, +#line 28 "cssproperties.gperf" + {"border-radius", CSS_PROP_BORDER_RADIUS}, +#line 185 "cssproperties.gperf" + {"stroke-linecap", CSS_PROP_STROKE_LINECAP}, +#line 175 "cssproperties.gperf" + {"marker-mid", CSS_PROP_MARKER_MID}, #line 138 "cssproperties.gperf" - {"border-right", CSS_PROP_BORDER_RIGHT}, -#line 160 "cssproperties.gperf" - {"clip-path", CSS_PROP_CLIP_PATH}, -#line 93 "cssproperties.gperf" - {"orphans", CSS_PROP_ORPHANS}, -#line 42 "cssproperties.gperf" - {"border-right-color", CSS_PROP_BORDER_RIGHT_COLOR}, -#line 38 "cssproperties.gperf" - {"border-spacing", CSS_PROP_BORDER_SPACING}, -#line 116 "cssproperties.gperf" - {"text-align", CSS_PROP_TEXT_ALIGN}, -#line 62 "cssproperties.gperf" - {"direction", CSS_PROP_DIRECTION}, -#line 165 "cssproperties.gperf" - {"color-rendering", CSS_PROP_COLOR_RENDERING}, -#line 198 "cssproperties.gperf" - {"text-anchor", CSS_PROP_TEXT_ANCHOR}, -#line 132 "cssproperties.gperf" - {"z-index", CSS_PROP_Z_INDEX}, -#line 73 "cssproperties.gperf" - {"letter-spacing", CSS_PROP_LETTER_SPACING}, + {"outline", CSS_PROP_OUTLINE}, +#line 52 "cssproperties.gperf" + {"counter-reset", CSS_PROP_COUNTER_RESET}, #line 117 "cssproperties.gperf" - {"text-decoration", CSS_PROP_TEXT_DECORATION}, -#line 71 "cssproperties.gperf" - {"height", CSS_PROP_HEIGHT}, + {"vertical-align", CSS_PROP_VERTICAL_ALIGN}, +#line 109 "cssproperties.gperf" + {"text-decoration", CSS_PROP_TEXT_DECORATION}, +#line 87 "cssproperties.gperf" + {"outline-color", CSS_PROP_OUTLINE_COLOR}, +#line 178 "cssproperties.gperf" + {"pointer-events", CSS_PROP_POINTER_EVENTS}, +#line 134 "cssproperties.gperf" + {"box-sizing", CSS_PROP_BOX_SIZING}, +#line 191 "cssproperties.gperf" + {"text-rendering", CSS_PROP_TEXT_RENDERING}, #line 110 "cssproperties.gperf" - {"position", CSS_PROP_POSITION}, -#line 53 "cssproperties.gperf" - {"bottom", CSS_PROP_BOTTOM}, -#line 152 "cssproperties.gperf" - {"scrollbar-3dlight-color", CSS_PROP_SCROLLBAR_3DLIGHT_COLOR}, -#line 199 "cssproperties.gperf" - {"text-rendering", CSS_PROP_TEXT_RENDERING}, -#line 118 "cssproperties.gperf" - {"text-indent", CSS_PROP_TEXT_INDENT}, -#line 54 "cssproperties.gperf" - {"caption-side", CSS_PROP_CAPTION_SIDE}, -#line 139 "cssproperties.gperf" - {"border-bottom", CSS_PROP_BORDER_BOTTOM}, -#line 43 "cssproperties.gperf" - {"border-bottom-color", CSS_PROP_BORDER_BOTTOM_COLOR}, -#line 180 "cssproperties.gperf" - {"lighting-color", CSS_PROP_LIGHTING_COLOR}, -#line 103 "cssproperties.gperf" - {"padding-right", CSS_PROP_PADDING_RIGHT}, -#line 142 "cssproperties.gperf" - {"box-sizing", CSS_PROP_BOX_SIZING}, -#line 162 "cssproperties.gperf" - {"color-interpolation", CSS_PROP_COLOR_INTERPOLATION}, -#line 187 "cssproperties.gperf" - {"shape-rendering", CSS_PROP_SHAPE_RENDERING}, -#line 125 "cssproperties.gperf" - {"vertical-align", CSS_PROP_VERTICAL_ALIGN}, -#line 145 "cssproperties.gperf" - {"margin", CSS_PROP_MARGIN}, + {"text-indent", CSS_PROP_TEXT_INDENT}, +#line 101 "cssproperties.gperf" + {"page-break-inside", CSS_PROP_PAGE_BREAK_INSIDE}, +#line 116 "cssproperties.gperf" + {"unicode-range", CSS_PROP_UNICODE_RANGE}, +#line 158 "cssproperties.gperf" + {"dominant-baseline", CSS_PROP_DOMINANT_BASELINE}, +#line 150 "cssproperties.gperf" + {"alignment-baseline", CSS_PROP_ALIGNMENT_BASELINE}, #line 186 "cssproperties.gperf" - {"pointer-events", CSS_PROP_POINTER_EVENTS}, -#line 74 "cssproperties.gperf" - {"line-height", CSS_PROP_LINE_HEIGHT}, -#line 78 "cssproperties.gperf" - {"margin-top", CSS_PROP_MARGIN_TOP}, + {"stroke-linejoin", CSS_PROP_STROKE_LINEJOIN}, +#line 125 "cssproperties.gperf" + {"background", CSS_PROP_BACKGROUND}, +#line 115 "cssproperties.gperf" + {"unicode-bidi", CSS_PROP_UNICODE_BIDI}, +#line 14 "cssproperties.gperf" + {"background-color", CSS_PROP_BACKGROUND_COLOR}, +#line 16 "cssproperties.gperf" + {"background-repeat", CSS_PROP_BACKGROUND_REPEAT}, +#line 21 "cssproperties.gperf" + {"background-clip", CSS_PROP_BACKGROUND_CLIP}, +#line 187 "cssproperties.gperf" + {"stroke-miterlimit", CSS_PROP_STROKE_MITERLIMIT}, +#line 159 "cssproperties.gperf" + {"enable-background", CSS_PROP_ENABLE_BACKGROUND}, +#line 23 "cssproperties.gperf" + {"background-size", CSS_PROP_BACKGROUND_SIZE}, +#line 51 "cssproperties.gperf" + {"counter-increment", CSS_PROP_COUNTER_INCREMENT}, #line 104 "cssproperties.gperf" - {"padding-bottom", CSS_PROP_PADDING_BOTTOM}, + {"right", CSS_PROP_RIGHT}, +#line 130 "cssproperties.gperf" + {"border-right", CSS_PROP_BORDER_RIGHT}, +#line 152 "cssproperties.gperf" + {"clip-path", CSS_PROP_CLIP_PATH}, +#line 15 "cssproperties.gperf" + {"background-image", CSS_PROP_BACKGROUND_IMAGE}, +#line 85 "cssproperties.gperf" + {"orphans", CSS_PROP_ORPHANS}, +#line 34 "cssproperties.gperf" + {"border-right-color", CSS_PROP_BORDER_RIGHT_COLOR}, +#line 22 "cssproperties.gperf" + {"background-origin", CSS_PROP_BACKGROUND_ORIGIN}, +#line 144 "cssproperties.gperf" + {"scrollbar-3dlight-color", CSS_PROP_SCROLLBAR_3DLIGHT_COLOR}, +#line 64 "cssproperties.gperf" + {"left", CSS_PROP_LEFT}, +#line 164 "cssproperties.gperf" + {"flood-color", CSS_PROP_FLOOD_COLOR}, +#line 18 "cssproperties.gperf" + {"background-position", CSS_PROP_BACKGROUND_POSITION}, +#line 57 "cssproperties.gperf" + {"float", CSS_PROP_FLOAT}, +#line 132 "cssproperties.gperf" + {"border-left", CSS_PROP_BORDER_LEFT}, +#line 128 "cssproperties.gperf" + {"border-style", CSS_PROP_BORDER_STYLE}, +#line 172 "cssproperties.gperf" + {"lighting-color", CSS_PROP_LIGHTING_COLOR}, +#line 36 "cssproperties.gperf" + {"border-left-color", CSS_PROP_BORDER_LEFT_COLOR}, +#line 95 "cssproperties.gperf" + {"padding-right", CSS_PROP_PADDING_RIGHT}, +#line 160 "cssproperties.gperf" + {"fill", CSS_PROP_FILL}, +#line 37 "cssproperties.gperf" + {"border-top-style", CSS_PROP_BORDER_TOP_STYLE}, +#line 86 "cssproperties.gperf" + {"opacity", CSS_PROP_OPACITY}, +#line 135 "cssproperties.gperf" + {"font", CSS_PROP_FONT}, +#line 179 "cssproperties.gperf" + {"shape-rendering", CSS_PROP_SHAPE_RENDERING}, +#line 163 "cssproperties.gperf" + {"filter", CSS_PROP_FILTER}, +#line 55 "cssproperties.gperf" + {"display", CSS_PROP_DISPLAY}, +#line 156 "cssproperties.gperf" + {"color-profile", CSS_PROP_COLOR_PROFILE}, +#line 56 "cssproperties.gperf" + {"empty-cells", CSS_PROP_EMPTY_CELLS}, +#line 141 "cssproperties.gperf" + {"scrollbar-face-color", CSS_PROP_SCROLLBAR_FACE_COLOR}, +#line 71 "cssproperties.gperf" + {"margin-right", CSS_PROP_MARGIN_RIGHT}, #line 190 "cssproperties.gperf" - {"stroke", CSS_PROP_STROKE}, -#line 151 "cssproperties.gperf" - {"scrollbar-highlight-color", CSS_PROP_SCROLLBAR_HIGHLIGHT_COLOR}, + {"text-anchor", CSS_PROP_TEXT_ANCHOR}, +#line 181 "cssproperties.gperf" + {"stop-opacity", CSS_PROP_STOP_OPACITY}, +#line 136 "cssproperties.gperf" + {"list-style", CSS_PROP_LIST_STYLE}, +#line 39 "cssproperties.gperf" + {"border-bottom-style", CSS_PROP_BORDER_BOTTOM_STYLE}, +#line 97 "cssproperties.gperf" + {"padding-left", CSS_PROP_PADDING_LEFT}, +#line 59 "cssproperties.gperf" + {"font-size", CSS_PROP_FONT_SIZE}, +#line 147 "cssproperties.gperf" + {"scrollbar-arrow-color", CSS_PROP_SCROLLBAR_ARROW_COLOR}, +#line 19 "cssproperties.gperf" + {"background-position-x", CSS_PROP_BACKGROUND_POSITION_X}, +#line 73 "cssproperties.gperf" + {"margin-left", CSS_PROP_MARGIN_LEFT}, +#line 100 "cssproperties.gperf" + {"page-break-before", CSS_PROP_PAGE_BREAK_BEFORE}, +#line 99 "cssproperties.gperf" + {"page-break-after", CSS_PROP_PAGE_BREAK_AFTER}, +#line 123 "cssproperties.gperf" + {"word-spacing", CSS_PROP_WORD_SPACING}, +#line 67 "cssproperties.gperf" + {"list-style-image", CSS_PROP_LIST_STYLE_IMAGE}, +#line 107 "cssproperties.gperf" + {"table-layout", CSS_PROP_TABLE_LAYOUT}, +#line 188 "cssproperties.gperf" + {"stroke-opacity", CSS_PROP_STROKE_OPACITY}, +#line 24 "cssproperties.gperf" + {"border-top-right-radius", CSS_PROP_BORDER_TOP_RIGHT_RADIUS}, +#line 162 "cssproperties.gperf" + {"fill-rule", CSS_PROP_FILL_RULE}, +#line 98 "cssproperties.gperf" + {"-khtml-padding-start", CSS_PROP__KHTML_PADDING_START}, +#line 192 "cssproperties.gperf" + {"writing-mode", CSS_PROP_WRITING_MODE}, +#line 74 "cssproperties.gperf" + {"-khtml-margin-start", CSS_PROP__KHTML_MARGIN_START}, +#line 68 "cssproperties.gperf" + {"list-style-position", CSS_PROP_LIST_STYLE_POSITION}, +#line 25 "cssproperties.gperf" + {"border-bottom-right-radius", CSS_PROP_BORDER_BOTTOM_RIGHT_RADIUS}, #line 61 "cssproperties.gperf" - {"cursor", CSS_PROP_CURSOR}, + {"font-variant", CSS_PROP_FONT_VARIANT}, +#line 118 "cssproperties.gperf" + {"visibility", CSS_PROP_VISIBILITY}, #line 89 "cssproperties.gperf" - {"max-height", CSS_PROP_MAX_HEIGHT}, -#line 154 "cssproperties.gperf" - {"scrollbar-track-color", CSS_PROP_SCROLLBAR_TRACK_COLOR}, -#line 178 "cssproperties.gperf" - {"image-rendering", CSS_PROP_IMAGE_RENDERING}, -#line 111 "cssproperties.gperf" - {"quotes", CSS_PROP_QUOTES}, -#line 161 "cssproperties.gperf" - {"clip-rule", CSS_PROP_CLIP_RULE}, + {"outline-style", CSS_PROP_OUTLINE_STYLE}, +#line 113 "cssproperties.gperf" + {"text-transform", CSS_PROP_TEXT_TRANSFORM}, +#line 27 "cssproperties.gperf" + {"border-top-left-radius", CSS_PROP_BORDER_TOP_LEFT_RADIUS}, +#line 75 "cssproperties.gperf" + {"-khtml-marquee", CSS_PROP__KHTML_MARQUEE}, +#line 63 "cssproperties.gperf" + {"height", CSS_PROP_HEIGHT}, +#line 155 "cssproperties.gperf" + {"color-interpolation-filters", CSS_PROP_COLOR_INTERPOLATION_FILTERS}, #line 79 "cssproperties.gperf" - {"margin-right", CSS_PROP_MARGIN_RIGHT}, -#line 179 "cssproperties.gperf" - {"kerning", CSS_PROP_KERNING}, -#line 36 "cssproperties.gperf" - {"border-radius", CSS_PROP_BORDER_RADIUS}, -#line 193 "cssproperties.gperf" - {"stroke-linecap", CSS_PROP_STROKE_LINECAP}, -#line 91 "cssproperties.gperf" - {"min-height", CSS_PROP_MIN_HEIGHT}, -#line 146 "cssproperties.gperf" - {"outline", CSS_PROP_OUTLINE}, -#line 60 "cssproperties.gperf" - {"counter-reset", CSS_PROP_COUNTER_RESET}, -#line 181 "cssproperties.gperf" - {"marker", CSS_PROP_MARKER}, -#line 95 "cssproperties.gperf" - {"outline-color", CSS_PROP_OUTLINE_COLOR}, -#line 80 "cssproperties.gperf" - {"margin-bottom", CSS_PROP_MARGIN_BOTTOM}, -#line 185 "cssproperties.gperf" - {"mask", CSS_PROP_MASK}, + {"-khtml-marquee-speed", CSS_PROP__KHTML_MARQUEE_SPEED}, #line 166 "cssproperties.gperf" - {"dominant-baseline", CSS_PROP_DOMINANT_BASELINE}, -#line 158 "cssproperties.gperf" - {"alignment-baseline", CSS_PROP_ALIGNMENT_BASELINE}, -#line 109 "cssproperties.gperf" - {"page-break-inside", CSS_PROP_PAGE_BREAK_INSIDE}, -#line 124 "cssproperties.gperf" - {"unicode-range", CSS_PROP_UNICODE_RANGE}, -#line 182 "cssproperties.gperf" - {"marker-end", CSS_PROP_MARKER_END}, -#line 194 "cssproperties.gperf" - {"stroke-linejoin", CSS_PROP_STROKE_LINEJOIN}, -#line 184 "cssproperties.gperf" - {"marker-start", CSS_PROP_MARKER_START}, -#line 123 "cssproperties.gperf" - {"unicode-bidi", CSS_PROP_UNICODE_BIDI}, -#line 72 "cssproperties.gperf" - {"left", CSS_PROP_LEFT}, -#line 172 "cssproperties.gperf" - {"flood-color", CSS_PROP_FLOOD_COLOR}, -#line 65 "cssproperties.gperf" - {"float", CSS_PROP_FLOAT}, -#line 140 "cssproperties.gperf" - {"border-left", CSS_PROP_BORDER_LEFT}, -#line 136 "cssproperties.gperf" - {"border-style", CSS_PROP_BORDER_STYLE}, -#line 44 "cssproperties.gperf" - {"border-left-color", CSS_PROP_BORDER_LEFT_COLOR}, -#line 168 "cssproperties.gperf" - {"fill", CSS_PROP_FILL}, -#line 45 "cssproperties.gperf" - {"border-top-style", CSS_PROP_BORDER_TOP_STYLE}, -#line 94 "cssproperties.gperf" - {"opacity", CSS_PROP_OPACITY}, + {"font-size-adjust", CSS_PROP_FONT_SIZE_ADJUST}, +#line 26 "cssproperties.gperf" + {"border-bottom-left-radius", CSS_PROP_BORDER_BOTTOM_LEFT_RADIUS}, #line 32 "cssproperties.gperf" - {"border-top-right-radius", CSS_PROP_BORDER_TOP_RIGHT_RADIUS}, -#line 143 "cssproperties.gperf" - {"font", CSS_PROP_FONT}, -#line 171 "cssproperties.gperf" - {"filter", CSS_PROP_FILTER}, -#line 63 "cssproperties.gperf" - {"display", CSS_PROP_DISPLAY}, -#line 164 "cssproperties.gperf" - {"color-profile", CSS_PROP_COLOR_PROFILE}, -#line 149 "cssproperties.gperf" - {"scrollbar-face-color", CSS_PROP_SCROLLBAR_FACE_COLOR}, -#line 189 "cssproperties.gperf" - {"stop-opacity", CSS_PROP_STOP_OPACITY}, -#line 144 "cssproperties.gperf" - {"list-style", CSS_PROP_LIST_STYLE}, -#line 105 "cssproperties.gperf" - {"padding-left", CSS_PROP_PADDING_LEFT}, -#line 183 "cssproperties.gperf" - {"marker-mid", CSS_PROP_MARKER_MID}, -#line 133 "cssproperties.gperf" - {"background", CSS_PROP_BACKGROUND}, -#line 46 "cssproperties.gperf" - {"border-right-style", CSS_PROP_BORDER_RIGHT_STYLE}, -#line 14 "cssproperties.gperf" - {"background-color", CSS_PROP_BACKGROUND_COLOR}, -#line 106 "cssproperties.gperf" - {"-khtml-padding-start", CSS_PROP__KHTML_PADDING_START}, -#line 175 "cssproperties.gperf" - {"font-stretch", CSS_PROP_FONT_STRETCH}, -#line 64 "cssproperties.gperf" - {"empty-cells", CSS_PROP_EMPTY_CELLS}, -#line 16 "cssproperties.gperf" - {"background-repeat", CSS_PROP_BACKGROUND_REPEAT}, -#line 67 "cssproperties.gperf" - {"font-size", CSS_PROP_FONT_SIZE}, -#line 59 "cssproperties.gperf" - {"counter-increment", CSS_PROP_COUNTER_INCREMENT}, -#line 29 "cssproperties.gperf" - {"background-clip", CSS_PROP_BACKGROUND_CLIP}, + {"-khtml-border-vertical-spacing", CSS_PROP__KHTML_BORDER_VERTICAL_SPACING}, +#line 17 "cssproperties.gperf" + {"background-attachment", CSS_PROP_BACKGROUND_ATTACHMENT}, +#line 66 "cssproperties.gperf" + {"line-height", CSS_PROP_LINE_HEIGHT}, +#line 83 "cssproperties.gperf" + {"min-height", CSS_PROP_MIN_HEIGHT}, +#line 76 "cssproperties.gperf" + {"-khtml-marquee-direction", CSS_PROP__KHTML_MARQUEE_DIRECTION}, +#line 38 "cssproperties.gperf" + {"border-right-style", CSS_PROP_BORDER_RIGHT_STYLE}, +#line 78 "cssproperties.gperf" + {"-khtml-marquee-repetition", CSS_PROP__KHTML_MARQUEE_REPETITION}, +#line 121 "cssproperties.gperf" + {"width", CSS_PROP_WIDTH}, #line 167 "cssproperties.gperf" - {"enable-background", CSS_PROP_ENABLE_BACKGROUND}, -#line 47 "cssproperties.gperf" - {"border-bottom-style", CSS_PROP_BORDER_BOTTOM_STYLE}, -#line 33 "cssproperties.gperf" - {"border-bottom-right-radius", CSS_PROP_BORDER_BOTTOM_RIGHT_RADIUS}, -#line 69 "cssproperties.gperf" - {"font-variant", CSS_PROP_FONT_VARIANT}, -#line 126 "cssproperties.gperf" - {"visibility", CSS_PROP_VISIBILITY}, -#line 159 "cssproperties.gperf" - {"baseline-shift", CSS_PROP_BASELINE_SHIFT}, -#line 31 "cssproperties.gperf" - {"background-size", CSS_PROP_BACKGROUND_SIZE}, + {"font-stretch", CSS_PROP_FONT_STRETCH}, #line 81 "cssproperties.gperf" - {"margin-left", CSS_PROP_MARGIN_LEFT}, -#line 195 "cssproperties.gperf" - {"stroke-miterlimit", CSS_PROP_STROKE_MITERLIMIT}, -#line 76 "cssproperties.gperf" - {"list-style-position", CSS_PROP_LIST_STYLE_POSITION}, + {"max-height", CSS_PROP_MAX_HEIGHT}, +#line 133 "cssproperties.gperf" + {"border-width", CSS_PROP_BORDER_WIDTH}, +#line 77 "cssproperties.gperf" + {"-khtml-marquee-increment", CSS_PROP__KHTML_MARQUEE_INCREMENT}, +#line 20 "cssproperties.gperf" + {"background-position-y", CSS_PROP_BACKGROUND_POSITION_Y}, +#line 41 "cssproperties.gperf" + {"border-top-width", CSS_PROP_BORDER_TOP_WIDTH}, +#line 149 "cssproperties.gperf" + {"-khtml-user-input", CSS_PROP__KHTML_USER_INPUT}, +#line 119 "cssproperties.gperf" + {"white-space", CSS_PROP_WHITE_SPACE}, +#line 142 "cssproperties.gperf" + {"scrollbar-shadow-color", CSS_PROP_SCROLLBAR_SHADOW_COLOR}, #line 40 "cssproperties.gperf" - {"-khtml-border-vertical-spacing", CSS_PROP__KHTML_BORDER_VERTICAL_SPACING}, -#line 30 "cssproperties.gperf" - {"background-origin", CSS_PROP_BACKGROUND_ORIGIN}, -#line 121 "cssproperties.gperf" - {"text-transform", CSS_PROP_TEXT_TRANSFORM}, -#line 108 "cssproperties.gperf" - {"page-break-before", CSS_PROP_PAGE_BREAK_BEFORE}, + {"border-left-style", CSS_PROP_BORDER_LEFT_STYLE}, +#line 165 "cssproperties.gperf" + {"flood-opacity", CSS_PROP_FLOOD_OPACITY}, +#line 43 "cssproperties.gperf" + {"border-bottom-width", CSS_PROP_BORDER_BOTTOM_WIDTH}, +#line 60 "cssproperties.gperf" + {"font-style", CSS_PROP_FONT_STYLE}, +#line 183 "cssproperties.gperf" + {"stroke-dasharray", CSS_PROP_STROKE_DASHARRAY}, +#line 151 "cssproperties.gperf" + {"baseline-shift", CSS_PROP_BASELINE_SHIFT}, +#line 69 "cssproperties.gperf" + {"list-style-type", CSS_PROP_LIST_STYLE_TYPE}, +#line 161 "cssproperties.gperf" + {"fill-opacity", CSS_PROP_FILL_OPACITY}, +#line 84 "cssproperties.gperf" + {"min-width", CSS_PROP_MIN_WIDTH}, +#line 112 "cssproperties.gperf" + {"text-shadow", CSS_PROP_TEXT_SHADOW}, +#line 122 "cssproperties.gperf" + {"word-wrap", CSS_PROP_WORD_WRAP}, +#line 189 "cssproperties.gperf" + {"stroke-width", CSS_PROP_STROKE_WIDTH}, +#line 91 "cssproperties.gperf" + {"overflow", CSS_PROP_OVERFLOW}, +#line 145 "cssproperties.gperf" + {"scrollbar-darkshadow-color", CSS_PROP_SCROLLBAR_DARKSHADOW_COLOR}, #line 82 "cssproperties.gperf" - {"-khtml-margin-start", CSS_PROP__KHTML_MARGIN_START}, -#line 75 "cssproperties.gperf" - {"list-style-image", CSS_PROP_LIST_STYLE_IMAGE}, -#line 18 "cssproperties.gperf" - {"background-position", CSS_PROP_BACKGROUND_POSITION}, -#line 107 "cssproperties.gperf" - {"page-break-after", CSS_PROP_PAGE_BREAK_AFTER}, -#line 163 "cssproperties.gperf" - {"color-interpolation-filters", CSS_PROP_COLOR_INTERPOLATION_FILTERS}, -#line 19 "cssproperties.gperf" - {"background-position-x", CSS_PROP_BACKGROUND_POSITION_X}, -#line 115 "cssproperties.gperf" - {"table-layout", CSS_PROP_TABLE_LAYOUT}, -#line 196 "cssproperties.gperf" - {"stroke-opacity", CSS_PROP_STROKE_OPACITY}, -#line 15 "cssproperties.gperf" - {"background-image", CSS_PROP_BACKGROUND_IMAGE}, -#line 170 "cssproperties.gperf" - {"fill-rule", CSS_PROP_FILL_RULE}, -#line 39 "cssproperties.gperf" - {"-khtml-border-horizontal-spacing", CSS_PROP__KHTML_BORDER_HORIZONTAL_SPACING}, -#line 155 "cssproperties.gperf" - {"scrollbar-arrow-color", CSS_PROP_SCROLLBAR_ARROW_COLOR}, -#line 28 "cssproperties.gperf" - {"-khtml-border-radius", CSS_PROP__KHTML_BORDER_RADIUS}, -#line 191 "cssproperties.gperf" - {"stroke-dasharray", CSS_PROP_STROKE_DASHARRAY}, -#line 129 "cssproperties.gperf" - {"width", CSS_PROP_WIDTH}, -#line 177 "cssproperties.gperf" - {"glyph-orientation-vertical", CSS_PROP_GLYPH_ORIENTATION_VERTICAL}, -#line 141 "cssproperties.gperf" - {"border-width", CSS_PROP_BORDER_WIDTH}, + {"max-width", CSS_PROP_MAX_WIDTH}, #line 120 "cssproperties.gperf" - {"text-shadow", CSS_PROP_TEXT_SHADOW}, -#line 131 "cssproperties.gperf" - {"word-spacing", CSS_PROP_WORD_SPACING}, -#line 97 "cssproperties.gperf" - {"outline-style", CSS_PROP_OUTLINE_STYLE}, -#line 49 "cssproperties.gperf" - {"border-top-width", CSS_PROP_BORDER_TOP_WIDTH}, -#line 35 "cssproperties.gperf" - {"border-top-left-radius", CSS_PROP_BORDER_TOP_LEFT_RADIUS}, -#line 127 "cssproperties.gperf" - {"white-space", CSS_PROP_WHITE_SPACE}, -#line 150 "cssproperties.gperf" - {"scrollbar-shadow-color", CSS_PROP_SCROLLBAR_SHADOW_COLOR}, -#line 17 "cssproperties.gperf" - {"background-attachment", CSS_PROP_BACKGROUND_ATTACHMENT}, -#line 83 "cssproperties.gperf" - {"-khtml-marquee", CSS_PROP__KHTML_MARQUEE}, -#line 176 "cssproperties.gperf" - {"glyph-orientation-horizontal", CSS_PROP_GLYPH_ORIENTATION_HORIZONTAL}, -#line 87 "cssproperties.gperf" - {"-khtml-marquee-speed", CSS_PROP__KHTML_MARQUEE_SPEED}, -#line 24 "cssproperties.gperf" - {"-khtml-border-top-right-radius", CSS_PROP__KHTML_BORDER_TOP_RIGHT_RADIUS}, -#line 48 "cssproperties.gperf" - {"border-left-style", CSS_PROP_BORDER_LEFT_STYLE}, -#line 50 "cssproperties.gperf" - {"border-right-width", CSS_PROP_BORDER_RIGHT_WIDTH}, -#line 174 "cssproperties.gperf" - {"font-size-adjust", CSS_PROP_FONT_SIZE_ADJUST}, -#line 173 "cssproperties.gperf" - {"flood-opacity", CSS_PROP_FLOOD_OPACITY}, -#line 68 "cssproperties.gperf" - {"font-style", CSS_PROP_FONT_STYLE}, -#line 90 "cssproperties.gperf" - {"max-width", CSS_PROP_MAX_WIDTH}, -#line 77 "cssproperties.gperf" - {"list-style-type", CSS_PROP_LIST_STYLE_TYPE}, + {"widows", CSS_PROP_WIDOWS}, +#line 31 "cssproperties.gperf" + {"-khtml-border-horizontal-spacing", CSS_PROP__KHTML_BORDER_HORIZONTAL_SPACING}, #line 169 "cssproperties.gperf" - {"fill-opacity", CSS_PROP_FILL_OPACITY}, -#line 200 "cssproperties.gperf" - {"writing-mode", CSS_PROP_WRITING_MODE}, -#line 51 "cssproperties.gperf" - {"border-bottom-width", CSS_PROP_BORDER_BOTTOM_WIDTH}, -#line 34 "cssproperties.gperf" - {"border-bottom-left-radius", CSS_PROP_BORDER_BOTTOM_LEFT_RADIUS}, -#line 84 "cssproperties.gperf" - {"-khtml-marquee-direction", CSS_PROP__KHTML_MARQUEE_DIRECTION}, + {"glyph-orientation-vertical", CSS_PROP_GLYPH_ORIENTATION_VERTICAL}, +#line 90 "cssproperties.gperf" + {"outline-width", CSS_PROP_OUTLINE_WIDTH}, #line 92 "cssproperties.gperf" - {"min-width", CSS_PROP_MIN_WIDTH}, -#line 86 "cssproperties.gperf" - {"-khtml-marquee-repetition", CSS_PROP__KHTML_MARQUEE_REPETITION}, -#line 21 "cssproperties.gperf" - {"-khtml-background-clip", CSS_PROP__KHTML_BACKGROUND_CLIP}, -#line 25 "cssproperties.gperf" - {"-khtml-border-bottom-right-radius", CSS_PROP__KHTML_BORDER_BOTTOM_RIGHT_RADIUS}, -#line 197 "cssproperties.gperf" - {"stroke-width", CSS_PROP_STROKE_WIDTH}, -#line 153 "cssproperties.gperf" - {"scrollbar-darkshadow-color", CSS_PROP_SCROLLBAR_DARKSHADOW_COLOR}, -#line 157 "cssproperties.gperf" - {"-khtml-user-input", CSS_PROP__KHTML_USER_INPUT}, -#line 23 "cssproperties.gperf" - {"-khtml-background-size", CSS_PROP__KHTML_BACKGROUND_SIZE}, -#line 22 "cssproperties.gperf" - {"-khtml-background-origin", CSS_PROP__KHTML_BACKGROUND_ORIGIN}, -#line 85 "cssproperties.gperf" - {"-khtml-marquee-increment", CSS_PROP__KHTML_MARQUEE_INCREMENT}, -#line 20 "cssproperties.gperf" - {"background-position-y", CSS_PROP_BACKGROUND_POSITION_Y}, -#line 98 "cssproperties.gperf" - {"outline-width", CSS_PROP_OUTLINE_WIDTH}, -#line 99 "cssproperties.gperf" - {"overflow", CSS_PROP_OVERFLOW}, -#line 100 "cssproperties.gperf" - {"overflow-x", CSS_PROP_OVERFLOW_X}, -#line 119 "cssproperties.gperf" - {"text-overflow", CSS_PROP_TEXT_OVERFLOW}, -#line 192 "cssproperties.gperf" - {"stroke-dashoffset", CSS_PROP_STROKE_DASHOFFSET}, -#line 27 "cssproperties.gperf" - {"-khtml-border-top-left-radius", CSS_PROP__KHTML_BORDER_TOP_LEFT_RADIUS}, -#line 52 "cssproperties.gperf" - {"border-left-width", CSS_PROP_BORDER_LEFT_WIDTH}, -#line 96 "cssproperties.gperf" - {"outline-offset", CSS_PROP_OUTLINE_OFFSET}, -#line 70 "cssproperties.gperf" - {"font-weight", CSS_PROP_FONT_WEIGHT}, + {"overflow-x", CSS_PROP_OVERFLOW_X}, +#line 143 "cssproperties.gperf" + {"scrollbar-highlight-color", CSS_PROP_SCROLLBAR_HIGHLIGHT_COLOR}, +#line 111 "cssproperties.gperf" + {"text-overflow", CSS_PROP_TEXT_OVERFLOW}, #line 88 "cssproperties.gperf" - {"-khtml-marquee-style", CSS_PROP__KHTML_MARQUEE_STYLE}, -#line 26 "cssproperties.gperf" - {"-khtml-border-bottom-left-radius", CSS_PROP__KHTML_BORDER_BOTTOM_LEFT_RADIUS}, -#line 130 "cssproperties.gperf" - {"word-wrap", CSS_PROP_WORD_WRAP}, -#line 128 "cssproperties.gperf" - {"widows", CSS_PROP_WIDOWS}, -#line 66 "cssproperties.gperf" - {"font-family", CSS_PROP_FONT_FAMILY}, -#line 101 "cssproperties.gperf" - {"overflow-y", CSS_PROP_OVERFLOW_Y}, -#line 156 "cssproperties.gperf" - {"-khtml-flow-mode", CSS_PROP__KHTML_FLOW_MODE} + {"outline-offset", CSS_PROP_OUTLINE_OFFSET}, +#line 80 "cssproperties.gperf" + {"-khtml-marquee-style", CSS_PROP__KHTML_MARQUEE_STYLE}, +#line 42 "cssproperties.gperf" + {"border-right-width", CSS_PROP_BORDER_RIGHT_WIDTH}, +#line 44 "cssproperties.gperf" + {"border-left-width", CSS_PROP_BORDER_LEFT_WIDTH}, +#line 62 "cssproperties.gperf" + {"font-weight", CSS_PROP_FONT_WEIGHT}, +#line 168 "cssproperties.gperf" + {"glyph-orientation-horizontal", CSS_PROP_GLYPH_ORIENTATION_HORIZONTAL}, +#line 184 "cssproperties.gperf" + {"stroke-dashoffset", CSS_PROP_STROKE_DASHOFFSET}, +#line 93 "cssproperties.gperf" + {"overflow-y", CSS_PROP_OVERFLOW_Y}, +#line 58 "cssproperties.gperf" + {"font-family", CSS_PROP_FONT_FAMILY}, +#line 148 "cssproperties.gperf" + {"-khtml-flow-mode", CSS_PROP__KHTML_FLOW_MODE} }; - static const short lookup[] = { - -1, -1, -1, -1, -1, 0, 1, -1, 2, -1, + static const short lookup[] = + { + -1, -1, -1, -1, -1, 0, 1, -1, 2, -1, 3, -1, 4, 5, -1, 6, -1, -1, -1, -1, - -1, 7, -1, -1, 8, 9, -1, -1, -1, -1, - 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 11, -1, 12, -1, -1, 13, -1, 14, -1, 15, - -1, 16, 17, -1, 18, -1, -1, 19, 20, 21, - 22, -1, -1, -1, 23, 24, 25, 26, -1, 27, - 28, 29, -1, 30, -1, -1, 31, -1, 32, 33, - -1, 34, 35, 36, -1, -1, -1, -1, -1, 37, - -1, -1, -1, -1, 38, -1, -1, -1, 39, -1, - 40, -1, -1, -1, 41, 42, -1, -1, -1, 43, - -1, 44, -1, -1, 45, -1, 46, -1, -1, -1, - 47, -1, -1, -1, -1, -1, -1, -1, -1, 48, - -1, 49, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 50, 51, -1, -1, -1, 52, 53, -1, -1, -1, - 54, 55, -1, -1, 56, -1, -1, 57, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 58, -1, -1, - -1, -1, -1, 59, 60, 61, -1, 62, 63, -1, - -1, 64, -1, 65, -1, -1, -1, -1, 66, 67, - -1, -1, 68, 69, -1, -1, -1, 70, -1, -1, - -1, -1, -1, 71, -1, 72, -1, -1, -1, -1, - 73, -1, 74, -1, -1, -1, -1, 75, -1, 76, - -1, 77, -1, -1, -1, 78, 79, 80, -1, -1, - -1, -1, 81, -1, 82, -1, 83, 84, 85, 86, - -1, 87, 88, 89, -1, -1, -1, -1, -1, -1, - 90, -1, -1, -1, -1, -1, -1, 91, -1, -1, - 92, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 93, -1, -1, 94, -1, -1, -1, -1, - 95, -1, -1, 96, -1, -1, 97, -1, -1, -1, - 98, -1, 99, -1, -1, -1, 100, 101, -1, 102, - -1, -1, 103, -1, -1, 104, -1, -1, -1, -1, - -1, -1, 105, -1, 106, -1, 107, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 108, -1, -1, 109, -1, -1, -1, 110, - 111, 112, 113, -1, 114, 115, -1, 116, -1, 117, - -1, -1, -1, -1, -1, -1, -1, 118, -1, 119, - -1, 120, -1, -1, 121, -1, 122, 123, -1, -1, - -1, 124, -1, -1, -1, -1, -1, 125, -1, 126, - -1, 127, -1, -1, 128, -1, -1, 129, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, -1, -1, - 131, 132, -1, -1, -1, 133, 134, -1, -1, -1, - -1, -1, 135, -1, -1, -1, 136, 137, 138, -1, - -1, 139, 140, -1, -1, -1, 141, 142, -1, -1, - -1, 143, -1, -1, -1, -1, -1, -1, -1, 144, - -1, -1, -1, -1, -1, -1, -1, -1, 145, -1, - -1, -1, -1, -1, -1, 146, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 147, -1, 148, 149, -1, - -1, 150, -1, 151, -1, -1, -1, -1, -1, -1, - 152, -1, -1, -1, -1, -1, -1, -1, -1, 153, - 154, -1, 155, -1, -1, -1, -1, 156, -1, 157, - 158, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 159, -1, -1, -1, -1, 160, - 161, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 162, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 163, -1, -1, -1, 164, -1, -1, - -1, -1, -1, -1, -1, -1, 165, -1, -1, -1, - -1, -1, 166, -1, -1, -1, -1, 167, -1, -1, - -1, -1, -1, -1, 168, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 169, -1, 170, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 171, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 172, -1, - -1, -1, -1, -1, -1, 173, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 174, -1, - -1, -1, -1, -1, -1, -1, -1, 175, -1, 176, - -1, -1, 177, -1, -1, -1, -1, -1, -1, 178, - -1, -1, -1, -1, -1, -1, 179, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 180, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 181, -1, -1, - -1, -1, -1, -1, 182, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 183, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 184, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 185, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 186 + -1, 7, -1, -1, 8, 9, -1, -1, -1, -1, + 10, -1, -1, -1, 11, -1, 12, -1, -1, -1, + -1, -1, -1, 13, -1, -1, -1, -1, -1, 14, + 15, -1, 16, -1, -1, -1, -1, 17, -1, -1, + -1, 18, -1, -1, -1, -1, -1, -1, -1, 19, + -1, 20, -1, -1, 21, 22, 23, -1, -1, 24, + 25, -1, -1, 26, -1, -1, 27, -1, -1, 28, + -1, -1, 29, -1, 30, -1, 31, -1, -1, -1, + -1, 32, -1, -1, -1, -1, -1, 33, 34, 35, + 36, 37, -1, -1, 38, -1, -1, 39, -1, -1, + 40, -1, 41, -1, -1, 42, -1, -1, 43, 44, + 45, -1, 46, 47, 48, 49, -1, -1, 50, 51, + 52, -1, -1, -1, 53, -1, 54, -1, -1, -1, + -1, -1, 55, -1, -1, -1, -1, -1, 56, -1, + -1, -1, 57, 58, -1, 59, -1, -1, -1, -1, + 60, -1, 61, -1, -1, -1, 62, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 63, -1, -1, + -1, -1, -1, -1, -1, 64, -1, 65, -1, -1, + -1, -1, 66, -1, -1, 67, -1, 68, -1, -1, + 69, -1, -1, -1, -1, -1, -1, 70, -1, 71, + -1, 72, 73, 74, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 75, -1, -1, + -1, -1, -1, 76, -1, -1, -1, -1, -1, 77, + -1, 78, -1, -1, 79, 80, 81, 82, -1, 83, + -1, -1, 84, 85, 86, -1, 87, 88, -1, 89, + 90, 91, 92, 93, -1, -1, 94, -1, -1, -1, + 95, -1, 96, -1, -1, -1, 97, 98, -1, -1, + 99, -1, -1, -1, 100, -1, -1, -1, -1, -1, + -1, -1, 101, -1, 102, -1, 103, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 104, -1, -1, -1, + -1, 105, 106, -1, -1, -1, -1, -1, -1, -1, + -1, 107, 108, -1, -1, -1, -1, -1, -1, -1, + -1, 109, 110, -1, 111, -1, -1, -1, 112, 113, + 114, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 115, -1, -1, -1, -1, -1, -1, 116, + -1, -1, -1, -1, 117, -1, 118, 119, -1, -1, + 120, -1, -1, 121, 122, -1, -1, 123, -1, 124, + -1, 125, -1, -1, -1, -1, -1, 126, -1, -1, + -1, -1, -1, -1, -1, 127, -1, -1, -1, -1, + -1, 128, -1, -1, -1, 129, -1, -1, -1, -1, + 130, -1, -1, -1, -1, -1, 131, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 132, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 133, -1, -1, -1, -1, + -1, -1, -1, -1, 134, -1, -1, -1, 135, -1, + 136, -1, -1, -1, -1, 137, -1, 138, -1, -1, + 139, -1, 140, -1, 141, -1, 142, -1, -1, -1, + -1, 143, 144, -1, -1, -1, 145, 146, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 147, -1, -1, + -1, -1, -1, 148, -1, -1, -1, -1, -1, 149, + 150, 151, -1, -1, 152, -1, -1, -1, -1, -1, + 153, -1, 154, -1, -1, -1, -1, -1, -1, 155, + -1, 156, -1, -1, 157, -1, -1, -1, -1, -1, + -1, -1, 158, -1, -1, -1, -1, -1, 159, -1, + -1, 160, -1, -1, 161, -1, 162, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 163, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 164, -1, 165, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 166, -1, -1, -1, -1, 167, -1, -1, -1, -1, + -1, -1, -1, 168, 169, -1, -1, -1, -1, -1, + 170, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 171, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 172, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 173, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 174, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 175, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 176, 177, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 178 }; - if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH) { - register int key = hash_prop(str, len); + if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH) + { + register int key = hash_prop (str, len); + + if (key <= MAX_HASH_VALUE && key >= 0) + { + register int index = lookup[key]; + + if (index >= 0) + { + register const char *s = wordlist_prop[index].name; - if (key <= MAX_HASH_VALUE && key >= 0) { - register int index = lookup[key]; - - if (index >= 0) { - register const char *s = wordlist_prop[index].name; - - if (*str == *s && !strncmp(str + 1, s + 1, len - 1) && s[len] == '\0') { - return &wordlist_prop[index]; - } + if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0') + return &wordlist_prop[index]; } } } - return 0; + return 0; } -#line 201 "cssproperties.gperf" +#line 193 "cssproperties.gperf" -static const char *const propertyList[] = { - "", - "background-color", - "background-image", - "background-repeat", - "background-attachment", - "background-position", - "background-position-x", - "background-position-y", - "-khtml-background-clip", - "-khtml-background-origin", - "-khtml-background-size", - "-khtml-border-top-right-radius", - "-khtml-border-bottom-right-radius", - "-khtml-border-bottom-left-radius", - "-khtml-border-top-left-radius", - "-khtml-border-radius", - "background-clip", - "background-origin", - "background-size", - "border-top-right-radius", - "border-bottom-right-radius", - "border-bottom-left-radius", - "border-top-left-radius", - "border-radius", - "border-collapse", - "border-spacing", - "-khtml-border-horizontal-spacing", - "-khtml-border-vertical-spacing", - "border-top-color", - "border-right-color", - "border-bottom-color", - "border-left-color", - "border-top-style", - "border-right-style", - "border-bottom-style", - "border-left-style", - "border-top-width", - "border-right-width", - "border-bottom-width", - "border-left-width", - "bottom", - "caption-side", - "clear", - "clip", - "color", - "content", - "counter-increment", - "counter-reset", - "cursor", - "direction", - "display", - "empty-cells", - "float", - "font-family", - "font-size", - "font-style", - "font-variant", - "font-weight", - "height", - "left", - "letter-spacing", - "line-height", - "list-style-image", - "list-style-position", - "list-style-type", - "margin-top", - "margin-right", - "margin-bottom", - "margin-left", - "-khtml-margin-start", - "-khtml-marquee", - "-khtml-marquee-direction", - "-khtml-marquee-increment", - "-khtml-marquee-repetition", - "-khtml-marquee-speed", - "-khtml-marquee-style", - "max-height", - "max-width", - "min-height", - "min-width", - "orphans", - "opacity", - "outline-color", - "outline-offset", - "outline-style", - "outline-width", - "overflow", - "overflow-x", - "overflow-y", - "padding-top", - "padding-right", - "padding-bottom", - "padding-left", - "-khtml-padding-start", - "page-break-after", - "page-break-before", - "page-break-inside", - "position", - "quotes", - "right", - "size", - "src", - "table-layout", - "text-align", - "text-decoration", - "text-indent", - "text-overflow", - "text-shadow", - "text-transform", - "top", - "unicode-bidi", - "unicode-range", - "vertical-align", - "visibility", - "white-space", - "widows", - "width", - "word-wrap", - "word-spacing", - "z-index", - "background", - "border", - "border-color", - "border-style", - "border-top", - "border-right", - "border-bottom", - "border-left", - "border-width", - "box-sizing", - "font", - "list-style", - "margin", - "outline", - "padding", - "scrollbar-base-color", - "scrollbar-face-color", - "scrollbar-shadow-color", - "scrollbar-highlight-color", - "scrollbar-3dlight-color", - "scrollbar-darkshadow-color", - "scrollbar-track-color", - "scrollbar-arrow-color", - "-khtml-flow-mode", - "-khtml-user-input", - "alignment-baseline", - "baseline-shift", - "clip-path", - "clip-rule", - "color-interpolation", - "color-interpolation-filters", - "color-profile", - "color-rendering", - "dominant-baseline", - "enable-background", - "fill", - "fill-opacity", - "fill-rule", - "filter", - "flood-color", - "flood-opacity", - "font-size-adjust", - "font-stretch", - "glyph-orientation-horizontal", - "glyph-orientation-vertical", - "image-rendering", - "kerning", - "lighting-color", - "marker", - "marker-end", - "marker-mid", - "marker-start", - "mask", - "pointer-events", - "shape-rendering", - "stop-color", - "stop-opacity", - "stroke", - "stroke-dasharray", - "stroke-dashoffset", - "stroke-linecap", - "stroke-linejoin", - "stroke-miterlimit", - "stroke-opacity", - "stroke-width", - "text-anchor", - "text-rendering", - "writing-mode", +static const char * const propertyList[] = { +"", +"background-color", +"background-image", +"background-repeat", +"background-attachment", +"background-position", +"background-position-x", +"background-position-y", +"background-clip", +"background-origin", +"background-size", +"border-top-right-radius", +"border-bottom-right-radius", +"border-bottom-left-radius", +"border-top-left-radius", +"border-radius", +"border-collapse", +"border-spacing", +"-khtml-border-horizontal-spacing", +"-khtml-border-vertical-spacing", +"border-top-color", +"border-right-color", +"border-bottom-color", +"border-left-color", +"border-top-style", +"border-right-style", +"border-bottom-style", +"border-left-style", +"border-top-width", +"border-right-width", +"border-bottom-width", +"border-left-width", +"bottom", +"caption-side", +"clear", +"clip", +"color", +"content", +"counter-increment", +"counter-reset", +"cursor", +"direction", +"display", +"empty-cells", +"float", +"font-family", +"font-size", +"font-style", +"font-variant", +"font-weight", +"height", +"left", +"letter-spacing", +"line-height", +"list-style-image", +"list-style-position", +"list-style-type", +"margin-top", +"margin-right", +"margin-bottom", +"margin-left", +"-khtml-margin-start", +"-khtml-marquee", +"-khtml-marquee-direction", +"-khtml-marquee-increment", +"-khtml-marquee-repetition", +"-khtml-marquee-speed", +"-khtml-marquee-style", +"max-height", +"max-width", +"min-height", +"min-width", +"orphans", +"opacity", +"outline-color", +"outline-offset", +"outline-style", +"outline-width", +"overflow", +"overflow-x", +"overflow-y", +"padding-top", +"padding-right", +"padding-bottom", +"padding-left", +"-khtml-padding-start", +"page-break-after", +"page-break-before", +"page-break-inside", +"position", +"quotes", +"right", +"size", +"src", +"table-layout", +"text-align", +"text-decoration", +"text-indent", +"text-overflow", +"text-shadow", +"text-transform", +"top", +"unicode-bidi", +"unicode-range", +"vertical-align", +"visibility", +"white-space", +"widows", +"width", +"word-wrap", +"word-spacing", +"z-index", +"background", +"border", +"border-color", +"border-style", +"border-top", +"border-right", +"border-bottom", +"border-left", +"border-width", +"box-sizing", +"font", +"list-style", +"margin", +"outline", +"padding", +"scrollbar-base-color", +"scrollbar-face-color", +"scrollbar-shadow-color", +"scrollbar-highlight-color", +"scrollbar-3dlight-color", +"scrollbar-darkshadow-color", +"scrollbar-track-color", +"scrollbar-arrow-color", +"-khtml-flow-mode", +"-khtml-user-input", +"alignment-baseline", +"baseline-shift", +"clip-path", +"clip-rule", +"color-interpolation", +"color-interpolation-filters", +"color-profile", +"color-rendering", +"dominant-baseline", +"enable-background", +"fill", +"fill-opacity", +"fill-rule", +"filter", +"flood-color", +"flood-opacity", +"font-size-adjust", +"font-stretch", +"glyph-orientation-horizontal", +"glyph-orientation-vertical", +"image-rendering", +"kerning", +"lighting-color", +"marker", +"marker-end", +"marker-mid", +"marker-start", +"mask", +"pointer-events", +"shape-rendering", +"stop-color", +"stop-opacity", +"stroke", +"stroke-dasharray", +"stroke-dashoffset", +"stroke-linecap", +"stroke-linejoin", +"stroke-miterlimit", +"stroke-opacity", +"stroke-width", +"text-anchor", +"text-rendering", +"writing-mode", 0 }; DOMString getPropertyName(unsigned short id) { - if (id >= CSS_PROP_TOTAL || id == 0) { - return DOMString(); - } else { - return DOMString(propertyList[id]); - } + if(id >= CSS_PROP_TOTAL || id == 0) + return DOMString(); + else + return DOMString(propertyList[id]); } diff -Nru khtml-5.24.0/src/css/cssproperties.h khtml-5.26.0/src/css/cssproperties.h --- khtml-5.24.0/src/css/cssproperties.h 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/css/cssproperties.h 2016-09-06 12:04:32.000000000 +0000 @@ -15,188 +15,180 @@ #define CSS_PROP_BACKGROUND_POSITION 5 #define CSS_PROP_BACKGROUND_POSITION_X 6 #define CSS_PROP_BACKGROUND_POSITION_Y 7 -#define CSS_PROP__KHTML_BACKGROUND_CLIP 8 -#define CSS_PROP__KHTML_BACKGROUND_ORIGIN 9 -#define CSS_PROP__KHTML_BACKGROUND_SIZE 10 -#define CSS_PROP__KHTML_BORDER_TOP_RIGHT_RADIUS 11 -#define CSS_PROP__KHTML_BORDER_BOTTOM_RIGHT_RADIUS 12 -#define CSS_PROP__KHTML_BORDER_BOTTOM_LEFT_RADIUS 13 -#define CSS_PROP__KHTML_BORDER_TOP_LEFT_RADIUS 14 -#define CSS_PROP__KHTML_BORDER_RADIUS 15 -#define CSS_PROP_BACKGROUND_CLIP 16 -#define CSS_PROP_BACKGROUND_ORIGIN 17 -#define CSS_PROP_BACKGROUND_SIZE 18 -#define CSS_PROP_BORDER_TOP_RIGHT_RADIUS 19 -#define CSS_PROP_BORDER_BOTTOM_RIGHT_RADIUS 20 -#define CSS_PROP_BORDER_BOTTOM_LEFT_RADIUS 21 -#define CSS_PROP_BORDER_TOP_LEFT_RADIUS 22 -#define CSS_PROP_BORDER_RADIUS 23 -#define CSS_PROP_BORDER_COLLAPSE 24 -#define CSS_PROP_BORDER_SPACING 25 -#define CSS_PROP__KHTML_BORDER_HORIZONTAL_SPACING 26 -#define CSS_PROP__KHTML_BORDER_VERTICAL_SPACING 27 -#define CSS_PROP_BORDER_TOP_COLOR 28 -#define CSS_PROP_BORDER_RIGHT_COLOR 29 -#define CSS_PROP_BORDER_BOTTOM_COLOR 30 -#define CSS_PROP_BORDER_LEFT_COLOR 31 -#define CSS_PROP_BORDER_TOP_STYLE 32 -#define CSS_PROP_BORDER_RIGHT_STYLE 33 -#define CSS_PROP_BORDER_BOTTOM_STYLE 34 -#define CSS_PROP_BORDER_LEFT_STYLE 35 -#define CSS_PROP_BORDER_TOP_WIDTH 36 -#define CSS_PROP_BORDER_RIGHT_WIDTH 37 -#define CSS_PROP_BORDER_BOTTOM_WIDTH 38 -#define CSS_PROP_BORDER_LEFT_WIDTH 39 -#define CSS_PROP_BOTTOM 40 -#define CSS_PROP_CAPTION_SIDE 41 -#define CSS_PROP_CLEAR 42 -#define CSS_PROP_CLIP 43 -#define CSS_PROP_COLOR 44 -#define CSS_PROP_CONTENT 45 -#define CSS_PROP_COUNTER_INCREMENT 46 -#define CSS_PROP_COUNTER_RESET 47 -#define CSS_PROP_CURSOR 48 -#define CSS_PROP_DIRECTION 49 -#define CSS_PROP_DISPLAY 50 -#define CSS_PROP_EMPTY_CELLS 51 -#define CSS_PROP_FLOAT 52 -#define CSS_PROP_FONT_FAMILY 53 -#define CSS_PROP_FONT_SIZE 54 -#define CSS_PROP_FONT_STYLE 55 -#define CSS_PROP_FONT_VARIANT 56 -#define CSS_PROP_FONT_WEIGHT 57 -#define CSS_PROP_HEIGHT 58 -#define CSS_PROP_LEFT 59 -#define CSS_PROP_LETTER_SPACING 60 -#define CSS_PROP_LINE_HEIGHT 61 -#define CSS_PROP_LIST_STYLE_IMAGE 62 -#define CSS_PROP_LIST_STYLE_POSITION 63 -#define CSS_PROP_LIST_STYLE_TYPE 64 -#define CSS_PROP_MARGIN_TOP 65 -#define CSS_PROP_MARGIN_RIGHT 66 -#define CSS_PROP_MARGIN_BOTTOM 67 -#define CSS_PROP_MARGIN_LEFT 68 -#define CSS_PROP__KHTML_MARGIN_START 69 -#define CSS_PROP__KHTML_MARQUEE 70 -#define CSS_PROP__KHTML_MARQUEE_DIRECTION 71 -#define CSS_PROP__KHTML_MARQUEE_INCREMENT 72 -#define CSS_PROP__KHTML_MARQUEE_REPETITION 73 -#define CSS_PROP__KHTML_MARQUEE_SPEED 74 -#define CSS_PROP__KHTML_MARQUEE_STYLE 75 -#define CSS_PROP_MAX_HEIGHT 76 -#define CSS_PROP_MAX_WIDTH 77 -#define CSS_PROP_MIN_HEIGHT 78 -#define CSS_PROP_MIN_WIDTH 79 -#define CSS_PROP_ORPHANS 80 -#define CSS_PROP_OPACITY 81 -#define CSS_PROP_OUTLINE_COLOR 82 -#define CSS_PROP_OUTLINE_OFFSET 83 -#define CSS_PROP_OUTLINE_STYLE 84 -#define CSS_PROP_OUTLINE_WIDTH 85 -#define CSS_PROP_OVERFLOW 86 -#define CSS_PROP_OVERFLOW_X 87 -#define CSS_PROP_OVERFLOW_Y 88 -#define CSS_PROP_PADDING_TOP 89 -#define CSS_PROP_PADDING_RIGHT 90 -#define CSS_PROP_PADDING_BOTTOM 91 -#define CSS_PROP_PADDING_LEFT 92 -#define CSS_PROP__KHTML_PADDING_START 93 -#define CSS_PROP_PAGE_BREAK_AFTER 94 -#define CSS_PROP_PAGE_BREAK_BEFORE 95 -#define CSS_PROP_PAGE_BREAK_INSIDE 96 -#define CSS_PROP_POSITION 97 -#define CSS_PROP_QUOTES 98 -#define CSS_PROP_RIGHT 99 -#define CSS_PROP_SIZE 100 -#define CSS_PROP_SRC 101 -#define CSS_PROP_TABLE_LAYOUT 102 -#define CSS_PROP_TEXT_ALIGN 103 -#define CSS_PROP_TEXT_DECORATION 104 -#define CSS_PROP_TEXT_INDENT 105 -#define CSS_PROP_TEXT_OVERFLOW 106 -#define CSS_PROP_TEXT_SHADOW 107 -#define CSS_PROP_TEXT_TRANSFORM 108 -#define CSS_PROP_TOP 109 -#define CSS_PROP_UNICODE_BIDI 110 -#define CSS_PROP_UNICODE_RANGE 111 -#define CSS_PROP_VERTICAL_ALIGN 112 -#define CSS_PROP_VISIBILITY 113 -#define CSS_PROP_WHITE_SPACE 114 -#define CSS_PROP_WIDOWS 115 -#define CSS_PROP_WIDTH 116 -#define CSS_PROP_WORD_WRAP 117 -#define CSS_PROP_WORD_SPACING 118 -#define CSS_PROP_Z_INDEX 119 -#define CSS_PROP_BACKGROUND 120 -#define CSS_PROP_BORDER 121 -#define CSS_PROP_BORDER_COLOR 122 -#define CSS_PROP_BORDER_STYLE 123 -#define CSS_PROP_BORDER_TOP 124 -#define CSS_PROP_BORDER_RIGHT 125 -#define CSS_PROP_BORDER_BOTTOM 126 -#define CSS_PROP_BORDER_LEFT 127 -#define CSS_PROP_BORDER_WIDTH 128 -#define CSS_PROP_BOX_SIZING 129 -#define CSS_PROP_FONT 130 -#define CSS_PROP_LIST_STYLE 131 -#define CSS_PROP_MARGIN 132 -#define CSS_PROP_OUTLINE 133 -#define CSS_PROP_PADDING 134 -#define CSS_PROP_SCROLLBAR_BASE_COLOR 135 -#define CSS_PROP_SCROLLBAR_FACE_COLOR 136 -#define CSS_PROP_SCROLLBAR_SHADOW_COLOR 137 -#define CSS_PROP_SCROLLBAR_HIGHLIGHT_COLOR 138 -#define CSS_PROP_SCROLLBAR_3DLIGHT_COLOR 139 -#define CSS_PROP_SCROLLBAR_DARKSHADOW_COLOR 140 -#define CSS_PROP_SCROLLBAR_TRACK_COLOR 141 -#define CSS_PROP_SCROLLBAR_ARROW_COLOR 142 -#define CSS_PROP__KHTML_FLOW_MODE 143 -#define CSS_PROP__KHTML_USER_INPUT 144 -#define CSS_PROP_ALIGNMENT_BASELINE 145 -#define CSS_PROP_BASELINE_SHIFT 146 -#define CSS_PROP_CLIP_PATH 147 -#define CSS_PROP_CLIP_RULE 148 -#define CSS_PROP_COLOR_INTERPOLATION 149 -#define CSS_PROP_COLOR_INTERPOLATION_FILTERS 150 -#define CSS_PROP_COLOR_PROFILE 151 -#define CSS_PROP_COLOR_RENDERING 152 -#define CSS_PROP_DOMINANT_BASELINE 153 -#define CSS_PROP_ENABLE_BACKGROUND 154 -#define CSS_PROP_FILL 155 -#define CSS_PROP_FILL_OPACITY 156 -#define CSS_PROP_FILL_RULE 157 -#define CSS_PROP_FILTER 158 -#define CSS_PROP_FLOOD_COLOR 159 -#define CSS_PROP_FLOOD_OPACITY 160 -#define CSS_PROP_FONT_SIZE_ADJUST 161 -#define CSS_PROP_FONT_STRETCH 162 -#define CSS_PROP_GLYPH_ORIENTATION_HORIZONTAL 163 -#define CSS_PROP_GLYPH_ORIENTATION_VERTICAL 164 -#define CSS_PROP_IMAGE_RENDERING 165 -#define CSS_PROP_KERNING 166 -#define CSS_PROP_LIGHTING_COLOR 167 -#define CSS_PROP_MARKER 168 -#define CSS_PROP_MARKER_END 169 -#define CSS_PROP_MARKER_MID 170 -#define CSS_PROP_MARKER_START 171 -#define CSS_PROP_MASK 172 -#define CSS_PROP_POINTER_EVENTS 173 -#define CSS_PROP_SHAPE_RENDERING 174 -#define CSS_PROP_STOP_COLOR 175 -#define CSS_PROP_STOP_OPACITY 176 -#define CSS_PROP_STROKE 177 -#define CSS_PROP_STROKE_DASHARRAY 178 -#define CSS_PROP_STROKE_DASHOFFSET 179 -#define CSS_PROP_STROKE_LINECAP 180 -#define CSS_PROP_STROKE_LINEJOIN 181 -#define CSS_PROP_STROKE_MITERLIMIT 182 -#define CSS_PROP_STROKE_OPACITY 183 -#define CSS_PROP_STROKE_WIDTH 184 -#define CSS_PROP_TEXT_ANCHOR 185 -#define CSS_PROP_TEXT_RENDERING 186 -#define CSS_PROP_WRITING_MODE 187 +#define CSS_PROP_BACKGROUND_CLIP 8 +#define CSS_PROP_BACKGROUND_ORIGIN 9 +#define CSS_PROP_BACKGROUND_SIZE 10 +#define CSS_PROP_BORDER_TOP_RIGHT_RADIUS 11 +#define CSS_PROP_BORDER_BOTTOM_RIGHT_RADIUS 12 +#define CSS_PROP_BORDER_BOTTOM_LEFT_RADIUS 13 +#define CSS_PROP_BORDER_TOP_LEFT_RADIUS 14 +#define CSS_PROP_BORDER_RADIUS 15 +#define CSS_PROP_BORDER_COLLAPSE 16 +#define CSS_PROP_BORDER_SPACING 17 +#define CSS_PROP__KHTML_BORDER_HORIZONTAL_SPACING 18 +#define CSS_PROP__KHTML_BORDER_VERTICAL_SPACING 19 +#define CSS_PROP_BORDER_TOP_COLOR 20 +#define CSS_PROP_BORDER_RIGHT_COLOR 21 +#define CSS_PROP_BORDER_BOTTOM_COLOR 22 +#define CSS_PROP_BORDER_LEFT_COLOR 23 +#define CSS_PROP_BORDER_TOP_STYLE 24 +#define CSS_PROP_BORDER_RIGHT_STYLE 25 +#define CSS_PROP_BORDER_BOTTOM_STYLE 26 +#define CSS_PROP_BORDER_LEFT_STYLE 27 +#define CSS_PROP_BORDER_TOP_WIDTH 28 +#define CSS_PROP_BORDER_RIGHT_WIDTH 29 +#define CSS_PROP_BORDER_BOTTOM_WIDTH 30 +#define CSS_PROP_BORDER_LEFT_WIDTH 31 +#define CSS_PROP_BOTTOM 32 +#define CSS_PROP_CAPTION_SIDE 33 +#define CSS_PROP_CLEAR 34 +#define CSS_PROP_CLIP 35 +#define CSS_PROP_COLOR 36 +#define CSS_PROP_CONTENT 37 +#define CSS_PROP_COUNTER_INCREMENT 38 +#define CSS_PROP_COUNTER_RESET 39 +#define CSS_PROP_CURSOR 40 +#define CSS_PROP_DIRECTION 41 +#define CSS_PROP_DISPLAY 42 +#define CSS_PROP_EMPTY_CELLS 43 +#define CSS_PROP_FLOAT 44 +#define CSS_PROP_FONT_FAMILY 45 +#define CSS_PROP_FONT_SIZE 46 +#define CSS_PROP_FONT_STYLE 47 +#define CSS_PROP_FONT_VARIANT 48 +#define CSS_PROP_FONT_WEIGHT 49 +#define CSS_PROP_HEIGHT 50 +#define CSS_PROP_LEFT 51 +#define CSS_PROP_LETTER_SPACING 52 +#define CSS_PROP_LINE_HEIGHT 53 +#define CSS_PROP_LIST_STYLE_IMAGE 54 +#define CSS_PROP_LIST_STYLE_POSITION 55 +#define CSS_PROP_LIST_STYLE_TYPE 56 +#define CSS_PROP_MARGIN_TOP 57 +#define CSS_PROP_MARGIN_RIGHT 58 +#define CSS_PROP_MARGIN_BOTTOM 59 +#define CSS_PROP_MARGIN_LEFT 60 +#define CSS_PROP__KHTML_MARGIN_START 61 +#define CSS_PROP__KHTML_MARQUEE 62 +#define CSS_PROP__KHTML_MARQUEE_DIRECTION 63 +#define CSS_PROP__KHTML_MARQUEE_INCREMENT 64 +#define CSS_PROP__KHTML_MARQUEE_REPETITION 65 +#define CSS_PROP__KHTML_MARQUEE_SPEED 66 +#define CSS_PROP__KHTML_MARQUEE_STYLE 67 +#define CSS_PROP_MAX_HEIGHT 68 +#define CSS_PROP_MAX_WIDTH 69 +#define CSS_PROP_MIN_HEIGHT 70 +#define CSS_PROP_MIN_WIDTH 71 +#define CSS_PROP_ORPHANS 72 +#define CSS_PROP_OPACITY 73 +#define CSS_PROP_OUTLINE_COLOR 74 +#define CSS_PROP_OUTLINE_OFFSET 75 +#define CSS_PROP_OUTLINE_STYLE 76 +#define CSS_PROP_OUTLINE_WIDTH 77 +#define CSS_PROP_OVERFLOW 78 +#define CSS_PROP_OVERFLOW_X 79 +#define CSS_PROP_OVERFLOW_Y 80 +#define CSS_PROP_PADDING_TOP 81 +#define CSS_PROP_PADDING_RIGHT 82 +#define CSS_PROP_PADDING_BOTTOM 83 +#define CSS_PROP_PADDING_LEFT 84 +#define CSS_PROP__KHTML_PADDING_START 85 +#define CSS_PROP_PAGE_BREAK_AFTER 86 +#define CSS_PROP_PAGE_BREAK_BEFORE 87 +#define CSS_PROP_PAGE_BREAK_INSIDE 88 +#define CSS_PROP_POSITION 89 +#define CSS_PROP_QUOTES 90 +#define CSS_PROP_RIGHT 91 +#define CSS_PROP_SIZE 92 +#define CSS_PROP_SRC 93 +#define CSS_PROP_TABLE_LAYOUT 94 +#define CSS_PROP_TEXT_ALIGN 95 +#define CSS_PROP_TEXT_DECORATION 96 +#define CSS_PROP_TEXT_INDENT 97 +#define CSS_PROP_TEXT_OVERFLOW 98 +#define CSS_PROP_TEXT_SHADOW 99 +#define CSS_PROP_TEXT_TRANSFORM 100 +#define CSS_PROP_TOP 101 +#define CSS_PROP_UNICODE_BIDI 102 +#define CSS_PROP_UNICODE_RANGE 103 +#define CSS_PROP_VERTICAL_ALIGN 104 +#define CSS_PROP_VISIBILITY 105 +#define CSS_PROP_WHITE_SPACE 106 +#define CSS_PROP_WIDOWS 107 +#define CSS_PROP_WIDTH 108 +#define CSS_PROP_WORD_WRAP 109 +#define CSS_PROP_WORD_SPACING 110 +#define CSS_PROP_Z_INDEX 111 +#define CSS_PROP_BACKGROUND 112 +#define CSS_PROP_BORDER 113 +#define CSS_PROP_BORDER_COLOR 114 +#define CSS_PROP_BORDER_STYLE 115 +#define CSS_PROP_BORDER_TOP 116 +#define CSS_PROP_BORDER_RIGHT 117 +#define CSS_PROP_BORDER_BOTTOM 118 +#define CSS_PROP_BORDER_LEFT 119 +#define CSS_PROP_BORDER_WIDTH 120 +#define CSS_PROP_BOX_SIZING 121 +#define CSS_PROP_FONT 122 +#define CSS_PROP_LIST_STYLE 123 +#define CSS_PROP_MARGIN 124 +#define CSS_PROP_OUTLINE 125 +#define CSS_PROP_PADDING 126 +#define CSS_PROP_SCROLLBAR_BASE_COLOR 127 +#define CSS_PROP_SCROLLBAR_FACE_COLOR 128 +#define CSS_PROP_SCROLLBAR_SHADOW_COLOR 129 +#define CSS_PROP_SCROLLBAR_HIGHLIGHT_COLOR 130 +#define CSS_PROP_SCROLLBAR_3DLIGHT_COLOR 131 +#define CSS_PROP_SCROLLBAR_DARKSHADOW_COLOR 132 +#define CSS_PROP_SCROLLBAR_TRACK_COLOR 133 +#define CSS_PROP_SCROLLBAR_ARROW_COLOR 134 +#define CSS_PROP__KHTML_FLOW_MODE 135 +#define CSS_PROP__KHTML_USER_INPUT 136 +#define CSS_PROP_ALIGNMENT_BASELINE 137 +#define CSS_PROP_BASELINE_SHIFT 138 +#define CSS_PROP_CLIP_PATH 139 +#define CSS_PROP_CLIP_RULE 140 +#define CSS_PROP_COLOR_INTERPOLATION 141 +#define CSS_PROP_COLOR_INTERPOLATION_FILTERS 142 +#define CSS_PROP_COLOR_PROFILE 143 +#define CSS_PROP_COLOR_RENDERING 144 +#define CSS_PROP_DOMINANT_BASELINE 145 +#define CSS_PROP_ENABLE_BACKGROUND 146 +#define CSS_PROP_FILL 147 +#define CSS_PROP_FILL_OPACITY 148 +#define CSS_PROP_FILL_RULE 149 +#define CSS_PROP_FILTER 150 +#define CSS_PROP_FLOOD_COLOR 151 +#define CSS_PROP_FLOOD_OPACITY 152 +#define CSS_PROP_FONT_SIZE_ADJUST 153 +#define CSS_PROP_FONT_STRETCH 154 +#define CSS_PROP_GLYPH_ORIENTATION_HORIZONTAL 155 +#define CSS_PROP_GLYPH_ORIENTATION_VERTICAL 156 +#define CSS_PROP_IMAGE_RENDERING 157 +#define CSS_PROP_KERNING 158 +#define CSS_PROP_LIGHTING_COLOR 159 +#define CSS_PROP_MARKER 160 +#define CSS_PROP_MARKER_END 161 +#define CSS_PROP_MARKER_MID 162 +#define CSS_PROP_MARKER_START 163 +#define CSS_PROP_MASK 164 +#define CSS_PROP_POINTER_EVENTS 165 +#define CSS_PROP_SHAPE_RENDERING 166 +#define CSS_PROP_STOP_COLOR 167 +#define CSS_PROP_STOP_OPACITY 168 +#define CSS_PROP_STROKE 169 +#define CSS_PROP_STROKE_DASHARRAY 170 +#define CSS_PROP_STROKE_DASHOFFSET 171 +#define CSS_PROP_STROKE_LINECAP 172 +#define CSS_PROP_STROKE_LINEJOIN 173 +#define CSS_PROP_STROKE_MITERLIMIT 174 +#define CSS_PROP_STROKE_OPACITY 175 +#define CSS_PROP_STROKE_WIDTH 176 +#define CSS_PROP_TEXT_ANCHOR 177 +#define CSS_PROP_TEXT_RENDERING 178 +#define CSS_PROP_WRITING_MODE 179 -#define CSS_PROP_TOTAL 188 -const size_t maxCSSPropertyNameLength = 33; +#define CSS_PROP_TOTAL 180 +const size_t maxCSSPropertyNameLength = 32; #endif diff -Nru khtml-5.24.0/src/css/cssproperties.in khtml-5.26.0/src/css/cssproperties.in --- khtml-5.24.0/src/css/cssproperties.in 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/css/cssproperties.in 2016-09-06 12:04:32.000000000 +0000 @@ -20,14 +20,6 @@ background-position-x background-position-y # CSS3 Extensions --khtml-background-clip --khtml-background-origin --khtml-background-size --khtml-border-top-right-radius --khtml-border-bottom-right-radius --khtml-border-bottom-left-radius --khtml-border-top-left-radius --khtml-border-radius background-clip background-origin background-size diff -Nru khtml-5.24.0/src/css/css_renderstyledeclarationimpl.cpp khtml-5.26.0/src/css/css_renderstyledeclarationimpl.cpp --- khtml-5.24.0/src/css/css_renderstyledeclarationimpl.cpp 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/css/css_renderstyledeclarationimpl.cpp 2016-09-06 12:04:32.000000000 +0000 @@ -48,10 +48,6 @@ CSS_PROP_BORDER_SPACING, CSS_PROP__KHTML_BORDER_HORIZONTAL_SPACING, CSS_PROP__KHTML_BORDER_VERTICAL_SPACING, - CSS_PROP__KHTML_BORDER_TOP_RIGHT_RADIUS, - CSS_PROP__KHTML_BORDER_BOTTOM_RIGHT_RADIUS, - CSS_PROP__KHTML_BORDER_BOTTOM_LEFT_RADIUS, - CSS_PROP__KHTML_BORDER_TOP_LEFT_RADIUS, CSS_PROP_BORDER_TOP_RIGHT_RADIUS, CSS_PROP_BORDER_BOTTOM_RIGHT_RADIUS, CSS_PROP_BORDER_BOTTOM_LEFT_RADIUS, @@ -137,7 +133,7 @@ const unsigned numComputedProperties = sizeof(computedProperties) / sizeof(computedProperties[0]); -static CSSValueImpl *valueForLength(const Length &length, int max) +static CSSPrimitiveValueImpl *valueForLength(const Length &length, int max) { if (length.isPercent()) { return new CSSPrimitiveValueImpl(length.percent(), CSSPrimitiveValue::CSS_PERCENTAGE); @@ -146,7 +142,7 @@ } } -static CSSValueImpl *valueForLength2(const Length &length) +static CSSPrimitiveValueImpl *valueForLength2(const Length &length) { if (length.isPercent()) { return new CSSPrimitiveValueImpl(length.percent(), CSSPrimitiveValue::CSS_PERCENTAGE); @@ -187,8 +183,8 @@ static CSSValueImpl *valueForBorderRadii(BorderRadii radii) { - CSSPrimitiveValueImpl *h = new CSSPrimitiveValueImpl(radii.horizontal, CSSPrimitiveValue::CSS_PX); - CSSPrimitiveValueImpl *v = new CSSPrimitiveValueImpl(radii.vertical, CSSPrimitiveValue::CSS_PX); + CSSPrimitiveValueImpl *h = valueForLength2(radii.horizontal); + CSSPrimitiveValueImpl *v = valueForLength2(radii.vertical); return new CSSPrimitiveValueImpl(new PairImpl(h, v)); } @@ -543,16 +539,12 @@ return new CSSPrimitiveValueImpl(style->borderHorizontalSpacing(), CSSPrimitiveValue::CSS_PX); case CSS_PROP__KHTML_BORDER_VERTICAL_SPACING: return new CSSPrimitiveValueImpl(style->borderVerticalSpacing(), CSSPrimitiveValue::CSS_PX); - case CSS_PROP__KHTML_BORDER_TOP_RIGHT_RADIUS: case CSS_PROP_BORDER_TOP_RIGHT_RADIUS: return valueForBorderRadii(style->borderTopRightRadius()); - case CSS_PROP__KHTML_BORDER_BOTTOM_RIGHT_RADIUS: case CSS_PROP_BORDER_BOTTOM_RIGHT_RADIUS: return valueForBorderRadii(style->borderBottomRightRadius()); - case CSS_PROP__KHTML_BORDER_BOTTOM_LEFT_RADIUS: case CSS_PROP_BORDER_BOTTOM_LEFT_RADIUS: return valueForBorderRadii(style->borderBottomLeftRadius()); - case CSS_PROP__KHTML_BORDER_TOP_LEFT_RADIUS: case CSS_PROP_BORDER_TOP_LEFT_RADIUS: return valueForBorderRadii(style->borderTopLeftRadius()); case CSS_PROP_BORDER_TOP_COLOR: diff -Nru khtml-5.24.0/src/css/cssstyleselector.cpp khtml-5.26.0/src/css/cssstyleselector.cpp --- khtml-5.24.0/src/css/cssstyleselector.cpp 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/css/cssstyleselector.cpp 2016-09-06 12:04:32.000000000 +0000 @@ -2472,21 +2472,6 @@ return l; } -// Extracts out border radii lengths from a pair -static BorderRadii convertToBorderRadii(CSSPrimitiveValueImpl *value, RenderStyle *style, RenderStyle *rootStyle, int logicalDpiY) -{ - BorderRadii ret; - PairImpl *p = value->getPairValue(); - if (!p) { - return ret; - } - - assert(p->first()->isPrimitiveValue() && p->second()->isPrimitiveValue()); - ret.horizontal = static_cast(p->first())->computeLength(style, rootStyle, logicalDpiY); - ret.vertical = static_cast(p->second())->computeLength(style, rootStyle, logicalDpiY); - return ret; -} - static inline int nextFontSize(const QVector &a, int v, bool smaller) { // return the nearest bigger/smaller value in scale a, when v is in range. @@ -2555,18 +2540,15 @@ case CSS_PROP_BACKGROUND_ATTACHMENT: HANDLE_BACKGROUND_VALUE(backgroundAttachment, BackgroundAttachment, value) break; - case CSS_PROP__KHTML_BACKGROUND_CLIP: case CSS_PROP_BACKGROUND_CLIP: HANDLE_BACKGROUND_VALUE(backgroundClip, BackgroundClip, value) break; - case CSS_PROP__KHTML_BACKGROUND_ORIGIN: case CSS_PROP_BACKGROUND_ORIGIN: HANDLE_BACKGROUND_VALUE(backgroundOrigin, BackgroundOrigin, value) break; case CSS_PROP_BACKGROUND_REPEAT: HANDLE_BACKGROUND_VALUE(backgroundRepeat, BackgroundRepeat, value) break; - case CSS_PROP__KHTML_BACKGROUND_SIZE: case CSS_PROP_BACKGROUND_SIZE: HANDLE_BACKGROUND_VALUE(backgroundSize, BackgroundSize, value) break; @@ -3188,13 +3170,9 @@ break; } - case CSS_PROP__KHTML_BORDER_TOP_RIGHT_RADIUS: case CSS_PROP_BORDER_TOP_RIGHT_RADIUS: - case CSS_PROP__KHTML_BORDER_TOP_LEFT_RADIUS: case CSS_PROP_BORDER_TOP_LEFT_RADIUS: - case CSS_PROP__KHTML_BORDER_BOTTOM_RIGHT_RADIUS: case CSS_PROP_BORDER_BOTTOM_RIGHT_RADIUS: - case CSS_PROP__KHTML_BORDER_BOTTOM_LEFT_RADIUS: case CSS_PROP_BORDER_BOTTOM_LEFT_RADIUS: { if (isInherit) { style->setInheritedNoninherited(true); @@ -3203,7 +3181,8 @@ HANDLE_INHERIT_COND(CSS_PROP_BORDER_BOTTOM_RIGHT_RADIUS, borderBottomRightRadius, BorderBottomRightRadius) HANDLE_INHERIT_COND(CSS_PROP_BORDER_BOTTOM_LEFT_RADIUS, borderBottomLeftRadius, BorderBottomLeftRadius) return; - } else if (isInitial) { + } + if (isInitial) { HANDLE_INITIAL_COND_WITH_VALUE(CSS_PROP_BORDER_TOP_RIGHT_RADIUS, BorderTopRightRadius, BorderRadius) HANDLE_INITIAL_COND_WITH_VALUE(CSS_PROP_BORDER_TOP_LEFT_RADIUS, BorderTopLeftRadius, BorderRadius) HANDLE_INITIAL_COND_WITH_VALUE(CSS_PROP_BORDER_BOTTOM_RIGHT_RADIUS, BorderBottomRightRadius, BorderRadius) @@ -3215,21 +3194,25 @@ return; } - BorderRadii bradii = convertToBorderRadii(primitiveValue, style, m_rootStyle, logicalDpiY); + PairImpl *p = primitiveValue->getPairValue(); + if (!p) { + return; + } + + BorderRadii bradii; + bradii.horizontal = convertToLength((p->first()), style, m_rootStyle, logicalDpiY); + bradii.vertical = convertToLength((p->second()), style, m_rootStyle, logicalDpiY); + switch(id) { - case CSS_PROP__KHTML_BORDER_TOP_RIGHT_RADIUS: case CSS_PROP_BORDER_TOP_RIGHT_RADIUS: style->setBorderTopRightRadius(bradii); break; - case CSS_PROP__KHTML_BORDER_TOP_LEFT_RADIUS: case CSS_PROP_BORDER_TOP_LEFT_RADIUS: style->setBorderTopLeftRadius(bradii); break; - case CSS_PROP__KHTML_BORDER_BOTTOM_RIGHT_RADIUS: case CSS_PROP_BORDER_BOTTOM_RIGHT_RADIUS: style->setBorderBottomRightRadius(bradii); break; - case CSS_PROP__KHTML_BORDER_BOTTOM_LEFT_RADIUS: case CSS_PROP_BORDER_BOTTOM_LEFT_RADIUS: style->setBorderBottomLeftRadius(bradii); break; @@ -4263,7 +4246,6 @@ } } return; - case CSS_PROP__KHTML_BORDER_RADIUS: case CSS_PROP_BORDER_RADIUS: if (isInherit) { style->setInheritedNoninherited(true); @@ -4683,15 +4665,13 @@ } CSSPrimitiveValueImpl *primitiveValue = static_cast(value); switch (primitiveValue->getIdent()) { - case CSS_VAL_BORDER: case CSS_VAL_BORDER_BOX: layer->setBackgroundClip(BGBORDER); break; - case CSS_VAL_PADDING: case CSS_VAL_PADDING_BOX: layer->setBackgroundClip(BGPADDING); break; - default: // CSS_VAL_CONTENT + default: // CSS_VAL_CONTENT_BOX layer->setBackgroundClip(BGCONTENT); break; } @@ -4709,15 +4689,13 @@ } CSSPrimitiveValueImpl *primitiveValue = static_cast(value); switch (primitiveValue->getIdent()) { - case CSS_VAL_BORDER: case CSS_VAL_BORDER_BOX: layer->setBackgroundOrigin(BGBORDER); break; - case CSS_VAL_PADDING: case CSS_VAL_PADDING_BOX: layer->setBackgroundOrigin(BGPADDING); break; - default: // CSS_VAL_CONTENT + default: // CSS_VAL_CONTENT_BOX layer->setBackgroundOrigin(BGCONTENT); break; } diff -Nru khtml-5.24.0/src/css/css_valueimpl.cpp khtml-5.26.0/src/css/css_valueimpl.cpp --- khtml-5.24.0/src/css/css_valueimpl.cpp 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/css/css_valueimpl.cpp 2016-09-06 12:04:32.000000000 +0000 @@ -116,6 +116,12 @@ return isCSSTokenizerIdentifier(string) ? string : quoteString(string); } +static inline bool isInitialOrInherit(const CSSValueImpl *value) +{ + const unsigned short t = value->cssValueType(); + return (t == CSSValue::CSS_INHERIT || t == CSSValue::CSS_INITIAL); +} + CSSStyleDeclarationImpl::CSSStyleDeclarationImpl(CSSRuleImpl *parent) : StyleBaseImpl(parent) { @@ -366,19 +372,38 @@ DOMString CSSStyleDeclarationImpl::get4Values(const int *properties) const { - DOMString res; + // Assume the properties are in the order top, right, bottom, left. + QVector values(4); for (int i = 0; i < 4; ++i) { - if (!isPropertyImplicit(properties[i])) { - CSSValueImpl *value = getPropertyCSSValue(properties[i]); - if (!value) { // apparently all 4 properties must be specified. - return DOMString(); - } - if (i > 0) { - res += " "; + CSSValueImpl *val = getPropertyCSSValue(properties[i]); + // All 4 properties must be specified. + if (!val || isInitialOrInherit(val)) { + return DOMString(); + } else { + values[i] = val->cssText(); + } + } + + // Reduce shorthand. + if (values.at(1) == values.at(3)) { // right/left + values.remove(3); + if (values.at(0) == values.at(2)) { // top/bottom + values.remove(2); + if (values.at(0) == values.at(1)) { + values.remove(1); } - res += value->cssText(); } } + + DOMString res; + const int valuesSize = values.size(); + for (int i = 0; i < valuesSize; ++i) { + if (!res.isNull()) { + res += " "; + } + res += values.at(i); + } + return res; } @@ -676,11 +701,8 @@ CSS_PROP_BACKGROUND_POSITION_X, CSS_PROP_BACKGROUND_POSITION_Y, CSS_PROP_BACKGROUND_REPEAT, - CSS_PROP__KHTML_BACKGROUND_SIZE, CSS_PROP_BACKGROUND_SIZE, - CSS_PROP__KHTML_BACKGROUND_ORIGIN, CSS_PROP_BACKGROUND_ORIGIN, - CSS_PROP__KHTML_BACKGROUND_CLIP, CSS_PROP_BACKGROUND_CLIP }; SET_SHORTHAND_MAP_ENTRY(shorthandMap, CSS_PROP_BACKGROUND, backgroundProperties); @@ -707,13 +729,6 @@ CSS_PROP_BORDER_BOTTOM_RIGHT_RADIUS }; SET_SHORTHAND_MAP_ENTRY(shorthandMap, CSS_PROP_BORDER_RADIUS, borderRadiusProperties); - static const int prefixedBorderRadiusProperties[] = { - CSS_PROP__KHTML_BORDER_TOP_RIGHT_RADIUS, - CSS_PROP__KHTML_BORDER_TOP_LEFT_RADIUS, - CSS_PROP__KHTML_BORDER_BOTTOM_LEFT_RADIUS, - CSS_PROP__KHTML_BORDER_BOTTOM_RIGHT_RADIUS - }; - SET_SHORTHAND_MAP_ENTRY(shorthandMap, CSS_PROP__KHTML_BORDER_RADIUS, prefixedBorderRadiusProperties); static const int markerProperties[] = { CSS_PROP_MARKER_START, diff -Nru khtml-5.24.0/src/css/cssvalues.c khtml-5.26.0/src/css/cssvalues.c --- khtml-5.24.0/src/css/cssvalues.c 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/css/cssvalues.c 2016-09-06 12:04:32.000000000 +0000 @@ -1,4 +1,4 @@ -/* ANSI-C code produced by gperf version 3.0.4 */ +/* ANSI-C code produced by gperf version 3.0.3 */ /* Command-line: gperf -L ANSI-C -E -c -C -n -o -t -k '*' -NfindValue -Hhash_val -Wwordlist_value -D cssvalues.gperf */ #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \ @@ -39,8 +39,8 @@ int id; }; -static const css_value *findValue(register const char *str, register unsigned int len); -/* maximum key range = 2529, duplicates = 0 */ +static const css_value * findValue (register const char *str, register unsigned int len); +/* maximum key range = 2341, duplicates = 0 */ #ifdef __GNUC__ __inline @@ -50,1440 +50,1419 @@ #endif #endif static unsigned int -hash_val(register const char *str, register unsigned int len) +hash_val (register const char *str, register unsigned int len) { - static const unsigned short asso_values[] = { - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 5, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 80, 125, 190, 2529, 0, - 95, 90, 70, 65, 60, 55, 15, 5, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 5, 2529, 2529, 0, - 0, 5, 0, 2529, 2529, 2529, 0, 2529, 2529, 2529, - 0, 0, 5, 10, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 140, 45, 10, - 135, 5, 3, 410, 205, 5, 368, 258, 55, 15, - 0, 15, 0, 430, 110, 65, 0, 60, 103, 510, - 1, 408, 438, 0, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529, - 2529, 2529, 2529, 2529, 2529, 2529, 2529, 2529 + static const unsigned short asso_values[] = + { + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 10, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 80, 483, 55, 2341, 0, + 95, 90, 80, 65, 60, 55, 15, 5, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 0, 2341, 2341, 5, + 0, 0, 0, 2341, 2341, 2341, 0, 2341, 2341, 2341, + 5, 0, 0, 5, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 140, 45, 10, + 135, 5, 3, 205, 235, 5, 448, 410, 55, 15, + 0, 15, 0, 298, 110, 65, 0, 60, 103, 203, + 485, 53, 455, 5, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, + 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341 }; - register int hval = 0; + register int hval = 0; - switch (len) { - default: + switch (len) + { + default: hval += asso_values[(unsigned char)str[27]]; - /*FALLTHROUGH*/ - case 27: + /*FALLTHROUGH*/ + case 27: hval += asso_values[(unsigned char)str[26]]; - /*FALLTHROUGH*/ - case 26: + /*FALLTHROUGH*/ + case 26: hval += asso_values[(unsigned char)str[25]]; - /*FALLTHROUGH*/ - case 25: + /*FALLTHROUGH*/ + case 25: hval += asso_values[(unsigned char)str[24]]; - /*FALLTHROUGH*/ - case 24: + /*FALLTHROUGH*/ + case 24: hval += asso_values[(unsigned char)str[23]]; - /*FALLTHROUGH*/ - case 23: + /*FALLTHROUGH*/ + case 23: hval += asso_values[(unsigned char)str[22]]; - /*FALLTHROUGH*/ - case 22: + /*FALLTHROUGH*/ + case 22: hval += asso_values[(unsigned char)str[21]]; - /*FALLTHROUGH*/ - case 21: + /*FALLTHROUGH*/ + case 21: hval += asso_values[(unsigned char)str[20]]; - /*FALLTHROUGH*/ - case 20: + /*FALLTHROUGH*/ + case 20: hval += asso_values[(unsigned char)str[19]]; - /*FALLTHROUGH*/ - case 19: + /*FALLTHROUGH*/ + case 19: hval += asso_values[(unsigned char)str[18]]; - /*FALLTHROUGH*/ - case 18: + /*FALLTHROUGH*/ + case 18: hval += asso_values[(unsigned char)str[17]]; - /*FALLTHROUGH*/ - case 17: + /*FALLTHROUGH*/ + case 17: hval += asso_values[(unsigned char)str[16]]; - /*FALLTHROUGH*/ - case 16: + /*FALLTHROUGH*/ + case 16: hval += asso_values[(unsigned char)str[15]]; - /*FALLTHROUGH*/ - case 15: + /*FALLTHROUGH*/ + case 15: hval += asso_values[(unsigned char)str[14]]; - /*FALLTHROUGH*/ - case 14: + /*FALLTHROUGH*/ + case 14: hval += asso_values[(unsigned char)str[13]]; - /*FALLTHROUGH*/ - case 13: + /*FALLTHROUGH*/ + case 13: hval += asso_values[(unsigned char)str[12]]; - /*FALLTHROUGH*/ - case 12: + /*FALLTHROUGH*/ + case 12: hval += asso_values[(unsigned char)str[11]]; - /*FALLTHROUGH*/ - case 11: + /*FALLTHROUGH*/ + case 11: hval += asso_values[(unsigned char)str[10]]; - /*FALLTHROUGH*/ - case 10: + /*FALLTHROUGH*/ + case 10: hval += asso_values[(unsigned char)str[9]]; - /*FALLTHROUGH*/ - case 9: + /*FALLTHROUGH*/ + case 9: hval += asso_values[(unsigned char)str[8]]; - /*FALLTHROUGH*/ - case 8: + /*FALLTHROUGH*/ + case 8: hval += asso_values[(unsigned char)str[7]]; - /*FALLTHROUGH*/ - case 7: + /*FALLTHROUGH*/ + case 7: hval += asso_values[(unsigned char)str[6]]; - /*FALLTHROUGH*/ - case 6: + /*FALLTHROUGH*/ + case 6: hval += asso_values[(unsigned char)str[5]]; - /*FALLTHROUGH*/ - case 5: - hval += asso_values[(unsigned char)str[4] + 2]; - /*FALLTHROUGH*/ - case 4: + /*FALLTHROUGH*/ + case 5: + hval += asso_values[(unsigned char)str[4]+2]; + /*FALLTHROUGH*/ + case 4: hval += asso_values[(unsigned char)str[3]]; - /*FALLTHROUGH*/ - case 3: - hval += asso_values[(unsigned char)str[2] + 1]; - /*FALLTHROUGH*/ - case 2: - hval += asso_values[(unsigned char)str[1] + 1]; - /*FALLTHROUGH*/ - case 1: + /*FALLTHROUGH*/ + case 3: + hval += asso_values[(unsigned char)str[2]+1]; + /*FALLTHROUGH*/ + case 2: + hval += asso_values[(unsigned char)str[1]+1]; + /*FALLTHROUGH*/ + case 1: hval += asso_values[(unsigned char)str[0]]; break; } - return hval; + return hval; } #ifdef __GNUC__ __inline -#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__ -__attribute__((__gnu_inline__)) +#ifdef __GNUC_STDC_INLINE__ +__attribute__ ((__gnu_inline__)) #endif #endif const struct css_value * -findValue(register const char *str, register unsigned int len) +findValue (register const char *str, register unsigned int len) { - enum { - TOTAL_KEYWORDS = 336, - MIN_WORD_LENGTH = 2, - MAX_WORD_LENGTH = 28, - MIN_HASH_VALUE = 0, - MAX_HASH_VALUE = 2528 + enum + { + TOTAL_KEYWORDS = 333, + MIN_WORD_LENGTH = 2, + MAX_WORD_LENGTH = 28, + MIN_HASH_VALUE = 0, + MAX_HASH_VALUE = 2340 }; - static const struct css_value wordlist_value[] = { + static const struct css_value wordlist_value[] = + { #line 40 "cssvalues.gperf" - {"100", CSS_VAL_100}, + {"100", CSS_VAL_100}, #line 48 "cssvalues.gperf" - {"900", CSS_VAL_900}, -#line 349 "cssvalues.gperf" - {"tb", CSS_VAL_TB}, + {"900", CSS_VAL_900}, +#line 346 "cssvalues.gperf" + {"tb", CSS_VAL_TB}, #line 47 "cssvalues.gperf" - {"800", CSS_VAL_800}, + {"800", CSS_VAL_800}, #line 17 "cssvalues.gperf" - {"none", CSS_VAL_NONE}, + {"none", CSS_VAL_NONE}, #line 261 "cssvalues.gperf" - {"embed", CSS_VAL_EMBED}, -#line 331 "cssvalues.gperf" - {"end", CSS_VAL_END}, + {"embed", CSS_VAL_EMBED}, +#line 328 "cssvalues.gperf" + {"end", CSS_VAL_END}, #line 191 "cssvalues.gperf" - {"compact", CSS_VAL_COMPACT}, + {"compact", CSS_VAL_COMPACT}, #line 149 "cssvalues.gperf" - {"inside", CSS_VAL_INSIDE}, + {"inside", CSS_VAL_INSIDE}, #line 14 "cssvalues.gperf" - {"inherit", CSS_VAL_INHERIT}, -#line 306 "cssvalues.gperf" - {"contain", CSS_VAL_CONTAIN}, + {"inherit", CSS_VAL_INHERIT}, +#line 303 "cssvalues.gperf" + {"contain", CSS_VAL_CONTAIN}, #line 187 "cssvalues.gperf" - {"inline", CSS_VAL_INLINE}, + {"inline", CSS_VAL_INLINE}, #line 295 "cssvalues.gperf" - {"fast", CSS_VAL_FAST}, + {"fast", CSS_VAL_FAST}, #line 85 "cssvalues.gperf" - {"indigo", CSS_VAL_INDIGO}, + {"indigo", CSS_VAL_INDIGO}, #line 46 "cssvalues.gperf" - {"700", CSS_VAL_700}, + {"700", CSS_VAL_700}, +#line 212 "cssvalues.gperf" + {"text", CSS_VAL_TEXT}, #line 45 "cssvalues.gperf" - {"600", CSS_VAL_600}, -#line 270 "cssvalues.gperf" - {"lower", CSS_VAL_LOWER}, + {"600", CSS_VAL_600}, #line 44 "cssvalues.gperf" - {"500", CSS_VAL_500}, + {"500", CSS_VAL_500}, #line 246 "cssvalues.gperf" - {"pre", CSS_VAL_PRE}, -#line 43 "cssvalues.gperf" - {"400", CSS_VAL_400}, + {"pre", CSS_VAL_PRE}, +#line 331 "cssvalues.gperf" + {"sRGB", CSS_VAL_SRGB}, #line 259 "cssvalues.gperf" - {"crop", CSS_VAL_CROP}, -#line 334 "cssvalues.gperf" - {"sRGB", CSS_VAL_SRGB}, + {"crop", CSS_VAL_CROP}, +#line 43 "cssvalues.gperf" + {"400", CSS_VAL_400}, #line 210 "cssvalues.gperf" - {"cell", CSS_VAL_CELL}, + {"cell", CSS_VAL_CELL}, #line 188 "cssvalues.gperf" - {"block", CSS_VAL_BLOCK}, + {"block", CSS_VAL_BLOCK}, #line 25 "cssvalues.gperf" - {"solid", CSS_VAL_SOLID}, + {"solid", CSS_VAL_SOLID}, #line 42 "cssvalues.gperf" - {"300", CSS_VAL_300}, + {"300", CSS_VAL_300}, #line 29 "cssvalues.gperf" - {"menu", CSS_VAL_MENU}, + {"menu", CSS_VAL_MENU}, #line 41 "cssvalues.gperf" - {"200", CSS_VAL_200}, + {"200", CSS_VAL_200}, +#line 153 "cssvalues.gperf" + {"box", CSS_VAL_BOX}, #line 94 "cssvalues.gperf" - {"teal", CSS_VAL_TEAL}, + {"teal", CSS_VAL_TEAL}, #line 131 "cssvalues.gperf" - {"baseline", CSS_VAL_BASELINE}, + {"baseline", CSS_VAL_BASELINE}, #line 92 "cssvalues.gperf" - {"red", CSS_VAL_RED}, -#line 347 "cssvalues.gperf" - {"lr", CSS_VAL_LR}, -#line 245 "cssvalues.gperf" - {"nowrap", CSS_VAL_NOWRAP}, -#line 348 "cssvalues.gperf" - {"rl", CSS_VAL_RL}, + {"red", CSS_VAL_RED}, +#line 344 "cssvalues.gperf" + {"lr", CSS_VAL_LR}, +#line 345 "cssvalues.gperf" + {"rl", CSS_VAL_RL}, +#line 135 "cssvalues.gperf" + {"text-top", CSS_VAL_TEXT_TOP}, #line 19 "cssvalues.gperf" - {"inset", CSS_VAL_INSET}, + {"inset", CSS_VAL_INSET}, #line 79 "cssvalues.gperf" - {"black", CSS_VAL_BLACK}, + {"black", CSS_VAL_BLACK}, +#line 255 "cssvalues.gperf" + {"below", CSS_VAL_BELOW}, #line 90 "cssvalues.gperf" - {"orange", CSS_VAL_ORANGE}, -#line 293 "cssvalues.gperf" - {"down", CSS_VAL_DOWN}, + {"orange", CSS_VAL_ORANGE}, #line 28 "cssvalues.gperf" - {"icon", CSS_VAL_ICON}, + {"icon", CSS_VAL_ICON}, #line 36 "cssvalues.gperf" - {"normal", CSS_VAL_NORMAL}, + {"normal", CSS_VAL_NORMAL}, #line 281 "cssvalues.gperf" - {"underline", CSS_VAL_UNDERLINE}, + {"underline", CSS_VAL_UNDERLINE}, #line 248 "cssvalues.gperf" - {"pre-line", CSS_VAL_PRE_LINE}, + {"pre-line", CSS_VAL_PRE_LINE}, #line 240 "cssvalues.gperf" - {"collapse", CSS_VAL_COLLAPSE}, + {"collapse", CSS_VAL_COLLAPSE}, #line 51 "cssvalues.gperf" - {"small", CSS_VAL_SMALL}, + {"small", CSS_VAL_SMALL}, #line 80 "cssvalues.gperf" - {"blue", CSS_VAL_BLUE}, -#line 342 "cssvalues.gperf" - {"all", CSS_VAL_ALL}, + {"blue", CSS_VAL_BLUE}, +#line 339 "cssvalues.gperf" + {"all", CSS_VAL_ALL}, #line 91 "cssvalues.gperf" - {"purple", CSS_VAL_PURPLE}, + {"purple", CSS_VAL_PURPLE}, #line 34 "cssvalues.gperf" - {"oblique", CSS_VAL_OBLIQUE}, + {"oblique", CSS_VAL_OBLIQUE}, #line 133 "cssvalues.gperf" - {"sub", CSS_VAL_SUB}, + {"sub", CSS_VAL_SUB}, #line 234 "cssvalues.gperf" - {"ltr", CSS_VAL_LTR}, + {"ltr", CSS_VAL_LTR}, #line 235 "cssvalues.gperf" - {"rtl", CSS_VAL_RTL}, -#line 346 "cssvalues.gperf" - {"tb-lr", CSS_VAL_TB_LR}, + {"rtl", CSS_VAL_RTL}, +#line 72 "cssvalues.gperf" + {"fantasy", CSS_VAL_FANTASY}, #line 37 "cssvalues.gperf" - {"bold", CSS_VAL_BOLD}, + {"bold", CSS_VAL_BOLD}, #line 260 "cssvalues.gperf" - {"cross", CSS_VAL_CROSS}, -#line 114 "cssvalues.gperf" - {"menutext", CSS_VAL_MENUTEXT}, -#line 325 "cssvalues.gperf" - {"butt", CSS_VAL_BUTT}, + {"cross", CSS_VAL_CROSS}, +#line 136 "cssvalues.gperf" + {"text-bottom", CSS_VAL_TEXT_BOTTOM}, +#line 322 "cssvalues.gperf" + {"butt", CSS_VAL_BUTT}, #line 274 "cssvalues.gperf" - {"portrait", CSS_VAL_PORTRAIT}, -#line 323 "cssvalues.gperf" - {"round", CSS_VAL_ROUND}, -#line 206 "cssvalues.gperf" - {"help", CSS_VAL_HELP}, -#line 341 "cssvalues.gperf" - {"stroke", CSS_VAL_STROKE}, -#line 312 "cssvalues.gperf" - {"central ", CSS_VAL_CENTRAL }, + {"portrait", CSS_VAL_PORTRAIT}, +#line 320 "cssvalues.gperf" + {"round", CSS_VAL_ROUND}, +#line 304 "cssvalues.gperf" + {"cover", CSS_VAL_COVER}, +#line 216 "cssvalues.gperf" + {"move", CSS_VAL_MOVE}, +#line 338 "cssvalues.gperf" + {"stroke", CSS_VAL_STROKE}, +#line 265 "cssvalues.gperf" + {"invert", CSS_VAL_INVERT}, #line 252 "cssvalues.gperf" - {"absolute", CSS_VAL_ABSOLUTE}, -#line 345 "cssvalues.gperf" - {"tb-rl", CSS_VAL_TB_RL}, + {"absolute", CSS_VAL_ABSOLUTE}, +#line 309 "cssvalues.gperf" + {"central ", CSS_VAL_CENTRAL }, +#line 296 "cssvalues.gperf" + {"infinite", CSS_VAL_INFINITE}, +#line 52 "cssvalues.gperf" + {"medium", CSS_VAL_MEDIUM}, #line 286 "cssvalues.gperf" - {"enabled", CSS_VAL_ENABLED}, + {"enabled", CSS_VAL_ENABLED}, +#line 206 "cssvalues.gperf" + {"help", CSS_VAL_HELP}, +#line 321 "cssvalues.gperf" + {"bevel", CSS_VAL_BEVEL}, #line 73 "cssvalues.gperf" - {"monospace", CSS_VAL_MONOSPACE}, -#line 50 "cssvalues.gperf" - {"x-small", CSS_VAL_X_SMALL}, -#line 217 "cssvalues.gperf" - {"no-drop", CSS_VAL_NO_DROP}, + {"monospace", CSS_VAL_MONOSPACE}, +#line 141 "cssvalues.gperf" + {"left", CSS_VAL_LEFT}, +#line 267 "cssvalues.gperf" + {"level", CSS_VAL_LEVEL}, +#line 277 "cssvalues.gperf" + {"show", CSS_VAL_SHOW}, +#line 84 "cssvalues.gperf" + {"green", CSS_VAL_GREEN}, #line 57 "cssvalues.gperf" - {"smaller", CSS_VAL_SMALLER}, -#line 238 "cssvalues.gperf" - {"lowercase", CSS_VAL_LOWERCASE}, + {"smaller", CSS_VAL_SMALLER}, +#line 294 "cssvalues.gperf" + {"slow", CSS_VAL_SLOW}, #line 301 "cssvalues.gperf" - {"ellipsis", CSS_VAL_ELLIPSIS}, + {"ellipsis", CSS_VAL_ELLIPSIS}, #line 26 "cssvalues.gperf" - {"double", CSS_VAL_DOUBLE}, + {"double", CSS_VAL_DOUBLE}, #line 290 "cssvalues.gperf" - {"ahead", CSS_VAL_AHEAD}, + {"ahead", CSS_VAL_AHEAD}, #line 269 "cssvalues.gperf" - {"loud", CSS_VAL_LOUD}, -#line 126 "cssvalues.gperf" - {"-khtml-text", CSS_VAL__KHTML_TEXT}, -#line 258 "cssvalues.gperf" - {"both", CSS_VAL_BOTH}, + {"loud", CSS_VAL_LOUD}, +#line 137 "cssvalues.gperf" + {"top", CSS_VAL_TOP}, +#line 88 "cssvalues.gperf" + {"navy", CSS_VAL_NAVY}, +#line 193 "cssvalues.gperf" + {"table", CSS_VAL_TABLE}, #line 203 "cssvalues.gperf" - {"auto", CSS_VAL_AUTO}, -#line 319 "cssvalues.gperf" - {"use-script", CSS_VAL_USE_SCRIPT}, + {"auto", CSS_VAL_AUTO}, +#line 125 "cssvalues.gperf" + {"grey", CSS_VAL_GREY}, +#line 316 "cssvalues.gperf" + {"use-script", CSS_VAL_USE_SCRIPT}, #line 76 "cssvalues.gperf" - {"local", CSS_VAL_LOCAL}, + {"local", CSS_VAL_LOCAL}, #line 74 "cssvalues.gperf" - {"scroll", CSS_VAL_SCROLL}, -#line 178 "cssvalues.gperf" - {"lower-latin", CSS_VAL_LOWER_LATIN}, -#line 69 "cssvalues.gperf" - {"serif", CSS_VAL_SERIF}, + {"scroll", CSS_VAL_SCROLL}, +#line 258 "cssvalues.gperf" + {"both", CSS_VAL_BOTH}, +#line 273 "cssvalues.gperf" + {"overline", CSS_VAL_OVERLINE}, +#line 143 "cssvalues.gperf" + {"center", CSS_VAL_CENTER}, +#line 254 "cssvalues.gperf" + {"avoid", CSS_VAL_AVOID}, #line 145 "cssvalues.gperf" - {"-khtml-left", CSS_VAL__KHTML_LEFT}, + {"-khtml-left", CSS_VAL__KHTML_LEFT}, #line 166 "cssvalues.gperf" - {"armenian", CSS_VAL_ARMENIAN}, -#line 253 "cssvalues.gperf" - {"always", CSS_VAL_ALWAYS}, + {"armenian", CSS_VAL_ARMENIAN}, +#line 292 "cssvalues.gperf" + {"up", CSS_VAL_UP}, +#line 215 "cssvalues.gperf" + {"copy", CSS_VAL_COPY}, #line 298 "cssvalues.gperf" - {"alternate", CSS_VAL_ALTERNATE}, + {"alternate", CSS_VAL_ALTERNATE}, +#line 83 "cssvalues.gperf" + {"gray", CSS_VAL_GRAY}, #line 194 "cssvalues.gperf" - {"inline-table", CSS_VAL_INLINE_TABLE}, -#line 280 "cssvalues.gperf" - {"thin", CSS_VAL_THIN}, -#line 343 "cssvalues.gperf" - {"lr-tb", CSS_VAL_LR_TB}, -#line 330 "cssvalues.gperf" - {"start", CSS_VAL_START}, -#line 344 "cssvalues.gperf" - {"rl-tb", CSS_VAL_RL_TB}, -#line 300 "cssvalues.gperf" - {"clip", CSS_VAL_CLIP}, -#line 279 "cssvalues.gperf" - {"thick", CSS_VAL_THICK}, -#line 262 "cssvalues.gperf" - {"hand", CSS_VAL_HAND}, -#line 212 "cssvalues.gperf" - {"text", CSS_VAL_TEXT}, + {"inline-table", CSS_VAL_INLINE_TABLE}, +#line 69 "cssvalues.gperf" + {"serif", CSS_VAL_SERIF}, +#line 327 "cssvalues.gperf" + {"start", CSS_VAL_START}, +#line 291 "cssvalues.gperf" + {"reverse", CSS_VAL_REVERSE}, +#line 299 "cssvalues.gperf" + {"unfurl", CSS_VAL_UNFURL}, +#line 208 "cssvalues.gperf" + {"progress", CSS_VAL_PROGRESS}, #line 31 "cssvalues.gperf" - {"small-caption", CSS_VAL_SMALL_CAPTION}, + {"small-caption", CSS_VAL_SMALL_CAPTION}, +#line 138 "cssvalues.gperf" + {"bottom", CSS_VAL_BOTTOM}, #line 147 "cssvalues.gperf" - {"-khtml-center", CSS_VAL__KHTML_CENTER}, -#line 163 "cssvalues.gperf" - {"lower-roman", CSS_VAL_LOWER_ROMAN}, + {"-khtml-center", CSS_VAL__KHTML_CENTER}, #line 152 "cssvalues.gperf" - {"square", CSS_VAL_SQUARE}, + {"square", CSS_VAL_SQUARE}, #line 77 "cssvalues.gperf" - {"transparent", CSS_VAL_TRANSPARENT}, -#line 86 "cssvalues.gperf" - {"lime", CSS_VAL_LIME}, -#line 137 "cssvalues.gperf" - {"top", CSS_VAL_TOP}, -#line 33 "cssvalues.gperf" - {"italic", CSS_VAL_ITALIC}, -#line 304 "cssvalues.gperf" - {"content", CSS_VAL_CONTENT}, -#line 278 "cssvalues.gperf" - {"static", CSS_VAL_STATIC}, -#line 340 "cssvalues.gperf" - {"fill", CSS_VAL_FILL}, -#line 257 "cssvalues.gperf" - {"blink", CSS_VAL_BLINK}, -#line 296 "cssvalues.gperf" - {"infinite", CSS_VAL_INFINITE}, -#line 322 "cssvalues.gperf" - {"miter", CSS_VAL_MITER}, -#line 153 "cssvalues.gperf" - {"box", CSS_VAL_BOX}, -#line 151 "cssvalues.gperf" - {"circle", CSS_VAL_CIRCLE}, + {"transparent", CSS_VAL_TRANSPARENT}, +#line 127 "cssvalues.gperf" + {"repeat", CSS_VAL_REPEAT}, +#line 262 "cssvalues.gperf" + {"hand", CSS_VAL_HAND}, +#line 70 "cssvalues.gperf" + {"sans-serif", CSS_VAL_SANS_SERIF}, +#line 87 "cssvalues.gperf" + {"maroon", CSS_VAL_MAROON}, +#line 22 "cssvalues.gperf" + {"outset", CSS_VAL_OUTSET}, +#line 247 "cssvalues.gperf" + {"pre-wrap", CSS_VAL_PRE_WRAP}, +#line 280 "cssvalues.gperf" + {"thin", CSS_VAL_THIN}, +#line 251 "cssvalues.gperf" + {"above", CSS_VAL_ABOVE}, #line 35 "cssvalues.gperf" - {"small-caps", CSS_VAL_SMALL_CAPS}, + {"small-caps", CSS_VAL_SMALL_CAPS}, #line 110 "cssvalues.gperf" - {"inactivecaption", CSS_VAL_INACTIVECAPTION}, + {"inactivecaption", CSS_VAL_INACTIVECAPTION}, #line 266 "cssvalues.gperf" - {"landscape", CSS_VAL_LANDSCAPE}, -#line 111 "cssvalues.gperf" - {"inactivecaptiontext", CSS_VAL_INACTIVECAPTIONTEXT}, -#line 141 "cssvalues.gperf" - {"left", CSS_VAL_LEFT}, -#line 84 "cssvalues.gperf" - {"green", CSS_VAL_GREEN}, + {"landscape", CSS_VAL_LANDSCAPE}, +#line 167 "cssvalues.gperf" + {"georgian", CSS_VAL_GEORGIAN}, +#line 134 "cssvalues.gperf" + {"super", CSS_VAL_SUPER}, +#line 300 "cssvalues.gperf" + {"clip", CSS_VAL_CLIP}, +#line 279 "cssvalues.gperf" + {"thick", CSS_VAL_THICK}, #line 275 "cssvalues.gperf" - {"relative", CSS_VAL_RELATIVE}, + {"relative", CSS_VAL_RELATIVE}, #line 162 "cssvalues.gperf" - {"-khtml-tibetan", CSS_VAL__KHTML_TIBETAN}, -#line 255 "cssvalues.gperf" - {"below", CSS_VAL_BELOW}, + {"-khtml-tibetan", CSS_VAL__KHTML_TIBETAN}, #line 155 "cssvalues.gperf" - {"decimal", CSS_VAL_DECIMAL}, -#line 292 "cssvalues.gperf" - {"up", CSS_VAL_UP}, + {"decimal", CSS_VAL_DECIMAL}, #line 78 "cssvalues.gperf" - {"aqua", CSS_VAL_AQUA}, -#line 20 "cssvalues.gperf" - {"groove", CSS_VAL_GROOVE}, + {"aqua", CSS_VAL_AQUA}, +#line 64 "cssvalues.gperf" + {"semi-condensed", CSS_VAL_SEMI_CONDENSED}, #line 158 "cssvalues.gperf" - {"-khtml-lao", CSS_VAL__KHTML_LAO}, -#line 315 "cssvalues.gperf" - {"ideographic", CSS_VAL_IDEOGRAPHIC}, + {"-khtml-lao", CSS_VAL__KHTML_LAO}, #line 140 "cssvalues.gperf" - {"-khtml-auto", CSS_VAL__KHTML_AUTO}, -#line 192 "cssvalues.gperf" - {"inline-block", CSS_VAL_INLINE_BLOCK}, + {"-khtml-auto", CSS_VAL__KHTML_AUTO}, +#line 86 "cssvalues.gperf" + {"lime", CSS_VAL_LIME}, +#line 38 "cssvalues.gperf" + {"bolder", CSS_VAL_BOLDER}, +#line 75 "cssvalues.gperf" + {"fixed", CSS_VAL_FIXED}, +#line 272 "cssvalues.gperf" + {"mix", CSS_VAL_MIX}, +#line 201 "cssvalues.gperf" + {"table-cell", CSS_VAL_TABLE_CELL}, +#line 337 "cssvalues.gperf" + {"fill", CSS_VAL_FILL}, +#line 257 "cssvalues.gperf" + {"blink", CSS_VAL_BLINK}, +#line 319 "cssvalues.gperf" + {"miter", CSS_VAL_MITER}, +#line 312 "cssvalues.gperf" + {"ideographic", CSS_VAL_IDEOGRAPHIC}, +#line 23 "cssvalues.gperf" + {"dotted", CSS_VAL_DOTTED}, +#line 151 "cssvalues.gperf" + {"circle", CSS_VAL_CIRCLE}, +#line 16 "cssvalues.gperf" + {"-khtml-native", CSS_VAL__KHTML_NATIVE}, +#line 270 "cssvalues.gperf" + {"lower", CSS_VAL_LOWER}, +#line 343 "cssvalues.gperf" + {"tb-lr", CSS_VAL_TB_LR}, +#line 200 "cssvalues.gperf" + {"table-column", CSS_VAL_TABLE_COLUMN}, +#line 233 "cssvalues.gperf" + {"all-scroll", CSS_VAL_ALL_SCROLL}, +#line 129 "cssvalues.gperf" + {"repeat-y", CSS_VAL_REPEAT_Y}, +#line 202 "cssvalues.gperf" + {"table-caption", CSS_VAL_TABLE_CAPTION}, +#line 63 "cssvalues.gperf" + {"condensed", CSS_VAL_CONDENSED}, +#line 117 "cssvalues.gperf" + {"threedface", CSS_VAL_THREEDFACE}, +#line 53 "cssvalues.gperf" + {"large", CSS_VAL_LARGE}, +#line 189 "cssvalues.gperf" + {"list-item", CSS_VAL_LIST_ITEM}, +#line 33 "cssvalues.gperf" + {"italic", CSS_VAL_ITALIC}, +#line 278 "cssvalues.gperf" + {"static", CSS_VAL_STATIC}, +#line 288 "cssvalues.gperf" + {"forwards", CSS_VAL_FORWARDS}, #line 150 "cssvalues.gperf" - {"disc", CSS_VAL_DISC}, -#line 98 "cssvalues.gperf" - {"activecaption", CSS_VAL_ACTIVECAPTION}, -#line 193 "cssvalues.gperf" - {"table", CSS_VAL_TABLE}, -#line 307 "cssvalues.gperf" - {"cover", CSS_VAL_COVER}, + {"disc", CSS_VAL_DISC}, +#line 342 "cssvalues.gperf" + {"tb-rl", CSS_VAL_TB_RL}, +#line 245 "cssvalues.gperf" + {"nowrap", CSS_VAL_NOWRAP}, #line 132 "cssvalues.gperf" - {"middle", CSS_VAL_MIDDLE}, -#line 216 "cssvalues.gperf" - {"move", CSS_VAL_MOVE}, + {"middle", CSS_VAL_MIDDLE}, #line 81 "cssvalues.gperf" - {"crimson", CSS_VAL_CRIMSON}, -#line 265 "cssvalues.gperf" - {"invert", CSS_VAL_INVERT}, -#line 16 "cssvalues.gperf" - {"-khtml-native", CSS_VAL__KHTML_NATIVE}, -#line 72 "cssvalues.gperf" - {"fantasy", CSS_VAL_FANTASY}, -#line 143 "cssvalues.gperf" - {"center", CSS_VAL_CENTER}, -#line 138 "cssvalues.gperf" - {"bottom", CSS_VAL_BOTTOM}, -#line 52 "cssvalues.gperf" - {"medium", CSS_VAL_MEDIUM}, -#line 113 "cssvalues.gperf" - {"infotext", CSS_VAL_INFOTEXT}, -#line 233 "cssvalues.gperf" - {"all-scroll", CSS_VAL_ALL_SCROLL}, -#line 127 "cssvalues.gperf" - {"repeat", CSS_VAL_REPEAT}, -#line 324 "cssvalues.gperf" - {"bevel", CSS_VAL_BEVEL}, -#line 190 "cssvalues.gperf" - {"run-in", CSS_VAL_RUN_IN}, -#line 70 "cssvalues.gperf" - {"sans-serif", CSS_VAL_SANS_SERIF}, -#line 87 "cssvalues.gperf" - {"maroon", CSS_VAL_MAROON}, -#line 267 "cssvalues.gperf" - {"level", CSS_VAL_LEVEL}, -#line 285 "cssvalues.gperf" - {"content-box", CSS_VAL_CONTENT_BOX}, -#line 335 "cssvalues.gperf" - {"linearRGB", CSS_VAL_LINEARRGB}, -#line 277 "cssvalues.gperf" - {"show", CSS_VAL_SHOW}, -#line 263 "cssvalues.gperf" - {"hide", CSS_VAL_HIDE}, -#line 207 "cssvalues.gperf" - {"pointer", CSS_VAL_POINTER}, -#line 294 "cssvalues.gperf" - {"slow", CSS_VAL_SLOW}, -#line 205 "cssvalues.gperf" - {"context-menu", CSS_VAL_CONTEXT_MENU}, -#line 299 "cssvalues.gperf" - {"unfurl", CSS_VAL_UNFURL}, -#line 134 "cssvalues.gperf" - {"super", CSS_VAL_SUPER}, -#line 71 "cssvalues.gperf" - {"cursive", CSS_VAL_CURSIVE}, -#line 208 "cssvalues.gperf" - {"progress", CSS_VAL_PROGRESS}, + {"crimson", CSS_VAL_CRIMSON}, #line 159 "cssvalues.gperf" - {"-khtml-persian", CSS_VAL__KHTML_PERSIAN}, -#line 135 "cssvalues.gperf" - {"text-top", CSS_VAL_TEXT_TOP}, -#line 231 "cssvalues.gperf" - {"col-resize", CSS_VAL_COL_RESIZE}, + {"-khtml-persian", CSS_VAL__KHTML_PERSIAN}, +#line 218 "cssvalues.gperf" + {"not-allowed", CSS_VAL_NOT_ALLOWED}, +#line 293 "cssvalues.gperf" + {"down", CSS_VAL_DOWN}, #line 282 "cssvalues.gperf" - {"-khtml-normal", CSS_VAL__KHTML_NORMAL}, + {"-khtml-normal", CSS_VAL__KHTML_NORMAL}, +#line 96 "cssvalues.gperf" + {"yellow", CSS_VAL_YELLOW}, #line 115 "cssvalues.gperf" - {"scrollbar", CSS_VAL_SCROLLBAR}, -#line 64 "cssvalues.gperf" - {"semi-condensed", CSS_VAL_SEMI_CONDENSED}, -#line 189 "cssvalues.gperf" - {"list-item", CSS_VAL_LIST_ITEM}, -#line 128 "cssvalues.gperf" - {"repeat-x", CSS_VAL_REPEAT_X}, + {"scrollbar", CSS_VAL_SCROLLBAR}, +#line 217 "cssvalues.gperf" + {"no-drop", CSS_VAL_NO_DROP}, +#line 271 "cssvalues.gperf" + {"marquee", CSS_VAL_MARQUEE}, +#line 231 "cssvalues.gperf" + {"col-resize", CSS_VAL_COL_RESIZE}, +#line 332 "cssvalues.gperf" + {"linearRGB", CSS_VAL_LINEARRGB}, +#line 276 "cssvalues.gperf" + {"separate", CSS_VAL_SEPARATE}, +#line 160 "cssvalues.gperf" + {"-khtml-urdu", CSS_VAL__KHTML_URDU}, +#line 192 "cssvalues.gperf" + {"inline-block", CSS_VAL_INLINE_BLOCK}, +#line 59 "cssvalues.gperf" + {"wider", CSS_VAL_WIDER}, +#line 101 "cssvalues.gperf" + {"buttonface", CSS_VAL_BUTTONFACE}, +#line 207 "cssvalues.gperf" + {"pointer", CSS_VAL_POINTER}, #line 161 "cssvalues.gperf" - {"-khtml-thai", CSS_VAL__KHTML_THAI}, -#line 148 "cssvalues.gperf" - {"outside", CSS_VAL_OUTSIDE}, -#line 104 "cssvalues.gperf" - {"buttontext", CSS_VAL_BUTTONTEXT}, -#line 273 "cssvalues.gperf" - {"overline", CSS_VAL_OVERLINE}, -#line 30 "cssvalues.gperf" - {"message-box", CSS_VAL_MESSAGE_BOX}, + {"-khtml-thai", CSS_VAL__KHTML_THAI}, #line 82 "cssvalues.gperf" - {"fuchsia", CSS_VAL_FUCHSIA}, -#line 22 "cssvalues.gperf" - {"outset", CSS_VAL_OUTSET}, -#line 160 "cssvalues.gperf" - {"-khtml-urdu", CSS_VAL__KHTML_URDU}, -#line 339 "cssvalues.gperf" - {"painted", CSS_VAL_PAINTED}, -#line 254 "cssvalues.gperf" - {"avoid", CSS_VAL_AVOID}, + {"fuchsia", CSS_VAL_FUCHSIA}, +#line 58 "cssvalues.gperf" + {"larger", CSS_VAL_LARGER}, +#line 114 "cssvalues.gperf" + {"menutext", CSS_VAL_MENUTEXT}, +#line 62 "cssvalues.gperf" + {"extra-condensed", CSS_VAL_EXTRA_CONDENSED}, #line 211 "cssvalues.gperf" - {"crosshair", CSS_VAL_CROSSHAIR}, -#line 251 "cssvalues.gperf" - {"above", CSS_VAL_ABOVE}, -#line 239 "cssvalues.gperf" - {"visible", CSS_VAL_VISIBLE}, -#line 167 "cssvalues.gperf" - {"georgian", CSS_VAL_GEORGIAN}, -#line 177 "cssvalues.gperf" - {"lower-alpha", CSS_VAL_LOWER_ALPHA}, -#line 65 "cssvalues.gperf" - {"semi-expanded", CSS_VAL_SEMI_EXPANDED}, -#line 136 "cssvalues.gperf" - {"text-bottom", CSS_VAL_TEXT_BOTTOM}, -#line 54 "cssvalues.gperf" - {"x-large", CSS_VAL_X_LARGE}, -#line 291 "cssvalues.gperf" - {"reverse", CSS_VAL_REVERSE}, -#line 220 "cssvalues.gperf" - {"n-resize", CSS_VAL_N_RESIZE}, + {"crosshair", CSS_VAL_CROSSHAIR}, +#line 263 "cssvalues.gperf" + {"hide", CSS_VAL_HIDE}, +#line 209 "cssvalues.gperf" + {"wait", CSS_VAL_WAIT}, +#line 124 "cssvalues.gperf" + {"currentcolor", CSS_VAL_CURRENTCOLOR}, +#line 307 "cssvalues.gperf" + {"before-edge", CSS_VAL_BEFORE_EDGE}, #line 61 "cssvalues.gperf" - {"ultra-condensed", CSS_VAL_ULTRA_CONDENSED}, -#line 219 "cssvalues.gperf" - {"e-resize", CSS_VAL_E_RESIZE}, -#line 232 "cssvalues.gperf" - {"row-resize", CSS_VAL_ROW_RESIZE}, + {"ultra-condensed", CSS_VAL_ULTRA_CONDENSED}, #line 109 "cssvalues.gperf" - {"inactiveborder", CSS_VAL_INACTIVEBORDER}, -#line 38 "cssvalues.gperf" - {"bolder", CSS_VAL_BOLDER}, -#line 213 "cssvalues.gperf" - {"vertical-text", CSS_VAL_VERTICAL_TEXT}, -#line 214 "cssvalues.gperf" - {"alias", CSS_VAL_ALIAS}, -#line 201 "cssvalues.gperf" - {"table-cell", CSS_VAL_TABLE_CELL}, + {"inactiveborder", CSS_VAL_INACTIVEBORDER}, +#line 190 "cssvalues.gperf" + {"run-in", CSS_VAL_RUN_IN}, +#line 198 "cssvalues.gperf" + {"table-row", CSS_VAL_TABLE_ROW}, +#line 308 "cssvalues.gperf" + {"text-before-edge", CSS_VAL_TEXT_BEFORE_EDGE}, #line 154 "cssvalues.gperf" - {"-khtml-diamond", CSS_VAL__KHTML_DIAMOND}, -#line 23 "cssvalues.gperf" - {"dotted", CSS_VAL_DOTTED}, + {"-khtml-diamond", CSS_VAL__KHTML_DIAMOND}, +#line 336 "cssvalues.gperf" + {"painted", CSS_VAL_PAINTED}, +#line 340 "cssvalues.gperf" + {"lr-tb", CSS_VAL_LR_TB}, +#line 204 "cssvalues.gperf" + {"default", CSS_VAL_DEFAULT}, +#line 341 "cssvalues.gperf" + {"rl-tb", CSS_VAL_RL_TB}, +#line 323 "cssvalues.gperf" + {"accumulate", CSS_VAL_ACCUMULATE}, +#line 244 "cssvalues.gperf" + {"open-quote", CSS_VAL_OPEN_QUOTE}, +#line 239 "cssvalues.gperf" + {"visible", CSS_VAL_VISIBLE}, +#line 241 "cssvalues.gperf" + {"close-quote", CSS_VAL_CLOSE_QUOTE}, +#line 24 "cssvalues.gperf" + {"dashed", CSS_VAL_DASHED}, +#line 249 "cssvalues.gperf" + {"-khtml-nowrap", CSS_VAL__KHTML_NOWRAP}, +#line 71 "cssvalues.gperf" + {"cursive", CSS_VAL_CURSIVE}, +#line 313 "cssvalues.gperf" + {"alphabetic", CSS_VAL_ALPHABETIC}, +#line 238 "cssvalues.gperf" + {"lowercase", CSS_VAL_LOWERCASE}, +#line 165 "cssvalues.gperf" + {"hebrew", CSS_VAL_HEBREW}, +#line 185 "cssvalues.gperf" + {"-khtml-open-quote", CSS_VAL__KHTML_OPEN_QUOTE}, +#line 66 "cssvalues.gperf" + {"expanded", CSS_VAL_EXPANDED}, #line 326 "cssvalues.gperf" - {"accumulate", CSS_VAL_ACCUMULATE}, -#line 200 "cssvalues.gperf" - {"table-column", CSS_VAL_TABLE_COLUMN}, -#line 68 "cssvalues.gperf" - {"ultra-expanded", CSS_VAL_ULTRA_EXPANDED}, + {"geometricPrecision", CSS_VAL_GEOMETRICPRECISION}, +#line 20 "cssvalues.gperf" + {"groove", CSS_VAL_GROOVE}, #line 27 "cssvalues.gperf" - {"caption", CSS_VAL_CAPTION}, -#line 105 "cssvalues.gperf" - {"captiontext", CSS_VAL_CAPTIONTEXT}, -#line 303 "cssvalues.gperf" - {"border", CSS_VAL_BORDER}, -#line 97 "cssvalues.gperf" - {"activeborder", CSS_VAL_ACTIVEBORDER}, -#line 223 "cssvalues.gperf" - {"s-resize", CSS_VAL_S_RESIZE}, -#line 202 "cssvalues.gperf" - {"table-caption", CSS_VAL_TABLE_CAPTION}, -#line 63 "cssvalues.gperf" - {"condensed", CSS_VAL_CONDENSED}, -#line 117 "cssvalues.gperf" - {"threedface", CSS_VAL_THREEDFACE}, -#line 276 "cssvalues.gperf" - {"separate", CSS_VAL_SEPARATE}, -#line 337 "cssvalues.gperf" - {"visibleFill", CSS_VAL_VISIBLEFILL}, -#line 75 "cssvalues.gperf" - {"fixed", CSS_VAL_FIXED}, -#line 130 "cssvalues.gperf" - {"no-repeat", CSS_VAL_NO_REPEAT}, -#line 272 "cssvalues.gperf" - {"mix", CSS_VAL_MIX}, -#line 101 "cssvalues.gperf" - {"buttonface", CSS_VAL_BUTTONFACE}, -#line 182 "cssvalues.gperf" - {"katakana", CSS_VAL_KATAKANA}, -#line 247 "cssvalues.gperf" - {"pre-wrap", CSS_VAL_PRE_WRAP}, -#line 100 "cssvalues.gperf" - {"background", CSS_VAL_BACKGROUND}, -#line 242 "cssvalues.gperf" - {"no-close-quote", CSS_VAL_NO_CLOSE_QUOTE}, -#line 321 "cssvalues.gperf" - {"reset-size", CSS_VAL_RESET_SIZE}, -#line 230 "cssvalues.gperf" - {"nwse-resize", CSS_VAL_NWSE_RESIZE}, -#line 15 "cssvalues.gperf" - {"initial", CSS_VAL_INITIAL}, -#line 243 "cssvalues.gperf" - {"no-open-quote", CSS_VAL_NO_OPEN_QUOTE}, -#line 215 "cssvalues.gperf" - {"copy", CSS_VAL_COPY}, + {"caption", CSS_VAL_CAPTION}, #line 305 "cssvalues.gperf" - {"padding", CSS_VAL_PADDING}, -#line 49 "cssvalues.gperf" - {"xx-small", CSS_VAL_XX_SMALL}, -#line 316 "cssvalues.gperf" - {"alphabetic", CSS_VAL_ALPHABETIC}, -#line 125 "cssvalues.gperf" - {"grey", CSS_VAL_GREY}, -#line 59 "cssvalues.gperf" - {"wider", CSS_VAL_WIDER}, -#line 288 "cssvalues.gperf" - {"forwards", CSS_VAL_FORWARDS}, -#line 185 "cssvalues.gperf" - {"-khtml-open-quote", CSS_VAL__KHTML_OPEN_QUOTE}, -#line 124 "cssvalues.gperf" - {"currentcolor", CSS_VAL_CURRENTCOLOR}, -#line 284 "cssvalues.gperf" - {"border-box", CSS_VAL_BORDER_BOX}, + {"evenodd", CSS_VAL_EVENODD}, +#line 126 "cssvalues.gperf" + {"-khtml-text", CSS_VAL__KHTML_TEXT}, #line 89 "cssvalues.gperf" - {"olive", CSS_VAL_OLIVE}, -#line 209 "cssvalues.gperf" - {"wait", CSS_VAL_WAIT}, -#line 218 "cssvalues.gperf" - {"not-allowed", CSS_VAL_NOT_ALLOWED}, -#line 83 "cssvalues.gperf" - {"gray", CSS_VAL_GRAY}, -#line 175 "cssvalues.gperf" - {"lower-greek", CSS_VAL_LOWER_GREEK}, -#line 24 "cssvalues.gperf" - {"dashed", CSS_VAL_DASHED}, -#line 336 "cssvalues.gperf" - {"visiblePainted", CSS_VAL_VISIBLEPAINTED}, -#line 88 "cssvalues.gperf" - {"navy", CSS_VAL_NAVY}, -#line 287 "cssvalues.gperf" - {"disabled", CSS_VAL_DISABLED}, -#line 157 "cssvalues.gperf" - {"-khtml-arabic-indic", CSS_VAL__KHTML_ARABIC_INDIC}, -#line 53 "cssvalues.gperf" - {"large", CSS_VAL_LARGE}, -#line 309 "cssvalues.gperf" - {"nonzero", CSS_VAL_NONZERO}, -#line 142 "cssvalues.gperf" - {"right", CSS_VAL_RIGHT}, -#line 297 "cssvalues.gperf" - {"slide", CSS_VAL_SLIDE}, -#line 302 "cssvalues.gperf" - {"padding-box", CSS_VAL_PADDING_BOX}, + {"olive", CSS_VAL_OLIVE}, +#line 148 "cssvalues.gperf" + {"outside", CSS_VAL_OUTSIDE}, +#line 311 "cssvalues.gperf" + {"text-after-edge", CSS_VAL_TEXT_AFTER_EDGE}, +#line 306 "cssvalues.gperf" + {"nonzero", CSS_VAL_NONZERO}, +#line 214 "cssvalues.gperf" + {"alias", CSS_VAL_ALIAS}, +#line 250 "cssvalues.gperf" + {"break-word", CSS_VAL_BREAK_WORD}, +#line 32 "cssvalues.gperf" + {"status-bar", CSS_VAL_STATUS_BAR}, +#line 178 "cssvalues.gperf" + {"lower-latin", CSS_VAL_LOWER_LATIN}, +#line 318 "cssvalues.gperf" + {"reset-size", CSS_VAL_RESET_SIZE}, +#line 113 "cssvalues.gperf" + {"infotext", CSS_VAL_INFOTEXT}, +#line 60 "cssvalues.gperf" + {"narrower", CSS_VAL_NARROWER}, +#line 310 "cssvalues.gperf" + {"after-edge", CSS_VAL_AFTER_EDGE}, #line 146 "cssvalues.gperf" - {"-khtml-right", CSS_VAL__KHTML_RIGHT}, + {"-khtml-right", CSS_VAL__KHTML_RIGHT}, +#line 253 "cssvalues.gperf" + {"always", CSS_VAL_ALWAYS}, +#line 285 "cssvalues.gperf" + {"content-box", CSS_VAL_CONTENT_BOX}, +#line 95 "cssvalues.gperf" + {"white", CSS_VAL_WHITE}, +#line 334 "cssvalues.gperf" + {"visibleFill", CSS_VAL_VISIBLEFILL}, +#line 297 "cssvalues.gperf" + {"slide", CSS_VAL_SLIDE}, +#line 205 "cssvalues.gperf" + {"context-menu", CSS_VAL_CONTEXT_MENU}, +#line 237 "cssvalues.gperf" + {"uppercase", CSS_VAL_UPPERCASE}, #line 186 "cssvalues.gperf" - {"-khtml-close-quote", CSS_VAL__KHTML_CLOSE_QUOTE}, + {"-khtml-close-quote", CSS_VAL__KHTML_CLOSE_QUOTE}, +#line 163 "cssvalues.gperf" + {"lower-roman", CSS_VAL_LOWER_ROMAN}, +#line 229 "cssvalues.gperf" + {"nesw-resize", CSS_VAL_NESW_RESIZE}, +#line 30 "cssvalues.gperf" + {"message-box", CSS_VAL_MESSAGE_BOX}, +#line 315 "cssvalues.gperf" + {"mathematical ", CSS_VAL_MATHEMATICAL }, +#line 180 "cssvalues.gperf" + {"upper-latin", CSS_VAL_UPPER_LATIN}, +#line 130 "cssvalues.gperf" + {"no-repeat", CSS_VAL_NO_REPEAT}, +#line 93 "cssvalues.gperf" + {"silver", CSS_VAL_SILVER}, +#line 182 "cssvalues.gperf" + {"katakana", CSS_VAL_KATAKANA}, +#line 111 "cssvalues.gperf" + {"inactivecaptiontext", CSS_VAL_INACTIVECAPTIONTEXT}, +#line 100 "cssvalues.gperf" + {"background", CSS_VAL_BACKGROUND}, #line 106 "cssvalues.gperf" - {"graytext", CSS_VAL_GRAYTEXT}, + {"graytext", CSS_VAL_GRAYTEXT}, +#line 21 "cssvalues.gperf" + {"ridge", CSS_VAL_RIDGE}, +#line 157 "cssvalues.gperf" + {"-khtml-arabic-indic", CSS_VAL__KHTML_ARABIC_INDIC}, +#line 128 "cssvalues.gperf" + {"repeat-x", CSS_VAL_REPEAT_X}, +#line 104 "cssvalues.gperf" + {"buttontext", CSS_VAL_BUTTONTEXT}, +#line 98 "cssvalues.gperf" + {"activecaption", CSS_VAL_ACTIVECAPTION}, +#line 324 "cssvalues.gperf" + {"optimizeSpeed", CSS_VAL_OPTIMIZESPEED}, +#line 197 "cssvalues.gperf" + {"table-footer-group", CSS_VAL_TABLE_FOOTER_GROUP}, +#line 144 "cssvalues.gperf" + {"justify", CSS_VAL_JUSTIFY}, +#line 199 "cssvalues.gperf" + {"table-column-group", CSS_VAL_TABLE_COLUMN_GROUP}, +#line 164 "cssvalues.gperf" + {"upper-roman", CSS_VAL_UPPER_ROMAN}, +#line 18 "cssvalues.gperf" + {"hidden", CSS_VAL_HIDDEN}, +#line 65 "cssvalues.gperf" + {"semi-expanded", CSS_VAL_SEMI_EXPANDED}, +#line 242 "cssvalues.gperf" + {"no-close-quote", CSS_VAL_NO_CLOSE_QUOTE}, #line 139 "cssvalues.gperf" - {"-khtml-baseline-middle", CSS_VAL__KHTML_BASELINE_MIDDLE}, -#line 62 "cssvalues.gperf" - {"extra-condensed", CSS_VAL_EXTRA_CONDENSED}, -#line 129 "cssvalues.gperf" - {"repeat-y", CSS_VAL_REPEAT_Y}, -#line 39 "cssvalues.gperf" - {"lighter", CSS_VAL_LIGHTER}, -#line 320 "cssvalues.gperf" - {"no-change", CSS_VAL_NO_CHANGE}, -#line 181 "cssvalues.gperf" - {"hiragana", CSS_VAL_HIRAGANA}, -#line 249 "cssvalues.gperf" - {"-khtml-nowrap", CSS_VAL__KHTML_NOWRAP}, -#line 338 "cssvalues.gperf" - {"visibleStroke", CSS_VAL_VISIBLESTROKE}, -#line 93 "cssvalues.gperf" - {"silver", CSS_VAL_SILVER}, -#line 271 "cssvalues.gperf" - {"marquee", CSS_VAL_MARQUEE}, -#line 241 "cssvalues.gperf" - {"close-quote", CSS_VAL_CLOSE_QUOTE}, -#line 56 "cssvalues.gperf" - {"-khtml-xxx-large", CSS_VAL__KHTML_XXX_LARGE}, -#line 67 "cssvalues.gperf" - {"extra-expanded", CSS_VAL_EXTRA_EXPANDED}, -#line 58 "cssvalues.gperf" - {"larger", CSS_VAL_LARGER}, + {"-khtml-baseline-middle", CSS_VAL__KHTML_BASELINE_MIDDLE}, +#line 333 "cssvalues.gperf" + {"visiblePainted", CSS_VAL_VISIBLEPAINTED}, #line 256 "cssvalues.gperf" - {"bidi-override", CSS_VAL_BIDI_OVERRIDE}, -#line 318 "cssvalues.gperf" - {"mathematical ", CSS_VAL_MATHEMATICAL }, + {"bidi-override", CSS_VAL_BIDI_OVERRIDE}, +#line 287 "cssvalues.gperf" + {"disabled", CSS_VAL_DISABLED}, +#line 243 "cssvalues.gperf" + {"no-open-quote", CSS_VAL_NO_OPEN_QUOTE}, +#line 15 "cssvalues.gperf" + {"initial", CSS_VAL_INITIAL}, +#line 220 "cssvalues.gperf" + {"n-resize", CSS_VAL_N_RESIZE}, +#line 219 "cssvalues.gperf" + {"e-resize", CSS_VAL_E_RESIZE}, +#line 50 "cssvalues.gperf" + {"x-small", CSS_VAL_X_SMALL}, #line 283 "cssvalues.gperf" - {"-khtml-around-floats", CSS_VAL__KHTML_AROUND_FLOATS}, -#line 310 "cssvalues.gperf" - {"before-edge", CSS_VAL_BEFORE_EDGE}, -#line 250 "cssvalues.gperf" - {"break-word", CSS_VAL_BREAK_WORD}, -#line 32 "cssvalues.gperf" - {"status-bar", CSS_VAL_STATUS_BAR}, -#line 18 "cssvalues.gperf" - {"hidden", CSS_VAL_HIDDEN}, -#line 55 "cssvalues.gperf" - {"xx-large", CSS_VAL_XX_LARGE}, -#line 327 "cssvalues.gperf" - {"optimizeSpeed", CSS_VAL_OPTIMIZESPEED}, -#line 144 "cssvalues.gperf" - {"justify", CSS_VAL_JUSTIFY}, -#line 237 "cssvalues.gperf" - {"uppercase", CSS_VAL_UPPERCASE}, -#line 244 "cssvalues.gperf" - {"open-quote", CSS_VAL_OPEN_QUOTE}, -#line 228 "cssvalues.gperf" - {"ns-resize", CSS_VAL_NS_RESIZE}, -#line 222 "cssvalues.gperf" - {"nw-resize", CSS_VAL_NW_RESIZE}, -#line 221 "cssvalues.gperf" - {"ne-resize", CSS_VAL_NE_RESIZE}, -#line 227 "cssvalues.gperf" - {"ew-resize", CSS_VAL_EW_RESIZE}, + {"-khtml-around-floats", CSS_VAL__KHTML_AROUND_FLOATS}, +#line 325 "cssvalues.gperf" + {"crispEdges", CSS_VAL_CRISPEDGES}, +#line 314 "cssvalues.gperf" + {"hanging", CSS_VAL_HANGING}, +#line 236 "cssvalues.gperf" + {"capitalize", CSS_VAL_CAPITALIZE}, +#line 142 "cssvalues.gperf" + {"right", CSS_VAL_RIGHT}, +#line 289 "cssvalues.gperf" + {"backwards", CSS_VAL_BACKWARDS}, +#line 223 "cssvalues.gperf" + {"s-resize", CSS_VAL_S_RESIZE}, +#line 330 "cssvalues.gperf" + {"optimizeQuality", CSS_VAL_OPTIMIZEQUALITY}, +#line 181 "cssvalues.gperf" + {"hiragana", CSS_VAL_HIRAGANA}, +#line 284 "cssvalues.gperf" + {"border-box", CSS_VAL_BORDER_BOX}, +#line 230 "cssvalues.gperf" + {"nwse-resize", CSS_VAL_NWSE_RESIZE}, +#line 39 "cssvalues.gperf" + {"lighter", CSS_VAL_LIGHTER}, +#line 195 "cssvalues.gperf" + {"table-row-group", CSS_VAL_TABLE_ROW_GROUP}, +#line 177 "cssvalues.gperf" + {"lower-alpha", CSS_VAL_LOWER_ALPHA}, #line 171 "cssvalues.gperf" - {"-khtml-simp-chinese-formal", CSS_VAL__KHTML_SIMP_CHINESE_FORMAL}, + {"-khtml-simp-chinese-formal", CSS_VAL__KHTML_SIMP_CHINESE_FORMAL}, #line 172 "cssvalues.gperf" - {"-khtml-simp-chinese-informal", CSS_VAL__KHTML_SIMP_CHINESE_INFORMAL}, + {"-khtml-simp-chinese-informal", CSS_VAL__KHTML_SIMP_CHINESE_INFORMAL}, +#line 120 "cssvalues.gperf" + {"threedshadow", CSS_VAL_THREEDSHADOW}, +#line 232 "cssvalues.gperf" + {"row-resize", CSS_VAL_ROW_RESIZE}, +#line 67 "cssvalues.gperf" + {"extra-expanded", CSS_VAL_EXTRA_EXPANDED}, #line 329 "cssvalues.gperf" - {"geometricPrecision", CSS_VAL_GEOMETRICPRECISION}, -#line 180 "cssvalues.gperf" - {"upper-latin", CSS_VAL_UPPER_LATIN}, -#line 226 "cssvalues.gperf" - {"w-resize", CSS_VAL_W_RESIZE}, -#line 308 "cssvalues.gperf" - {"evenodd", CSS_VAL_EVENODD}, -#line 225 "cssvalues.gperf" - {"sw-resize", CSS_VAL_SW_RESIZE}, -#line 224 "cssvalues.gperf" - {"se-resize", CSS_VAL_SE_RESIZE}, -#line 328 "cssvalues.gperf" - {"crispEdges", CSS_VAL_CRISPEDGES}, -#line 198 "cssvalues.gperf" - {"table-row", CSS_VAL_TABLE_ROW}, -#line 236 "cssvalues.gperf" - {"capitalize", CSS_VAL_CAPITALIZE}, -#line 165 "cssvalues.gperf" - {"hebrew", CSS_VAL_HEBREW}, -#line 313 "cssvalues.gperf" - {"after-edge", CSS_VAL_AFTER_EDGE}, -#line 204 "cssvalues.gperf" - {"default", CSS_VAL_DEFAULT}, -#line 66 "cssvalues.gperf" - {"expanded", CSS_VAL_EXPANDED}, -#line 60 "cssvalues.gperf" - {"narrower", CSS_VAL_NARROWER}, -#line 164 "cssvalues.gperf" - {"upper-roman", CSS_VAL_UPPER_ROMAN}, -#line 95 "cssvalues.gperf" - {"white", CSS_VAL_WHITE}, -#line 21 "cssvalues.gperf" - {"ridge", CSS_VAL_RIDGE}, -#line 229 "cssvalues.gperf" - {"nesw-resize", CSS_VAL_NESW_RESIZE}, + {"optimizeLegibility", CSS_VAL_OPTIMIZELEGIBILITY}, +#line 68 "cssvalues.gperf" + {"ultra-expanded", CSS_VAL_ULTRA_EXPANDED}, +#line 97 "cssvalues.gperf" + {"activeborder", CSS_VAL_ACTIVEBORDER}, +#line 105 "cssvalues.gperf" + {"captiontext", CSS_VAL_CAPTIONTEXT}, #line 176 "cssvalues.gperf" - {"-khtml-upper-greek", CSS_VAL__KHTML_UPPER_GREEK}, -#line 289 "cssvalues.gperf" - {"backwards", CSS_VAL_BACKWARDS}, + {"-khtml-upper-greek", CSS_VAL__KHTML_UPPER_GREEK}, +#line 226 "cssvalues.gperf" + {"w-resize", CSS_VAL_W_RESIZE}, #line 317 "cssvalues.gperf" - {"hanging", CSS_VAL_HANGING}, -#line 184 "cssvalues.gperf" - {"katakana-iroha", CSS_VAL_KATAKANA_IROHA}, -#line 311 "cssvalues.gperf" - {"text-before-edge", CSS_VAL_TEXT_BEFORE_EDGE}, -#line 96 "cssvalues.gperf" - {"yellow", CSS_VAL_YELLOW}, -#line 197 "cssvalues.gperf" - {"table-footer-group", CSS_VAL_TABLE_FOOTER_GROUP}, -#line 199 "cssvalues.gperf" - {"table-column-group", CSS_VAL_TABLE_COLUMN_GROUP}, -#line 169 "cssvalues.gperf" - {"-khtml-japanese-formal", CSS_VAL__KHTML_JAPANESE_FORMAL}, -#line 170 "cssvalues.gperf" - {"-khtml-japanese-informal", CSS_VAL__KHTML_JAPANESE_INFORMAL}, -#line 173 "cssvalues.gperf" - {"-khtml-trad-chinese-formal", CSS_VAL__KHTML_TRAD_CHINESE_FORMAL}, -#line 174 "cssvalues.gperf" - {"-khtml-trad-chinese-informal", CSS_VAL__KHTML_TRAD_CHINESE_INFORMAL}, -#line 314 "cssvalues.gperf" - {"text-after-edge", CSS_VAL_TEXT_AFTER_EDGE}, -#line 264 "cssvalues.gperf" - {"higher", CSS_VAL_HIGHER}, + {"no-change", CSS_VAL_NO_CHANGE}, +#line 335 "cssvalues.gperf" + {"visibleStroke", CSS_VAL_VISIBLESTROKE}, +#line 103 "cssvalues.gperf" + {"buttonshadow", CSS_VAL_BUTTONSHADOW}, +#line 121 "cssvalues.gperf" + {"window", CSS_VAL_WINDOW}, #line 179 "cssvalues.gperf" - {"upper-alpha", CSS_VAL_UPPER_ALPHA}, -#line 107 "cssvalues.gperf" - {"highlight", CSS_VAL_HIGHLIGHT}, -#line 108 "cssvalues.gperf" - {"highlighttext", CSS_VAL_HIGHLIGHTTEXT}, -#line 183 "cssvalues.gperf" - {"hiragana-iroha", CSS_VAL_HIRAGANA_IROHA}, + {"upper-alpha", CSS_VAL_UPPER_ALPHA}, +#line 228 "cssvalues.gperf" + {"ns-resize", CSS_VAL_NS_RESIZE}, +#line 221 "cssvalues.gperf" + {"ne-resize", CSS_VAL_NE_RESIZE}, +#line 54 "cssvalues.gperf" + {"x-large", CSS_VAL_X_LARGE}, +#line 49 "cssvalues.gperf" + {"xx-small", CSS_VAL_XX_SMALL}, +#line 213 "cssvalues.gperf" + {"vertical-text", CSS_VAL_VERTICAL_TEXT}, +#line 175 "cssvalues.gperf" + {"lower-greek", CSS_VAL_LOWER_GREEK}, +#line 224 "cssvalues.gperf" + {"se-resize", CSS_VAL_SE_RESIZE}, +#line 55 "cssvalues.gperf" + {"xx-large", CSS_VAL_XX_LARGE}, +#line 302 "cssvalues.gperf" + {"padding-box", CSS_VAL_PADDING_BOX}, #line 268 "cssvalues.gperf" - {"line-through", CSS_VAL_LINE_THROUGH}, -#line 333 "cssvalues.gperf" - {"optimizeQuality", CSS_VAL_OPTIMIZEQUALITY}, -#line 120 "cssvalues.gperf" - {"threedshadow", CSS_VAL_THREEDSHADOW}, -#line 168 "cssvalues.gperf" - {"cjk-ideographic", CSS_VAL_CJK_IDEOGRAPHIC}, -#line 103 "cssvalues.gperf" - {"buttonshadow", CSS_VAL_BUTTONSHADOW}, + {"line-through", CSS_VAL_LINE_THROUGH}, #line 112 "cssvalues.gperf" - {"infobackground", CSS_VAL_INFOBACKGROUND}, + {"infobackground", CSS_VAL_INFOBACKGROUND}, +#line 264 "cssvalues.gperf" + {"higher", CSS_VAL_HIGHER}, #line 196 "cssvalues.gperf" - {"table-header-group", CSS_VAL_TABLE_HEADER_GROUP}, -#line 195 "cssvalues.gperf" - {"table-row-group", CSS_VAL_TABLE_ROW_GROUP}, -#line 332 "cssvalues.gperf" - {"optimizeLegibility", CSS_VAL_OPTIMIZELEGIBILITY}, -#line 156 "cssvalues.gperf" - {"decimal-leading-zero", CSS_VAL_DECIMAL_LEADING_ZERO}, -#line 121 "cssvalues.gperf" - {"window", CSS_VAL_WINDOW}, -#line 123 "cssvalues.gperf" - {"windowtext", CSS_VAL_WINDOWTEXT}, + {"table-header-group", CSS_VAL_TABLE_HEADER_GROUP}, +#line 173 "cssvalues.gperf" + {"-khtml-trad-chinese-formal", CSS_VAL__KHTML_TRAD_CHINESE_FORMAL}, +#line 174 "cssvalues.gperf" + {"-khtml-trad-chinese-informal", CSS_VAL__KHTML_TRAD_CHINESE_INFORMAL}, +#line 169 "cssvalues.gperf" + {"-khtml-japanese-formal", CSS_VAL__KHTML_JAPANESE_FORMAL}, +#line 170 "cssvalues.gperf" + {"-khtml-japanese-informal", CSS_VAL__KHTML_JAPANESE_INFORMAL}, +#line 184 "cssvalues.gperf" + {"katakana-iroha", CSS_VAL_KATAKANA_IROHA}, +#line 122 "cssvalues.gperf" + {"windowframe", CSS_VAL_WINDOWFRAME}, #line 118 "cssvalues.gperf" - {"threedhighlight", CSS_VAL_THREEDHIGHLIGHT}, + {"threedhighlight", CSS_VAL_THREEDHIGHLIGHT}, +#line 107 "cssvalues.gperf" + {"highlight", CSS_VAL_HIGHLIGHT}, #line 102 "cssvalues.gperf" - {"buttonhighlight", CSS_VAL_BUTTONHIGHLIGHT}, -#line 122 "cssvalues.gperf" - {"windowframe", CSS_VAL_WINDOWFRAME}, -#line 116 "cssvalues.gperf" - {"threeddarkshadow", CSS_VAL_THREEDDARKSHADOW}, + {"buttonhighlight", CSS_VAL_BUTTONHIGHLIGHT}, #line 119 "cssvalues.gperf" - {"threedlightshadow", CSS_VAL_THREEDLIGHTSHADOW}, + {"threedlightshadow", CSS_VAL_THREEDLIGHTSHADOW}, +#line 183 "cssvalues.gperf" + {"hiragana-iroha", CSS_VAL_HIRAGANA_IROHA}, +#line 156 "cssvalues.gperf" + {"decimal-leading-zero", CSS_VAL_DECIMAL_LEADING_ZERO}, +#line 123 "cssvalues.gperf" + {"windowtext", CSS_VAL_WINDOWTEXT}, +#line 222 "cssvalues.gperf" + {"nw-resize", CSS_VAL_NW_RESIZE}, +#line 227 "cssvalues.gperf" + {"ew-resize", CSS_VAL_EW_RESIZE}, +#line 168 "cssvalues.gperf" + {"cjk-ideographic", CSS_VAL_CJK_IDEOGRAPHIC}, +#line 225 "cssvalues.gperf" + {"sw-resize", CSS_VAL_SW_RESIZE}, #line 99 "cssvalues.gperf" - {"appworkspace", CSS_VAL_APPWORKSPACE} + {"appworkspace", CSS_VAL_APPWORKSPACE}, +#line 116 "cssvalues.gperf" + {"threeddarkshadow", CSS_VAL_THREEDDARKSHADOW}, +#line 108 "cssvalues.gperf" + {"highlighttext", CSS_VAL_HIGHLIGHTTEXT}, +#line 56 "cssvalues.gperf" + {"-khtml-xxx-large", CSS_VAL__KHTML_XXX_LARGE} }; - static const short lookup[] = { + static const short lookup[] = + { 0, -1, -1, -1, -1, 1, -1, -1, -1, -1, 2, -1, -1, -1, -1, 3, -1, -1, -1, -1, 4, -1, -1, 5, -1, 6, -1, -1, -1, -1, 7, -1, -1, 8, -1, 9, -1, -1, -1, -1, - 10, -1, -1, -1, -1, 11, -1, -1, 12, -1, - 13, -1, -1, -1, -1, 14, -1, -1, -1, -1, - 15, 16, -1, -1, -1, 17, -1, -1, 18, -1, - 19, -1, -1, -1, -1, 20, -1, -1, -1, -1, - 21, -1, -1, 22, -1, 23, -1, -1, 24, -1, - 25, -1, -1, 26, -1, 27, -1, -1, -1, -1, - -1, -1, -1, 28, -1, 29, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 30, -1, - 31, 32, -1, -1, -1, 33, -1, -1, 34, -1, - 35, -1, -1, -1, -1, 36, 37, -1, -1, -1, - 38, -1, -1, -1, -1, 39, -1, -1, -1, -1, - 40, -1, -1, -1, -1, -1, -1, -1, 41, -1, - 42, -1, -1, -1, -1, 43, -1, -1, 44, -1, - 45, -1, -1, 46, -1, 47, -1, -1, 48, -1, - 49, -1, -1, -1, -1, 50, -1, -1, -1, -1, - 51, -1, -1, -1, -1, 52, -1, -1, -1, -1, - 53, -1, 54, -1, -1, -1, -1, -1, 55, -1, - 56, -1, -1, -1, -1, -1, 57, -1, -1, -1, - -1, -1, -1, 58, -1, 59, -1, -1, 60, -1, - 61, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 62, -1, -1, -1, -1, - 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 64, 65, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, - 67, 68, -1, -1, -1, 69, -1, -1, 70, -1, - -1, 71, -1, 72, -1, -1, 73, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 74, -1, -1, -1, -1, -1, -1, -1, 75, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 76, -1, - 77, -1, -1, -1, -1, 78, -1, -1, -1, -1, - -1, 79, -1, 80, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 81, -1, 82, -1, -1, -1, -1, - -1, 83, -1, -1, -1, 84, -1, -1, -1, -1, - 85, -1, -1, 86, -1, -1, -1, -1, -1, -1, - 87, -1, -1, 88, -1, 89, -1, -1, -1, -1, - -1, -1, -1, 90, -1, -1, -1, -1, 91, -1, - 92, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 93, -1, -1, -1, 94, -1, -1, -1, -1, - 95, 96, -1, 97, -1, 98, -1, -1, 99, -1, - 100, -1, -1, 101, -1, 102, -1, -1, 103, -1, - -1, 104, -1, 105, -1, 106, -1, -1, 107, -1, - -1, -1, -1, 108, -1, -1, -1, -1, 109, -1, - 110, 111, -1, -1, -1, 112, -1, 113, 114, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 115, 116, 117, 118, -1, 119, -1, - 120, -1, -1, 121, -1, -1, 122, -1, -1, -1, - 123, -1, -1, 124, -1, 125, -1, -1, 126, -1, - -1, -1, -1, 127, -1, -1, 128, -1, -1, -1, - 129, -1, -1, -1, -1, 130, -1, -1, 131, -1, - 132, -1, -1, 133, -1, 134, -1, -1, -1, -1, - -1, -1, -1, 135, -1, -1, 136, -1, 137, -1, - 138, -1, -1, 139, 140, 141, -1, -1, 142, -1, - -1, -1, -1, 143, -1, -1, 144, -1, 145, -1, - 146, -1, -1, 147, -1, -1, 148, -1, 149, -1, - 150, -1, -1, 151, -1, -1, 152, -1, -1, -1, - 153, -1, -1, -1, -1, -1, 154, -1, -1, -1, - 155, -1, -1, 156, -1, -1, -1, -1, -1, 157, - 158, -1, -1, -1, -1, 159, 160, -1, -1, -1, - -1, -1, -1, 161, -1, 162, -1, -1, -1, -1, - 163, -1, -1, 164, -1, -1, -1, -1, 165, 166, - 167, 168, -1, -1, 169, -1, -1, -1, 170, 171, - -1, 172, -1, 173, -1, 174, 175, -1, 176, -1, - 177, -1, -1, 178, -1, -1, -1, -1, -1, -1, - -1, 179, -1, 180, -1, -1, -1, -1, -1, -1, - -1, 181, -1, -1, 182, -1, -1, -1, -1, -1, - -1, 183, -1, -1, -1, -1, 184, -1, 185, -1, - -1, -1, -1, 186, -1, 187, -1, -1, 188, 189, - -1, 190, -1, -1, -1, 191, -1, -1, -1, -1, - 192, -1, -1, 193, -1, 194, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 195, -1, -1, -1, -1, - 196, -1, -1, -1, -1, 197, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 198, 199, -1, 200, -1, - -1, -1, -1, -1, 201, 202, 203, -1, 204, -1, - 205, -1, -1, -1, -1, 206, -1, -1, 207, -1, - -1, -1, -1, 208, -1, -1, 209, 210, -1, -1, - 211, 212, -1, -1, -1, -1, 213, -1, 214, -1, - -1, -1, -1, -1, -1, -1, 215, -1, 216, -1, - 217, -1, -1, -1, 218, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 219, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 220, -1, -1, -1, 221, -1, -1, 222, -1, - -1, -1, -1, 223, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 224, 225, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 226, -1, 227, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 228, -1, - 229, -1, -1, 230, -1, -1, 231, -1, -1, -1, - -1, 232, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 233, -1, 234, -1, -1, 235, 236, - 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 238, -1, -1, -1, - -1, -1, -1, 239, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 240, -1, 241, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 242, -1, -1, 243, -1, - -1, 244, -1, 245, 246, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 247, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 248, -1, -1, -1, -1, -1, -1, 249, -1, -1, - 250, -1, -1, 251, -1, -1, 252, -1, -1, -1, - -1, 253, -1, -1, -1, -1, -1, -1, 254, -1, - -1, -1, -1, 255, -1, 256, -1, -1, -1, 257, - -1, 258, -1, -1, -1, 259, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 260, -1, -1, 261, 262, 263, -1, -1, -1, -1, - -1, 264, -1, -1, -1, 265, -1, -1, 266, -1, - -1, -1, -1, 267, -1, -1, -1, -1, 268, -1, - 269, -1, -1, 270, 271, -1, -1, -1, 272, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 273, -1, -1, -1, -1, 274, -1, -1, 275, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 276, 277, - -1, 278, -1, -1, 279, -1, -1, -1, 280, -1, - -1, -1, -1, 281, -1, -1, -1, -1, 282, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 283, -1, -1, -1, -1, - -1, -1, -1, 284, -1, -1, -1, -1, 285, -1, - -1, -1, -1, -1, 286, -1, 287, -1, -1, -1, - -1, -1, -1, 288, -1, 289, 290, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 291, -1, - 292, -1, -1, 293, -1, -1, -1, -1, 294, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 295, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 296, -1, -1, -1, -1, - -1, -1, -1, 297, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 298, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 299, -1, 300, -1, -1, -1, -1, -1, -1, - -1, 301, -1, 302, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 303, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 304, - -1, 305, -1, 306, -1, -1, -1, -1, -1, -1, - 307, 308, -1, -1, -1, -1, 309, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 310, -1, - -1, -1, -1, 311, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 312, -1, -1, -1, -1, -1, - -1, -1, -1, 313, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 314, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 315, -1, -1, -1, -1, -1, 316, - -1, -1, -1, -1, -1, -1, -1, -1, 317, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 318, -1, - -1, 319, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 320, -1, -1, -1, -1, -1, 321, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 322, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 323, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 324, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 325, 326, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 327, -1, 328, -1, - -1, -1, -1, -1, 329, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 330, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 331, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 332, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 333, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 334, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 335 + 10, -1, -1, -1, -1, 11, -1, -1, 12, -1, + 13, -1, -1, -1, -1, 14, 15, -1, -1, -1, + 16, -1, -1, -1, -1, 17, -1, -1, 18, -1, + 19, -1, -1, -1, -1, 20, -1, -1, -1, -1, + 21, -1, -1, 22, -1, 23, -1, -1, 24, -1, + 25, -1, -1, 26, -1, 27, -1, -1, 28, -1, + -1, -1, -1, 29, -1, 30, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 31, -1, + 32, -1, -1, -1, -1, 33, 34, -1, 35, -1, + 36, 37, -1, -1, -1, 38, -1, -1, -1, -1, + 39, -1, -1, -1, -1, 40, -1, -1, -1, -1, + 41, -1, -1, -1, -1, -1, -1, -1, 42, -1, + 43, -1, -1, -1, -1, 44, -1, -1, 45, -1, + 46, -1, -1, 47, -1, 48, -1, -1, 49, -1, + 50, -1, -1, -1, -1, 51, -1, -1, -1, -1, + -1, 52, -1, -1, -1, 53, -1, -1, -1, -1, + 54, 55, -1, -1, -1, -1, -1, -1, 56, -1, + 57, -1, -1, -1, -1, -1, 58, -1, 59, -1, + -1, -1, -1, 60, -1, 61, -1, -1, 62, -1, + 63, -1, -1, 64, -1, -1, -1, -1, -1, -1, + 65, -1, -1, -1, -1, -1, 66, -1, -1, -1, + 67, -1, -1, 68, -1, -1, 69, -1, -1, -1, + 70, -1, -1, 71, -1, -1, 72, -1, -1, -1, + -1, -1, -1, 73, -1, -1, -1, -1, 74, -1, + 75, -1, -1, 76, -1, 77, -1, -1, 78, -1, + -1, 79, -1, 80, -1, -1, -1, -1, 81, -1, + -1, 82, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 83, -1, -1, 84, -1, + -1, -1, -1, -1, -1, -1, 85, -1, 86, -1, + 87, -1, -1, -1, -1, 88, -1, -1, -1, -1, + 89, 90, -1, 91, -1, -1, -1, -1, -1, -1, + -1, 92, -1, 93, -1, 94, -1, -1, 95, -1, + -1, 96, -1, -1, -1, 97, -1, -1, 98, -1, + 99, -1, -1, 100, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, + -1, 102, -1, -1, -1, 103, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 104, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 105, -1, -1, 106, -1, + 107, -1, -1, 108, -1, 109, 110, -1, -1, -1, + 111, -1, -1, 112, -1, -1, -1, -1, 113, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 114, -1, + -1, 115, -1, 116, -1, -1, -1, -1, 117, -1, + 118, 119, -1, -1, -1, 120, -1, -1, 121, -1, + -1, 122, -1, 123, -1, -1, -1, -1, 124, -1, + -1, -1, -1, -1, 125, 126, -1, -1, 127, -1, + -1, -1, -1, 128, -1, -1, -1, -1, 129, -1, + 130, -1, -1, -1, -1, 131, -1, -1, 132, -1, + 133, -1, 134, -1, -1, -1, 135, -1, -1, -1, + 136, 137, -1, 138, -1, -1, -1, -1, 139, -1, + -1, -1, -1, 140, -1, 141, -1, -1, 142, -1, + -1, -1, -1, 143, -1, 144, -1, -1, 145, -1, + 146, -1, -1, -1, -1, 147, -1, -1, -1, 148, + -1, -1, -1, -1, -1, 149, -1, -1, -1, -1, + 150, -1, -1, 151, -1, 152, -1, -1, -1, -1, + -1, -1, -1, 153, -1, 154, -1, -1, -1, -1, + 155, 156, -1, 157, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 158, -1, 159, -1, -1, 160, -1, + -1, -1, -1, 161, -1, 162, -1, -1, 163, -1, + 164, -1, -1, -1, -1, 165, -1, 166, -1, -1, + 167, -1, -1, 168, -1, -1, 169, -1, -1, -1, + 170, -1, -1, 171, -1, -1, -1, -1, -1, -1, + -1, 172, -1, -1, -1, 173, -1, -1, -1, -1, + 174, 175, -1, -1, 176, -1, 177, -1, -1, -1, + 178, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 179, -1, -1, -1, 180, 181, -1, 182, -1, + 183, -1, -1, 184, -1, -1, 185, -1, 186, -1, + -1, -1, -1, 187, -1, 188, -1, -1, -1, -1, + -1, 189, -1, -1, -1, -1, -1, -1, 190, -1, + -1, -1, -1, 191, 192, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 193, 194, -1, 195, -1, + -1, 196, -1, 197, -1, 198, -1, -1, -1, 199, + -1, 200, -1, 201, -1, 202, -1, -1, 203, -1, + -1, 204, -1, 205, -1, 206, 207, -1, 208, -1, + -1, 209, -1, 210, -1, 211, -1, -1, 212, 213, + 214, -1, -1, -1, -1, -1, 215, -1, -1, -1, + -1, -1, -1, 216, -1, -1, -1, -1, -1, 217, + 218, -1, -1, 219, -1, -1, -1, -1, -1, -1, + -1, 220, -1, 221, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 222, -1, -1, -1, -1, + -1, 223, -1, 224, -1, -1, 225, -1, -1, -1, + 226, -1, -1, -1, -1, 227, -1, -1, -1, -1, + 228, -1, -1, -1, -1, 229, -1, -1, -1, -1, + -1, 230, -1, -1, -1, -1, 231, -1, 232, -1, + -1, -1, -1, -1, -1, 233, -1, -1, -1, -1, + -1, 234, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 235, -1, + -1, -1, -1, -1, -1, 236, 237, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 238, -1, + -1, -1, -1, -1, -1, 239, -1, -1, -1, -1, + -1, 240, -1, 241, -1, -1, 242, -1, -1, -1, + 243, 244, -1, -1, -1, -1, -1, -1, -1, -1, + 245, 246, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 247, -1, 248, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 249, -1, -1, -1, -1, 250, -1, -1, -1, + 251, -1, -1, -1, -1, -1, -1, -1, 252, -1, + -1, -1, -1, 253, -1, -1, -1, 254, -1, -1, + 255, 256, -1, -1, -1, -1, -1, -1, 257, -1, + -1, -1, -1, 258, -1, -1, 259, -1, -1, -1, + 260, 261, -1, -1, -1, -1, 262, -1, -1, -1, + -1, -1, -1, 263, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 264, -1, 265, -1, -1, -1, -1, 266, -1, + -1, -1, -1, 267, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 268, -1, -1, -1, -1, 269, -1, + -1, -1, -1, 270, -1, 271, -1, -1, -1, -1, + -1, 272, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 273, -1, -1, -1, -1, -1, -1, 274, -1, + -1, -1, -1, 275, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 276, -1, 277, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 278, -1, -1, -1, -1, + 279, 280, -1, 281, -1, 282, -1, -1, 283, -1, + -1, -1, -1, 284, -1, -1, -1, -1, 285, -1, + 286, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 287, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 288, -1, -1, -1, + 289, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 290, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 291, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 292, 293, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 294, -1, -1, -1, -1, 295, -1, -1, 296, + -1, -1, 297, -1, -1, -1, -1, -1, -1, -1, + -1, 298, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 299, -1, + -1, 300, -1, 301, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 302, -1, -1, -1, -1, 303, -1, -1, -1, + 304, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 305, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 306, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 307, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 308, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 309, -1, -1, -1, -1, -1, -1, -1, 310, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 311, -1, -1, 312, -1, + -1, -1, -1, 313, -1, -1, -1, -1, -1, -1, + -1, 314, -1, -1, -1, -1, 315, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 316, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 317, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 318, -1, -1, 319, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 320, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 321, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 322, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 323, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 324, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 325, -1, -1, -1, -1, 326, -1, + -1, -1, -1, -1, -1, 327, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 328, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 329, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 330, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 331, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 332 }; - if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH) { - register int key = hash_val(str, len); + if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH) + { + register int key = hash_val (str, len); - if (key <= MAX_HASH_VALUE && key >= 0) { - register int index = lookup[key]; + if (key <= MAX_HASH_VALUE && key >= 0) + { + register int index = lookup[key]; - if (index >= 0) { - register const char *s = wordlist_value[index].name; + if (index >= 0) + { + register const char *s = wordlist_value[index].name; - if (*str == *s && !strncmp(str + 1, s + 1, len - 1) && s[len] == '\0') { - return &wordlist_value[index]; - } + if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0') + return &wordlist_value[index]; } } } - return 0; + return 0; } -#line 350 "cssvalues.gperf" +#line 347 "cssvalues.gperf" -static const char *const valueList[] = { - "", - "inherit", - "initial", - "-khtml-native", - "none", - "hidden", - "inset", - "groove", - "ridge", - "outset", - "dotted", - "dashed", - "solid", - "double", - "caption", - "icon", - "menu", - "message-box", - "small-caption", - "status-bar", - "italic", - "oblique", - "small-caps", - "normal", - "bold", - "bolder", - "lighter", - "100", - "200", - "300", - "400", - "500", - "600", - "700", - "800", - "900", - "xx-small", - "x-small", - "small", - "medium", - "large", - "x-large", - "xx-large", - "-khtml-xxx-large", - "smaller", - "larger", - "wider", - "narrower", - "ultra-condensed", - "extra-condensed", - "condensed", - "semi-condensed", - "semi-expanded", - "expanded", - "extra-expanded", - "ultra-expanded", - "serif", - "sans-serif", - "cursive", - "fantasy", - "monospace", - "scroll", - "fixed", - "local", - "transparent", - "aqua", - "black", - "blue", - "crimson", - "fuchsia", - "gray", - "green", - "indigo", - "lime", - "maroon", - "navy", - "olive", - "orange", - "purple", - "red", - "silver", - "teal", - "white", - "yellow", - "activeborder", - "activecaption", - "appworkspace", - "background", - "buttonface", - "buttonhighlight", - "buttonshadow", - "buttontext", - "captiontext", - "graytext", - "highlight", - "highlighttext", - "inactiveborder", - "inactivecaption", - "inactivecaptiontext", - "infobackground", - "infotext", - "menutext", - "scrollbar", - "threeddarkshadow", - "threedface", - "threedhighlight", - "threedlightshadow", - "threedshadow", - "window", - "windowframe", - "windowtext", - "currentcolor", - "grey", - "-khtml-text", - "repeat", - "repeat-x", - "repeat-y", - "no-repeat", - "baseline", - "middle", - "sub", - "super", - "text-top", - "text-bottom", - "top", - "bottom", - "-khtml-baseline-middle", - "-khtml-auto", - "left", - "right", - "center", - "justify", - "-khtml-left", - "-khtml-right", - "-khtml-center", - "outside", - "inside", - "disc", - "circle", - "square", - "box", - "-khtml-diamond", - "decimal", - "decimal-leading-zero", - "-khtml-arabic-indic", - "-khtml-lao", - "-khtml-persian", - "-khtml-urdu", - "-khtml-thai", - "-khtml-tibetan", - "lower-roman", - "upper-roman", - "hebrew", - "armenian", - "georgian", - "cjk-ideographic", - "-khtml-japanese-formal", - "-khtml-japanese-informal", - "-khtml-simp-chinese-formal", - "-khtml-simp-chinese-informal", - "-khtml-trad-chinese-formal", - "-khtml-trad-chinese-informal", - "lower-greek", - "-khtml-upper-greek", - "lower-alpha", - "lower-latin", - "upper-alpha", - "upper-latin", - "hiragana", - "katakana", - "hiragana-iroha", - "katakana-iroha", - "-khtml-open-quote", - "-khtml-close-quote", - "inline", - "block", - "list-item", - "run-in", - "compact", - "inline-block", - "table", - "inline-table", - "table-row-group", - "table-header-group", - "table-footer-group", - "table-row", - "table-column-group", - "table-column", - "table-cell", - "table-caption", - "auto", - "default", - "context-menu", - "help", - "pointer", - "progress", - "wait", - "cell", - "crosshair", - "text", - "vertical-text", - "alias", - "copy", - "move", - "no-drop", - "not-allowed", - "e-resize", - "n-resize", - "ne-resize", - "nw-resize", - "s-resize", - "se-resize", - "sw-resize", - "w-resize", - "ew-resize", - "ns-resize", - "nesw-resize", - "nwse-resize", - "col-resize", - "row-resize", - "all-scroll", - "ltr", - "rtl", - "capitalize", - "uppercase", - "lowercase", - "visible", - "collapse", - "close-quote", - "no-close-quote", - "no-open-quote", - "open-quote", - "nowrap", - "pre", - "pre-wrap", - "pre-line", - "-khtml-nowrap", - "break-word", - "above", - "absolute", - "always", - "avoid", - "below", - "bidi-override", - "blink", - "both", - "crop", - "cross", - "embed", - "hand", - "hide", - "higher", - "invert", - "landscape", - "level", - "line-through", - "loud", - "lower", - "marquee", - "mix", - "overline", - "portrait", - "relative", - "separate", - "show", - "static", - "thick", - "thin", - "underline", - "-khtml-normal", - "-khtml-around-floats", - "border-box", - "content-box", - "enabled", - "disabled", - "forwards", - "backwards", - "ahead", - "reverse", - "up", - "down", - "slow", - "fast", - "infinite", - "slide", - "alternate", - "unfurl", - "clip", - "ellipsis", - "padding-box", - "border", - "content", - "padding", - "contain", - "cover", - "evenodd", - "nonzero", - "before-edge", - "text-before-edge", - "central ", - "after-edge", - "text-after-edge", - "ideographic", - "alphabetic", - "hanging", - "mathematical ", - "use-script", - "no-change", - "reset-size", - "miter", - "round", - "bevel", - "butt", - "accumulate", - "optimizeSpeed", - "crispEdges", - "geometricPrecision", - "start", - "end", - "optimizeLegibility", - "optimizeQuality", - "sRGB", - "linearRGB", - "visiblePainted", - "visibleFill", - "visibleStroke", - "painted", - "fill", - "stroke", - "all", - "lr-tb", - "rl-tb", - "tb-rl", - "tb-lr", - "lr", - "rl", - "tb", +static const char * const valueList[] = { +"", +"inherit", +"initial", +"-khtml-native", +"none", +"hidden", +"inset", +"groove", +"ridge", +"outset", +"dotted", +"dashed", +"solid", +"double", +"caption", +"icon", +"menu", +"message-box", +"small-caption", +"status-bar", +"italic", +"oblique", +"small-caps", +"normal", +"bold", +"bolder", +"lighter", +"100", +"200", +"300", +"400", +"500", +"600", +"700", +"800", +"900", +"xx-small", +"x-small", +"small", +"medium", +"large", +"x-large", +"xx-large", +"-khtml-xxx-large", +"smaller", +"larger", +"wider", +"narrower", +"ultra-condensed", +"extra-condensed", +"condensed", +"semi-condensed", +"semi-expanded", +"expanded", +"extra-expanded", +"ultra-expanded", +"serif", +"sans-serif", +"cursive", +"fantasy", +"monospace", +"scroll", +"fixed", +"local", +"transparent", +"aqua", +"black", +"blue", +"crimson", +"fuchsia", +"gray", +"green", +"indigo", +"lime", +"maroon", +"navy", +"olive", +"orange", +"purple", +"red", +"silver", +"teal", +"white", +"yellow", +"activeborder", +"activecaption", +"appworkspace", +"background", +"buttonface", +"buttonhighlight", +"buttonshadow", +"buttontext", +"captiontext", +"graytext", +"highlight", +"highlighttext", +"inactiveborder", +"inactivecaption", +"inactivecaptiontext", +"infobackground", +"infotext", +"menutext", +"scrollbar", +"threeddarkshadow", +"threedface", +"threedhighlight", +"threedlightshadow", +"threedshadow", +"window", +"windowframe", +"windowtext", +"currentcolor", +"grey", +"-khtml-text", +"repeat", +"repeat-x", +"repeat-y", +"no-repeat", +"baseline", +"middle", +"sub", +"super", +"text-top", +"text-bottom", +"top", +"bottom", +"-khtml-baseline-middle", +"-khtml-auto", +"left", +"right", +"center", +"justify", +"-khtml-left", +"-khtml-right", +"-khtml-center", +"outside", +"inside", +"disc", +"circle", +"square", +"box", +"-khtml-diamond", +"decimal", +"decimal-leading-zero", +"-khtml-arabic-indic", +"-khtml-lao", +"-khtml-persian", +"-khtml-urdu", +"-khtml-thai", +"-khtml-tibetan", +"lower-roman", +"upper-roman", +"hebrew", +"armenian", +"georgian", +"cjk-ideographic", +"-khtml-japanese-formal", +"-khtml-japanese-informal", +"-khtml-simp-chinese-formal", +"-khtml-simp-chinese-informal", +"-khtml-trad-chinese-formal", +"-khtml-trad-chinese-informal", +"lower-greek", +"-khtml-upper-greek", +"lower-alpha", +"lower-latin", +"upper-alpha", +"upper-latin", +"hiragana", +"katakana", +"hiragana-iroha", +"katakana-iroha", +"-khtml-open-quote", +"-khtml-close-quote", +"inline", +"block", +"list-item", +"run-in", +"compact", +"inline-block", +"table", +"inline-table", +"table-row-group", +"table-header-group", +"table-footer-group", +"table-row", +"table-column-group", +"table-column", +"table-cell", +"table-caption", +"auto", +"default", +"context-menu", +"help", +"pointer", +"progress", +"wait", +"cell", +"crosshair", +"text", +"vertical-text", +"alias", +"copy", +"move", +"no-drop", +"not-allowed", +"e-resize", +"n-resize", +"ne-resize", +"nw-resize", +"s-resize", +"se-resize", +"sw-resize", +"w-resize", +"ew-resize", +"ns-resize", +"nesw-resize", +"nwse-resize", +"col-resize", +"row-resize", +"all-scroll", +"ltr", +"rtl", +"capitalize", +"uppercase", +"lowercase", +"visible", +"collapse", +"close-quote", +"no-close-quote", +"no-open-quote", +"open-quote", +"nowrap", +"pre", +"pre-wrap", +"pre-line", +"-khtml-nowrap", +"break-word", +"above", +"absolute", +"always", +"avoid", +"below", +"bidi-override", +"blink", +"both", +"crop", +"cross", +"embed", +"hand", +"hide", +"higher", +"invert", +"landscape", +"level", +"line-through", +"loud", +"lower", +"marquee", +"mix", +"overline", +"portrait", +"relative", +"separate", +"show", +"static", +"thick", +"thin", +"underline", +"-khtml-normal", +"-khtml-around-floats", +"border-box", +"content-box", +"enabled", +"disabled", +"forwards", +"backwards", +"ahead", +"reverse", +"up", +"down", +"slow", +"fast", +"infinite", +"slide", +"alternate", +"unfurl", +"clip", +"ellipsis", +"padding-box", +"contain", +"cover", +"evenodd", +"nonzero", +"before-edge", +"text-before-edge", +"central ", +"after-edge", +"text-after-edge", +"ideographic", +"alphabetic", +"hanging", +"mathematical ", +"use-script", +"no-change", +"reset-size", +"miter", +"round", +"bevel", +"butt", +"accumulate", +"optimizeSpeed", +"crispEdges", +"geometricPrecision", +"start", +"end", +"optimizeLegibility", +"optimizeQuality", +"sRGB", +"linearRGB", +"visiblePainted", +"visibleFill", +"visibleStroke", +"painted", +"fill", +"stroke", +"all", +"lr-tb", +"rl-tb", +"tb-rl", +"tb-lr", +"lr", +"rl", +"tb", 0 }; DOMString getValueName(unsigned short id) { - if (id >= CSS_VAL_TOTAL || id == 0) { - return DOMString(); - } else { - return DOMString(valueList[id]); - } + if(id >= CSS_VAL_TOTAL || id == 0) + return DOMString(); + else + return DOMString(valueList[id]); } diff -Nru khtml-5.24.0/src/css/cssvalues.h khtml-5.26.0/src/css/cssvalues.h --- khtml-5.24.0/src/css/cssvalues.h 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/css/cssvalues.h 2016-09-06 12:04:32.000000000 +0000 @@ -297,54 +297,51 @@ #define CSS_VAL_CLIP 287 #define CSS_VAL_ELLIPSIS 288 #define CSS_VAL_PADDING_BOX 289 -#define CSS_VAL_BORDER 290 -#define CSS_VAL_CONTENT 291 -#define CSS_VAL_PADDING 292 -#define CSS_VAL_CONTAIN 293 -#define CSS_VAL_COVER 294 -#define CSS_VAL_EVENODD 295 -#define CSS_VAL_NONZERO 296 -#define CSS_VAL_BEFORE_EDGE 297 -#define CSS_VAL_TEXT_BEFORE_EDGE 298 -#define CSS_VAL_CENTRAL 299 -#define CSS_VAL_AFTER_EDGE 300 -#define CSS_VAL_TEXT_AFTER_EDGE 301 -#define CSS_VAL_IDEOGRAPHIC 302 -#define CSS_VAL_ALPHABETIC 303 -#define CSS_VAL_HANGING 304 -#define CSS_VAL_MATHEMATICAL 305 -#define CSS_VAL_USE_SCRIPT 306 -#define CSS_VAL_NO_CHANGE 307 -#define CSS_VAL_RESET_SIZE 308 -#define CSS_VAL_MITER 309 -#define CSS_VAL_ROUND 310 -#define CSS_VAL_BEVEL 311 -#define CSS_VAL_BUTT 312 -#define CSS_VAL_ACCUMULATE 313 -#define CSS_VAL_OPTIMIZESPEED 314 -#define CSS_VAL_CRISPEDGES 315 -#define CSS_VAL_GEOMETRICPRECISION 316 -#define CSS_VAL_START 317 -#define CSS_VAL_END 318 -#define CSS_VAL_OPTIMIZELEGIBILITY 319 -#define CSS_VAL_OPTIMIZEQUALITY 320 -#define CSS_VAL_SRGB 321 -#define CSS_VAL_LINEARRGB 322 -#define CSS_VAL_VISIBLEPAINTED 323 -#define CSS_VAL_VISIBLEFILL 324 -#define CSS_VAL_VISIBLESTROKE 325 -#define CSS_VAL_PAINTED 326 -#define CSS_VAL_FILL 327 -#define CSS_VAL_STROKE 328 -#define CSS_VAL_ALL 329 -#define CSS_VAL_LR_TB 330 -#define CSS_VAL_RL_TB 331 -#define CSS_VAL_TB_RL 332 -#define CSS_VAL_TB_LR 333 -#define CSS_VAL_LR 334 -#define CSS_VAL_RL 335 -#define CSS_VAL_TB 336 +#define CSS_VAL_CONTAIN 290 +#define CSS_VAL_COVER 291 +#define CSS_VAL_EVENODD 292 +#define CSS_VAL_NONZERO 293 +#define CSS_VAL_BEFORE_EDGE 294 +#define CSS_VAL_TEXT_BEFORE_EDGE 295 +#define CSS_VAL_CENTRAL 296 +#define CSS_VAL_AFTER_EDGE 297 +#define CSS_VAL_TEXT_AFTER_EDGE 298 +#define CSS_VAL_IDEOGRAPHIC 299 +#define CSS_VAL_ALPHABETIC 300 +#define CSS_VAL_HANGING 301 +#define CSS_VAL_MATHEMATICAL 302 +#define CSS_VAL_USE_SCRIPT 303 +#define CSS_VAL_NO_CHANGE 304 +#define CSS_VAL_RESET_SIZE 305 +#define CSS_VAL_MITER 306 +#define CSS_VAL_ROUND 307 +#define CSS_VAL_BEVEL 308 +#define CSS_VAL_BUTT 309 +#define CSS_VAL_ACCUMULATE 310 +#define CSS_VAL_OPTIMIZESPEED 311 +#define CSS_VAL_CRISPEDGES 312 +#define CSS_VAL_GEOMETRICPRECISION 313 +#define CSS_VAL_START 314 +#define CSS_VAL_END 315 +#define CSS_VAL_OPTIMIZELEGIBILITY 316 +#define CSS_VAL_OPTIMIZEQUALITY 317 +#define CSS_VAL_SRGB 318 +#define CSS_VAL_LINEARRGB 319 +#define CSS_VAL_VISIBLEPAINTED 320 +#define CSS_VAL_VISIBLEFILL 321 +#define CSS_VAL_VISIBLESTROKE 322 +#define CSS_VAL_PAINTED 323 +#define CSS_VAL_FILL 324 +#define CSS_VAL_STROKE 325 +#define CSS_VAL_ALL 326 +#define CSS_VAL_LR_TB 327 +#define CSS_VAL_RL_TB 328 +#define CSS_VAL_TB_RL 329 +#define CSS_VAL_TB_LR 330 +#define CSS_VAL_LR 331 +#define CSS_VAL_RL 332 +#define CSS_VAL_TB 333 -#define CSS_VAL_TOTAL 337 +#define CSS_VAL_TOTAL 334 #endif diff -Nru khtml-5.24.0/src/css/cssvalues.in khtml-5.26.0/src/css/cssvalues.in --- khtml-5.24.0/src/css/cssvalues.in 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/css/cssvalues.in 2016-09-06 12:04:32.000000000 +0000 @@ -421,12 +421,6 @@ # content-box padding-box -# for early implementation, of BACKGROUND_CLIP/ORIGIN -# using khtml prefix -border -content -padding - # # CSS_PROP_BACKGROUND_SIZE # diff -Nru khtml-5.24.0/src/css/parser.cpp khtml-5.26.0/src/css/parser.cpp --- khtml-5.24.0/src/css/parser.cpp 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/css/parser.cpp 2016-09-06 12:04:32.000000000 +0000 @@ -132,24 +132,6 @@ #include "cssproperties.c" #include "cssvalues.c" -static QHash *sCompatibleProperties = 0; - -static const int sMinCompatPropLen = 21; // shortest key in the hash below - -static void initCompatibleProperties() { - QHash *&cp = sCompatibleProperties; - // Hash of (Property name, Vendor Prefix length) - cp = new QHash; - cp->insert("-webkit-background-clip", 7); - cp->insert("-webkit-background-origin", 7); - cp->insert("-webkit-background-size", 7); - cp->insert("-webkit-border-top-right-radius", 7); - cp->insert("-webkit-border-bottom-right-radius", 7); - cp->insert("-webkit-border-bottom-left-radius", 7); - cp->insert("-webkit-border-top-left-radius", 7); - cp->insert("-webkit-border-radius", 7); -} - int DOM::getPropertyID(const char *tagStr, int len) { { // HTML CSS Properties @@ -713,27 +695,27 @@ /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 312, 312, 313, 314, 315, 316, 317, 321, 322, - 323, 327, 334, 340, 365, 377, 383, 385, 389, 390, - 393, 395, 396, 399, 401, 404, 413, 415, 419, 421, - 432, 442, 445, 451, 452, 456, 466, 474, 475, 479, - 480, 483, 485, 496, 497, 498, 499, 500, 501, 502, - 506, 507, 508, 509, 513, 514, 518, 524, 527, 533, - 539, 543, 550, 553, 559, 562, 565, 571, 574, 580, - 583, 588, 592, 597, 604, 615, 627, 628, 638, 656, - 659, 665, 672, 675, 681, 682, 683, 687, 688, 692, - 714, 727, 745, 755, 758, 761, 775, 789, 796, 797, - 798, 802, 807, 814, 821, 829, 839, 852, 857, 864, - 872, 885, 889, 895, 898, 908, 915, 929, 930, 931, - 935, 952, 959, 965, 972, 981, 994, 997, 1000, 1003, - 1006, 1009, 1015, 1016, 1020, 1026, 1032, 1039, 1046, 1053, - 1060, 1069, 1072, 1075, 1078, 1083, 1089, 1093, 1096, 1101, - 1107, 1129, 1135, 1157, 1158, 1162, 1166, 1182, 1185, 1188, - 1194, 1195, 1197, 1198, 1199, 1205, 1206, 1207, 1209, 1215, - 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, - 1226, 1227, 1228, 1229, 1230, 1231, 1232, 1233, 1234, 1235, - 1236, 1237, 1242, 1250, 1266, 1273, 1279, 1288, 1314, 1315, - 1319, 1320 + 0, 294, 294, 295, 296, 297, 298, 299, 303, 304, + 305, 309, 316, 322, 347, 359, 365, 367, 371, 372, + 375, 377, 378, 381, 383, 386, 395, 397, 401, 403, + 414, 424, 427, 433, 434, 438, 448, 456, 457, 461, + 462, 465, 467, 478, 479, 480, 481, 482, 483, 484, + 488, 489, 490, 491, 495, 496, 500, 506, 509, 515, + 521, 525, 532, 535, 541, 544, 547, 553, 556, 562, + 565, 570, 574, 579, 586, 597, 609, 610, 620, 638, + 641, 647, 654, 657, 663, 664, 665, 669, 670, 674, + 696, 709, 727, 737, 740, 743, 757, 771, 778, 779, + 780, 784, 789, 796, 803, 811, 821, 834, 839, 846, + 854, 867, 871, 877, 880, 890, 897, 911, 912, 913, + 917, 934, 941, 947, 954, 963, 976, 979, 982, 985, + 988, 991, 997, 998, 1002, 1008, 1014, 1021, 1028, 1035, + 1042, 1051, 1054, 1057, 1060, 1065, 1071, 1075, 1078, 1083, + 1089, 1111, 1117, 1124, 1125, 1129, 1133, 1149, 1152, 1155, + 1161, 1162, 1164, 1165, 1166, 1172, 1173, 1174, 1176, 1182, + 1183, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191, 1192, + 1193, 1194, 1195, 1196, 1197, 1198, 1199, 1200, 1201, 1202, + 1203, 1204, 1209, 1217, 1233, 1240, 1246, 1255, 1281, 1282, + 1286, 1287 }; #endif @@ -3099,23 +3081,8 @@ case 152: { - QString str = qString((yyvsp[(1) - (2)].string)); - str = str.toLower(); - if (str.length() >= sMinCompatPropLen && str[0] == '-' && str[1] != 'k') { - // vendor extension. Lets try and convert a selected few - if (!sCompatibleProperties) - initCompatibleProperties(); - QHash::iterator it = sCompatibleProperties->find( str ); - if (it != sCompatibleProperties->end()) { - str = "-khtml" + str.mid( it.value() ); - - (yyval.prop_id) = getPropertyID( str.toLatin1(), str.length() ); - } else { - (yyval.prop_id) = 0; - } - } else { - (yyval.prop_id) = getPropertyID( str.toLatin1(), str.length() ); - } + QString str = qString((yyvsp[(1) - (2)].string)); + (yyval.prop_id) = getPropertyID(str.toLower().toLatin1(), str.length()); } break; diff -Nru khtml-5.24.0/src/css/parser.y khtml-5.26.0/src/css/parser.y --- khtml-5.24.0/src/css/parser.y 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/css/parser.y 2016-09-06 12:04:32.000000000 +0000 @@ -57,24 +57,6 @@ #include "cssproperties.c" #include "cssvalues.c" -static QHash *sCompatibleProperties = 0; - -static const int sMinCompatPropLen = 21; // shortest key in the hash below - -static void initCompatibleProperties() { - QHash *&cp = sCompatibleProperties; - // Hash of (Property name, Vendor Prefix length) - cp = new QHash; - cp->insert("-webkit-background-clip", 7); - cp->insert("-webkit-background-origin", 7); - cp->insert("-webkit-background-size", 7); - cp->insert("-webkit-border-top-right-radius", 7); - cp->insert("-webkit-border-bottom-right-radius", 7); - cp->insert("-webkit-border-bottom-left-radius", 7); - cp->insert("-webkit-border-top-left-radius", 7); - cp->insert("-webkit-border-radius", 7); -} - int DOM::getPropertyID(const char *tagStr, int len) { { // HTML CSS Properties @@ -1133,23 +1115,8 @@ property: IDENT maybe_space { - QString str = qString($1); - str = str.toLower(); - if (str.length() >= sMinCompatPropLen && str[0] == '-' && str[1] != 'k') { - // vendor extension. Lets try and convert a selected few - if (!sCompatibleProperties) - initCompatibleProperties(); - QHash::iterator it = sCompatibleProperties->find( str ); - if (it != sCompatibleProperties->end()) { - str = "-khtml" + str.mid( it.value() ); - - $$ = getPropertyID( str.toLatin1(), str.length() ); - } else { - $$ = 0; - } - } else { - $$ = getPropertyID( str.toLatin1(), str.length() ); - } + QString str = qString($1); + $$ = getPropertyID(str.toLower().toLatin1(), str.length()); } ; diff -Nru khtml-5.24.0/src/rendering/font.cpp khtml-5.26.0/src/rendering/font.cpp --- khtml-5.24.0/src/rendering/font.cpp 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/rendering/font.cpp 2016-09-06 12:04:32.000000000 +0000 @@ -130,16 +130,13 @@ wordStart = wordEnd; } -void Font::drawText(QPainter *p, int x, int y, const QChar *str, int slen, int pos, int len, +void Font::drawText(QPainter *p, int x, int y, const QChar *str, const int slen, int pos, int len, int toAdd, Qt::LayoutDirection d, int from, int to, QColor bg, int uy, int h, int deco) const { if (!str || slen == 0) { // #188910 return; } - QString qstr = QString::fromRawData(str, slen); - const QFontMetrics &fm = cfi->fm; - // ### fixme for RTL if (!scFont && !letterSpacing && !wordSpacing && !toAdd && from == -1) { // simply draw it @@ -169,13 +166,6 @@ const int totWidth = width(str, slen, pos, len, false /*fast algo*/); x += totWidth + toAdd; } - QString upper = qstr; - QFontMetrics sc_fm = fm; - if (scFont) { - // draw in small caps - upper = qstr.toUpper(); - sc_fm = QFontMetrics(*scFont); - } // ### sc could be optimized by only painting uppercase letters extra, // and treat the rest WordWise, but I think it's not worth it. @@ -191,6 +181,8 @@ mode = CharacterWise; } + const QFontMetrics &fm = cfi->fm; + if (mode == Whole) { // most likely variant is treated extra if (to < 0) { @@ -213,6 +205,15 @@ return; } + const QString qstr = QString::fromRawData(str, slen); + QString upper = qstr; + QFontMetrics sc_fm = fm; + if (scFont) { + // draw in small caps + upper = qstr.toUpper(); + sc_fm = QFontMetrics(*scFont); + } + // We are using two passes. In the first pass, the widths are collected, // and stored. In the second, the actual characters are drawn. diff -Nru khtml-5.24.0/src/rendering/font.h khtml-5.26.0/src/rendering/font.h --- khtml-5.24.0/src/rendering/font.h 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/rendering/font.h 2016-09-06 12:04:32.000000000 +0000 @@ -197,7 +197,7 @@ * decoration painting * @param deco combined text decoration (see Decoration) */ - void drawText(QPainter *p, int x, int y, const QChar *str, int slen, int pos, int len, int width, + void drawText(QPainter *p, int x, int y, const QChar *str, const int slen, int pos, int len, int width, Qt::LayoutDirection d, int from = -1, int to = -1, QColor bg = QColor(), int uy = -1, int h = -1, int deco = 0) const; diff -Nru khtml-5.24.0/src/rendering/render_box.cpp khtml-5.26.0/src/rendering/render_box.cpp --- khtml-5.24.0/src/rendering/render_box.cpp 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/rendering/render_box.cpp 2016-09-06 12:04:32.000000000 +0000 @@ -567,19 +567,6 @@ needRestore = true; } - // Create the border-radius clip path - QPainterPath path; - if (style()->hasBorderRadius()) { - path = borderRadiusClipPath(bgLayer, _tx, _ty, w, h, bleft, bright, btop, bbottom); - - // Avoid saving the painter state twice - if (!needRestore) { - p->save(); - needRestore = true; - } - p->setRenderHint(QPainter::Antialiasing, true); - } - CachedImage *bg = bgLayer->backgroundImage(); bool shouldPaintBackgroundImage = bg && bg->isComplete() && !bg->isTransparent() && !bg->isErrorImage() && canvas()->printImages(); QColor bgColor = c; @@ -606,6 +593,17 @@ } } + // Create the border-radius clip path + QPainterPath path = borderRadiusClipPath(bgLayer, _tx, _ty, w, h, bleft, bright, btop, bbottom, pleft, pright, ptop, pbottom); + if (!path.isEmpty()) { + // Avoid saving the painter state twice + if (!needRestore) { + p->save(); + needRestore = true; + } + p->setRenderHint(QPainter::Antialiasing, true); + } + // Paint the color first underneath all images. if (!bgLayer->next() && bgColor.isValid() && qAlpha(bgColor.rgba()) > 0) { if (!path.isEmpty()) { @@ -840,43 +838,54 @@ } QPainterPath RenderBox::borderRadiusClipPath(const BackgroundLayer *bgLayer, int _tx, int _ty, int w, int h, - int bleft, int bright, int btop, int bbottom) const + int borderLeft, int borderRight, int borderTop, int borderBottom, + int paddingLeft, int paddingRight, int paddingTop, int paddingBottom) const { QPainterPath path; if (style()->hasBorderRadius()) { - BorderRadii tl = style()->borderTopLeftRadius(); - BorderRadii tr = style()->borderTopRightRadius(); - BorderRadii bl = style()->borderBottomLeftRadius(); - BorderRadii br = style()->borderBottomRightRadius(); - - // Adjust the border radii so they don't overlap when taking the size of the box - // into account. - adjustBorderRadii(tl, tr, bl, br, w, h); - - // CSS Backgrounds and Borders Module Level 3 (WD-css3-background-20080910), chapter 4.5: - // " Backgrounds, but not the border-image, are clipped to the inner, resp., outer - // curve of the border if ‘background-clip’ is ‘padding-box’ resp., ‘border-box’." - bool clipInner = bgLayer->backgroundClip() == BGPADDING; + QPoint topLeftRadii, topRightRadii, bottomLeftRadii, bottomRightRadii; + calcBorderRadii(topLeftRadii, topRightRadii, bottomLeftRadii, bottomRightRadii, w, h); + // CSS Backgrounds and Borders Module Level 3 (http://www.w3.org/TR/2014/CR-css3-background-20140909/), chapter 5.3: + // "A box's backgrounds, but not its border-image, are clipped to the appropriate curve (as determined by 'background-clip')." + int adjustTop = 0, adjustLeft = 0, adjustRight = 0, adjustBottom = 0; + bool clipInner = true; + switch (bgLayer->backgroundClip()) { + case BGCONTENT: + adjustTop += paddingTop; + adjustLeft += paddingLeft; + adjustRight += paddingRight; + adjustBottom += paddingBottom; + // No break + case BGPADDING: + adjustTop += borderTop; + adjustLeft += borderLeft; + adjustRight += borderRight; + adjustBottom += borderBottom; + break; + default: // BGBORDER + clipInner = false; + break; + } // The clip bounding rect QRect rect(_tx, _ty, w, h); if (clipInner) { - rect.adjust(bleft, btop, -bright, -bbottom); + rect.adjust(adjustLeft, adjustTop, -adjustRight, -adjustBottom); - tl.horizontal = qMax(0, tl.horizontal - bleft); - bl.horizontal = qMax(0, bl.horizontal - bleft); - tr.horizontal = qMax(0, tr.horizontal - bright); - br.horizontal = qMax(0, br.horizontal - bright); - tl.vertical = qMax(0, tl.vertical - btop); - tr.vertical = qMax(0, tr.vertical - btop); - bl.vertical = qMax(0, bl.vertical - bbottom); - br.vertical = qMax(0, br.vertical - bbottom); + topLeftRadii.rx() = qMax(0, topLeftRadii.x() - adjustLeft); + bottomLeftRadii.rx() = qMax(0, bottomLeftRadii.x() - adjustLeft); + topRightRadii.rx() = qMax(0, topRightRadii.x() - adjustRight); + bottomRightRadii.rx() = qMax(0, bottomRightRadii.x() - adjustRight); + topLeftRadii.ry() = qMax(0, topLeftRadii.y() - adjustTop); + topRightRadii.ry() = qMax(0, topRightRadii.y() - adjustTop); + bottomLeftRadii.ry() = qMax(0, bottomLeftRadii.y() - adjustBottom); + bottomRightRadii.ry() = qMax(0, bottomRightRadii.y() - adjustBottom); } // Top right corner - if (tr.hasBorderRadius()) { - const QRect r(rect.x() + rect.width() - tr.horizontal * 2, rect.y(), tr.horizontal * 2, tr.vertical * 2); + if (!topRightRadii.isNull()) { + const QRect r(rect.x() + rect.width() - topRightRadii.x() * 2, rect.y(), topRightRadii.x() * 2, topRightRadii.y() * 2); path.arcMoveTo(r, 0); path.arcTo(r, 0, 90); } else { @@ -884,25 +893,25 @@ } // Top left corner - if (tl.hasBorderRadius()) { - const QRect r(rect.x(), rect.y(), tl.horizontal * 2, tl.vertical * 2); + if (!topLeftRadii.isNull()) { + const QRect r(rect.x(), rect.y(), topLeftRadii.x() * 2, topLeftRadii.y() * 2); path.arcTo(r, 90, 90); } else { path.lineTo(rect.x(), rect.y()); } // Bottom left corner - if (bl.hasBorderRadius()) { - const QRect r(rect.x(), rect.y() + rect.height() - bl.vertical * 2, bl.horizontal * 2, bl.vertical * 2); + if (!bottomLeftRadii.isNull()) { + const QRect r(rect.x(), rect.y() + rect.height() - bottomLeftRadii.y() * 2, bottomLeftRadii.x() * 2, bottomLeftRadii.y() * 2); path.arcTo(r, 180, 90); } else { path.lineTo(rect.x(), rect.y() + rect.height()); } // Bottom right corner - if (br.hasBorderRadius()) { - const QRect r(rect.x() + rect.width() - br.horizontal * 2, rect.y() + rect.height() - br.vertical * 2, - br.horizontal * 2, br.vertical * 2); + if (!bottomRightRadii.isNull()) { + const QRect r(rect.x() + rect.width() - bottomRightRadii.x() * 2, rect.y() + rect.height() - bottomRightRadii.y() * 2, + bottomRightRadii.x() * 2, bottomRightRadii.y() * 2); path.arcTo(r, 270, 90); } else { path.lineTo(rect.x() + rect.width(), rect.y() + rect.height()); diff -Nru khtml-5.24.0/src/rendering/render_box.h khtml-5.26.0/src/rendering/render_box.h --- khtml-5.24.0/src/rendering/render_box.h 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/rendering/render_box.h 2016-09-06 12:04:32.000000000 +0000 @@ -228,7 +228,8 @@ void calcAbsoluteHorizontalReplaced(); QPainterPath borderRadiusClipPath(const BackgroundLayer *bgLayer, int _tx, int _ty, int w, int h, - int bleft, int bright, int btop, int bbottom) const; + int borderLeft, int borderRight, int borderTop, int borderBottom, + int paddingLeft, int paddingRight, int paddingTop, int paddingBottom) const; QRect overflowClipRect(int tx, int ty) Q_DECL_OVERRIDE; QRect clipRect(int tx, int ty) Q_DECL_OVERRIDE; diff -Nru khtml-5.24.0/src/rendering/render_object.cpp khtml-5.26.0/src/rendering/render_object.cpp --- khtml-5.24.0/src/rendering/render_object.cpp 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/rendering/render_object.cpp 2016-09-06 12:04:32.000000000 +0000 @@ -1312,15 +1312,32 @@ } } -void RenderObject::adjustBorderRadii(BorderRadii &tl, BorderRadii &tr, BorderRadii &bl, BorderRadii &br, int w, int h) const +void RenderObject::calcBorderRadii(QPoint &topLeftRadii, QPoint &topRightRadii, QPoint &bottomLeftRadii, QPoint &bottomRightRadii, int w, int h) const { - // CSS Backgrounds and Borders Module Level 3 (WD-css3-background-20080910), chapter 4.5: - // " Corners do not overlap: When the sum of two adjacent corner radii exceeds the size of the border box, - // UAs must reduce one or more of the radii. The algorithm for reducing radii is as follows:" - // The sum of two adjacent radii may not be more than the width or height (whichever is relevant) of the box. - // If any sum exceeds that value, all radii are reduced according to the following formula:" - const int horS = qMax(tl.horizontal + tr.horizontal, bl.horizontal + br.horizontal); - const int verS = qMax(tl.vertical + bl.vertical, tr.vertical + br.vertical); + // CSS Backgrounds and Borders Module Level 3 (http://www.w3.org/TR/2014/CR-css3-background-20140909/), chapter 5.5: + // "Corner curves must not overlap: When the sum of any two adjacent border radii exceeds the size of the border box, + // UAs must proportionally reduce the used values of all border radii until none of them overlap. + // The algorithm for reducing radii is as follows: ..." + + const RenderStyle *s = style(); + if (!s->hasBorderRadius()) { + return; + } + + // Border radii Length is Fixed|Percent + topLeftRadii.rx() = s->borderTopLeftRadius().horizontal.minWidth(w); + topLeftRadii.ry() = s->borderTopLeftRadius().vertical.minWidth(h); + topRightRadii.rx() = s->borderTopRightRadius().horizontal.minWidth(w); + topRightRadii.ry() = s->borderTopRightRadius().vertical.minWidth(h); + bottomLeftRadii.rx() = s->borderBottomLeftRadius().horizontal.minWidth(w); + bottomLeftRadii.ry() = s->borderBottomLeftRadius().vertical.minWidth(h); + bottomRightRadii.rx() = s->borderBottomRightRadius().horizontal.minWidth(w); + bottomRightRadii.ry() = s->borderBottomRightRadius().vertical.minWidth(h); + + // Adjust the border radii so they don't overlap when taking the size of the box into account. + + const int horS = qMax(topLeftRadii.x() + topRightRadii.x(), bottomLeftRadii.x() + bottomRightRadii.x()); + const int verS = qMax(topLeftRadii.y() + bottomLeftRadii.y(), topRightRadii.y() + bottomRightRadii.y()); qreal f = 1.0; if (horS > 0) { @@ -1331,14 +1348,10 @@ } if (f < 1.0) { - tl.horizontal *= f; - tr.horizontal *= f; - bl.horizontal *= f; - br.horizontal *= f; - tl.vertical *= f; - tr.vertical *= f; - bl.vertical *= f; - br.vertical *= f; + topLeftRadii *= f; + topRightRadii *= f; + bottomLeftRadii *= f; + bottomRightRadii *= f; } } @@ -1387,7 +1400,7 @@ return composite; } -static QBrush cornerGradient(int cx, int cy, const BorderRadii &radius, int angleStart, int angleSpan, +static QBrush cornerGradient(int cx, int cy, const QPoint &radius, int angleStart, int angleSpan, const QColor &startColor, const QColor &finalColor) { QConicalGradient g(0, 0, angleStart); @@ -1399,10 +1412,10 @@ QTransform xform; xform.translate(cx, cy); - if (radius.horizontal < radius.vertical) { - xform.scale(radius.horizontal / radius.vertical, 1); - } else if (radius.vertical < radius.horizontal) { - xform.scale(1, radius.vertical / radius.horizontal); + if (radius.x() < radius.y()) { + xform.scale(radius.x() / radius.y(), 1); + } else if (radius.y() < radius.x()) { + xform.scale(1, radius.y() / radius.x()); } brush.setTransform(xform); @@ -1410,7 +1423,7 @@ } void RenderObject::drawBorderArc(QPainter *p, int x, int y, float horThickness, float vertThickness, - const BorderRadii &radius, int angleStart, int angleSpan, const QBrush &brush, + const QPoint &radius, int angleStart, int angleSpan, const QBrush &brush, const QColor &textColor, EBorderStyle style, qreal *nextDashOffset) const { QColor c = brush.color(); @@ -1447,7 +1460,7 @@ } case SOLID: { - const QRect outerRect = QRect(x - radius.horizontal, y - radius.vertical, radius.horizontal * 2, radius.vertical * 2); + const QRect outerRect = QRect(x - radius.x(), y - radius.y(), radius.x() * 2, radius.y() * 2); const QRect innerRect = outerRect.adjusted(horThickness, vertThickness, -horThickness, -vertThickness); QPainterPath path; path.arcMoveTo(outerRect, angleStart); @@ -1466,9 +1479,7 @@ const qreal hw = (horThickness + 1) / 3; const qreal vw = (vertThickness + 1) / 3; - BorderRadii br; - br.horizontal = radius.horizontal - hw * 2 + 1; - br.vertical = radius.vertical - vw * 2 + 1; + QPoint br(radius.x() - hw * 2 + 1, radius.y() - vw * 2 + 1); drawBorderArc(p, x, y, hw, vw, radius, angleStart, angleSpan, brush, textColor, SOLID); drawBorderArc(p, x, y, hw, vw, br, angleStart, angleSpan, brush, textColor, SOLID); @@ -1477,7 +1488,7 @@ case INSET: case OUTSET: { - QImage image1(radius.horizontal * 2, radius.vertical * 2, QImage::Format_ARGB32_Premultiplied); + QImage image1(radius.x() * 2, radius.y() * 2, QImage::Format_ARGB32_Premultiplied); image1.fill(0); QImage image2 = image1; @@ -1487,22 +1498,22 @@ QPainter p2; p2.begin(&image1); - drawBorderArc(&p2, radius.horizontal, radius.vertical, horThickness, vertThickness, + drawBorderArc(&p2, radius.x(), radius.y(), horThickness, vertThickness, radius, angleStart, angleSpan, c1, textColor, SOLID); p2.end(); p2.begin(&image2); - drawBorderArc(&p2, radius.horizontal, radius.vertical, horThickness, vertThickness, + drawBorderArc(&p2, radius.x(), radius.y(), horThickness, vertThickness, radius, angleStart, angleSpan, c2, textColor, SOLID); p2.end(); - p->drawImage(x - radius.horizontal, y - radius.vertical, blendCornerImages(image1, image2)); + p->drawImage(x - radius.x(), y - radius.y(), blendCornerImages(image1, image2)); break; } case RIDGE: case GROOVE: { - QImage image1(radius.horizontal * 2, radius.vertical * 2, QImage::Format_ARGB32_Premultiplied); + QImage image1(radius.x() * 2, radius.y() * 2, QImage::Format_ARGB32_Premultiplied); image1.fill(0); QImage image2 = image1; @@ -1512,12 +1523,10 @@ const qreal hw = horThickness / 2; const qreal vw = vertThickness / 2; - int cx = radius.horizontal; - int cy = radius.vertical; + int cx = radius.x(); + int cy = radius.y(); - BorderRadii innerRadius; - innerRadius.horizontal = radius.horizontal - hw; - innerRadius.vertical = radius.vertical - vw; + QPoint innerRadius(radius.x() - hw, radius.y() - vw); QPainter p2; p2.begin(&image1); @@ -1530,13 +1539,13 @@ drawBorderArc(&p2, cx, cy, hw, vw, innerRadius, angleStart, angleSpan, c1, textColor, SOLID); p2.end(); - p->drawImage(x - radius.horizontal, y - radius.vertical, blendCornerImages(image1, image2)); + p->drawImage(x - radius.x(), y - radius.y(), blendCornerImages(image1, image2)); break; } case DOTTED: case DASHED: { - const QRectF rect = QRectF(x - radius.horizontal, y - radius.vertical, radius.horizontal * 2, radius.vertical * 2); + const QRectF rect = QRectF(x - radius.x(), y - radius.y(), radius.x() * 2, radius.y() * 2); int width; // Figure out which border we're starting from @@ -1600,16 +1609,8 @@ bool render_r = rs > BHIDDEN && end && !rt; bool render_b = bs > BHIDDEN && !bt; - BorderRadii topLeft = style->borderTopLeftRadius(); - BorderRadii topRight = style->borderTopRightRadius(); - BorderRadii bottomLeft = style->borderBottomLeftRadius(); - BorderRadii bottomRight = style->borderBottomRightRadius(); - - if (style->hasBorderRadius()) { - // Adjust the border radii so they don't overlap when taking the size of the box - // into account. - adjustBorderRadii(topLeft, topRight, bottomLeft, bottomRight, w, h); - } + QPoint topLeftRadii, topRightRadii, bottomLeftRadii, bottomRightRadii; + calcBorderRadii(topLeftRadii, topRightRadii, bottomLeftRadii, bottomRightRadii, w, h); bool upperLeftBorderStylesMatch = render_l && (ts == ls) && (tc == lc); bool upperRightBorderStylesMatch = render_r && (ts == rs) && (tc == rc); @@ -1627,22 +1628,22 @@ // Draw the borders counter-clockwise starting with the upper right corner if (render_t) { - bool ignore_left = (topLeft.horizontal > 0) || + bool ignore_left = (topLeftRadii.x() > 0) || ((tc == lc) && (tt == lt) && (ts >= OUTSET) && (ls == DOTTED || ls == DASHED || ls == SOLID || ls == OUTSET)); - bool ignore_right = (topRight.horizontal > 0) || + bool ignore_right = (topRightRadii.x() > 0) || ((tc == rc) && (tt == rt) && (ts >= OUTSET) && (rs == DOTTED || rs == DASHED || rs == SOLID || rs == INSET)); - int x = _tx + topLeft.horizontal; - int x2 = _tx + w - topRight.horizontal; + int x = _tx + topLeftRadii.x(); + int x2 = _tx + w - topRightRadii.x(); - if (topRight.hasBorderRadius()) { - int x = _tx + w - topRight.horizontal; - int y = _ty + topRight.vertical; + if (!topRightRadii.isNull()) { + int x = _tx + w - topRightRadii.x(); + int y = _ty + topRightRadii.y(); int startAngle, span; if (upperRightBorderStylesMatch || upperRightGradient) { @@ -1654,96 +1655,96 @@ } const QBrush brush = upperRightGradient ? - cornerGradient(x, y, topRight, startAngle, span, rc, tc) : tc; + cornerGradient(x, y, topRightRadii, startAngle, span, rc, tc) : tc; // Draw the upper right arc drawBorderArc(p, x, y, style->borderRightWidth(), style->borderTopWidth(), - topRight, startAngle, span, brush, style->color(), ts, &nextDashOffset); + topRightRadii, startAngle, span, brush, style->color(), ts, &nextDashOffset); } drawBorder(p, x, _ty, x2, _ty + style->borderTopWidth(), BSTop, tc, style->color(), ts, ignore_left ? 0 : style->borderLeftWidth(), ignore_right ? 0 : style->borderRightWidth(), false, &nextDashOffset); - if (topLeft.hasBorderRadius()) { - int x = _tx + topLeft.horizontal; - int y = _ty + topLeft.vertical; + if (!topLeftRadii.isNull()) { + int x = _tx + topLeftRadii.x(); + int y = _ty + topLeftRadii.y(); int startAngle = 90; int span = (upperLeftBorderStylesMatch || upperLeftGradient) ? 90 : 45; const QBrush brush = upperLeftGradient ? - cornerGradient(x, y, topLeft, startAngle, span, tc, lc) : tc; + cornerGradient(x, y, topLeftRadii, startAngle, span, tc, lc) : tc; // Draw the upper left arc drawBorderArc(p, x, y, style->borderLeftWidth(), style->borderTopWidth(), - topLeft, startAngle, span, brush, style->color(), ts, &nextDashOffset); + topLeftRadii, startAngle, span, brush, style->color(), ts, &nextDashOffset); } else if (ls == DASHED || ls == DOTTED) { nextDashOffset = 0; // Reset the offset to avoid partially overlapping dashes } } if (render_l) { - bool ignore_top = (topLeft.vertical > 0) || + bool ignore_top = (topLeftRadii.y() > 0) || ((tc == lc) && (tt == lt) && (ls >= OUTSET) && (ts == DOTTED || ts == DASHED || ts == SOLID || ts == OUTSET)); - bool ignore_bottom = (bottomLeft.vertical > 0) || + bool ignore_bottom = (bottomLeftRadii.y() > 0) || ((bc == lc) && (bt == lt) && (ls >= OUTSET) && (bs == DOTTED || bs == DASHED || bs == SOLID || bs == INSET)); - int y = _ty + topLeft.vertical; - int y2 = _ty + h - bottomLeft.vertical; + int y = _ty + topLeftRadii.y(); + int y2 = _ty + h - bottomLeftRadii.y(); - if (!upperLeftBorderStylesMatch && !upperLeftGradient && topLeft.hasBorderRadius()) { - int x = _tx + topLeft.horizontal; - int y = _ty + topLeft.vertical; + if (!upperLeftBorderStylesMatch && !upperLeftGradient && !topLeftRadii.isNull()) { + int x = _tx + topLeftRadii.x(); + int y = _ty + topLeftRadii.y(); int startAngle = 135; int span = 45; // Draw the upper left arc drawBorderArc(p, x, y, style->borderLeftWidth(), style->borderTopWidth(), - topLeft, startAngle, span, lc, style->color(), ls, &nextDashOffset); + topLeftRadii, startAngle, span, lc, style->color(), ls, &nextDashOffset); } drawBorder(p, _tx, y, _tx + style->borderLeftWidth(), y2, BSLeft, lc, style->color(), ls, ignore_top ? 0 : style->borderTopWidth(), ignore_bottom ? 0 : style->borderBottomWidth(), false, &nextDashOffset); - if (!lowerLeftBorderStylesMatch && !lowerLeftGradient && bottomLeft.hasBorderRadius()) { - int x = _tx + bottomLeft.horizontal; - int y = _ty + h - bottomLeft.vertical; + if (!lowerLeftBorderStylesMatch && !lowerLeftGradient && !bottomLeftRadii.isNull()) { + int x = _tx + bottomLeftRadii.x(); + int y = _ty + h - bottomLeftRadii.y(); int startAngle = 180; int span = 45; // Draw the bottom left arc drawBorderArc(p, x, y, style->borderLeftWidth(), style->borderBottomWidth(), - bottomLeft, startAngle, span, lc, style->color(), ls, &nextDashOffset); + bottomLeftRadii, startAngle, span, lc, style->color(), ls, &nextDashOffset); } // Reset the offset to avoid partially overlapping dashes - if (!bottomLeft.hasBorderRadius() && (bs == DASHED || bs == DOTTED)) { + if (bottomLeftRadii.isNull() && (bs == DASHED || bs == DOTTED)) { nextDashOffset = 0; } } if (render_b) { - bool ignore_left = (bottomLeft.horizontal > 0) || + bool ignore_left = (bottomLeftRadii.x() > 0) || ((bc == lc) && (bt == lt) && (bs >= OUTSET) && (ls == DOTTED || ls == DASHED || ls == SOLID || ls == INSET)); - bool ignore_right = (bottomRight.horizontal > 0) || + bool ignore_right = (bottomRightRadii.x() > 0) || ((bc == rc) && (bt == rt) && (bs >= OUTSET) && (rs == DOTTED || rs == DASHED || rs == SOLID || rs == OUTSET)); - int x = _tx + bottomLeft.horizontal; - int x2 = _tx + w - bottomRight.horizontal; + int x = _tx + bottomLeftRadii.x(); + int x2 = _tx + w - bottomRightRadii.x(); - if (bottomLeft.hasBorderRadius()) { - int x = _tx + bottomLeft.horizontal; - int y = _ty + h - bottomLeft.vertical; + if (!bottomLeftRadii.isNull()) { + int x = _tx + bottomLeftRadii.x(); + int y = _ty + h - bottomLeftRadii.y(); int startAngle, span; if (lowerLeftBorderStylesMatch || lowerLeftGradient) { @@ -1755,71 +1756,71 @@ } const QBrush brush = lowerLeftGradient ? - cornerGradient(x, y, bottomLeft, startAngle, span, lc, bc) : bc; + cornerGradient(x, y, bottomLeftRadii, startAngle, span, lc, bc) : bc; // Draw the bottom left arc drawBorderArc(p, x, y, style->borderLeftWidth(), style->borderBottomWidth(), - bottomLeft, startAngle, span, brush, style->color(), bs, &nextDashOffset); + bottomLeftRadii, startAngle, span, brush, style->color(), bs, &nextDashOffset); } drawBorder(p, x, _ty + h - style->borderBottomWidth(), x2, _ty + h, BSBottom, bc, style->color(), bs, ignore_left ? 0 : style->borderLeftWidth(), ignore_right ? 0 : style->borderRightWidth(), false, &nextDashOffset); - if (bottomRight.hasBorderRadius()) { - int x = _tx + w - bottomRight.horizontal; - int y = _ty + h - bottomRight.vertical; + if (!bottomRightRadii.isNull()) { + int x = _tx + w - bottomRightRadii.x(); + int y = _ty + h - bottomRightRadii.y(); int startAngle = 270; int span = (lowerRightBorderStylesMatch || lowerRightGradient) ? 90 : 45; const QBrush brush = lowerRightGradient ? - cornerGradient(x, y, bottomRight, startAngle, span, bc, rc) : bc; + cornerGradient(x, y, bottomRightRadii, startAngle, span, bc, rc) : bc; // Draw the bottom right arc drawBorderArc(p, x, y, style->borderRightWidth(), style->borderBottomWidth(), - bottomRight, startAngle, span, brush, style->color(), bs, &nextDashOffset); + bottomRightRadii, startAngle, span, brush, style->color(), bs, &nextDashOffset); } else if (rs == DASHED || rs == DOTTED) { nextDashOffset = 0; // Reset the offset to avoid partially overlapping dashes } } if (render_r) { - bool ignore_top = (topRight.vertical > 0) || + bool ignore_top = (topRightRadii.y() > 0) || ((tc == rc) && (tt == rt) && (rs >= DOTTED || rs == INSET) && (ts == DOTTED || ts == DASHED || ts == SOLID || ts == OUTSET)); - bool ignore_bottom = (bottomRight.vertical > 0) || + bool ignore_bottom = (bottomRightRadii.y() > 0) || ((bc == rc) && (bt == rt) && (rs >= DOTTED || rs == INSET) && (bs == DOTTED || bs == DASHED || bs == SOLID || bs == INSET)); - int y = _ty + topRight.vertical; - int y2 = _ty + h - bottomRight.vertical; + int y = _ty + topRightRadii.y(); + int y2 = _ty + h - bottomRightRadii.y(); - if (!lowerRightBorderStylesMatch && !lowerRightGradient && bottomRight.hasBorderRadius()) { - int x = _tx + w - bottomRight.horizontal; - int y = _ty + h - bottomRight.vertical; + if (!lowerRightBorderStylesMatch && !lowerRightGradient && !bottomRightRadii.isNull()) { + int x = _tx + w - bottomRightRadii.x(); + int y = _ty + h - bottomRightRadii.y(); int startAngle = 315; int span = 45; // Draw the bottom right arc drawBorderArc(p, x, y, style->borderRightWidth(), style->borderBottomWidth(), - bottomRight, startAngle, span, rc, style->color(), rs, &nextDashOffset); + bottomRightRadii, startAngle, span, rc, style->color(), rs, &nextDashOffset); } drawBorder(p, _tx + w - style->borderRightWidth(), y, _tx + w, y2, BSRight, rc, style->color(), rs, ignore_top ? 0 : style->borderTopWidth(), ignore_bottom ? 0 : style->borderBottomWidth(), false, &nextDashOffset); - if (!upperRightBorderStylesMatch && !upperRightGradient && topRight.hasBorderRadius()) { - int x = _tx + w - topRight.horizontal; - int y = _ty + topRight.vertical; + if (!upperRightBorderStylesMatch && !upperRightGradient && !topRightRadii.isNull()) { + int x = _tx + w - topRightRadii.x(); + int y = _ty + topRightRadii.y(); int startAngle = 0; int span = 45; // Draw the upper right arc drawBorderArc(p, x, y, style->borderRightWidth(), style->borderTopWidth(), - topRight, startAngle, span, rc, style->color(), rs, &nextDashOffset); + topRightRadii, startAngle, span, rc, style->color(), rs, &nextDashOffset); } } } diff -Nru khtml-5.24.0/src/rendering/render_object.h khtml-5.26.0/src/rendering/render_object.h --- khtml-5.24.0/src/rendering/render_object.h 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/rendering/render_object.h 2016-09-06 12:04:32.000000000 +0000 @@ -714,10 +714,10 @@ }; virtual void paint(PaintInfo &i, int tx, int ty); - void adjustBorderRadii(BorderRadii &tl, BorderRadii &tr, BorderRadii &bl, BorderRadii &br, int w, int h) const; + void calcBorderRadii(QPoint &topLeftRadii, QPoint &topRightRadii, QPoint &bottomLeftRadii, QPoint &bottomRightRadii, int w, int h) const; void drawBorderArc(QPainter *p, int x, int y, float horThickness, float vertThickness, - const BorderRadii &radius, int angleStart, int angleSpan, const QBrush &brush, + const QPoint &radius, int angleStart, int angleSpan, const QBrush &brush, const QColor &textColor, EBorderStyle style, qreal *dashOffset = 0) const; void paintBorder(QPainter *p, int _tx, int _ty, int w, int h, const RenderStyle *style, bool begin = true, bool end = true); diff -Nru khtml-5.24.0/src/rendering/render_style.cpp khtml-5.26.0/src/rendering/render_style.cpp --- khtml-5.24.0/src/rendering/render_style.cpp 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/rendering/render_style.cpp 2016-09-06 12:04:32.000000000 +0000 @@ -429,6 +429,15 @@ vertical == o.vertical; } +BorderRadiusData::BorderRadiusData() + :Shared() +{ + topRight = RenderStyle::initialBorderRadius(); + bottomRight = RenderStyle::initialBorderRadius(); + bottomLeft = RenderStyle::initialBorderRadius(); + topLeft = RenderStyle::initialBorderRadius(); +} + bool BorderRadiusData::operator==(const BorderRadiusData &o) const { return topRight == o.topRight && bottomRight == o.bottomRight diff -Nru khtml-5.24.0/src/rendering/render_style.h khtml-5.26.0/src/rendering/render_style.h --- khtml-5.24.0/src/rendering/render_style.h 2016-07-03 09:13:03.000000000 +0000 +++ khtml-5.26.0/src/rendering/render_style.h 2016-09-06 12:04:32.000000000 +0000 @@ -775,14 +775,14 @@ }; struct BorderRadii { - int horizontal; - int vertical; + Length horizontal; + Length vertical; - BorderRadii(): horizontal(0), vertical(0) {} + BorderRadii(): horizontal(Length(0, Fixed)), vertical(Length(0, Fixed)) {} bool hasBorderRadius() const { - return horizontal > 0 && vertical > 0; + return (!horizontal.isZero() && !vertical.isZero()); } bool operator==(const BorderRadii &o) const; @@ -795,7 +795,7 @@ class BorderRadiusData : public Shared { public: - BorderRadiusData() : Shared() {}; + BorderRadiusData(); BorderRadiusData(const BorderRadiusData &other) : Shared(), topRight(other.topRight), bottomRight(other.bottomRight),