Projects
Kontact:4.13:Development
kdelibs
Log In
Username
Password
We truncated the diff of some files because they were too big. If you want to see the full diff for every file,
click here
.
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 15
View file
_service:set_version:kdelibs.spec
Changed
@@ -39,7 +39,7 @@ %global _changelog_trimtime %(date +%s -d "1 year ago") Summary: KDE Libraries -Version: 4.14.30.git20141230.42bd1a3 +Version: 4.14.30.git20140909.a932980 Release: 0%{?dist} Name: kdelibs
View file
_service
Changed
@@ -4,7 +4,7 @@ <param name="url">https://github.com/kolab-groupware/kdelibs.git</param> <param name="versionformat">4.14.30.git%cd.%h</param> <param name="filename">kdelibs</param> - <param name="revision">kolab/integration/4.14.0</param> + <param name="revision">kolab/integration/4.13.0</param> </service> <service name="recompress"> <param name="file">*.tar</param>
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/CMakeLists.txt -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/CMakeLists.txt
Changed
@@ -9,7 +9,7 @@ ################# set KDE specific information ################# set (KDE_VERSION_MAJOR 4) -set (KDE_VERSION_MINOR 14) +set (KDE_VERSION_MINOR 13) set (KDE_VERSION_RELEASE 3) set (KDE_VERSION "${KDE_VERSION_MAJOR}.${KDE_VERSION_MINOR}.${KDE_VERSION_RELEASE}" ) set (KDE_VERSION_STRING "${KDE_VERSION}")
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/README -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/README
Changed
@@ -10,7 +10,7 @@ About kdelibs ------------- -This is version 4.14.3 of the KDE libraries. +This is version 4.13.3 of the KDE libraries. This package includes libraries that are central to the development and execution of a KDE program, as well as internationalization files for these
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/cmake/modules/FindFFmpeg.cmake -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/cmake/modules/FindFFmpeg.cmake
Changed
@@ -68,16 +68,16 @@ find_path(${_component}_INCLUDE_DIRS ${_header} HINTS - ${PC_${_component}_INCLUDEDIR} - ${PC_${_component}_INCLUDE_DIRS} + ${PC_LIB${_component}_INCLUDEDIR} + ${PC_LIB${_component}_INCLUDE_DIRS} PATH_SUFFIXES ffmpeg ) find_library(${_component}_LIBRARIES NAMES ${_library} HINTS - ${PC_${_component}_LIBDIR} - ${PC_${_component}_LIBRARY_DIRS} + ${PC_LIB${_component}_LIBDIR} + ${PC_LIB${_component}_LIBRARY_DIRS} ) set(${_component}_DEFINITIONS ${PC_${_component}_CFLAGS_OTHER} CACHE STRING "The ${_component} CFLAGS.")
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/cmake/modules/FindKDE4Internal.cmake -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/cmake/modules/FindKDE4Internal.cmake
Changed
@@ -373,11 +373,6 @@ # in this directory over those from CMAKE_MODULE_PATH cmake_policy(SET CMP0017 NEW) -# since cmake 3.0: use of the LOCATION target property is disallowed while it is used in KDE4Macros.cmake -if (POLICY CMP0026) - cmake_policy(SET CMP0026 OLD) -endif (POLICY CMP0026) - # Only do something if it hasn't been found yet if(NOT KDE4_FOUND) @@ -1099,7 +1094,7 @@ if (CMAKE_SYSTEM_NAME MATCHES Linux OR CMAKE_SYSTEM_NAME STREQUAL GNU) if (CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_GNU_SOURCE) + set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}") @@ -1114,7 +1109,7 @@ endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES profile) endif (CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") if (CMAKE_C_COMPILER MATCHES "icc") - set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_GNU_SOURCE) + set ( _KDE4_PLATFORM_DEFINITIONS -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_GNU_SOURCE) set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}") set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}") endif (CMAKE_C_COMPILER MATCHES "icc") @@ -1218,7 +1213,7 @@ # It is kept here nonetheless both for backwards compatibility in case one does not use add_definitions(${KDE4_DEFINITIONS}) # and also because it is/was needed by glibc for snprintf to be available when building C files. # See commit 4a44862b2d178c1d2e1eb4da90010d19a1e4a42c. - add_definitions (-D_DEFAULT_SOURCE -D_BSD_SOURCE) + add_definitions (-D_BSD_SOURCE) endif (CMAKE_SYSTEM_NAME MATCHES Linux OR CMAKE_SYSTEM_NAME STREQUAL GNU) if (CMAKE_SYSTEM_NAME STREQUAL GNU)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/cmake/modules/FindKdcraw.cmake -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/cmake/modules/FindKdcraw.cmake
Changed
@@ -14,7 +14,7 @@ # KDCRAW_DEFINITIONS - Compiler switches required for using libkdcraw # KDCRAW_VERSION - Version of libkdcraw which was found # -# Copyright (c) 2008-2014, Gilles Caulier, <caulier.gilles@gmail.com> +# Copyright (c) 2008-2011, Gilles Caulier, <caulier.gilles@gmail.com> # Copyright (c) 2011, Michael G. Hansen, <mike@mghansen.de> # # Redistribution and use is allowed according to the terms of the BSD license. @@ -39,16 +39,16 @@ # Check for a local version of the library. if (KDCRAW_LOCAL_DIR) - find_file(KDCRAW_LOCAL_FOUND libkdcraw/libkdcraw_export.h ${CMAKE_SOURCE_DIR}/${KDCRAW_LOCAL_DIR} NO_DEFAULT_PATH) + find_file(KDCRAW_LOCAL_FOUND libkdcraw/version.h.cmake ${CMAKE_SOURCE_DIR}/${KDCRAW_LOCAL_DIR} NO_DEFAULT_PATH) if (NOT KDCRAW_LOCAL_FOUND) message(WARNING "KDCRAW_LOCAL_DIR specified as \"${KDCRAW_LOCAL_DIR}\" but libkdcraw could not be found there.") endif (NOT KDCRAW_LOCAL_FOUND) else (KDCRAW_LOCAL_DIR) - find_file(KDCRAW_LOCAL_FOUND libkdcraw/libkdcraw_export.h ${CMAKE_SOURCE_DIR}/libkdcraw NO_DEFAULT_PATH) + find_file(KDCRAW_LOCAL_FOUND libkdcraw/version.h.cmake ${CMAKE_SOURCE_DIR}/libkdcraw NO_DEFAULT_PATH) if (KDCRAW_LOCAL_FOUND) set(KDCRAW_LOCAL_DIR libkdcraw) endif (KDCRAW_LOCAL_FOUND) - find_file(KDCRAW_LOCAL_FOUND libkdcraw/libkdcraw_export.h ${CMAKE_SOURCE_DIR}/libs/libkdcraw NO_DEFAULT_PATH) + find_file(KDCRAW_LOCAL_FOUND libkdcraw/version.h.cmake ${CMAKE_SOURCE_DIR}/libs/libkdcraw NO_DEFAULT_PATH) if (KDCRAW_LOCAL_FOUND) set(KDCRAW_LOCAL_DIR libs/libkdcraw) endif (KDCRAW_LOCAL_FOUND)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/cmake/modules/FindKexiv2.cmake -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/cmake/modules/FindKexiv2.cmake
Changed
@@ -11,7 +11,7 @@ # KEXIV2_DEFINITIONS - Compiler switches required for using libkexiv2 # -# Copyright (c) 2008-2014, Gilles Caulier, <caulier.gilles@gmail.com> +# Copyright (c) 2008, Gilles Caulier, <caulier.gilles@gmail.com> # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -32,11 +32,11 @@ if (KEXIV2_LOCAL_DIR) set(KEXIV2_LOCAL_FOUND TRUE) else (KEXIV2_LOCAL_DIR) - find_file(KEXIV2_LOCAL_FOUND libkexiv2/libkexiv2_export.h ${CMAKE_SOURCE_DIR}/libkexiv2 ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) + find_file(KEXIV2_LOCAL_FOUND libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libkexiv2 ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) if (KEXIV2_LOCAL_FOUND) # Was it found in libkexiv2/ or in libs/libkexiv2? - find_file(KEXIV2_LOCAL_FOUND_IN_LIBS libkexiv2/libkexiv2_export.h ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) + find_file(KEXIV2_LOCAL_FOUND_IN_LIBS libkexiv2/version.h.cmake ${CMAKE_SOURCE_DIR}/libs/libkexiv2 NO_DEFAULT_PATH) if (KEXIV2_LOCAL_FOUND_IN_LIBS) set(KEXIV2_LOCAL_DIR libs/libkexiv2) else (KEXIV2_LOCAL_FOUND_IN_LIBS)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/cmake/modules/FindKipi.cmake -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/cmake/modules/FindKipi.cmake
Changed
@@ -16,7 +16,7 @@ # # Copyright (c) 2012, Victor Dodon <dodonvictor at gmail dot com> -# Copyright (c) 2012-2014, Gilles Caulier <caulier dot gilles at gmail dot com> +# Copyright (c) 2012, Gilles Caulier <caulier dot gilles at gmail dot com> # # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. @@ -43,17 +43,17 @@ ENDIF(NOT Kipi_FIND_QUIETLY) IF(KIPI_LOCAL_DIR) - FIND_FILE(KIPI_LOCAL_FOUND libkipi/libkipi_export.h ${CMAKE_SOURCE_DIR}/${KIPI_LOCAL_DIR} NO_DEFAULT_PATH) + FIND_FILE(KIPI_LOCAL_FOUND libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/${KIPI_LOCAL_DIR} NO_DEFAULT_PATH) IF(NOT KIPI_LOCAL_FOUND) MESSAGE(WARNING "KIPI_LOCAL_DIR specified as \"${KIPI_LOCAL_DIR}\" but libkipi could not be found there.") ENDIF(NOT KIPI_LOCAL_FOUND) ELSE(KIPI_LOCAL_DIR) - FIND_FILE(KIPI_LOCAL_FOUND libkipi/libkipi_export.h ${CMAKE_SOURCE_DIR}/libkipi NO_DEFAULT_PATH) + FIND_FILE(KIPI_LOCAL_FOUND libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/libkipi NO_DEFAULT_PATH) IF(KIPI_LOCAL_FOUND) SET(KIPI_LOCAL_DIR libkipi) ENDIF(KIPI_LOCAL_FOUND) - FIND_FILE(KIPI_LOCAL_FOUND libkipi/libkipi_export.h ${CMAKE_SOURCE_DIR}/libs/libkipi NO_DEFAULT_PATH) + FIND_FILE(KIPI_LOCAL_FOUND libkipi/version.h.cmake ${CMAKE_SOURCE_DIR}/libs/libkipi NO_DEFAULT_PATH) IF(KIPI_LOCAL_FOUND) SET(KIPI_LOCAL_DIR libs/libkipi) ENDIF(KIPI_LOCAL_FOUND)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/cmake/modules/FindPyKDE4.cmake -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/cmake/modules/FindPyKDE4.cmake
Changed
@@ -25,6 +25,7 @@ STRING(REGEX REPLACE ".*\npykde_version_str:([^\n]+).*$" "\\1" PYKDE4_VERSION_STR ${pykde_config}) STRING(REGEX REPLACE ".*\npykde_kde_sip_flags:([^\n]+).*$" "\\1" PYKDE4_SIP_FLAGS ${pykde_config}) STRING(REGEX REPLACE ".*\npykde_sip_dir:([^\n]+).*$" "\\1" PYKDE4_SIP_DIR ${pykde_config}) + STRING(REGEX REPLACE ".*\npykde_version_tag:([^\n]+).*$" "\\1" PYKDE4_VERSION_TAG ${pykde_config}) MESSAGE(STATUS "Found PyKDE4 version ${PYKDE4_VERSION_STR} ${PYKDE4_SIP_DIR}") SET(PYKDE4_FOUND TRUE)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/cmake/modules/FindPyKDE4.py -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/cmake/modules/FindPyKDE4.py
Changed
@@ -1,22 +1,46 @@ -# Copyright (c) 2014, Raphael Kubo da Costa <rakuco@FreeBSD.org> -# Redistribution and use is allowed according to the terms of the BSD license. -# For details see the accompanying COPYING-CMAKE-SCRIPTS file. +# By Simon Edwards <simon@simonzone.com> +# modified by Paul Giannaros <paul@giannaros.org> to add better PyKDE4 +# sip directory finding +# This file is in the public domain. -import PyKDE4.kdecore +import sys +import os +import PyKDE4.pykdeconfig +import PyQt4.pyqtconfig -if __name__ == '__main__': - try: - import PyKDE4.pykdeconfig - pykdecfg = PyKDE4.pykdeconfig.Configuration() - sip_dir = pykdecfg.pykde_sip_dir - sip_flags = pykdecfg.pykde_kde_sip_flags - except ImportError: - # PyQt4 >= 4.10.0 was built with configure-ng.py instead of - # configure.py, so pyqtconfig.py and pykdeconfig.py are not installed. - sip_dir = PyKDE4.kdecore.PYKDE_CONFIGURATION['sip_dir'] - sip_flags = PyKDE4.kdecore.PYKDE_CONFIGURATION['sip_flags'] +if "_pkg_config" in dir(PyKDE4.pykdeconfig): + _pkg_config = PyKDE4.pykdeconfig._pkg_config - print('pykde_version:%06.x' % PyKDE4.kdecore.version()) - print('pykde_version_str:%s' % PyKDE4.kdecore.versionString()) - print('pykde_sip_dir:%s' % sip_dir) - print('pykde_sip_flags:%s' % sip_flags) + for varname in [ + 'kde_version', + 'kde_version_extra', + 'kdebasedir', + 'kdeincdir', + 'kdelibdir', + 'libdir', + 'pykde_kde_sip_flags', + 'pykde_mod_dir', + 'pykde_modules', + 'pykde_sip_dir', + 'pykde_version', + 'pykde_version_str']: + varvalue = _pkg_config[varname] + if varname == 'pykde_sip_dir': + d = os.path.join(_pkg_config[varname], 'PyKDE4') + if os.path.exists(d): + varvalue = d + print("%s:%s\n" % (varname, varvalue)) + pykde_version_tag = '' + in_t = False + for item in _pkg_config['pykde_kde_sip_flags'].split(): + if item == "-t": + in_t = True + elif in_t: + if item.startswith("KDE_"): + pykde_version_tag = item + else: + in_t = False + print("pykde_version_tag:%s" % pykde_version_tag) + +else: + sys.exit(1)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/cmake/modules/FindPyQt.py -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/cmake/modules/FindPyQt.py
Changed
@@ -1,48 +1,24 @@ # Copyright (c) 2007, Simon Edwards <simon@simonzone.com> -# Copyright (c) 2014, Raphael Kubo da Costa <rakuco@FreeBSD.org> # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -import PyQt4.QtCore -import os -import sys +import PyQt4.pyqtconfig -def get_default_sip_dir(): - # This is based on QScintilla's configure.py, and only works for the - # default case where installation paths have not been changed in PyQt's - # configuration process. - if sys.platform == 'win32': - pyqt_sip_dir = os.path.join(sys.prefix, 'sip', 'PyQt4') - else: - pyqt_sip_dir = os.path.join(sys.prefix, 'share', 'sip', 'PyQt4') - return pyqt_sip_dir - -def get_qt4_tag(sip_flags): - in_t = False - for item in sip_flags.split(' '): - if item == '-t': - in_t = True - elif in_t: - if item.startswith('Qt_4'): - return item - else: - in_t = False - raise ValueError('Cannot find Qt\'s tag in PyQt4\'s SIP flags.') +pyqtcfg = PyQt4.pyqtconfig.Configuration() +print("pyqt_version:%06.0x" % pyqtcfg.pyqt_version) +print("pyqt_version_str:%s" % pyqtcfg.pyqt_version_str) -if __name__ == '__main__': - try: - import PyQt4.pyqtconfig - pyqtcfg = PyQt4.pyqtconfig.Configuration() - sip_dir = pyqtcfg.pyqt_sip_dir - sip_flags = pyqtcfg.pyqt_sip_flags - except ImportError: - # PyQt4 >= 4.10.0 was built with configure-ng.py instead of - # configure.py, so pyqtconfig.py is not installed. - sip_dir = get_default_sip_dir() - sip_flags = PyQt4.QtCore.PYQT_CONFIGURATION['sip_flags'] +pyqt_version_tag = "" +in_t = False +for item in pyqtcfg.pyqt_sip_flags.split(' '): + if item=="-t": + in_t = True + elif in_t: + if item.startswith("Qt_4"): + pyqt_version_tag = item + else: + in_t = False +print("pyqt_version_tag:%s" % pyqt_version_tag) - print('pyqt_version:%06.x' % PyQt4.QtCore.PYQT_VERSION) - print('pyqt_version_str:%s' % PyQt4.QtCore.PYQT_VERSION_STR) - print('pyqt_version_tag:%s' % get_qt4_tag(sip_flags)) - print('pyqt_sip_dir:%s' % sip_dir) - print('pyqt_sip_flags:%s' % sip_flags) +print("pyqt_sip_dir:%s" % pyqtcfg.pyqt_sip_dir) +print("pyqt_sip_flags:%s" % pyqtcfg.pyqt_sip_flags)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/cmake/modules/FindPyQt4.cmake -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/cmake/modules/FindPyQt4.cmake
Changed
@@ -9,20 +9,16 @@ # Find the installed version of PyQt4. FindPyQt4 should only be called after # Python has been found. # -# This file defines the following variables, which can also be overriden by -# users: +# This file defines the following variables: # # PYQT4_VERSION - The version of PyQt4 found expressed as a 6 digit hex number # suitable for comparison as a string # # PYQT4_VERSION_STR - The version of PyQt4 as a human readable string. # -# PYQT4_VERSION_TAG - The Qt4 version tag used by PyQt's sip files. +# PYQT4_VERSION_TAG - The PyQt version tag using by PyQt's sip files. # -# PYQT4_SIP_DIR - The directory holding the PyQt4 .sip files. This can be unset -# if PyQt4 was built using its new build system and pyqtconfig.py is not -# present on the system, as in this case its value cannot be determined -# automatically. +# PYQT4_SIP_DIR - The directory holding the PyQt4 .sip files. # # PYQT4_SIP_FLAGS - The SIP flags used to build PyQt. @@ -35,27 +31,13 @@ EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${_find_pyqt_py} OUTPUT_VARIABLE pyqt_config) IF(pyqt_config) - STRING(REGEX MATCH "^pyqt_version:([^\n]+).*$" _dummy ${pyqt_config}) - SET(PYQT4_VERSION "${CMAKE_MATCH_1}" CACHE STRING "PyQt4's version as a 6-digit hexadecimal number") + STRING(REGEX REPLACE "^pyqt_version:([^\n]+).*$" "\\1" PYQT4_VERSION ${pyqt_config}) + STRING(REGEX REPLACE ".*\npyqt_version_str:([^\n]+).*$" "\\1" PYQT4_VERSION_STR ${pyqt_config}) + STRING(REGEX REPLACE ".*\npyqt_version_tag:([^\n]+).*$" "\\1" PYQT4_VERSION_TAG ${pyqt_config}) + STRING(REGEX REPLACE ".*\npyqt_sip_dir:([^\n]+).*$" "\\1" PYQT4_SIP_DIR ${pyqt_config}) + STRING(REGEX REPLACE ".*\npyqt_sip_flags:([^\n]+).*$" "\\1" PYQT4_SIP_FLAGS ${pyqt_config}) - STRING(REGEX MATCH ".*\npyqt_version_str:([^\n]+).*$" _dummy ${pyqt_config}) - SET(PYQT4_VERSION_STR "${CMAKE_MATCH_1}" CACHE STRING "PyQt4's version as a human-readable string") - - STRING(REGEX MATCH ".*\npyqt_version_tag:([^\n]+).*$" _dummy ${pyqt_config}) - SET(PYQT4_VERSION_TAG "${CMAKE_MATCH_1}" CACHE STRING "The Qt4 version tag used by PyQt4's .sip files") - - STRING(REGEX MATCH ".*\npyqt_sip_dir:([^\n]+).*$" _dummy ${pyqt_config}) - SET(PYQT4_SIP_DIR "${CMAKE_MATCH_1}" CACHE PATH "The base directory where PyQt4's .sip files are installed") - - STRING(REGEX MATCH ".*\npyqt_sip_flags:([^\n]+).*$" _dummy ${pyqt_config}) - SET(PYQT4_SIP_FLAGS "${CMAKE_MATCH_1}" CACHE STRING "The SIP flags used to build PyQt4") - - IF(NOT IS_DIRECTORY "${PYQT4_SIP_DIR}") - MESSAGE(WARNING "The base directory where PyQt4's SIP files are installed could not be determined. This usually means PyQt4 was built with its new build system and pyqtconfig.py is not present.\n" - "Please set the PYQT4_SIP_DIR variable manually.") - ELSE(NOT IS_DIRECTORY "${PYQT4_SIP_DIR}") - SET(PYQT4_FOUND TRUE) - ENDIF(NOT IS_DIRECTORY "${PYQT4_SIP_DIR}") + SET(PYQT4_FOUND TRUE) ENDIF(pyqt_config) IF(PYQT4_FOUND)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/cmake/modules/KDE4Defaults.cmake -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/cmake/modules/KDE4Defaults.cmake
Changed
@@ -21,11 +21,11 @@ # define the generic version of the libraries here # this makes it easy to advance it when the next KDE release comes # Use this version number for libraries which are at version n in KDE version n -set(GENERIC_LIB_VERSION "4.14.3") +set(GENERIC_LIB_VERSION "4.13.3") set(GENERIC_LIB_SOVERSION "4") # Use this version number for libraries which are already at version n+1 in KDE version n -set(KDE_NON_GENERIC_LIB_VERSION "5.14.3") +set(KDE_NON_GENERIC_LIB_VERSION "5.13.3") set(KDE_NON_GENERIC_LIB_SOVERSION "5") # windows does not support LD_LIBRARY_PATH or similar
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/cmake/modules/KDE4Macros.cmake -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/cmake/modules/KDE4Macros.cmake
Changed
@@ -1338,7 +1338,7 @@ # the install phase function(KDE4_INSTALL_AUTH_ACTIONS HELPER_ID ACTIONS_FILE) - if(KDE4_AUTH_BACKEND_NAME STREQUAL "APPLE" OR KDE4_AUTH_BACKEND_NAME STREQUAL "OSX") + if(KDE4_AUTH_BACKEND_NAME STREQUAL "APPLE") install(CODE "execute_process(COMMAND ${KDE4_KAUTH_POLICY_GEN_EXECUTABLE} ${ACTIONS_FILE} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})") elseif(KDE4_AUTH_BACKEND_NAME STREQUAL "POLKITQT" OR KDE4_AUTH_BACKEND_NAME STREQUAL "POLKITQT-1") set(_output ${CMAKE_CURRENT_BINARY_DIR}/${HELPER_ID}.policy)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/doc/common/Doxyfile.global -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/doc/common/Doxyfile.global
Changed
@@ -1150,6 +1150,18 @@ XML_OUTPUT = xml +# The XML_SCHEMA tag can be used to specify an XML schema, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_SCHEMA = + +# The XML_DTD tag can be used to specify an XML DTD, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_DTD = + # If the XML_PROGRAMLISTING tag is set to YES Doxygen will # dump the program listings (including syntax highlighting # and cross-referencing information) to the XML output. Note that @@ -1459,7 +1471,7 @@ # DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note # that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. -DOT_GRAPH_MAX_NODES = 100 +DOT_GRAPH_MAX_NODES = 50 # The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the # graphs generated by dot. A depth value of 3 means that only nodes reachable
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/doc/common/kde-docs.css -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/doc/common/kde-docs.css
Changed
@@ -206,7 +206,7 @@ } pre.screen { - border: 2px solid gray; + border 2px solid gray; background: black; color: white;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/interfaces/kspeech/org.kde.KSpeech.xml -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/interfaces/kspeech/org.kde.KSpeech.xml
Changed
@@ -145,11 +145,6 @@ <arg name="voiceType" type="i" direction="in"/> <annotation name="org.freedesktop.DBus.Method.NoReply" value="true"/> </method> - - <method name="setPunctuationType"> - <arg name="punctuation" type="i" direction="in"/> - <annotation name="org.freedesktop.DBus.Method.NoReply" value="true"/> - </method> <method name="setSpeed"> <arg name="speed" type="i" direction="in"/>
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/interfaces/ktexteditor/annotationinterface.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/interfaces/ktexteditor/annotationinterface.h
Changed
@@ -57,10 +57,6 @@ virtual ~AnnotationModel() {} - enum { - GroupIdentifierRole = Qt::UserRole - }; - /** * data() is used to retrieve the information needed to present the * annotation information from the annotation model. The provider @@ -71,9 +67,6 @@ * - Qt::TooltipRole - a tooltip information, longer text possible * - Qt::BackgroundRole - a brush to be used to paint the background on the border * - Qt::ForegroundRole - a brush to be used to paint the text on the border - * - AnnotationModel::GroupIdentifierRole - a string which identifies a - * group of items which will be highlighted on mouseover; return the same - * string for all items in a group (KDevelop uses a VCS revision number, for example) * * \param line the line for which the data is to be retrieved * \param role the role to identify which kind of annotation is to be retrieved
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/auth/backends/mac/AuthServicesBackend.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/auth/backends/mac/AuthServicesBackend.cpp
Changed
@@ -1,6 +1,5 @@ /* * Copyright (C) 2008 Nicola Gigante <nicola.gigante@gmail.com> -* Copyright (C) 2014 René Bertin <rjvbertin@gmail.com> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by @@ -22,7 +21,6 @@ #include <Security/Security.h> #include <QtCore/qplugin.h> -#include <QtCore/QtCore> namespace KAuth { @@ -40,32 +38,10 @@ return s_authRef; } -static OSStatus GetActionRights(const QString &action, AuthorizationFlags flags, AuthorizationRef auth=NULL) -{ - AuthorizationItem item; - item.name = action.toUtf8(); - item.valueLength = 0; - item.value = NULL; - item.flags = 0; - - AuthorizationRights rights; - rights.count = 1; - rights.items = &item; - - OSStatus result = AuthorizationCopyRights( (auth)? auth : authRef(), - &rights, - kAuthorizationEmptyEnvironment, - flags, NULL); - return result; -} - -// On OS X, the suggestion is to make the helper grant the actual privilege. The app does instead a -// "pre-authorization", that's equivalent to look at isCallerAuthorized() in policykit. -// RJVB: grab the privilege from here, the client. AuthServicesBackend::AuthServicesBackend() : AuthBackend() { - setCapabilities(AuthorizeFromClientCapability | CheckActionExistenceCapability); + setCapabilities(AuthorizeFromHelperCapability | CheckActionExistenceCapability); } void AuthServicesBackend::setupAction(const QString&) @@ -75,24 +51,29 @@ // On OS X, the suggestion is to make the helper grant the actual privilege. The app does instead a // "pre-authorization", that's equivalent to look at isCallerAuthorized() in policykit. -// RJVB: grab the privilege from here, the client. Action::AuthStatus AuthServicesBackend::authorizeAction(const QString &action) { - OSStatus result = GetActionRights( action, kAuthorizationFlagExtendRights | kAuthorizationFlagInteractionAllowed ); -// qWarning() << "AuthServicesBackend::authorizeAction(" << action << ") AuthorizationCopyRights returned" << result; - switch (result) { - case errAuthorizationSuccess: - return Action::Authorized; - case errAuthorizationInteractionNotAllowed: - default: - return Action::Denied; - } + return actionStatus(action); } Action::AuthStatus AuthServicesBackend::actionStatus(const QString &action) { - OSStatus result = GetActionRights( action, kAuthorizationFlagExtendRights | kAuthorizationFlagPreAuthorize ); -// qWarning() << "AuthServicesBackend::actionStatus(" << action << ") AuthorizationCopyRights returned" << result; + AuthorizationItem item; + item.name = action.toUtf8(); + item.valueLength = 0; + item.value = NULL; + item.flags = 0; + + AuthorizationRights rights; + rights.count = 1; + rights.items = &item; + + OSStatus result = AuthorizationCopyRights(authRef(), + &rights, + kAuthorizationEmptyEnvironment, + kAuthorizationFlagExtendRights | kAuthorizationFlagPreAuthorize, + NULL); + switch (result) { case errAuthorizationSuccess: return Action::Authorized; @@ -120,28 +101,35 @@ AuthorizationRef auth; - if (AuthorizationCreateFromExternalForm(&ext, &auth) != noErr){ -// qWarning() << "AuthorizationCreateFromExternalForm(" << action << "," << callerID.constData() << ") failed"; + if (AuthorizationCreateFromExternalForm(&ext, &auth) != noErr) return false; - } - OSStatus result = GetActionRights( action, kAuthorizationFlagExtendRights | kAuthorizationFlagInteractionAllowed, - auth); + AuthorizationItem item; + item.name = action.toUtf8(); + item.valueLength = 0; + item.value = NULL; + item.flags = 0; + + AuthorizationRights rights; + rights.count = 1; + rights.items = &item; + + OSStatus result = AuthorizationCopyRights(auth, + &rights, + kAuthorizationEmptyEnvironment, + kAuthorizationFlagExtendRights | kAuthorizationFlagInteractionAllowed, + NULL); AuthorizationFree(auth, kAuthorizationFlagDefaults); -// qWarning() << "AuthServicesBackend::isCallerAuthorized(" << action << "," << callerID.constData() << ") AuthorizationCopyRights returned" << result; return result == errAuthorizationSuccess; } -// RJVB: OS X doesn't distinguish between "action doesn't exist" and "action not allowed". So the -// best thing we can do is return true and hope that the action will be created if it didn't exist... bool AuthServicesBackend::actionExists(const QString& action) { OSStatus exists = AuthorizationRightGet(action.toUtf8(), NULL); -// qWarning() << "AuthServicesBackend::actionExists(" << action << ") AuthorizationRightGet returned" << exists; - return true;//exists == errAuthorizationSuccess; + return exists == errAuthorizationSuccess; } }; // namespace KAuth
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/auth/kauthaction.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/auth/kauthaction.cpp
Changed
@@ -356,13 +356,6 @@ return executeActions(QList<Action>() << *this, NULL, helperID) ? ActionReply::SuccessReply : ActionReply::AuthorizationDeniedReply; } else { -#if defined(Q_OS_MACX) || defined(__APPLE__) || defined(__MACH__) - if( BackendsManager::authBackend()->capabilities() & KAuth::AuthBackend::AuthorizeFromClientCapability ){ - // RJVB: authorisation through DBus seems to be flaky (at least when using the OSX keychain ... maybe because DBus - // isn't built with Keychain support in MacPorts?) - return ActionReply::SuccessReply; - } -#endif //APPLE if (hasHelper()) { // Perform the pre auth here if (BackendsManager::authBackend()->capabilities() & KAuth::AuthBackend::PreAuthActionCapability) {
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/config/bufferfragment_p.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/config/bufferfragment_p.h
Changed
@@ -141,12 +141,7 @@ { return (other.size() != (int)len || memcmp(d,other.constData(),len) != 0); } - - bool operator==(const BufferFragment& other) const - { - return other.len == len && !memcmp(d, other.d, len); - } - + int indexOf(char c, unsigned int from = 0) const { const char* cursor = d + from - 1; @@ -183,21 +178,4 @@ unsigned int len; }; -uint qHash(const KConfigIniBackend::BufferFragment& fragment) -{ - const uchar *p = reinterpret_cast<const uchar*>(fragment.constData()); - const int len = fragment.length(); - - // This algorithm is copied from qhash.cpp (Qt5 version). - // Sadly this code is not accessible from the outside without going through abstraction - // layers. Even QByteArray::fromRawData would do an allocation internally... - uint h = 0; - - for (int i = 0; i < len; ++i) { - h = 31 * h + p[i]; - } - - return h; -} - #endif
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/config/kconfig.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/config/kconfig.cpp
Changed
@@ -321,22 +321,16 @@ return groups.toList(); } -static bool isGroupOrSubGroupMatch(const QByteArray& potentialGroup, const QByteArray& group) -{ - if (!potentialGroup.startsWith(group)) { - return false; - } - return potentialGroup.length() == group.length() || potentialGroup[group.length()] == '\x1d'; -} - // List all sub groups, including subsubgroups QSet<QByteArray> KConfigPrivate::allSubGroups(const QByteArray& parentGroup) const { QSet<QByteArray> groups; + QByteArray theGroup = parentGroup + '\x1d'; + groups << parentGroup; for (KEntryMap::const_iterator entryMapIt = entryMap.begin(); entryMapIt != entryMap.end(); ++entryMapIt) { const KEntryKey& key = entryMapIt.key(); - if (key.mKey.isNull() && isGroupOrSubGroupMatch(key.mGroup, parentGroup)) { + if (key.mKey.isNull() && key.mGroup.startsWith(theGroup)) { groups << key.mGroup; } } @@ -345,10 +339,12 @@ bool KConfigPrivate::hasNonDeletedEntries(const QByteArray& group) const { - for (KEntryMap::const_iterator it = entryMap.begin(); it != entryMap.end(); ++it) { - const KEntryKey& key = it.key(); + const QSet<QByteArray> allGroups = allSubGroups(group); + + Q_FOREACH(const QByteArray& aGroup, allGroups) { + // Could be optimized, let's use the slow way for now // Check for any non-deleted entry - if (isGroupOrSubGroupMatch(key.mGroup, group) && !key.mKey.isNull() && !it->bDeleted) + if (!keyListImpl(aGroup).isEmpty()) return true; } return false; @@ -367,7 +363,7 @@ QSet<QString> tmp; for (; it != theEnd && it.key().mGroup == theGroup; ++it) { const KEntryKey& key = it.key(); - if (!key.mKey.isNull() && !it->bDeleted) + if (key.mGroup == theGroup && !key.mKey.isNull() && !it->bDeleted) tmp << QString::fromUtf8(key.mKey); } keys = tmp.toList();
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/config/kconfigini.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/config/kconfigini.cpp
Changed
@@ -40,15 +40,6 @@ extern bool kde_kiosk_exception; -static QByteArray lookup(const KConfigIniBackend::BufferFragment& fragment, QHash<KConfigIniBackend::BufferFragment, QByteArray>* cache) -{ - QHash<KConfigIniBackend::BufferFragment, QByteArray>::iterator it = cache->find(fragment); - if (it == cache->end()) { - it = cache->insert(fragment, fragment.toByteArray()); - } - return it.value(); -} - QString KConfigIniBackend::warningProlog(const QFile &file, int line) { return QString::fromLatin1("KConfigIni: In file %2, line %1: ") @@ -103,14 +94,6 @@ unsigned int len = contents.length(); unsigned int startOfLine = 0; - // Reduce memory overhead by making use of implicit sharing - // This assumes that config files contain only a small amount of - // different fragments which are repeated often. - // This is often the case, especially sub groups will all have - // the same list of keys and similar values as well. - QHash<BufferFragment, QByteArray> cache; - cache.reserve(4096); - while (startOfLine < len) { BufferFragment line = contents.split('\n', &startOfLine); line.trim(); @@ -262,9 +245,9 @@ rawKey.reserve(aKey.length() + locale.length() + 2); rawKey.append(aKey.toVolatileByteArray()); rawKey.append('[').append(locale.toVolatileByteArray()).append(']'); - entryMap.setEntry(currentGroup, rawKey, lookup(line, &cache), entryOptions); + entryMap.setEntry(currentGroup, rawKey, line.toByteArray(), entryOptions); } else { - entryMap.setEntry(currentGroup, lookup(aKey, &cache), lookup(line, &cache), entryOptions); + entryMap.setEntry(currentGroup, aKey.toByteArray(), line.toByteArray(), entryOptions); } } next_line:
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/config/kconfigini_p.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/config/kconfigini_p.h
Changed
@@ -30,9 +30,10 @@ class KConfigIniBackend : public KConfigBackend { private: + class BufferFragment; + KLockFile::Ptr lockFile; public: - class BufferFragment; KConfigIniBackend(); ~KConfigIniBackend();
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/date/TIMEZONES -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/date/TIMEZONES
Changed
@@ -630,9 +630,9 @@ i18n("Moscow+08 - Magadan"); i18n("Asia/Makassar"); // i18n: comment to the previous timezone -i18n("east & south Borneo, Celebes, Bali, Nusa Tenggara, west Timor"); +i18n("east & south Borneo, Celebes, Bali, Nusa Tengarra, west Timor"); // i18n: comment to the previous timezone -i18n("east & south Borneo, Sulawesi (Celebes), Bali, Nusa Tenggara, west Timor"); +i18n("east & south Borneo, Sulawesi (Celebes), Bali, Nusa Tengarra, west Timor"); i18n("Asia/Manila"); i18n("Asia/Muscat"); i18n("Asia/Nicosia"); @@ -685,7 +685,7 @@ i18n("Asia/Tokyo"); i18n("Asia/Ujung_Pandang"); // i18n: comment to the previous timezone -i18n("east & south Borneo, Celebes, Bali, Nusa Tenggara, west Timor"); +i18n("east & south Borneo, Celebes, Bali, Nusa Tengarra, west Timor"); i18n("Asia/Ulaanbaatar"); // i18n: comment to the previous timezone i18n("most locations");
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/io/kdirwatch.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/io/kdirwatch.cpp
Changed
@@ -767,8 +767,7 @@ if (path.isEmpty() #ifndef Q_WS_WIN || path == QLatin1String("/dev") - || (path.startsWith(QLatin1String("/dev/")) && !path.startsWith(QLatin1String("/dev/.")) - && !path.startsWith(QLatin1String("/dev/shm"))) + || (path.startsWith(QLatin1String("/dev/")) && !path.startsWith(QLatin1String("/dev/."))) #endif ) return; // Don't even go there.
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/io/kurl.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/io/kurl.cpp
Changed
@@ -1097,8 +1097,7 @@ QString result = scheme(); if (!result.isEmpty()) { - if (!authority().isEmpty() || result == QLatin1String("file") || (path().isEmpty() - && scheme().compare(QLatin1String("mailto"), Qt::CaseInsensitive) != 0)) + if (!authority().isEmpty() || result == QLatin1String("file") || path().isEmpty()) result += QLatin1String("://"); else result += QLatin1Char(':');
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/kernel/kglobal.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/kernel/kglobal.cpp
Changed
@@ -29,7 +29,6 @@ #include "kglobal.h" #include "kglobal_p.h" #include <QThread> -#include <QAtomicInt> #include <config.h> @@ -315,30 +314,27 @@ * e.g. a file copy for a file manager, or 'compacting folders on exit' for a mail client, * the job progress widget with "keep open" checked, etc. */ -static QBasicAtomicInt s_allowQuit = Q_BASIC_ATOMIC_INITIALIZER(false); // this is used a bool -static QBasicAtomicInt s_refCount = Q_BASIC_ATOMIC_INITIALIZER(0); +static int s_refCount = 0; +static bool s_allowQuit = false; void KGlobal::ref() { - s_refCount.fetchAndAddOrdered(1); + ++s_refCount; + //kDebug() << "KGlobal::ref() : refCount = " << s_refCount; } void KGlobal::deref() { - const int prevRefCount = s_refCount.fetchAndAddOrdered(-1); - if (prevRefCount <= 1 && int(s_allowQuit)) { + --s_refCount; + //kDebug() << "KGlobal::deref() : refCount = " << s_refCount; + if (s_refCount <= 0 && s_allowQuit) { QCoreApplication::instance()->quit(); } } void KGlobal::setAllowQuit(bool allowQuit) { - if (QThread::currentThread() == qApp->thread()) { - s_allowQuit.fetchAndStoreOrdered(int(allowQuit)); - } - else { - qWarning() << "KGlobal::setAllowQuit may only be called from the main thread"; - } + s_allowQuit = allowQuit; } #undef PRIVATE_DATA
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/localization/all_languages.desktop -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/localization/all_languages.desktop
Changed
@@ -606,7 +606,7 @@ Name[bs]=Asamski Name[ca]=Assamès Name[ca@valencia]=Assamés -Name[cs]=Ásámský +Name[cs]=Asamský Name[csb]=Assamijsczi Name[cy]=Assameg Name[da]=Assamese @@ -680,7 +680,7 @@ Name[tr]=Assamese Name[tt]=Ассам Name[ug]=ئاسسامچە -Name[uk]=Ассамська +Name[uk]=Асамійська Name[uz]=Assamese Name[uz@cyrillic]=Ассамесе Name[vi]=Assam @@ -877,7 +877,7 @@ Name[bs]=Azerbejdžanski Name[ca]=Àzeri Name[ca@valencia]=Àzeri -Name[cs]=Ázerbájdžánský +Name[cs]=Ázerbajdžánský Name[csb]=Azerbejdżańsczi Name[cy]=Azerbaijaneg Name[da]=Azerbaijansk @@ -2139,7 +2139,6 @@ Name[es]=Catalán (Valenciano) Name[et]=Katalaani (valencia) Name[eu]=Katalana (Valentziera) -Name[fa]=کاتالانی (والنسیایی) Name[fi]=Katalaani (Valencia) Name[fr]=Catalan (Valence) Name[ga]=Catalóinis (Vaileinsis) @@ -2513,7 +2512,6 @@ Name[es]=Tártaro de Crimea Name[et]=Krimmitatari Name[eu]=Tatariera -Name[fa]=تاتار کریمهای Name[fi]=Krimin tataari Name[fr]=Tatar de Crimée Name[fy]=Crimean Tatar @@ -2699,7 +2697,6 @@ Name[es]=Casubio Name[et]=Kašuubi Name[eu]=Kaxubiera -Name[fa]=کاشوبیان Name[fi]=Kašubi Name[fr]=Kachoube Name[fy]=Kashubian @@ -4272,7 +4269,7 @@ Name[ia]=Farsi (Perse) Name[id]=Farsi (Persia) Name[is]=Farsi (Persneska) -Name[it]=Persiano +Name[it]=Farsi (Persiano) Name[ja]=ペルシア語 Name[kk]=Фарси Name[km]=ហ្វាស៊ី (ពឺស៊ាន) @@ -4493,7 +4490,7 @@ Name[pa]=ਫਿਜੀਨ Name[pl]=z Fiji Name[ps]=فيجي -Name[pt]=Fijiano +Name[pt]=Fidjiano Name[pt_BR]=Fijiano Name[ro]=Fijiană Name[ru]=Фиджи @@ -5494,7 +5491,7 @@ Name[tr]=Hausa Name[tt]=Хауз Name[ug]=خائۇساچە -Name[uk]=Хауса +Name[uk]=Гауса Name[uz]=Xausa Name[uz@cyrillic]=Хауса Name[vi]=Hausa @@ -5593,7 +5590,7 @@ Name[tr]=İbranice Name[tt]=Иврит Name[ug]=ئىبرانىچە -Name[uk]=Іврит +Name[uk]=Єврейська Name[uz]=Yahudiycha Name[uz@cyrillic]=Яҳудийча Name[vi]=Do Thái @@ -5721,7 +5718,6 @@ Name[es]=Chhattisgarhi Name[et]=Chhattisgarhi Name[eu]=Chhattisgarhi -Name[fa]=چهاتیسگارهی Name[fi]=Chhattisgarhi Name[fr]=Chhattisgarhi Name[fy]=Chhattisgarhi @@ -7762,7 +7758,7 @@ Name[bs]=Kmerski Name[ca]=Khmer Name[ca@valencia]=Khmer -Name[cs]=Khmérské +Name[cs]=Kmérský Name[csb]=Khmersczi Name[cy]=Khmer Name[da]=Khmer @@ -9252,7 +9248,6 @@ Name[es]=Maithili Name[et]=Maithili Name[eu]=Maithiliera -Name[fa]=مایتیلی Name[fi]=Maithili Name[fr]=Maïthili Name[fy]=Maithili @@ -10564,7 +10559,7 @@ Name[pa]=ਨੋਰਵਿਗੀਆਨ ਬੋਕਮਾਲ Name[pl]=Norweski Bokmaal Name[ps]=ناروېجني بوکمل -Name[pt]=Norueguês (Bokmål) +Name[pt]=Norueguês Bokmål Name[pt_BR]=Dano-norueguês Name[ro]=Norvegiană Bokmål Name[ru]=Норвежский (литературный) @@ -11149,7 +11144,7 @@ Name[pa]=ਨੋਰਵਿਗੀਆਨ ਨਯਾਨੋਰਸਕ Name[pl]=Norweski Nynorsk Name[ps]=ناروېجني نېنورسک -Name[pt]=Norueguês (Nynorsk) +Name[pt]=Norueguês Nynorsk Name[pt_BR]=Novo norueguês Name[ro]=Norvegiană Nynorsk Name[ru]=Норвежский (нюнорск) @@ -13047,7 +13042,7 @@ Name[bn_IN]=কিনয়ারুয়ান্ডা Name[br]=Kinyarwanda Name[bs]=Kinjaruanda -Name[ca]=Kinyarwanda +Name[ca]=Ruanda Name[ca@valencia]=Ruanda Name[cs]=Kinyarwanda Name[csb]=Kinyarwanda @@ -16738,7 +16733,7 @@ Name[pa]=ਊਜੇਬਕ Name[pl]=Uzbecki Name[ps]=ازبکي -Name[pt]=Uzbeque +Name[pt]=Usbequistanês Name[pt_BR]=Uzbeque Name[ro]=Uzbecă Name[ru]=Узбекский @@ -16791,7 +16786,6 @@ Name[es]=Uzbeko (Cirílico) Name[et]=Usbeki (kirillitsa) Name[eu]=Uzbekera (Zirilikoa) -Name[fa]=ازبک (سیریلیک) Name[fi]=Uzbekki (kyrillinen) Name[fr]=Ouzbek (Cyrillique) Name[fy]=Uzbeesk (Cyrillysk) @@ -17678,7 +17672,7 @@ Name[pa]=ਯੂਰੋਬਾ Name[pl]=Yoruba Name[ps]=يوروبا -Name[pt]=Ioruba +Name[pt]=Yoruba Name[pt_BR]=Iorubá Name[ro]=Iorubă Name[ru]=Йоруба
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/network/kssld/kssld.desktop -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/network/kssld/kssld.desktop
Changed
@@ -19,7 +19,6 @@ Name[es]=Política de certificados SSL Name[et]=SSL sertifikadi reegel Name[eu]=SSL ziurtagiri politika -Name[fa]=سیاست گواهینامهی اساسال Name[fi]=SSL-varmennekäytäntö Name[fr]=Politique de certificats SSL Name[ga]=Polasaí Teastas SSL @@ -48,7 +47,7 @@ Name[nl]=SSL-certificaat-beleid Name[pa]=SSL ਸਰਟੀਫਿਕੇਟ ਪਾਲਸੀ Name[pl]=Polityka certyfikatów SSL -Name[pt]=Política de Certificados de SSL +Name[pt]=Política de Certificados SSL Name[pt_BR]=Política de certificados SSL Name[ro]=Politică de certificate SSL Name[ru]=Политика сертификатов SSL @@ -112,7 +111,7 @@ Comment[nl]=Levert het SSL-certificaat-beleid aan applicaties Comment[pa]=ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ SSL ਸਰਟੀਫਿਕੇਟ ਪਾਲਸੀ ਦਿੰਦਾ ਹੈ Comment[pl]=Udostępnia politykę certyfikatów SSL programom -Comment[pt]=Fornece uma política de certificados de SSL para as aplicações +Comment[pt]=Fornece uma política de certificados SSL às aplicações Comment[pt_BR]=Fornece uma política de certificados SSL aos aplicativos Comment[ro]=Oferă applicațiilor politică de certificate SSL Comment[ru]=Политика сертификатов SSL для приложений
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/sycoca/ksycoca.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/sycoca/ksycoca.cpp
Changed
@@ -55,7 +55,7 @@ * If the existing file is outdated, it will not get read * but instead we'll ask kded to regenerate a new one... */ -#define KSYCOCA_VERSION 242 +#define KSYCOCA_VERSION 239 /** * Sycoca file name, used internally (by kbuildsycoca)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/tests/kmountpointtest.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/tests/kmountpointtest.cpp
Changed
@@ -35,10 +35,7 @@ void KMountPointTest::testCurrentMountPoints() { const KMountPoint::List mountPoints = KMountPoint::currentMountPoints(KMountPoint::NeedRealDeviceName); - if (mountPoints.isEmpty()) { // can happen in chroot jails. TODO: we could parse /proc/self/mountinfo instead.... - QSKIP("mtab is empty", SkipAll); - return; - } + QVERIFY(!mountPoints.isEmpty()); KMountPoint::Ptr mountWithDevice; foreach(KMountPoint::Ptr mountPoint, mountPoints) { kDebug() << "Mount: " << mountPoint->mountedFrom()
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdecore/tests/kurltest.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdecore/tests/kurltest.cpp
Changed
@@ -1784,10 +1784,6 @@ KUrl url183433("mailto:test[at]gmail[dot]com"); QCOMPARE(url183433.prettyUrl(), QString("mailto:test[at]gmail[dot]com")); QCOMPARE(url183433.url(), QString("mailto:test[at]gmail[dot]com")); - - // Make sure prettyUrl() doesn't convert the url to mailto://... - KUrl urlNoPath("mailto:?to=test@example.com"); - QCOMPARE(urlNoPath.prettyUrl(), QString("mailto:?to=test@example.com")); } void KUrlTest::testSmb()
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdeui/CMakeLists.txt -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdeui/CMakeLists.txt
Changed
@@ -309,8 +309,7 @@ if (Q_WS_MAC AND MAC_USE_OSXKEYCHAIN) FIND_LIBRARY(SECURITY_LIBRARY Security) - set(kdeui_LIB_SRCS ${kdeui_LIB_SRCS} util/kwallet_mac.cpp util/qosxkeychain.cpp) - add_definitions(-DMAC_USE_OSXKEYCHAIN) + set(kdeui_LIB_SRCS ${kdeui_LIB_SRCS} util/kwallet_mac.cpp) else(Q_WS_MAC AND MAC_USE_OSXKEYCHAIN) set(kdeui_LIB_SRCS ${kdeui_LIB_SRCS} util/kwallet.cpp) else(Q_WS_MAC AND MAC_USE_OSXKEYCHAIN)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdeui/about/kde_infopage.css -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdeui/about/kde_infopage.css
Changed
@@ -4,7 +4,7 @@ */ img {margin: 0px; padding: 0px} -body {margin: 0px; padding: 0px; background-color: #062A4B; background-image: url(body-background.png); color: #111111; height: 100%; width: 100%;} +body {margin: 0px; padding: 0px; background-color: #062A4B; background-image: url(body-background.png); color: #111111; height="100%"; width="100%"} a { color: #1A2C36; text-decoration: none; font-weight: bold; } a:hover { color: #003B5A;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdeui/itemviews/kidentityproxymodel.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdeui/itemviews/kidentityproxymodel.cpp
Changed
@@ -194,8 +194,11 @@ if (!sourceModel()) return QModelIndex(); Q_ASSERT(parent.isValid() ? parent.model() == this : true); + if (row < 0 || column < 0 || !hasIndex(row, column, parent)) + return QModelIndex(); const QModelIndex sourceParent = mapToSource(parent); const QModelIndex sourceIndex = sourceModel()->index(row, column, sourceParent); + Q_ASSERT(sourceIndex.isValid()); return mapFromSource(sourceIndex); }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdeui/tests/CMakeLists.txt -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdeui/tests/CMakeLists.txt
Changed
@@ -7,7 +7,6 @@ # The alternative (which requires Qt>=4.6) is #include <QTestGui> add_definitions(-DQT_GUI_LIB) -option(MAC_USE_OSXKEYCHAIN "On OS X, use the keychain as backend for kwallet, instead of kwalletd.") MACRO(KDEUI_UNIT_TESTS) FOREACH(_testname ${ARGN}) @@ -31,7 +30,7 @@ MACRO(KDEUI_PROXYMODEL_TESTS) FOREACH(_testname ${ARGN}) kde4_add_unit_test(${_testname} TESTNAME kdeui-${_testname} ${_testname}.cpp ${proxyModelTestSources} ) - target_link_libraries(${_testname} ${KDE4_KDEUI_LIBS} ${QT_QTTEST_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${KDEWIN32_LIBRARIES} proxymodeltestsuite ) + target_link_libraries(${_testname} ${KDE4_KDEUI_LIBS} ${QT_QTTEST_LIBRARY} ${QT_QTXML_LIBRARY} ${KDEWIN32_LIBRARIES} proxymodeltestsuite ) ENDFOREACH(_testname) ENDMACRO(KDEUI_PROXYMODEL_TESTS) @@ -156,11 +155,6 @@ kpixmapsequenceoverlaypaintertest ) -if (Q_WS_MAC AND MAC_USE_OSXKEYCHAIN) - set_source_files_properties(kwallettest.cpp PROPERTIES - COMPILE_FLAGS -DMAC_USE_OSXKEYCHAIN) -endif(Q_WS_MAC AND MAC_USE_OSXKEYCHAIN) - if (NOT KDE_NO_DEPRECATED) KDEUI_EXECUTABLE_TESTS( keditlistboxtest
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdeui/tests/ktoolbar_unittest.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdeui/tests/ktoolbar_unittest.cpp
Changed
@@ -172,14 +172,12 @@ // Save settings kmw.saveMainWindowSettings(group); + QCOMPARE(group.groupList().count(), 2); // two subgroups (one for each toolbar) // was it the default value? - if (iconSize == KIconLoader::global()->currentSize(KIconLoader::MainToolbar)) { - QCOMPARE(group.groupList().count(), 0); // nothing to save yet + if (iconSize == KIconLoader::global()->currentSize(KIconLoader::MainToolbar)) QVERIFY(!group.group("Toolbar mainToolBar").hasKey("IconSize")); - } else { - QCOMPARE(group.groupList().count(), 2); // one per toolbar + else QVERIFY(group.group("Toolbar mainToolBar").hasKey("IconSize")); - } } { @@ -271,13 +269,13 @@ // Save settings kmw.saveMainWindowSettings(group); + QVERIFY(group.groupList().count() >= 6); // one subgroup for each toolbar // was it the default size? (for the main toolbar, we only check that one) const bool usingDefaultSize = iconSize == KIconLoader::global()->currentSize(KIconLoader::MainToolbar); - if (usingDefaultSize) { + if (usingDefaultSize) QVERIFY(!group.group("Toolbar mainToolBar").hasKey("IconSize")); - } else { + else QVERIFY(group.group("Toolbar mainToolBar").hasKey("IconSize")); - } // Now emulate a change of the kde-global setting (#168480#c12) changeGlobalIconSizeSetting(25, 16); @@ -351,13 +349,11 @@ // Save settings kmw.saveMainWindowSettings(group); - if (selectedDefaultForMainToolbar) { - QCOMPARE(group.groupList().count(), 0); // nothing to save yet + QCOMPARE(group.groupList().count(), 2); // two subgroups (one for each toolbar) + if (selectedDefaultForMainToolbar) QVERIFY(!group.group("Toolbar mainToolBar").hasKey("ToolButtonStyle")); - } else { - QCOMPARE(group.groupList().count(), 2); // two subgroups (one for each toolbar) + else QVERIFY(group.group("Toolbar mainToolBar").hasKey("ToolButtonStyle")); - } } {
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdeui/tests/kwallettest.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdeui/tests/kwallettest.cpp
Changed
@@ -32,12 +32,11 @@ void KWalletTest::testWallet() { - QString testWallet = "kwallettestWallet"; + QString testWallet = "kdewallet"; QString testFolder = "wallettestfolder"; QString testKeys[] = { "testKey", "account-302948", "\\", "/abc", "a@b.c" }; QByteArray testValues[] = { "test", "@(!§\"%&", "", ".test", "\\" }; - QMap<QString,QString> pwmap; int numTests = 5; // Start kdeinit4, so that the wallet damon is started in the background @@ -50,24 +49,15 @@ // open Wallet *wallet = Wallet::openWallet( testWallet, w->winId(), Wallet::Synchronous ); - if ( wallet == 0 ){ - kWarning() << "Couldn't open the wallet. Maybe the wallet daemon is not running?"; - } - else{ - kWarning() << "Opened wallet" << wallet->walletName(); - } + if ( wallet == 0 ) + kDebug() << "Couldn't open the wallet. Maybe the wallet daemon is not running?"; QVERIFY( wallet != 0 ); QVERIFY( Wallet::isOpen( testWallet ) ); - kWarning() << "Wallet list:" << Wallet::walletList(); - - // check on a couple of existing items, preferably at least 1 "internet account" and 1 "application password" - // OSXKeychain::readEntry( "existing name", "existing account", &value, NULL, NULL ) // create folder wallet->createFolder( testFolder ); QVERIFY( wallet->hasFolder( testFolder ) ); wallet->setFolder( testFolder ); - kWarning() << "Wallet's folder list:" << wallet->folderList(); QVERIFY( wallet->currentFolder() == testFolder ); QVERIFY( wallet->folderList().contains( testFolder ) ); @@ -80,36 +70,10 @@ QVERIFY( readEntry == testValues[i] ); } - pwmap[QString("Bugzilla_login")] = QString("bugs@kde.org"); - pwmap[QString("Bugzilla_password")] = QString("buggyPassw0rd"); - kWarning() << "pwmap=" << pwmap; - - QMap<QString,QString> v; - QVERIFY( !wallet->writeMap( "https://bugs.kde.org/#", pwmap ) ); - QVERIFY( wallet->hasEntry("https://bugs.kde.org/#") ); - QVERIFY( !wallet->readMap( "https://bugs.kde.org/#", v ) ); - QVERIFY( v == pwmap ); - // do it again - QVERIFY( !wallet->writeMap( "https://bugs.kde.org/#", pwmap ) ); - QVERIFY( wallet->hasEntry("https://bugs.kde.org/#") ); - QVERIFY( !wallet->readMap( "https://bugs.kde.org/#", v ) ); - QVERIFY( v == pwmap ); - - QVERIFY( wallet->entryType( testKeys[0] ) == Wallet::Stream ); - QVERIFY( wallet->entryType( "https://bugs.kde.org/#" ) == Wallet::Map ); - - QVERIFY( !wallet->renameEntry( "https://bugs.kde.org/#", "kdeBugs" ) ); - QVERIFY( wallet->hasEntry("kdeBugs") ); - QVERIFY( !wallet->readMap( "kdeBugs", v ) ); - QVERIFY( v == pwmap ); - // close wallet->sync(); - QStringList l = wallet->entryList(); - kWarning() << "Entry list:" << l; - QVERIFY( l.size() == 6 ); - Wallet::closeWallet( testWallet, true ); - QVERIFY( !Wallet::isOpen( testWallet ) ); + Wallet::closeWallet( "kdewallet", true ); + QVERIFY( !Wallet::isOpen( "kdewallet" ) ); // test for key - closed wallet for ( int i = 0; i < 5; i++ ) { @@ -144,21 +108,13 @@ QVERIFY( readEntry == testValues[i] ); } - // remove those many test keys - for ( int i = 0; i < numTests; i++ ) { - QVERIFY( !wallet->removeEntry( testKeys[i] ) ); - } - -#ifndef MAC_USE_OSXKEYCHAIN // delete folder wallet->removeFolder( testFolder ); QVERIFY( !wallet->hasFolder( testFolder ) ); -#endif // close - Wallet::closeWallet( testWallet, true ); - QVERIFY( !Wallet::isOpen( testWallet ) ); - QVERIFY( !Wallet::deleteWallet( testWallet ) ); + Wallet::closeWallet( "kdewallet", true ); + QVERIFY( !Wallet::isOpen( "kdewallet" ) ); } QTEST_KDEMAIN(KWalletTest, GUI)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdeui/tests/proxymodeltestapp/CMakeLists.txt -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdeui/tests/proxymodeltestapp/CMakeLists.txt
Changed
@@ -33,7 +33,6 @@ target_link_libraries(proxymodeltestapp ${KDE4_KDEUI_LIBS} proxymodeltestsuite - ${QT_QTNETWORK_LIBRARY} ${QT_QTSCRIPT_LIBRARY} )
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdeui/util/kcrash.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdeui/util/kcrash.cpp
Changed
@@ -313,13 +313,7 @@ crashRecursionCounter++; } - // On Apple OS X, closing all FDs now will cause a second (SIGILL) crash, - // ending with "Unable to start Dr. Konqi". This is because the libdispatch - // library, which can manage multi-threading, has some FDs of its own. - // - // Note: KCrash closes FDs unconditionally later on if it forks to Dr Konqi - // and this program's FDs do not matter if kdeinit starts Dr Konqi. -#if !defined(Q_OS_WIN) and !defined(Q_OS_MAC) +#if !defined(Q_OS_WIN) if (!(s_flags & KeepFDs)) closeAllFDs(); # if defined(Q_WS_X11) @@ -526,12 +520,9 @@ // This is done because it is dangerous to use fork() in the crash handler // (there can be functions registered to be performed before fork(), for example handling // of malloc locking, which doesn't work when malloc crashes because of heap corruption). -#ifndef Q_OS_MAC - // Fails on Apple OSX+KDE4, because kdeinit4 is using the wrong socket name. if (!(s_flags & AlwaysDirectly)) { startDirectly = !startProcessInternal(argc, argv, waitAndExit, false); } -#endif // If we can't reach kdeinit, we can still at least try to fork() if (startDirectly) { @@ -814,8 +805,7 @@ server.sun_family = AF_UNIX; strcpy(server.sun_path, sock_file); - // Use stderr, to make the message visible on the Apple OS X Console log. - fprintf(stderr, "KCrash: Connect sock_file=%s\n", sock_file); + printf("sock_file=%s\n", sock_file); socklen = sizeof(server); if(connect(s, (struct sockaddr *)&server, socklen) == -1) {
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdeui/util/kwallet_mac.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdeui/util/kwallet_mac.cpp
Changed
@@ -3,7 +3,6 @@ * Copyright (C) 2002-2004 George Staikos <staikos@kde.org> * Copyright (C) 2008 Michael Leupold <lemma@confuego.org> * Copyright (C) 2010 Frank Osterfeld <osterfeld@kde.org> - * Copyright (C) 2014 René Bertin <rjvbertin@gmail.com> * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -37,9 +36,9 @@ #include <cassert> -#include <sys/param.h> - -#include "qosxkeychain.h" +#include <Carbon/Carbon.h> +#include <Security/Security.h> +#include <Security/SecKeychain.h> using namespace KWallet; @@ -50,7 +49,30 @@ typedef QMap<QString, QByteArray> StringByteArrayMap; Q_DECLARE_METATYPE(StringByteArrayMap) -#ifdef OSX_KEYCHAIN_PORT_DISABLED +namespace { + template <typename T> + struct CFReleaser { + explicit CFReleaser( const T& r ) : ref( r ) {} + ~CFReleaser() { CFRelease( ref ); } + T ref; + }; +} + +static QString asQString( CFStringRef sr ) { + return QString::fromLatin1( CFStringGetCStringPtr( sr, NULL ) ); //TODO Latin1 correct? +} + +static QString errorString( OSStatus s ) { + const CFReleaser<CFStringRef> ref( SecCopyErrorMessageString( s, NULL ) ); + return asQString( ref.ref ); +} + +static bool isError( OSStatus s, QString* errMsg ) { + if ( errMsg ) + *errMsg = errorString( s ); + return s != 0; +} + static QString appid() { KComponentData cData = KGlobal::mainComponent(); @@ -63,10 +85,28 @@ } return qApp->applicationName(); } -#endif -/*static*/ const QString Wallet::LocalWallet() -{ +static OSStatus removeEntryImplementation(const QString& walletName, const QString& key) { + const QByteArray serviceName( walletName.toUtf8() ); + const QByteArray accountName( key.toUtf8() ); + SecKeychainItemRef itemRef; + QString errMsg; + OSStatus result = SecKeychainFindGenericPassword( NULL, serviceName.size(), serviceName.constData(), accountName.size(), accountName.constData(), NULL, NULL, &itemRef ); + if ( isError( result, &errMsg ) ) { + qWarning() << "Could not retrieve password:" << qPrintable(errMsg); + return result; + } + const CFReleaser<SecKeychainItemRef> itemReleaser( itemRef ); + result = SecKeychainItemDelete( itemRef ); + if ( isError( result, &errMsg ) ) { + qWarning() << "Could not delete password:" << qPrintable(errMsg); + return result; + } + return result; +} + + +const QString Wallet::LocalWallet() { KConfigGroup cfg(KSharedConfig::openConfig("kwalletrc")->group("Wallet")); if (!cfg.readEntry("Use One Wallet", true)) { QString tmp = cfg.readEntry("Local Wallet", "localwallet"); @@ -83,8 +123,7 @@ return tmp; } -/*static*/ const QString Wallet::NetworkWallet() -{ +const QString Wallet::NetworkWallet() { KConfigGroup cfg(KSharedConfig::openConfig("kwalletrc")->group("Wallet")); QString tmp = cfg.readEntry("Default Wallet", "kdewallet"); @@ -94,157 +133,120 @@ return tmp; } -/*static*/ const QString Wallet::PasswordFolder() -{ +const QString Wallet::PasswordFolder() { return "Passwords"; } -/*static*/ const QString Wallet::FormDataFolder() -{ +const QString Wallet::FormDataFolder() { return "Form Data"; } -#pragma mark ==== Wallet::WalletPrivate ==== -class Wallet::WalletPrivate : public OSXKeychain +class Wallet::WalletPrivate { public: explicit WalletPrivate(const QString &n) - : OSXKeychain(n) - { - isKDEChain = ( n == LocalWallet() || n == NetworkWallet() || n.contains( "wallet", Qt::CaseInsensitive ) ); - } + : name(n) + {} // needed for compilation reasons - void walletServiceUnregistered() - { + void walletServiceUnregistered() { } + + QString name; + QString folder; }; Wallet::Wallet(int handle, const QString& name) - : QObject(0L), d(new WalletPrivate(name)) -{ + : QObject(0L), d(new WalletPrivate(name)) { Q_UNUSED(handle); } -Wallet::~Wallet() -{ +Wallet::~Wallet() { delete d; } -/*static*/ QStringList Wallet::walletList() -{ + +QStringList Wallet::walletList() { #ifdef OSX_KEYCHAIN_PORT_DISABLED return walletLauncher->getInterface().wallets(); #else - // RJVB: Mac OS X's Keychain supports multiple keychains, but they can only be accesses by full path, not - // found by name. That makes it cumbersome to map to multiple wallets when using only the wallet name. - // However, it would be perfectly possible to create OS X Keychains called Wallet::LocalWallet() and - // Wallet::NetworkWallet() in the equivalent of ~/.kde/share/apps/kwallet . - QStringList l; - OSXKeychain::KeychainList(l); - return l; + return QStringList(); #endif } -/*static*/ void Wallet::changePassword(const QString& name, WId w) -{ +void Wallet::changePassword(const QString& name, WId w) { #ifdef OSX_KEYCHAIN_PORT_DISABLED if( w == 0 ) kDebug(285) << "Pass a valid window to KWallet::Wallet::changePassword()."; walletLauncher->getInterface().changePassword(name, (qlonglong)w, appid()); -#else - Q_UNUSED(w); - kWarning() << "Wallet::changePassword unimplemented '" << name << "'"; #endif } -/*static*/ bool Wallet::isEnabled() -{ +bool Wallet::isEnabled() { //PENDING(frank) check return true; } -/*static*/ bool Wallet::isOpen(const QString& name) -{ +bool Wallet::isOpen(const QString& name) { #ifdef OSX_KEYCHAIN_PORT_DISABLED return walletLauncher->getInterface().isOpen(name); // default is false #else - return OSXKeychain::IsOpen(name); -#endif -} - -bool Wallet::isOpen() const -{
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdeui/widgets/kmainwindow.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdeui/widgets/kmainwindow.h
Changed
@@ -89,7 +89,7 @@ * readProperties(). To save special data about your data, reimplement * saveGlobalProperties(). To warn user that application or * windows have unsaved data on close or logout, reimplement - * queryClose(). + * queryClose() and/or queryExit(). * * You have to implement session restoring also in your main() function. * There are also kRestoreMainWindows convenience functions which @@ -488,6 +488,10 @@ /** * Reimplemented to call the queryClose() and queryExit() handlers. + * + * We recommend that you reimplement the handlers rather than closeEvent(). + * If you do it anyway, ensure to call the base implementation to keep + * queryExit() running. */ virtual void closeEvent ( QCloseEvent *); @@ -528,10 +532,6 @@ @see queryClose() @see KApplication::sessionSaving() - - @deprecated since 4.14 Do not reimplement queryExit. Either reimplement queryClose - (called for every window) or connect QCoreApplication::aboutToQuit() into a slot - of a non-gui object (not a KMainWindow, it will be deleted before that!). */ virtual bool queryExit();
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdeui/widgets/kmultitabbar.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdeui/widgets/kmultitabbar.cpp
Changed
@@ -248,9 +248,8 @@ if (shouldDrawText()) opt->text = text(); - opt->state |= QStyle::State_AutoRaise; if (underMouse()) - opt->state |= QStyle::State_MouseOver | QStyle::State_Raised; + opt->state |= QStyle::State_AutoRaise | QStyle::State_MouseOver | QStyle::State_Raised; if (isChecked()) opt->state |= QStyle::State_Sunken | QStyle::State_On;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdeui/widgets/ktoolbar.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdeui/widgets/ktoolbar.cpp
Changed
@@ -829,9 +829,7 @@ { Q_ASSERT(!cg.name().isEmpty()); - if (cg.hasKey("Hidden")) { - cg.deleteEntry("Hidden"); // remove old key to avoid bugs from the compat code in applySettings. KDE5: remove. - } + cg.deleteEntry("Hidden"); // remove old key to avoid bugs from the compat code in applySettings. KDE5: remove. const int currentIconSize = iconSize().width(); //kDebug() << objectName() << currentIconSize << d->iconSizeSettings.toString() << "defaultValue=" << d->iconSizeSettings.defaultValue();
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdoctools/CMakeLists.txt -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdoctools/CMakeLists.txt
Changed
@@ -262,5 +262,3 @@ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/customization/xsl/all-l10n.xml DESTINATION ${DATA_INSTALL_DIR}/ksgmltools2/customization/xsl/ ) - -add_subdirectory(tests)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdoctools/customization/de/entities/install-compile.docbook -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdoctools/customization/de/entities/install-compile.docbook
Changed
@@ -1,7 +1,7 @@ <para>Ausführliche Anleitungen, um &kde;-Programme auf Ihrem System zu kompilieren und zu installieren, finden Sie unter <ulink url="http://techbase.kde.org/Getting_Started#Building_and_Running_KDE_Software_From_Source"> -KDE aus dem Quelltext installieren</ulink></para> +KDE4 aus dem Quellcode installieren</ulink></para> <para>Da &kde; <command>cmake</command> benutzt, sollte es dabei keine Schwierigkeiten geben. Sollten dennoch Probleme auftauchen, wenden Sie
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdoctools/customization/it/entities/install-compile.docbook -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdoctools/customization/it/entities/install-compile.docbook
Changed
@@ -1,8 +1,7 @@ <para>Per avere informazioni dettagliate su come compilare e installare le -applicazioni di &kde;, vedi <ulink -url="http://techbase.kde.org/Getting_Started#Building_and_Running_KDE_Software_From_Source"> -Building and Running KDE Software From Source</ulink></para> +applicazioni di &kde;, vedi <ulink url="http://techbase.kde.org/Getting_Started_(it)"> +Generare KDE4 dal codice sorgente</ulink></para> <para>Siccome &kde; usa <command>cmake</command> non dovresti avere problemi a -compilarle. Se invece dovessi incontrarne, segnalali alle liste di +compilarlo. Se invece dovessi incontrarne, per piacere, segnalali alle liste di distribuzione di &kde;.</para>
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdoctools/customization/nl/user.entities -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdoctools/customization/nl/user.entities
Changed
@@ -43,8 +43,7 @@ <!ENTITY Hannie.Lafeber-Dumoleyn '<othercredit role="translator"><firstname>Hannie</firstname><surname>Lafeber-Dumoleyn</surname><affiliation><address><email>hannie@kde.nl</email></address></affiliation><contrib>Vertaler/Nalezer</contrib></othercredit>'> <!ENTITY Ruben.Van.Laerhoven '<othercredit role="translator"><firstname>Ruben</firstname><surname>Van Laerhoven</surname><affiliation><address><email>rubentje1991@gmail.com</email></address></affiliation><contrib>Vertaler/Nalezer</contrib></othercredit>'> <!ENTITY Thom.Castermans '<othercredit role="translator"><firstname>Thom</firstname><surname>Castermans</surname><affiliation><address><email>thomcastermans@kde.nl</email></address></affiliation><contrib>Vertaler/Nalezer</contrib></othercredit>'> -<!ENTITY Ronald.Stroethoff '<othercredit role="translator"><firstname>Ronald</firstname><surname>Stroethoff</surname><affiliation><address><email>stroet43@zonnet.nl</email></address></affiliation><contrib>Vertaler</contrib></othercredit>'> -<!ENTITY Ivo.de.Klerk '<othercredit role="translator"><firstname>Ivo M.</firstname><surname>de Klerk</surname><affiliation><address><email>imklerk@hetnet.nl</email></address></affiliation><contrib>Vertaler</contrib></othercredit>'> +<!ENTITY Ronald.Stroethoff '<othercredit role="translator"><firstname>Ronald</firstname><surname>Stroethoff</surname><affiliation><address><email>stroet43@zonnet.nl</email></address></affiliation><contrib>Vertaler/Nalezer</contrib></othercredit>'> <!ENTITY kde.nl.groep "<email>i18n@kde.nl</email>"> <!-- Tekstschema's --> @@ -88,7 +87,6 @@ <!ENTITY vertaling.ruben "<para>Dit document is vertaald in het Nederlands door &Ruben.Van.Laerhoven;.</para>"> <!ENTITY vertaling.thom "<para>Dit document is vertaald in het Nederlands door &Thom.Castermans;.</para>"> <!ENTITY vertaling.ronald "<para>Dit document is vertaald in het Nederlands door &Ronald.Stroethoff;.</para>"> -<!ENTITY vertaling.ivo "<para>Dit document is vertaald in het Nederlands door &Ivo.de.Klerk;.</para>"> <!-- Gebruiken als template voor nieuwe vertalers/nalezers
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdoctools/customization/ro/entities/underLGPL.docbook -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdoctools/customization/ro/entities/underLGPL.docbook
Changed
@@ -1,3 +1,3 @@ -<para>Acest program este licenÅ£iat sub termenii <ulink -url="common/lgpl-license.html">LicenÅ£ei Publice Generale Permisive GNU</ulink> +<para>Acest program este licenþiat sub termenii <ulink +url="common/lgpl-license.html">Licenþei Publice Generale Permisive GNU</ulink> (GNU Lesser General Public License).</para>
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdoctools/customization/tr/entities/underArtisticLicense.docbook -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdoctools/customization/tr/entities/underArtisticLicense.docbook
Changed
@@ -1,2 +1,2 @@ -<para>Bu yazýlým <ulink -url="common/artistic-license.html">Sanatsal Lisans</ulink> altýnda daðýtýlmaktadýr.</para> +<para>Bu yazýlým <ulink +url="common/artistic-license.html">Sanatsal Lisans</ulink> altýnda daðýtýlmaktadýr.</para>
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdoctools/customization/tr/entities/underBSDLicense.docbook -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdoctools/customization/tr/entities/underBSDLicense.docbook
Changed
@@ -1,2 +1,2 @@ -<para>Bu yazýlým, <ulink -url="common/bsd-license.html">BSD Lisansý</ulink> altýnda daðýtýlmaktadýr.</para> +<para>Bu yazýlým, <ulink +url="common/bsd-license.html">BSD Lisansý</ulink> altýnda daðýtýlmaktadýr.</para>
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdoctools/customization/tr/entities/underX11License.docbook -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdoctools/customization/tr/entities/underX11License.docbook
Changed
@@ -1,2 +1,2 @@ -<para>Bu yazýlým <ulink -url="common/x11-license.html">X11 Lisansý</ulink> altýnda daðýtýlmaktadýr.</para> +<para>Bu yazýlým <ulink +url="common/x11-license.html">X11 Lisansý</ulink> altýnda daðýtýlmaktadýr.</para>
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdoctools/customization/tr/entities/update-doc.docbook -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdoctools/customization/tr/entities/update-doc.docbook
Changed
@@ -1,4 +1,4 @@ -<!--<para>Kurulumdan sonra bu belgenin güncel sürümleri çýkmýþ olabilir. +<!--<para>Kurulumdan sonra bu belgenin güncel sürümleri çýkmýþ olabilir. <ulink url="http://docs.kde.org/page#&kappname;">http://docs.kde.org/page#&kappname;</ulink> -adresine bakarak daha yeni bir sürümün olup olmadýðýný kontrol edin.</para> --> +adresine bakarak daha yeni bir sürümün olup olmadýðýný kontrol edin.</para> -->
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdoctools/customization/zh-CN/user.entities -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdoctools/customization/zh-CN/user.entities
Changed
@@ -8,30 +8,30 @@ <!ENTITY Alt "<keycap>Alt</keycap>"> <!ENTITY Backspace "<keycap>Backspace</keycap>"> -<!ENTITY cdrom '<hardware>CD-ROM 驱å¨å¨</hardware>'> +<!ENTITY cdrom '<hardware>CD-ROM Çý¶¯Æ÷</hardware>'> <!ENTITY Ctrl "<keycap>Ctrl</keycap>"> <!ENTITY dpi '<acronym>dpi</acronym>'> -<!ENTITY eg "<abbrev>å¦</abbrev>"> +<!ENTITY eg "<abbrev>Èç</abbrev>"> <!ENTITY Enter "<keycap>Enter</keycap>"> <!ENTITY Esc "<keycap>Esc</keycap>"> -<!ENTITY etc "<abbrev>çç</abbrev>"> -<!ENTITY FAQ '常è§é®é¢è§£ç'> +<!ENTITY etc "<abbrev>µÈµÈ</abbrev>"> +<!ENTITY FAQ '³£¼ûÎÊÌâ½â´ð'> <!ENTITY ie "<abbrev>i.e.</abbrev>"> -<!ENTITY infocenter "<application>ä¿¡æ¯ä¸å¿</application>"> -<!ENTITY kcontrolcenter "<application>&kde; æ§å¶ä¸å¿</application>"> +<!ENTITY infocenter "<application>ÐÅÏ¢ÖÐÐÄ</application>"> +<!ENTITY kcontrolcenter "<application>&kde; ¿ØÖÆÖÐÐÄ</application>"> <!ENTITY kicon "<guiicon> <inlinemediaobject> - <objectinfo><title>&kde; ç K 徿 </title></objectinfo> + <objectinfo><title>&kde; µÄ K ͼ±ê</title></objectinfo> <imageobject><imagedata fileref='common/kmenu.png' format='PNG'/></imageobject> <textobject><phrase>K</phrase></textobject> </inlinemediaobject> </guiicon> icon"><!-- if image is localised, then entityref should be used instead of fileref --> -<!ENTITY kmenu "<guimenu>K</guimenu> èå"> -<!ENTITY LMB "é¼ æ <mousebutton>å·¦</mousebutton>é®"> -<!ENTITY MMB "é¼ æ <mousebutton>ä¸</mousebutton>é®"> -<!ENTITY OS "æä½ç³»ç»"><!-- <acronym>OS</acronym>--> -<!ENTITY RMB "é¼ æ <mousebutton>å³</mousebutton>é®"> +<!ENTITY kmenu "<guimenu>K</guimenu> ²Ëµ¥"> +<!ENTITY LMB "Êó±ê<mousebutton>×ó</mousebutton>¼ü"> +<!ENTITY MMB "Êó±ê<mousebutton>ÖÐ</mousebutton>¼ü"> +<!ENTITY OS "²Ù×÷ϵͳ"><!-- <acronym>OS</acronym>--> +<!ENTITY RMB "Êó±ê<mousebutton>ÓÒ</mousebutton>¼ü"> <!ENTITY Shift "<keycap>Shift</keycap>"> -<!ENTITY systemtray "<application>ç³»ç»æç</application>"> +<!ENTITY systemtray "<application>ϵͳÍÐÅÌ</application>"> <!ENTITY Tab "<keycap>Tab</keycap>">
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdoctools/meinproc.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdoctools/meinproc.cpp
Changed
@@ -158,6 +158,16 @@ } QVector<const char *> params; +#ifndef Q_WS_WIN + // libxslt parses the path given to outputFile as XPath expression which fails + // see libxslt/xsltEvalUserParams + // this parameter is used only by share/apps/ksgmltools2/docbook/xsl/html/math.xsl + // and is not supported on windows yet + if (args->isSet( "output" ) ) { + params.append( qstrdup( "outputFile" ) ); + params.append( qstrdup( args->getOption( "output" ).toLocal8Bit() ) ); + } +#endif { const QStringList paramList = args->getOptionList( "param" ); QStringList::ConstIterator it = paramList.begin();
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdoctools/xslt.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kdoctools/xslt.cpp
Changed
@@ -157,26 +157,8 @@ INFO(i18n("Parsing document")); - xmlParserCtxtPtr pctxt; - - pctxt = xmlNewParserCtxt(); - if ( pctxt == NULL ) { - return parsed; - } - - xmlDocPtr doc = xmlCtxtReadFile(pctxt, QFile::encodeName(pat), NULL, - XML_PARSE_NOENT|XML_PARSE_DTDLOAD|XML_PARSE_NONET); - /* Check both the returned doc (for parsing errors) and the context - (for validation errors) */ - if (doc == NULL) { - return parsed; - } else { - if (pctxt->valid == 0) { - xmlFreeDoc(doc); - return parsed; - } - } - + xmlDocPtr doc = xmlReadFile(QFile::encodeName(pat), NULL, + XML_PARSE_NOENT|XML_PARSE_DTDLOAD|XML_PARSE_NONET); xsltTransformContextPtr ctxt; ctxt = xsltNewTransformContext(style_sheet, doc);
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/css/css_mediaquery.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/css/css_mediaquery.cpp
Changed
@@ -543,7 +543,7 @@ doc = static_cast<DOM::DocumentImpl*>(part->document().handle()); } int logicalDpiY = doc->logicalDpiY(); - return value->isPrimitiveValue() && compareValue(height, static_cast<CSSPrimitiveValueImpl*>(value)->computeLength(style, style, logicalDpiY), op); + return value->isPrimitiveValue() && compareValue(height, static_cast<CSSPrimitiveValueImpl*>(value)->computeLength(style,logicalDpiY), op); } // ({,min-,max-}device-height) // assume if we have a device, assume non-zero @@ -566,7 +566,7 @@ doc = static_cast<DOM::DocumentImpl*>(part->document().handle()); } int logicalDpiY = doc->logicalDpiY(); - return value->isPrimitiveValue() && compareValue(width, static_cast<CSSPrimitiveValueImpl*>(value)->computeLength(style, style, logicalDpiY), op); + return value->isPrimitiveValue() && compareValue(width, static_cast<CSSPrimitiveValueImpl*>(value)->computeLength(style,logicalDpiY), op); } // ({,min-,max-}device-width) // assume if we have a device, assume non-zero @@ -593,7 +593,7 @@ } int logicalDpiY = doc->logicalDpiY(); if (value) - return value->isPrimitiveValue() && compareValue(width, static_cast<CSSPrimitiveValueImpl*>(value)->computeLength(style, style, logicalDpiY), op); + return value->isPrimitiveValue() && compareValue(width, static_cast<CSSPrimitiveValueImpl*>(value)->computeLength(style, logicalDpiY), op); return width > 0; } @@ -614,7 +614,7 @@ } int logicalDpiY = doc->logicalDpiY(); if (value) - return value->isPrimitiveValue() && compareValue(height, static_cast<CSSPrimitiveValueImpl*>(value)->computeLength(style, style, logicalDpiY), op); + return value->isPrimitiveValue() && compareValue(height, static_cast<CSSPrimitiveValueImpl*>(value)->computeLength(style, logicalDpiY), op); return height > 0; }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/css/css_renderstyledeclarationimpl.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/css/css_renderstyledeclarationimpl.cpp
Changed
@@ -39,11 +39,9 @@ CSS_PROP_BACKGROUND_IMAGE, CSS_PROP_BACKGROUND_REPEAT, CSS_PROP_BACKGROUND_ATTACHMENT, - CSS_PROP_BACKGROUND_ORIGIN, CSS_PROP_BACKGROUND_POSITION, CSS_PROP_BACKGROUND_POSITION_X, CSS_PROP_BACKGROUND_POSITION_Y, - CSS_PROP_BACKGROUND_SIZE, CSS_PROP_BORDER_COLLAPSE, CSS_PROP_BORDER_SPACING, CSS_PROP__KHTML_BORDER_HORIZONTAL_SPACING, @@ -460,24 +458,22 @@ Q_ASSERT( 0 ); } break; - case CSS_PROP_BACKGROUND_ORIGIN: - switch (style->backgroundLayers()->backgroundOrigin()) { - case BGBORDER: - return new CSSPrimitiveValueImpl(CSS_VAL_BORDER_BOX); - case BGPADDING: - return new CSSPrimitiveValueImpl(CSS_VAL_PADDING_BOX); - case BGCONTENT: - return new CSSPrimitiveValueImpl(CSS_VAL_CONTENT_BOX); - } - Q_ASSERT(0); - break; case CSS_PROP_BACKGROUND_POSITION: { RETURN_NULL_ON_NULL(renderer); - CSSValueListImpl *values = new CSSValueListImpl(CSSValueListImpl::Space); - values->append(valueForLength(style->backgroundXPosition(), renderer->contentWidth())); - values->append(valueForLength(style->backgroundYPosition(), renderer->contentHeight())); - return values; + DOMString string; + Length length(style->backgroundXPosition()); + if (length.isPercent()) + string = QString(QString::number(length.percent()) + "%"); + else + string = QString(QString::number(length.minWidth(renderer->contentWidth())) + "px"); + string += " "; + length = style->backgroundYPosition(); + if (length.isPercent()) + string += QString(QString::number(length.percent()) + "%"); + else + string += QString(QString::number(length.minWidth(renderer->contentWidth())) + "px"); + return new CSSPrimitiveValueImpl(string, CSSPrimitiveValue::CSS_STRING); } case CSS_PROP_BACKGROUND_POSITION_X: RETURN_NULL_ON_NULL(renderer); @@ -485,43 +481,6 @@ case CSS_PROP_BACKGROUND_POSITION_Y: RETURN_NULL_ON_NULL(renderer); return valueForLength(style->backgroundYPosition(), renderer->contentHeight()); - case CSS_PROP_BACKGROUND_SIZE: { - const EBackgroundSizeType backgroundSizeType = style->backgroundLayers()->backgroundSizeType(); - switch (backgroundSizeType) { - case BGSCONTAIN: - return new CSSPrimitiveValueImpl(CSS_VAL_CONTAIN); - case BGSCOVER: - return new CSSPrimitiveValueImpl(CSS_VAL_COVER); - case BGSLENGTH: { - const LengthSize bgLengthSize = style->backgroundLayers()->backgroundSize(); - CSSValueListImpl *values = new CSSValueListImpl(CSSValueListImpl::Space); - switch (bgLengthSize.width.type()) { - case Auto: - values->append(new CSSPrimitiveValueImpl(CSS_VAL_AUTO)); - break; - case Percent: - values->append(new CSSPrimitiveValueImpl(bgLengthSize.width.percent(), CSSPrimitiveValue::CSS_PERCENTAGE)); - break; - default: - values->append(new CSSPrimitiveValueImpl(bgLengthSize.width.value(), CSSPrimitiveValue::CSS_PX)); - } - switch (bgLengthSize.height.type()) { - case Auto: - values->append(new CSSPrimitiveValueImpl(CSS_VAL_AUTO)); - break; - case Percent: - values->append(new CSSPrimitiveValueImpl(bgLengthSize.height.percent(), CSSPrimitiveValue::CSS_PERCENTAGE)); - break; - default: - values->append(new CSSPrimitiveValueImpl(bgLengthSize.height.value(), CSSPrimitiveValue::CSS_PX)); - } - return values; - } - default: - Q_ASSERT(0); - } - break; - } case CSS_PROP_BORDER_COLLAPSE: if (style->borderCollapse()) return new CSSPrimitiveValueImpl(CSS_VAL_COLLAPSE); @@ -529,15 +488,18 @@ return new CSSPrimitiveValueImpl(CSS_VAL_SEPARATE); case CSS_PROP_BORDER_SPACING: { - CSSValueListImpl *values = new CSSValueListImpl(CSSValueListImpl::Space); - values->append(new CSSPrimitiveValueImpl(style->borderHorizontalSpacing(), CSSPrimitiveValue::CSS_PX)); - values->append(new CSSPrimitiveValueImpl(style->borderVerticalSpacing(), CSSPrimitiveValue::CSS_PX)); - return values; + QString string(QString::number(style->borderHorizontalSpacing()) + + "px " + + QString::number(style->borderVerticalSpacing()) + + "px"); + return new CSSPrimitiveValueImpl(DOMString(string), CSSPrimitiveValue::CSS_STRING); } case CSS_PROP__KHTML_BORDER_HORIZONTAL_SPACING: - return new CSSPrimitiveValueImpl(style->borderHorizontalSpacing(), CSSPrimitiveValue::CSS_PX); + return new CSSPrimitiveValueImpl(style->borderHorizontalSpacing(), + CSSPrimitiveValue::CSS_PX); case CSS_PROP__KHTML_BORDER_VERTICAL_SPACING: - return new CSSPrimitiveValueImpl(style->borderVerticalSpacing(), CSSPrimitiveValue::CSS_PX); + 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());
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/css/css_valueimpl.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/css/css_valueimpl.cpp
Changed
@@ -37,6 +37,8 @@ #include <xml/dom_stringimpl.h> #include <xml/dom_docimpl.h> +#include <misc/loader.h> + #include <rendering/font.h> #include <rendering/render_style.h> @@ -197,8 +199,7 @@ DOMString CSSStyleDeclarationImpl::getPropertyValue( int propertyID ) const { - if (!m_lstValues || m_lstValues->isEmpty()) return DOMString(); - + if(!m_lstValues) return DOMString(); CSSValueImpl* value = getPropertyCSSValue( propertyID ); if ( value ) return value->cssText(); @@ -428,7 +429,7 @@ CSSValueImpl *CSSStyleDeclarationImpl::getPropertyCSSValue( int propertyID ) const { - if (!m_lstValues || m_lstValues->isEmpty()) return 0; + if(!m_lstValues) return 0; QListIterator<CSSProperty*> lstValuesIt(*m_lstValues); CSSProperty *current; @@ -645,7 +646,7 @@ void CSSStyleDeclarationImpl::removeProperty(int propertyID, DOM::DOMString* old) { - if (!m_lstValues || m_lstValues->isEmpty()) + if(!m_lstValues) return; bool changed = false; @@ -732,7 +733,7 @@ bool CSSStyleDeclarationImpl::getPropertyPriority( int propertyID ) const { - if (m_lstValues && !m_lstValues->isEmpty()) { + if ( m_lstValues) { QListIterator<CSSProperty*> lstValuesIt(*m_lstValues); CSSProperty *current; while (lstValuesIt.hasNext()) { @@ -834,26 +835,24 @@ DOM::DOMString CSSStyleDeclarationImpl::cssText() const { - if (!m_lstValues || m_lstValues->isEmpty()) { - return DOMString(); - } - DOMString result; + const CSSProperty* positionXProp = 0; const CSSProperty* positionYProp = 0; - QListIterator<CSSProperty*> lstValuesIt(*m_lstValues); - while (lstValuesIt.hasNext()) { - const CSSProperty* cur = lstValuesIt.next(); - if (cur->id() == CSS_PROP_BACKGROUND_POSITION_X) - positionXProp = cur; - else if (cur->id() == CSS_PROP_BACKGROUND_POSITION_Y) - positionYProp = cur; - else - result += cur->cssText(); + if ( m_lstValues) { + QListIterator<CSSProperty*> lstValuesIt(*m_lstValues); + while (lstValuesIt.hasNext()) { + const CSSProperty* cur = lstValuesIt.next(); + if (cur->id() == CSS_PROP_BACKGROUND_POSITION_X) + positionXProp = cur; + else if (cur->id() == CSS_PROP_BACKGROUND_POSITION_Y) + positionYProp = cur; + else + result += cur->cssText(); + } } - // FIXME: This is a not-so-nice way to turn x/y positions into single background-position in output. // It is required because background-position-x/y are non-standard properties and generated output // would not work in Firefox @@ -962,17 +961,14 @@ DOM::DOMString CSSValueListImpl::cssText() const { - DOMString separatorString; - if (m_separator == Comma) { - separatorString = DOMString(", "); - } else { // Space - separatorString = DOMString(" "); - } - DOMString result = ""; + for (QListIterator<CSSValueImpl*> iterator(m_values); iterator.hasNext();) { if (!result.isEmpty()) { - result += separatorString; + if (m_separator == Comma) + result += ", "; + else if (m_separator == Space) + result += " "; } result += iterator.next()->cssText(); } @@ -1068,12 +1064,12 @@ m_type = 0; } -int CSSPrimitiveValueImpl::computeLength(khtml::RenderStyle *style, khtml::RenderStyle *rootStyle, int logicalDpiY) +int CSSPrimitiveValueImpl::computeLength( khtml::RenderStyle *style, int logicalDpiY) { - return snapValue( computeLengthFloat(style, rootStyle, logicalDpiY) ); + return snapValue( computeLengthFloat( style, logicalDpiY ) ); } -double CSSPrimitiveValueImpl::computeLengthFloat(khtml::RenderStyle *style, khtml::RenderStyle *rootStyle, int logicalDpiY) +double CSSPrimitiveValueImpl::computeLengthFloat( khtml::RenderStyle *style, int logicalDpiY) { unsigned short type = primitiveType(); @@ -1090,21 +1086,11 @@ factor = style->font().pixelSize(); break; case CSSPrimitiveValue::CSS_EXS: - factor = style->htmlFont().xHeight(); - break; - case CSSPrimitiveValue::CSS_CHS: { - const int zw = style->htmlFont().zeroCharWidth(); - if (zw != -1) { - factor = zw; - } else { - // assume 0.5em - return ((double)0.5 * style->font().pixelSize()); - } - break; - } - case CSSPrimitiveValue::CSS_REMS: - factor = rootStyle->font().pixelSize(); + { + QFontMetrics fm = style->fontMetrics(); + factor = fm.xHeight(); break; + } case CSSPrimitiveValue::CSS_PX: break; case CSSPrimitiveValue::CSS_CM: @@ -1224,12 +1210,6 @@ case CSSPrimitiveValue::CSS_EXS: text = DOMString(QString::number( m_value.num ) + "ex"); break; - case CSSPrimitiveValue::CSS_CHS: - text = DOMString(QString::number( m_value.num ) + "ch"); - break; - case CSSPrimitiveValue::CSS_REMS: - text = DOMString(QString::number( m_value.num ) + "rem"); - break; case CSSPrimitiveValue::CSS_PX: text = DOMString(QString::number( m_value.num ) + "px"); break; @@ -1405,11 +1385,22 @@ : CSSPrimitiveValueImpl(url, CSSPrimitiveValue::CSS_URI) { m_image = 0; - const DOMString imgUrl = url.trimSpaces(); - if (!imgUrl.isEmpty()) { - m_fullImageUrl = KUrl(style->baseURL(), imgUrl.string()).url(); - } else { - m_fullImageUrl.clear(); + if (!url.isEmpty()) { + khtml::DocLoader *docLoader = 0; + const StyleBaseImpl *root = style; + while (root->parent()) { + root = root->parent(); + } + if (root->isCSSStyleSheet()) { + docLoader = static_cast<const CSSStyleSheetImpl*>(root)->docLoader(); + } + if (docLoader) { + KUrl fullURL(style->baseURL(), url.string()); + m_image = docLoader->requestImage(fullURL.url()); + if (m_image) { + m_image->ref(this); + } + } } } @@ -1417,7 +1408,6 @@ : CSSPrimitiveValueImpl(CSS_VAL_NONE) { m_image = 0; - m_fullImageUrl.clear(); } CSSImageValueImpl::~CSSImageValueImpl() @@ -1425,17 +1415,6 @@
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/css/css_valueimpl.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/css/css_valueimpl.h
Changed
@@ -93,6 +93,8 @@ virtual void setChanged(); + void removeCSSHints(); + protected: DOMString getShortHandValue( const int* properties, int number ) const; DOMString getCommonValue(const int* properties, int number) const; @@ -216,9 +218,9 @@ * this is screen/printer dependent, so we probably need a config option for this, * and some tool to calibrate. */ - int computeLength(khtml::RenderStyle *style, khtml::RenderStyle *rootStyle, int logicalDpiY); + int computeLength( khtml::RenderStyle *style, int logicalDpiY); - double computeLengthFloat(khtml::RenderStyle *style, khtml::RenderStyle *rootStyle, int logicalDpiY); + double computeLengthFloat( khtml::RenderStyle *style, int logicalDpiY); /* * rounds a computer value into integer as appropriate. This takes @@ -363,10 +365,9 @@ CSSImageValueImpl(); virtual ~CSSImageValueImpl(); - khtml::CachedImage *requestCssImage(DocumentImpl*); + khtml::CachedImage *image() { return m_image; } protected: khtml::CachedImage *m_image; - QString m_fullImageUrl; }; class FontFamilyValueImpl : public CSSPrimitiveValueImpl
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/css/css_webfont.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/css/css_webfont.cpp
Changed
@@ -84,10 +84,10 @@ return true; } -void CSSFontFaceSource::notifyFinished(khtml::CachedObject *finishedObj) +void CSSFontFaceSource::notifyFinished(khtml::CachedObject */*finishedObj*/) { - // Nothing to do if font already added from other src or failed to load - if (m_face->installed() || finishedObj->hadError()) { + if (m_face->installed()) { + // kWarning() << "Font already added from other src"; return; } @@ -652,16 +652,11 @@ { QHash<DOMString, CSSFontFace*>::const_iterator it = m_locallyInstalledFontFaces.constBegin(); QHash<DOMString, CSSFontFace*>::const_iterator end = m_locallyInstalledFontFaces.constEnd(); - if (it == end) { - return; - } - const DOMString familyNameLower = familyName.lower(); - do { - if (it.key() == familyNameLower) { + for ( ; it != end; ++it) { + if (it.key() == familyName.lower()) { it.value()->refLoaders(); } - ++it; - } while (it != end); + } } void CSSFontSelector::fontLoaded()
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/css/css_webfont.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/css/css_webfont.h
Changed
@@ -126,7 +126,7 @@ void setFontFace(CSSFontFace* face) { m_face = face; } - virtual void notifyFinished(khtml::CachedObject * finishedObj); + virtual void notifyFinished(khtml::CachedObject * /*finishedObj*/); void refLoader(); // SimpleFontData* getFontData(const FontDef&, bool syntheticBold, bool syntheticItalic, CSSFontSelector*);
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/css/cssparser.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/css/cssparser.cpp
Changed
@@ -38,6 +38,8 @@ #include "css_mediaquery.h" #include "cssproperties.h" #include "cssvalues.h" +#include "csshelper.h" +#include <misc/helper.h> #include <stdlib.h> #include <assert.h> @@ -449,8 +451,6 @@ case Value::Q_EMS: case CSSPrimitiveValue::CSS_EMS: case CSSPrimitiveValue::CSS_EXS: - case CSSPrimitiveValue::CSS_CHS: - case CSSPrimitiveValue::CSS_REMS: case CSSPrimitiveValue::CSS_PX: case CSSPrimitiveValue::CSS_CM: case CSSPrimitiveValue::CSS_MM: @@ -978,7 +978,7 @@ if ( id == CSS_VAL_NORMAL ) valid_primitive = true; else - valid_primitive = ( !id && validUnit( value, FNumber|FLength|FPercent|FNonNeg, strict ) ); + valid_primitive = ( !id && validUnit( value, FNumber|FLength|FPercent, strict ) ); break; case CSS_PROP_COUNTER_INCREMENT: // [ <identifier> <integer>? ]+ | none | inherit if ( id == CSS_VAL_NONE ) @@ -1821,26 +1821,24 @@ return new CSSPrimitiveValueImpl(value->id); if (value->id == CSS_VAL_AUTO) - parsedValue1 = new CSSPrimitiveValueImpl(CSS_VAL_AUTO); + parsedValue1 = new CSSPrimitiveValueImpl(0, CSSPrimitiveValue::CSS_UNKNOWN); else { - if (!validUnit(value, FLength|FPercent|FNonNeg, strict)) + if (!validUnit(value, FLength|FPercent, strict)) return 0; parsedValue1 = new CSSPrimitiveValueImpl(value->fValue, (CSSPrimitiveValue::UnitTypes)value->unit); } - CSSPrimitiveValueImpl* parsedValue2; + CSSPrimitiveValueImpl* parsedValue2 = parsedValue1; if ((value = valueList->next())) { if (value->id == CSS_VAL_AUTO) - parsedValue2 = new CSSPrimitiveValueImpl(CSS_VAL_AUTO); + parsedValue2 = new CSSPrimitiveValueImpl(0, CSSPrimitiveValue::CSS_UNKNOWN); else { - if (!validUnit(value, FLength|FPercent|FNonNeg, strict)) { + if (!validUnit(value, FLength|FPercent, strict)) { delete parsedValue1; return 0; } parsedValue2 = new CSSPrimitiveValueImpl(value->fValue, (CSSPrimitiveValue::UnitTypes)value->unit); } - } else { - parsedValue2 = new CSSPrimitiveValueImpl(CSS_VAL_AUTO); } PairImpl* pair = new PairImpl(parsedValue1, parsedValue2); @@ -2147,7 +2145,7 @@ goto invalid; if ( value->id == CSS_VAL_NORMAL ) { // default value, nothing to do - } else if ( validUnit( value, FNumber|FLength|FPercent|FNonNeg, strict ) ) { + } else if ( validUnit( value, FNumber|FLength|FPercent, strict ) ) { lineHeight = new CSSPrimitiveValueImpl( value->fValue, (CSSPrimitiveValue::UnitTypes) value->unit ); } else { goto invalid; @@ -2313,8 +2311,9 @@ while ((val = valueList->current())) { CSSFontFaceSrcValueImpl* parsedValue = 0; if (val->unit == CSSPrimitiveValue::CSS_URI && !expectComma && styleElement) { - const DOMString uri = domString(val->string).trimSpaces(); - parsedValue = new CSSFontFaceSrcValueImpl(DOMString(KUrl(styleElement->baseURL(), uri.string()).url()), false /*local*/); + DOMString uri = khtml::parseURL( domString( val->string ) ); + parsedValue = new CSSFontFaceSrcValueImpl( + DOMString(KUrl( styleElement->baseURL(), uri.string()).url()), false /*local*/); uriValue = parsedValue; allowFormat = true; expectComma = true; @@ -2925,13 +2924,11 @@ case RADS: case KHERZ: case DPI: - case REMS: length--; case MSECS: case HERZ: case EMS: case EXS: - case CHS: case PXS: case CMS: case MMS:
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/css/cssstyleselector.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/css/cssstyleselector.cpp
Changed
@@ -630,9 +630,6 @@ else parentStyle = style; - const RenderObject *docElementRenderer = e->document()->documentElement()->renderer(); - m_rootStyle = docElementRenderer ? docElementRenderer->style() : m_rootDefaultStyle; - // try to sort out most style rules as early as possible. quint16 cssTagId = localNamePart(element->id()); int smatch = 0; @@ -2255,7 +2252,7 @@ // ------------------------------------------------------------------------------------- // this is mostly boring stuff on how to apply a certain rule to the renderstyle... -static Length convertToLength(CSSPrimitiveValueImpl *primitiveValue, RenderStyle *style, khtml::RenderStyle *rootStyle, int logicalDpiY, bool *ok = 0) +static Length convertToLength( CSSPrimitiveValueImpl *primitiveValue, RenderStyle *style, int logicalDpiY, bool *ok = 0 ) { Length l; if ( !primitiveValue ) { @@ -2264,7 +2261,7 @@ } else { int type = primitiveValue->primitiveType(); if(type > CSSPrimitiveValue::CSS_PERCENTAGE && type < CSSPrimitiveValue::CSS_DEG) - l = Length(primitiveValue->computeLength(style, rootStyle, logicalDpiY), Fixed); + l = Length(primitiveValue->computeLength(style, logicalDpiY), Fixed); else if(type == CSSPrimitiveValue::CSS_PERCENTAGE) l = Length(primitiveValue->floatValue(CSSPrimitiveValue::CSS_PERCENTAGE), Percent); else if(type == CSSPrimitiveValue::CSS_NUMBER) @@ -2278,7 +2275,7 @@ } // Extracts out border radii lengths from a pair -static BorderRadii convertToBorderRadii(CSSPrimitiveValueImpl *value, RenderStyle *style, khtml::RenderStyle *rootStyle, int logicalDpiY) +static BorderRadii convertToBorderRadii(CSSPrimitiveValueImpl *value, RenderStyle *style, int logicalDpiY) { BorderRadii ret; if (!value) @@ -2289,8 +2286,8 @@ return ret; assert(p->first()->isPrimitiveValue() && p->second()->isPrimitiveValue()); - ret.horizontal = static_cast<CSSPrimitiveValueImpl*>(p->first())->computeLength(style, rootStyle, logicalDpiY); - ret.vertical = static_cast<CSSPrimitiveValueImpl*>(p->second())->computeLength(style, rootStyle, logicalDpiY); + ret.horizontal = static_cast<CSSPrimitiveValueImpl*>(p->first())->computeLength(style, logicalDpiY); + ret.vertical = static_cast<CSSPrimitiveValueImpl*>(p->second())->computeLength(style, logicalDpiY); return ret; } @@ -2935,14 +2932,14 @@ case CSS_PROP__KHTML_BORDER_HORIZONTAL_SPACING: { HANDLE_INITIAL_AND_INHERIT_ON_NONINHERITED_PROPERTY(borderHorizontalSpacing, BorderHorizontalSpacing) if (!primitiveValue) break; - short spacing = primitiveValue->computeLength(style, m_rootStyle, logicalDpiY); + short spacing = primitiveValue->computeLength(style, logicalDpiY); style->setBorderHorizontalSpacing(spacing); break; } case CSS_PROP__KHTML_BORDER_VERTICAL_SPACING: { HANDLE_INITIAL_AND_INHERIT_ON_NONINHERITED_PROPERTY(borderVerticalSpacing, BorderVerticalSpacing) if (!primitiveValue) break; - short spacing = primitiveValue->computeLength(style, m_rootStyle, logicalDpiY); + short spacing = primitiveValue->computeLength(style, logicalDpiY); style->setBorderVerticalSpacing(spacing); break; } @@ -2950,19 +2947,19 @@ // ### should these handle initial & inherit? case CSS_PROP__KHTML_BORDER_TOP_RIGHT_RADIUS: case CSS_PROP_BORDER_TOP_RIGHT_RADIUS: - style->setBorderTopRightRadius(convertToBorderRadii(primitiveValue, style, m_rootStyle, logicalDpiY)); + style->setBorderTopRightRadius(convertToBorderRadii(primitiveValue, style, logicalDpiY)); break; case CSS_PROP__KHTML_BORDER_TOP_LEFT_RADIUS: case CSS_PROP_BORDER_TOP_LEFT_RADIUS: - style->setBorderTopLeftRadius(convertToBorderRadii(primitiveValue, style, m_rootStyle, logicalDpiY)); + style->setBorderTopLeftRadius(convertToBorderRadii(primitiveValue, style, logicalDpiY)); break; case CSS_PROP__KHTML_BORDER_BOTTOM_RIGHT_RADIUS: case CSS_PROP_BORDER_BOTTOM_RIGHT_RADIUS: - style->setBorderBottomRightRadius(convertToBorderRadii(primitiveValue, style, m_rootStyle, logicalDpiY)); + style->setBorderBottomRightRadius(convertToBorderRadii(primitiveValue, style, logicalDpiY)); break; case CSS_PROP__KHTML_BORDER_BOTTOM_LEFT_RADIUS: case CSS_PROP_BORDER_BOTTOM_LEFT_RADIUS: - style->setBorderBottomLeftRadius(convertToBorderRadii(primitiveValue, style, m_rootStyle, logicalDpiY)); + style->setBorderBottomLeftRadius(convertToBorderRadii(primitiveValue, style, logicalDpiY)); break; case CSS_PROP_CURSOR: @@ -3100,7 +3097,8 @@ { HANDLE_INITIAL_AND_INHERIT_ON_INHERITED_PROPERTY(listStyleImage, ListStyleImage) if (!primitiveValue) return; - style->setListStyleImage(static_cast<CSSImageValueImpl *>(primitiveValue)->requestCssImage(element->document())); + style->setListStyleImage(static_cast<CSSImageValueImpl *>(primitiveValue)->image()); + //kDebug( 6080 ) << "setting image in list to " << image->image(); break; } @@ -3144,7 +3142,7 @@ break; case CSS_VAL_INVALID: { - double widthd = primitiveValue->computeLengthFloat(style, m_rootStyle, logicalDpiY); + double widthd = primitiveValue->computeLengthFloat(style, logicalDpiY); width = CSSPrimitiveValueImpl::snapValue(widthd); // somewhat resemble Mozilla's granularity // this makes border-width: 0.5pt borders visible @@ -3195,7 +3193,7 @@ int width = 0; if (primitiveValue->getIdent() != CSS_VAL_NORMAL) - width = primitiveValue->computeLength(style, m_rootStyle, logicalDpiY); + width = primitiveValue->computeLength(style, logicalDpiY); switch(id) { @@ -3286,7 +3284,8 @@ int type = primitiveValue->primitiveType(); if(type > CSSPrimitiveValue::CSS_PERCENTAGE && type < CSSPrimitiveValue::CSS_DEG) // Handle our quirky margin units if we have them. - l = Length(primitiveValue->computeLength(style, m_rootStyle, logicalDpiY), Fixed, primitiveValue->isQuirkValue()); + l = Length(primitiveValue->computeLength(style, logicalDpiY), Fixed, + primitiveValue->isQuirkValue()); else if(type == CSSPrimitiveValue::CSS_PERCENTAGE) l = Length(primitiveValue->floatValue(CSSPrimitiveValue::CSS_PERCENTAGE), Percent); else if (type == CSSPrimitiveValue::CSS_HTML_RELATIVE) @@ -3363,7 +3362,7 @@ { int type = primitiveValue->primitiveType(); if(type > CSSPrimitiveValue::CSS_PERCENTAGE && type < CSSPrimitiveValue::CSS_DEG) - l = Length(primitiveValue->computeLength(style, m_rootStyle, logicalDpiY), Fixed); + l = Length(primitiveValue->computeLength(style, logicalDpiY), Fixed); else if(type == CSSPrimitiveValue::CSS_PERCENTAGE) l = Length(primitiveValue->floatValue(CSSPrimitiveValue::CSS_PERCENTAGE), Percent); else @@ -3421,7 +3420,7 @@ int type = primitiveValue->primitiveType(); Length l; if(type > CSSPrimitiveValue::CSS_PERCENTAGE && type < CSSPrimitiveValue::CSS_DEG) - l = Length(primitiveValue->computeLength(style, m_rootStyle, logicalDpiY), Fixed); + l = Length(primitiveValue->computeLength(style, logicalDpiY), Fixed ); else if(type == CSSPrimitiveValue::CSS_PERCENTAGE) l = Length( primitiveValue->floatValue(CSSPrimitiveValue::CSS_PERCENTAGE), Percent ); @@ -3435,8 +3434,6 @@ FontDef fontDef = style->htmlFont().fontDef; int size = 0; - const bool isRootElement = element && (element->document()->documentElement() == element); - if (isInherit ) size = parentStyle->font().pixelSize(); else if (isInitial) @@ -3477,14 +3474,13 @@ } } else { - const int type = primitiveValue->primitiveType(); + int type = primitiveValue->primitiveType(); if (type > CSSPrimitiveValue::CSS_PERCENTAGE && type < CSSPrimitiveValue::CSS_DEG) { - // Scale for the font zoom factor only for types other than "em", "ex", "ch", "rem", - // since those are already based on the font size. - if (!khtml::printpainter && !(type >= CSSPrimitiveValue::CSS_EMS && type <= CSSPrimitiveValue::CSS_REMS) && view && view->part()) { - size = qRound(primitiveValue->computeLengthFloat(parentStyle, m_rootStyle, logicalDpiY) * view->part()->fontScaleFactor() / 100.0); + if (!khtml::printpainter && type != CSSPrimitiveValue::CSS_EMS && type != CSSPrimitiveValue::CSS_EXS && + view && view->part()) { + size = qRound(primitiveValue->computeLengthFloat(parentStyle, logicalDpiY) * view->part()->fontScaleFactor() / 100.0); } else { - size = qRound(primitiveValue->computeLengthFloat(parentStyle, isRootElement ? m_rootDefaultStyle : m_rootStyle, logicalDpiY)); + size = qRound(primitiveValue->computeLengthFloat(parentStyle, logicalDpiY)); } } else if (type == CSSPrimitiveValue::CSS_PERCENTAGE) { size = qRound(primitiveValue->floatValue(CSSPrimitiveValue::CSS_PERCENTAGE) * parentStyle->font().pixelSize() / 100.0); @@ -3503,14 +3499,6 @@ fontDef.size = size; fontDirty |= style->setFontDef( fontDef ); - - if (isRootElement) { - // We changed font size of root element, update now our root style reference - // so that root css properties based on 'rem' unit are correctly computed - // TESTCASE: html { font-size: 30px; width: 10rem; border: solid; } - m_rootStyle = style; - } - return; } @@ -3570,17 +3558,18 @@ HANDLE_INITIAL_AND_INHERIT_ON_INHERITED_PROPERTY(lineHeight, LineHeight) if(!primitiveValue) return; Length lineHeight; - const int type = primitiveValue->primitiveType(); + int type = primitiveValue->primitiveType(); if (primitiveValue->getIdent() == CSS_VAL_NORMAL) lineHeight = Length( -100.0, Percent ); else if (type > CSSPrimitiveValue::CSS_PERCENTAGE && type < CSSPrimitiveValue::CSS_DEG) { - // Scale for the font zoom factor only for types other than "em", "ex", "ch", "rem", - // since those are already based on the font size.
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/css/cssstyleselector.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/css/cssstyleselector.h
Changed
@@ -321,7 +321,6 @@ RenderStyle *style; RenderStyle *parentStyle; - RenderStyle *m_rootStyle; // needed to compute 'rem' lengths DOM::ElementImpl *element; DOM::NodeImpl *parentNode; KHTMLView *view;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/css/parser.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/css/parser.cpp
Changed
@@ -248,31 +248,29 @@ QEMS = 286, EMS = 287, EXS = 288, - CHS = 289, - REMS = 290, - PXS = 291, - CMS = 292, - MMS = 293, - INS = 294, - PTS = 295, - PCS = 296, - DEGS = 297, - RADS = 298, - GRADS = 299, - MSECS = 300, - SECS = 301, - HERZ = 302, - KHERZ = 303, - DPI = 304, - DPCM = 305, - DIMEN = 306, - PERCENTAGE = 307, - FLOAT = 308, - INTEGER = 309, - URI = 310, - FUNCTION = 311, - NOTFUNCTION = 312, - UNICODERANGE = 313 + PXS = 289, + CMS = 290, + MMS = 291, + INS = 292, + PTS = 293, + PCS = 294, + DEGS = 295, + RADS = 296, + GRADS = 297, + MSECS = 298, + SECS = 299, + HERZ = 300, + KHERZ = 301, + DPI = 302, + DPCM = 303, + DIMEN = 304, + PERCENTAGE = 305, + FLOAT = 306, + INTEGER = 307, + URI = 308, + FUNCTION = 309, + NOTFUNCTION = 310, + UNICODERANGE = 311 }; #endif @@ -557,20 +555,20 @@ /* YYFINAL -- State number of the termination state. */ #define YYFINAL 19 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 633 +#define YYLAST 619 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 78 +#define YYNTOKENS 76 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 69 /* YYNRULES -- Number of rules. */ -#define YYNRULES 201 +#define YYNRULES 199 /* YYNRULES -- Number of states. */ -#define YYNSTATES 382 +#define YYNSTATES 378 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 313 +#define YYMAXUTOK 311 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -582,15 +580,15 @@ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 68, 69, 19, 66, 70, 73, 17, 76, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 16, 67, - 2, 75, 72, 2, 77, 2, 2, 2, 2, 2, + 66, 67, 19, 64, 68, 71, 17, 74, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 16, 65, + 2, 73, 70, 2, 75, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 18, 2, 74, 2, 2, 2, 2, 2, 2, + 2, 18, 2, 72, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 64, 20, 65, 71, 2, 2, 2, + 2, 2, 2, 62, 20, 63, 69, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -609,7 +607,7 @@ 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63 + 60, 61 }; #if YYDEBUG @@ -636,106 +634,103 @@ 533, 535, 538, 541, 544, 547, 550, 553, 555, 557, 560, 563, 566, 569, 572, 575, 578, 581, 584, 587, 590, 593, 596, 599, 602, 605, 608, 611, 614, 617, - 620, 623, 626, 632, 636, 639, 643, 647, 650, 656, - 660, 662 + 620, 626, 630, 633, 637, 641, 644, 650, 654, 656 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { - 79, 0, -1, 87, 89, 88, 91, 93, 97, -1, - 81, 87, -1, 82, 87, -1, 83, 87, -1, 85, - 87, -1, 84, 87, -1, 117, -1, 92, -1, 94, - -1, 27, 64, 87, 80, 87, 65, -1, 28, 132, - -1, 29, 64, 87, 137, 65, -1, 31, 64, 87, - 118, 65, -1, 30, 4, 87, 107, 65, -1, -1, - 66, -1, -1, 87, 4, -1, -1, 88, 5, -1, - 88, 4, -1, -1, 90, -1, 25, 87, 11, 87, - 67, -1, 25, 1, 145, -1, 25, 1, 67, -1, - -1, 91, 92, 88, -1, 21, 87, 100, 87, 108, - 67, -1, 21, 1, 145, -1, 21, 1, 67, -1, - -1, 93, 95, 88, -1, 26, 87, 96, 100, -1, - 94, 87, 67, -1, 26, 1, 145, -1, 26, 1, - 67, -1, -1, 12, 4, -1, -1, 97, 98, 88, - -1, 117, -1, 110, -1, 113, -1, 114, -1, 144, - -1, 143, -1, 92, 1, -1, 117, -1, 144, -1, - 143, -1, 92, 1, -1, 11, -1, 60, -1, 12, - 87, -1, -1, 16, 87, 137, 87, -1, 68, 87, - 101, 87, 102, 69, 87, -1, 103, -1, 104, 87, - 35, 87, 103, -1, -1, 35, 87, 104, -1, -1, - 33, -1, 34, -1, 104, -1, 106, 87, 112, 105, - -1, -1, 109, -1, 107, -1, 109, 70, 87, 107, - -1, 109, 1, -1, 23, 87, 109, 64, 87, 111, - 65, -1, 23, 87, 64, 87, 111, 65, -1, -1, - 111, 99, 87, -1, 12, 87, -1, 22, 1, 145, - -1, 22, 1, 67, -1, 24, 87, 132, -1, 24, - 1, 145, -1, 24, 1, 67, -1, 66, 87, -1, - 71, 87, -1, 72, 87, -1, 73, -1, 66, -1, - 118, 132, -1, 119, -1, 118, 70, 87, 119, -1, - 118, 1, -1, 121, -1, 119, 4, -1, 119, 4, - 121, -1, 119, 115, 121, -1, 119, 1, -1, 20, - -1, 19, 20, -1, 12, 20, -1, 123, -1, 123, - 124, -1, 124, -1, 120, 123, -1, 120, 123, 124, - -1, 120, 124, -1, 123, -1, 125, -1, 120, 123, - -1, 120, 125, -1, 12, -1, 19, -1, 125, -1, - 124, 125, -1, 124, 1, -1, 14, -1, 126, -1, - 128, -1, 131, -1, 17, 12, -1, 12, 87, -1, - 18, 87, 127, 74, -1, 18, 87, 127, 129, 87, - 130, 87, 74, -1, 18, 87, 120, 127, 74, -1, - 18, 87, 120, 127, 129, 87, 130, 87, 74, -1, - 75, -1, 6, -1, 7, -1, 8, -1, 9, -1, + 77, 0, -1, 85, 87, 86, 89, 91, 95, -1, + 79, 85, -1, 80, 85, -1, 81, 85, -1, 83, + 85, -1, 82, 85, -1, 115, -1, 90, -1, 92, + -1, 27, 62, 85, 78, 85, 63, -1, 28, 130, + -1, 29, 62, 85, 135, 63, -1, 31, 62, 85, + 116, 63, -1, 30, 4, 85, 105, 63, -1, -1, + 64, -1, -1, 85, 4, -1, -1, 86, 5, -1, + 86, 4, -1, -1, 88, -1, 25, 85, 11, 85, + 65, -1, 25, 1, 143, -1, 25, 1, 65, -1, + -1, 89, 90, 86, -1, 21, 85, 98, 85, 106, + 65, -1, 21, 1, 143, -1, 21, 1, 65, -1, + -1, 91, 93, 86, -1, 26, 85, 94, 98, -1, + 92, 85, 65, -1, 26, 1, 143, -1, 26, 1, + 65, -1, -1, 12, 4, -1, -1, 95, 96, 86, + -1, 115, -1, 108, -1, 111, -1, 112, -1, 142, + -1, 141, -1, 90, 1, -1, 115, -1, 142, -1, + 141, -1, 90, 1, -1, 11, -1, 58, -1, 12, + 85, -1, -1, 16, 85, 135, 85, -1, 66, 85, + 99, 85, 100, 67, 85, -1, 101, -1, 102, 85, + 35, 85, 101, -1, -1, 35, 85, 102, -1, -1, + 33, -1, 34, -1, 102, -1, 104, 85, 110, 103, + -1, -1, 107, -1, 105, -1, 107, 68, 85, 105, + -1, 107, 1, -1, 23, 85, 107, 62, 85, 109, + 63, -1, 23, 85, 62, 85, 109, 63, -1, -1, + 109, 97, 85, -1, 12, 85, -1, 22, 1, 143, + -1, 22, 1, 65, -1, 24, 85, 130, -1, 24, + 1, 143, -1, 24, 1, 65, -1, 64, 85, -1, + 69, 85, -1, 70, 85, -1, 71, -1, 64, -1, + 116, 130, -1, 117, -1, 116, 68, 85, 117, -1, + 116, 1, -1, 119, -1, 117, 4, -1, 117, 4, + 119, -1, 117, 113, 119, -1, 117, 1, -1, 20, + -1, 19, 20, -1, 12, 20, -1, 121, -1, 121, + 122, -1, 122, -1, 118, 121, -1, 118, 121, 122, + -1, 118, 122, -1, 121, -1, 123, -1, 118, 121, + -1, 118, 123, -1, 12, -1, 19, -1, 123, -1, + 122, 123, -1, 122, 1, -1, 14, -1, 124, -1,
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/css/parser.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/css/parser.h
Changed
@@ -68,31 +68,29 @@ QEMS = 286, EMS = 287, EXS = 288, - CHS = 289, - REMS = 290, - PXS = 291, - CMS = 292, - MMS = 293, - INS = 294, - PTS = 295, - PCS = 296, - DEGS = 297, - RADS = 298, - GRADS = 299, - MSECS = 300, - SECS = 301, - HERZ = 302, - KHERZ = 303, - DPI = 304, - DPCM = 305, - DIMEN = 306, - PERCENTAGE = 307, - FLOAT = 308, - INTEGER = 309, - URI = 310, - FUNCTION = 311, - NOTFUNCTION = 312, - UNICODERANGE = 313 + PXS = 289, + CMS = 290, + MMS = 291, + INS = 292, + PTS = 293, + PCS = 294, + DEGS = 295, + RADS = 296, + GRADS = 297, + MSECS = 298, + SECS = 299, + HERZ = 300, + KHERZ = 301, + DPI = 302, + DPCM = 303, + DIMEN = 304, + PERCENTAGE = 305, + FLOAT = 306, + INTEGER = 307, + URI = 308, + FUNCTION = 309, + NOTFUNCTION = 310, + UNICODERANGE = 311 }; #endif
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/css/parser.y -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/css/parser.y
Changed
@@ -108,7 +108,7 @@ #define YYLTYPE_IS_TRIVIAL 1 %} -%expect 41 +%expect 39 %pure_parser @@ -214,8 +214,6 @@ %token <val> QEMS %token <val> EMS %token <val> EXS -%token <val> CHS -%token <val> REMS %token <val> PXS %token <val> CMS %token <val> MMS @@ -1233,8 +1231,6 @@ | EMS maybe_space { $$.id = 0; $$.fValue = $1; $$.unit = CSSPrimitiveValue::CSS_EMS; } | QEMS maybe_space { $$.id = 0; $$.fValue = $1; $$.unit = Value::Q_EMS; } | EXS maybe_space { $$.id = 0; $$.fValue = $1; $$.unit = CSSPrimitiveValue::CSS_EXS; } - | CHS maybe_space { $$.id = 0; $$.fValue = $1; $$.unit = CSSPrimitiveValue::CSS_CHS; } - | REMS maybe_space { $$.id = 0; $$.fValue = $1; $$.unit = CSSPrimitiveValue::CSS_REMS; } | DPI maybe_space { $$.id = 0; $$.fValue = $1; $$.unit = CSSPrimitiveValue::CSS_DPI; } | DPCM maybe_space { $$.id = 0; $$.fValue = $1; $$.unit = CSSPrimitiveValue::CSS_DPCM; } ;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/css/tokenizer.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/css/tokenizer.cpp
Changed
@@ -65,8 +65,8 @@ typedef unsigned short int flex_uint16_t; typedef unsigned int flex_uint32_t; #endif /* ! C99 */ -#define YY_NUM_RULES 67 -#define YY_END_OF_BUFFER 68 +#define YY_NUM_RULES 65 +#define YY_END_OF_BUFFER 66 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -74,53 +74,53 @@ flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[411] = +static yyconst flex_int16_t yy_accept[408] = { 0, - 0, 0, 0, 0, 0, 0, 0, 0, 68, 66, - 2, 2, 66, 66, 66, 66, 66, 66, 66, 66, - 66, 66, 52, 66, 66, 14, 14, 14, 66, 66, - 60, 66, 66, 66, 52, 65, 14, 14, 14, 64, - 62, 61, 66, 63, 2, 0, 0, 0, 13, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 66, 64, + 2, 2, 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 50, 64, 64, 14, 14, 14, 64, 64, + 58, 64, 64, 64, 50, 63, 14, 14, 14, 62, + 60, 59, 64, 61, 2, 0, 0, 0, 13, 0, 0, 17, 0, 8, 0, 0, 9, 0, 15, 0, - 14, 14, 0, 53, 0, 51, 0, 0, 52, 50, - 50, 50, 50, 50, 50, 50, 50, 50, 15, 50, - 50, 45, 0, 50, 0, 0, 0, 0, 0, 0, - 0, 0, 57, 14, 0, 0, 0, 14, 14, 0, + 14, 14, 0, 51, 0, 49, 0, 0, 50, 48, + 48, 48, 48, 48, 48, 48, 48, 48, 15, 48, + 48, 43, 0, 48, 0, 0, 0, 0, 0, 0, + 0, 0, 55, 14, 0, 0, 0, 14, 14, 0, - 14, 14, 14, 7, 6, 5, 53, 0, 52, 50, + 14, 14, 14, 7, 6, 5, 51, 0, 50, 48, 14, 14, 14, 0, 17, 0, 0, 0, 13, 0, 0, 17, 0, 17, 17, 0, 0, 13, 0, 0, - 4, 0, 0, 50, 0, 33, 36, 50, 30, 32, - 50, 46, 38, 50, 37, 44, 50, 40, 39, 35, - 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, - 0, 0, 0, 14, 14, 0, 15, 14, 14, 58, - 58, 14, 14, 50, 12, 10, 14, 0, 17, 0, - 0, 0, 17, 17, 17, 0, 0, 0, 1, 50, - 50, 41, 50, 49, 15, 42, 34, 50, 50, 3, - - 0, 0, 0, 0, 0, 0, 0, 14, 54, 0, - 58, 58, 58, 57, 14, 50, 47, 11, 16, 16, - 0, 0, 17, 17, 0, 0, 0, 50, 43, 50, - 50, 0, 0, 0, 0, 0, 0, 19, 14, 59, - 58, 58, 58, 58, 0, 0, 0, 0, 56, 0, - 14, 48, 0, 17, 0, 0, 17, 17, 0, 50, - 50, 31, 0, 0, 0, 0, 20, 0, 14, 59, - 58, 58, 58, 58, 58, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 56, 0, 0, 14, 0, 17, - 0, 0, 17, 17, 0, 50, 50, 0, 0, 0, - - 18, 0, 14, 59, 58, 58, 58, 58, 58, 58, - 0, 55, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 14, 16, 16, 0, 0, 17, 17, - 0, 50, 50, 0, 22, 0, 0, 14, 59, 58, - 58, 58, 58, 58, 58, 58, 0, 55, 0, 0, - 0, 55, 0, 0, 0, 0, 17, 50, 0, 0, - 0, 0, 0, 0, 0, 59, 0, 0, 0, 29, - 0, 0, 0, 0, 0, 21, 23, 59, 0, 0, + 4, 0, 0, 48, 0, 34, 48, 30, 32, 48, + 44, 36, 48, 35, 42, 48, 38, 37, 33, 48, + 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, + 0, 14, 14, 0, 15, 14, 14, 56, 56, 14, + 14, 48, 12, 10, 14, 0, 17, 0, 0, 0, + 17, 17, 17, 0, 0, 0, 1, 48, 48, 39, + 48, 47, 15, 40, 48, 48, 3, 0, 0, 0, + + 0, 0, 0, 0, 14, 52, 0, 56, 56, 56, + 55, 14, 48, 45, 11, 16, 16, 0, 0, 17, + 17, 0, 0, 0, 48, 41, 48, 48, 0, 0, + 0, 0, 0, 0, 19, 14, 57, 56, 56, 56, + 56, 0, 0, 0, 0, 54, 0, 14, 46, 0, + 17, 0, 0, 17, 17, 0, 48, 48, 31, 0, + 0, 0, 0, 20, 0, 14, 57, 56, 56, 56, + 56, 56, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 54, 0, 0, 14, 0, 17, 0, 0, 17, + 17, 0, 48, 48, 0, 0, 0, 18, 0, 14, + + 57, 56, 56, 56, 56, 56, 56, 0, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 24, 0, 0, 0, 0, 25, 0, 0, 26, - - 0, 0, 0, 0, 0, 0, 0, 27, 28, 0 + 14, 16, 16, 0, 0, 17, 17, 0, 48, 48, + 0, 22, 0, 0, 14, 57, 56, 56, 56, 56, + 56, 56, 56, 0, 53, 0, 0, 0, 53, 0, + 0, 0, 0, 17, 48, 0, 0, 0, 0, 0, + 0, 0, 57, 0, 0, 0, 29, 0, 0, 0, + 0, 0, 21, 23, 57, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, + 0, 0, 0, 25, 0, 0, 26, 0, 0, 0, + + 0, 0, 0, 0, 27, 28, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -168,113 +168,111 @@ 4, 4, 10 } ; -static yyconst flex_int16_t yy_base[444] = +static yyconst flex_int16_t yy_base[441] = { 0, - 0, 0, 65, 69, 63, 67, 83, 86, 1316, 2828, - 96, 110, 124, 86, 78, 1240, 90, 1239, 83, 99, - 1213, 1217, 177, 1222, 243, 94, 260, 254, 259, 1198, - 2828, 1168, 1167, 1169, 132, 2828, 104, 318, 108, 2828, - 2828, 2828, 369, 2828, 174, 291, 69, 115, 2828, 428, - 101, 1136, 309, 2828, 121, 487, 2828, 117, 341, 1134, - 141, 371, 351, 329, 1130, 2828, 1087, 1117, 0, 1047, - 381, 138, 232, 128, 300, 350, 384, 398, 507, 422, - 386, 1046, 473, 130, 1052, 118, 124, 189, 235, 272, - 113, 144, 2828, 341, 506, 550, 567, 572, 401, 1043, - - 543, 342, 624, 2828, 2828, 2828, 564, 1026, 560, 580, - 409, 537, 593, 638, 678, 407, 470, 261, 273, 737, - 796, 986, 657, 957, 855, 545, 298, 351, 914, 973, - 2828, 952, 173, 895, 691, 885, 884, 359, 881, 848, - 427, 846, 781, 444, 780, 779, 598, 778, 767, 763, - 410, 571, 760, 1032, 536, 759, 299, 277, 520, 551, - 435, 569, 465, 468, 1091, 658, 751, 620, 583, 241, - 737, 651, 697, 749, 679, 691, 738, 809, 815, 572, - 506, 849, 650, 1150, 900, 400, 933, 686, 2828, 639, - 1209, 638, 590, 619, 594, 560, 546, 986, 727, 2828, - - 569, 605, 627, 633, 581, 701, 714, 992, 2828, 1045, - 331, 566, 502, 887, 1051, 721, 454, 750, 1085, 1104, - 717, 1137, 1195, 1215, 1228, 461, 755, 1249, 418, 1262, - 752, 741, 736, 447, 738, 794, 738, 2828, 1268, 1282, - 523, 409, 380, 379, 1341, 1355, 768, 798, 2828, 1407, - 1343, 339, 1413, 1426, 849, 1447, 1460, 1466, 1480, 1500, - 1513, 310, 858, 803, 865, 863, 2828, 881, 1533, 1546, - 524, 336, 303, 244, 232, 993, 770, 1052, 1605, 850, - 1664, 1376, 1617, 1637, 1676, 1728, 1787, 1747, 1793, 1806, - 913, 1827, 1840, 1846, 1860, 1880, 1893, 238, 879, 923, - - 2828, 925, 1913, 1926, 962, 178, 177, 176, 175, 166, - 1124, 2828, 811, 886, 1697, 1985, 2044, 1352, 974, 1997, - 2103, 2162, 2221, 1998, 2828, 2004, 942, 2061, 2120, 1170, - 2181, 2227, 2240, 2261, 2828, 925, 954, 1182, 2283, 87, - 2828, 2828, 2828, 2828, 2828, 2828, 2320, 896, 1033, 2323, - 2344, 987, 1015, 2356, 2370, 1084, 1196, 1215, 953, 1039, - 1129, 1172, 1031, 1173, 1203, 2389, 2403, 2422, 2436, 2828, - 1272, 1273, 1211, 1297, 1312, 2828, 2828, 2828, 2455, 2469, - 2488, 1327, 1287, 1337, 1355, 1319, 2502, 2521, 2535, 1344, - 1367, 2828, 1367, 1366, 1545, 1760, 2828, 1360, 1359, 2828, - - 1359, 1384, 1468, 1382, 1403, 1509, 1517, 2828, 2828, 2828, - 2594, 2599, 2608, 2613, 2619, 2626, 2635, 2640, 2647, 2656, - 2666, 2668, 2673, 2680, 2687, 2691, 2697, 2707, 2714, 2719, - 2728, 2733, 2741, 2751, 2756, 2764, 2773, 2782, 2787, 2795, - 2804, 2809, 2817 + 0, 0, 65, 69, 63, 67, 83, 86, 1201, 2820, + 96, 110, 124, 86, 78, 1176, 90, 1145, 83, 99, + 1134, 1138, 177, 1146, 243, 94, 260, 254, 259, 1115, + 2820, 1096, 1095, 1097, 132, 2820, 104, 318, 108, 2820, + 2820, 2820, 369, 2820, 174, 291, 69, 115, 2820, 428, + 101, 1056, 309, 2820, 121, 487, 2820, 117, 341, 1083, + 141, 371, 351, 329, 1062, 2820, 955, 986, 0, 936, + 116, 138, 232, 128, 300, 350, 359, 397, 449, 448, + 203, 866, 501, 130, 900, 237, 124, 263, 289, 302, + 144, 336, 2820, 342, 520, 508, 533, 560, 391, 882, + + 409, 392, 612, 2820, 2820, 2820, 552, 885, 449, 440, + 541, 554, 556, 618, 658, 350, 412, 261, 273, 717, + 776, 819, 671, 817, 835, 572, 298, 422, 894, 953, + 2820, 844, 173, 806, 677, 805, 443, 804, 802, 386, + 750, 714, 534, 700, 691, 632, 690, 659, 643, 538, + 642, 1012, 453, 665, 378, 390, 406, 513, 445, 557, + 550, 514, 1071, 652, 661, 608, 575, 331, 655, 578, + 730, 762, 606, 610, 718, 821, 854, 562, 426, 911, + 611, 1130, 966, 671, 972, 646, 2820, 607, 1189, 555, + 741, 552, 579, 550, 1025, 732, 2820, 620, 668, 679, + + 698, 705, 723, 724, 1031, 2820, 1065, 572, 562, 516, + 808, 1084, 777, 441, 740, 1117, 1175, 751, 1195, 1208, + 1229, 1242, 455, 586, 1248, 388, 1262, 778, 760, 755, + 398, 757, 624, 774, 2820, 1282, 1295, 739, 378, 337, + 336, 1354, 1368, 474, 835, 2820, 1420, 1356, 280, 1426, + 1439, 798, 1460, 1473, 1479, 1493, 1513, 1526, 251, 808, + 830, 841, 829, 2820, 847, 1546, 1559, 891, 244, 241, + 232, 231, 931, 689, 957, 1618, 892, 1677, 1389, 1630, + 1650, 1689, 1741, 1800, 1760, 1806, 1819, 638, 1840, 1853, + 1859, 1873, 1893, 1906, 186, 856, 892, 2820, 893, 1926, + + 1939, 912, 177, 176, 175, 166, 115, 973, 2820, 1103, + 816, 1329, 1998, 2057, 1365, 967, 1710, 2116, 2175, 2234, + 1984, 2820, 2017, 923, 2074, 2133, 1032, 2194, 2240, 2253, + 2274, 2820, 874, 935, 1045, 2296, 87, 2820, 2820, 2820, + 2820, 2820, 2820, 1972, 920, 1013, 2329, 2361, 1014, 1026,
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/css/tokenizer.flex -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/css/tokenizer.flex
Changed
@@ -67,8 +67,6 @@ {num}em {yyTok = EMS; return yyTok;} {num}__qem {yyTok = QEMS; return yyTok;} /* quirky ems */ {num}ex {yyTok = EXS; return yyTok;} -{num}ch {yyTok = CHS; return yyTok;} -{num}rem {yyTok = REMS; return yyTok;} {num}px {yyTok = PXS; return yyTok;} {num}cm {yyTok = CMS; return yyTok;} {num}mm {yyTok = MMS; return yyTok;}
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/dom/css_value.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/dom/css_value.cpp
Changed
@@ -99,10 +99,6 @@ void CSSStyleDeclaration::setProperty( const DOMString &propName, const DOMString &value, const DOMString &priority ) { if(!impl) return; - if (value.isEmpty()) { - static_cast<CSSStyleDeclarationImpl *>(impl)->removeProperty(propName); - return; - } static_cast<CSSStyleDeclarationImpl *>(impl)->setProperty( propName, value, priority ); }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/dom/css_value.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/dom/css_value.h
Changed
@@ -392,31 +392,29 @@ CSS_PERCENTAGE = 2, CSS_EMS = 3, CSS_EXS = 4, - CSS_CHS = 5, - CSS_REMS = 6, - CSS_PX = 7, - CSS_CM = 8, - CSS_MM = 9, - CSS_IN = 10, - CSS_PT = 11, - CSS_PC = 12, - CSS_DEG = 13, - CSS_RAD = 14, - CSS_GRAD = 15, - CSS_MS = 16, - CSS_S = 17, - CSS_HZ = 18, - CSS_KHZ = 19, - CSS_DIMENSION = 20, - CSS_STRING = 21, - CSS_URI = 22, - CSS_IDENT = 23, - CSS_ATTR = 24, - CSS_COUNTER = 25, - CSS_RECT = 26, - CSS_RGBCOLOR = 27, - CSS_DPI = 28, - CSS_DPCM = 29, + CSS_PX = 5, + CSS_CM = 6, + CSS_MM = 7, + CSS_IN = 8, + CSS_PT = 9, + CSS_PC = 10, + CSS_DEG = 11, + CSS_RAD = 12, + CSS_GRAD = 13, + CSS_MS = 14, + CSS_S = 15, + CSS_HZ = 16, + CSS_KHZ = 17, + CSS_DIMENSION = 18, + CSS_STRING = 19, + CSS_URI = 20, + CSS_IDENT = 21, + CSS_ATTR = 22, + CSS_COUNTER = 23, + CSS_RECT = 24, + CSS_RGBCOLOR = 25, + CSS_DPI = 26, + CSS_DPCM = 27, CSS_PAIR = 100, // We envision this being exposed as a means of getting computed style values for pairs CSS_HTML_RELATIVE = 255 };
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/dom/dom_string.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/dom/dom_string.cpp
Changed
@@ -290,38 +290,6 @@ return impl->startsWith(str.implementation()); } -static inline bool isSpaceCharacter(const ushort &c) -{ - // http://dev.w3.org/html5/spec-LC/common-microsyntaxes.html#space-character - return ((c < 0x0021) && - (c == 0x0020 || c == 0x0009 || c == 0x000A || c == 0x000C || c == 0x000D)); -} - -DOMString DOMString::trimSpaces() const -{ - if (!impl || !impl->l) { - return *this; - } - - const QChar *s = impl->s; - unsigned int start = 0; - unsigned int end = impl->l - 1; - - while ((start <= end) && isSpaceCharacter(s[start].unicode())) { - ++start; - } - - if (start > end) { - return DOMString(""); - } - - while (end && isSpaceCharacter(s[end].unicode())) { - --end; - } - - return new DOMStringImpl(s + start, end - start + 1); -} - // ------------------------------------------------------------------------ bool DOM::strcasecmp( const DOMString &as, const DOMString &bs )
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/dom/dom_string.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/dom/dom_string.h
Changed
@@ -125,13 +125,6 @@ bool startsWith(const DOMString& str) const; /** - * Returns a string with Space Characters removed from the start and the end. - * Space Characters as defined in - * http://dev.w3.org/html5/spec-LC/common-microsyntaxes.html#space-character - */ - DOMString trimSpaces() const; - - /** * @internal get a handle to the imlementation of the DOMString * Use at own risk!!! */
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/dom/html_base.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/dom/html_base.cpp
Changed
@@ -231,8 +231,7 @@ DOMString HTMLFrameElement::src() const { if(!impl) return DOMString(); - const DOMString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC).trimSpaces(); - return !s.isNull() ? impl->document()->completeURL(s.string()) : s; + return ((ElementImpl *)impl)->getAttribute(ATTR_SRC); } void HTMLFrameElement::setSrc( const DOMString &value ) @@ -367,8 +366,8 @@ DOMString HTMLIFrameElement::src() const { if(!impl) return DOMString(); - const DOMString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC).trimSpaces(); - return !s.isNull() ? impl->document()->completeURL(s.string()) : s; + DOMString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC); + return !s.isNull() ? impl->document()->completeURL( s.string() ) : s; } void HTMLIFrameElement::setSrc( const DOMString &value )
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/dom/html_document.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/dom/html_document.cpp
Changed
@@ -22,6 +22,7 @@ // -------------------------------------------------------------------------- #include "html_document.h" +#include "css/csshelper.h" #include "dom/html_misc.h" #include "dom/dom_exception.h" #include "xml/dom_textimpl.h" @@ -100,7 +101,8 @@ DOMString HTMLDocument::completeURL(const DOMString& str) const { if(!impl) return str; - return ((HTMLDocumentImpl *)impl)->completeURL(str.trimSpaces().string()); + DOMString parsed = khtml::parseURL(str); + return ((HTMLDocumentImpl *)impl)->completeURL(parsed.string()); } DOMString HTMLDocument::domain() const
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/dom/html_form.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/dom/html_form.cpp
Changed
@@ -504,8 +504,8 @@ DOMString HTMLInputElement::src() const { if(!impl) return DOMString(); - const DOMString s = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_SRC).trimSpaces(); - return !s.isNull() ? impl->document()->completeURL(s.string()) : s; + DOMString s = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_SRC); + return !s.isNull() ? impl->document()->completeURL( s.string() ) : s; } void HTMLInputElement::setSrc( const DOMString &value )
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/dom/html_head.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/dom/html_head.cpp
Changed
@@ -58,7 +58,7 @@ DOMString HTMLBaseElement::href() const { if(!impl) return DOMString(); - const DOMString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF).trimSpaces(); + DOMString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF); return !href.isNull() ? impl->document()->completeURL(href.string()) : href; } @@ -134,7 +134,7 @@ DOMString HTMLLinkElement::href() const { if(!impl) return DOMString(); - const DOMString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF).trimSpaces(); + DOMString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF); return !href.isNull() ? impl->document()->completeURL(href.string()) : href; } @@ -379,7 +379,7 @@ DOMString HTMLScriptElement::src() const { if(!impl) return DOMString(); - const DOMString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC).trimSpaces(); + DOMString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC); return !s.isNull() ? impl->document()->completeURL(s.string()) : s; }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/dom/html_image.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/dom/html_image.cpp
Changed
@@ -95,7 +95,7 @@ DOMString HTMLAreaElement::href() const { if(!impl) return DOMString(); - const DOMString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF).trimSpaces(); + DOMString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF); return !href.isNull() ? impl->document()->completeURL(href.string()) : href; } @@ -302,8 +302,8 @@ DOMString HTMLImageElement::src() const { if(!impl) return DOMString(); - const DOMString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC).trimSpaces(); - return !s.isNull() ? impl->document()->completeURL(s.string()) : s; + DOMString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC); + return !s.isNull() ? impl->document()->completeURL( s.string() ) : s; } void HTMLImageElement::setSrc( const DOMString &value )
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/dom/html_inline.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/dom/html_inline.cpp
Changed
@@ -95,7 +95,7 @@ DOMString HTMLAnchorElement::href() const { if(!impl) return DOMString(); - const DOMString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF).trimSpaces(); + DOMString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF); return !href.isNull() ? impl->document()->completeURL(href.string()) : href; }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/ecma/kjs_css.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/ecma/kjs_css.cpp
Changed
@@ -274,26 +274,22 @@ KJS_CHECK_THIS( KJS::DOMCSSStyleDeclaration, thisObj ); CSSStyleDeclarationImpl& styleDecl = *static_cast<DOMCSSStyleDeclaration*>(thisObj)->impl(); - const DOM::DOMString cssProp = args[0]->toString(exec).domString(); + DOM::DOMString s = args[0]->toString(exec).domString(); switch (id) { case DOMCSSStyleDeclaration::GetPropertyValue: - return jsString(styleDecl.getPropertyValue(cssProp)); + return jsString(styleDecl.getPropertyValue(s)); case DOMCSSStyleDeclaration::GetPropertyCSSValue: - return getDOMCSSValue(exec,styleDecl.getPropertyCSSValue(cssProp)); + return getDOMCSSValue(exec,styleDecl.getPropertyCSSValue(s)); case DOMCSSStyleDeclaration::RemoveProperty: - return jsString(styleDecl.removeProperty(cssProp)); + return jsString(styleDecl.removeProperty(s)); case DOMCSSStyleDeclaration::GetPropertyPriority: - return jsString(styleDecl.getPropertyPriority(cssProp)); - case DOMCSSStyleDeclaration::SetProperty: { - const DOM::DOMString cssVal = args[1]->toString(exec).domString(); - if (cssVal.isEmpty()) { - styleDecl.removeProperty(cssProp); - } else { - styleDecl.setProperty(cssProp, cssVal, args[2]->toString(exec).domString()); - } + return jsString(styleDecl.getPropertyPriority(s)); + case DOMCSSStyleDeclaration::SetProperty: + styleDecl.setProperty(args[0]->toString(exec).domString(), + args[1]->toString(exec).domString(), + args[2]->toString(exec).domString()); return jsUndefined(); - } case DOMCSSStyleDeclaration::Item: return jsString(styleDecl.item(args[0]->toInteger(exec))); default: @@ -1206,14 +1202,12 @@ const ClassInfo CSSPrimitiveValueConstructor::info = { "CSSPrimitiveValueConstructor", 0, &CSSPrimitiveValueConstructorTable, 0 }; /* -@begin CSSPrimitiveValueConstructorTable 28 +@begin CSSPrimitiveValueConstructorTable 27 CSS_UNKNOWN DOM::CSSPrimitiveValue::CSS_UNKNOWN DontDelete|ReadOnly CSS_NUMBER DOM::CSSPrimitiveValue::CSS_NUMBER DontDelete|ReadOnly CSS_PERCENTAGE DOM::CSSPrimitiveValue::CSS_PERCENTAGE DontDelete|ReadOnly CSS_EMS DOM::CSSPrimitiveValue::CSS_EMS DontDelete|ReadOnly CSS_EXS DOM::CSSPrimitiveValue::CSS_EXS DontDelete|ReadOnly - CSS_CHS DOM::CSSPrimitiveValue::CSS_CHS DontDelete|ReadOnly - CSS_REMS DOM::CSSPrimitiveValue::CSS_REMS DontDelete|ReadOnly CSS_PX DOM::CSSPrimitiveValue::CSS_PX DontDelete|ReadOnly CSS_CM DOM::CSSPrimitiveValue::CSS_CM DontDelete|ReadOnly CSS_MM DOM::CSSPrimitiveValue::CSS_MM DontDelete|ReadOnly
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/ecma/kjs_html.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/ecma/kjs_html.cpp
Changed
@@ -35,6 +35,8 @@ #include <html/html_canvasimpl.h> #include <dom/dom_exception.h> +#include <css/csshelper.h> // for parseUrl + #include <html/html_baseimpl.h> #include <html/html_documentimpl.h> #include <html/html_formimpl.h> @@ -455,7 +457,7 @@ { KHTMLPart *part = doc.part(); if ( part ) - Window::retrieveWindow(part)->goURL(exec, value->toString(exec).qstring()); + Window::retrieveWindow(part)->goURL(exec, value->toString(exec).qstring(), false /*don't lock history*/); return; } case DesignMode: @@ -1551,7 +1553,7 @@ {ID_FRAME, FrameName, T_String, ATTR_NAME}, {ID_FRAME, FrameNoResize, T_Bool, ATTR_NORESIZE}, {ID_FRAME, FrameScrolling, T_String, ATTR_SCROLLING}, - {ID_FRAME, FrameSrc, T_URL, ATTR_SRC}, + {ID_FRAME, FrameSrc, T_String, ATTR_SRC}, //### not URL? {ID_FRAME, FrameLocation, BoundPropType(T_String | T_ReadOnly), ATTR_SRC}, {ID_IFRAME, IFrameFrameBorder, T_String, ATTR_FRAMEBORDER}, {ID_IFRAME, IFrameLongDesc, T_String, ATTR_LONGDESC}, @@ -1587,7 +1589,7 @@ QString KJS::HTMLElement::getURLArg(unsigned id) const { - const DOMString rel = impl()->getAttribute(id).trimSpaces(); + DOMString rel = khtml::parseURL(impl()->getAttribute(id)); return !rel.isNull() ? impl()->document()->completeURL(rel.string()) : QString(); } @@ -2666,7 +2668,7 @@ switch (token) { // read-only: FrameContentDocument: case FrameLocation: { - frameElement.setLocation(str.string()); + frameElement.setLocation(str); return; } }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/ecma/kjs_window.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/ecma/kjs_window.cpp
Changed
@@ -1349,16 +1349,18 @@ } const HashEntry* entry = Lookup::findEntry(&WindowTable, propertyName); - if (entry) + if (entry && !m_frame.isNull() && !m_frame->m_part.isNull()) { #ifdef KJS_VERBOSE kDebug(6070) << "Window("<<this<<")::put " << propertyName.qstring(); #endif - if (entry->value == _Location) { - goURL(exec, value->toString(exec).qstring()); - return; + switch( entry->value) { + case _Location: + goURL(exec, value->toString(exec).qstring(), false /*don't lock history*/); + return; + default: + break; } - KHTMLPart *part = qobject_cast<KHTMLPart*>(m_frame->m_part); if (part) { switch( entry->value ) { @@ -1727,7 +1729,9 @@ // check if we're allowed to inject javascript if ( !KHTMLPartPrivate::isJavaScriptURL(dstUrl) || isSafeScript(exec) ) - part->scheduleRedirection(-1, dstUrl, lockHistory); + part->scheduleRedirection(-1, + dstUrl, + lockHistory); } else if (!part && m_frame->m_partContainerElement) { KParts::BrowserExtension *b = KParts::BrowserExtension::childObject(m_frame->m_part); if (b) @@ -1989,24 +1993,24 @@ { while ( p->parentPart() ) p = p->parentPart(); - Window::retrieveWindow(p)->goURL(exec, url.url()); + Window::retrieveWindow(p)->goURL(exec, url.url(), false /*don't lock history*/); return Window::retrieve(p); } if ( browserArgs.frameName.toLower() == "_parent" ) { if ( p->parentPart() ) p = p->parentPart(); - Window::retrieveWindow(p)->goURL(exec, url.url()); + Window::retrieveWindow(p)->goURL(exec, url.url(), false /*don't lock history*/); return Window::retrieve(p); } if ( browserArgs.frameName.toLower() == "_self") { - Window::retrieveWindow(p)->goURL(exec, url.url()); + Window::retrieveWindow(p)->goURL(exec, url.url(), false /*don't lock history*/); return Window::retrieve(p); } if ( browserArgs.frameName.toLower() == "replace" ) { - Window::retrieveWindow(p)->goURL(exec, url.url(), true/*lock history*/); + Window::retrieveWindow(p)->goURL(exec, url.url(), true /*lock history*/); return Window::retrieve(p); } args.setMimeType("text/html"); @@ -2105,7 +2109,7 @@ part->xmlDocImpl()->updateRendering(); if ( part ) emit part->browserExtension()->requestFocus(part); - KMessageBox::error(widget, Qt::convertFromPlainText(str), caption); + KMessageBox::error(widget, Qt::convertFromPlainText(str, Qt::WhiteSpaceNormal), caption); return jsUndefined(); } case Window::Confirm: { @@ -2220,7 +2224,7 @@ return new KJS::DOMSelection(exec, part->xmlDocImpl()); case Window::Navigate: - window->goURL(exec, args[0]->toString(exec).qstring()); + window->goURL(exec, args[0]->toString(exec).qstring(), false /*don't lock history*/); return jsUndefined(); case Window::Focus: { KHTMLSettings::KJSWindowFocusPolicy policy = @@ -2915,7 +2919,7 @@ if (m_frame.isNull() || m_frame->m_part.isNull()) return; - Window* window = Window::retrieveWindow( m_frame->m_part ); + const Window* window = Window::retrieveWindow( m_frame->m_part ); if ( !window ) return; @@ -2947,12 +2951,12 @@ // Note that we want to do gotoAnchor even when the hash is already set, so we // scroll the destination into view. - // Setting this must always provide a ref, even if just # see + // Setting this must always provide a ref, even if just ; see // HTML5 2.6. if (str.isEmpty()) { url.setHTMLRef(""); } else { - url.setHTMLRef(KUrl::fromPercentEncoding(str.toUtf8())); + url.setRef(str); } break; case Host: { @@ -2983,7 +2987,7 @@ return; } - window->goURL(exec, url.url()); + Window::retrieveWindow(m_frame->m_part)->goURL(exec, url.url(), false /* don't lock history*/ ); } JSValue *Location::toPrimitive(ExecState *exec, JSType) const @@ -3029,10 +3033,9 @@ switch (id) { case Location::Assign: - window->goURL(exec, args[0]->toString(exec).qstring()); - break; case Location::Replace: - window->goURL(exec, args[0]->toString(exec).qstring(), true/*lock history*/); + Window::retrieveWindow(part)->goURL(exec, args[0]->toString(exec).qstring(), + id == Location::Replace); break; case Location::Reload: { KHTMLPart *khtmlpart = qobject_cast<KHTMLPart*>(part);
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/ecma/kjs_window.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/ecma/kjs_window.h
Changed
@@ -137,7 +137,7 @@ void closeNow(); void delayedGoHistory(int steps); void goHistory(int steps); - void goURL(ExecState* exec, const QString& url, bool lockHistory = false); + void goURL(ExecState* exec, const QString& url, bool lockHistory); static bool targetIsExistingWindow(KHTMLPart* part, const QString& frameName); JSValue* openWindow(ExecState *exec, const List &args);
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/ecma/xmlhttprequest.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/ecma/xmlhttprequest.cpp
Changed
@@ -906,8 +906,7 @@ return throwError(exec, SyntaxError, "Not enough arguments"); QString method = args[0]->toString(exec).qstring(); - DOMString urlArg = args[1]->toString(exec).domString().trimSpaces(); - KUrl url = KUrl(request->doc->completeURL(urlArg.string())); + KUrl url = KUrl(request->doc->completeURL(args[1]->toString(exec).qstring())); bool async = true; if (args.size() >= 3) {
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/html/html_baseimpl.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/html/html_baseimpl.cpp
Changed
@@ -36,6 +36,7 @@ #include "css/css_stylesheetimpl.h" #include "css/cssproperties.h" #include "css/cssvalues.h" +#include "css/csshelper.h" #include "misc/loader.h" #include "dom/dom_string.h" #include "dom/dom_doc.h" @@ -71,7 +72,7 @@ case ATTR_BACKGROUND: { - QString url = attr->value().trimSpaces().string(); + QString url = khtml::parseURL( attr->value() ).string(); if (!url.isEmpty()) { url = document()->completeURL( url ); addCSSProperty(CSS_PROP_BACKGROUND_IMAGE, DOMString("url('"+url+"')") ); @@ -253,7 +254,7 @@ marginHeight = -1; scrolling = Qt::ScrollBarAsNeeded; noresize = false; - url = QLatin1String("about:blank");; + url = "about:blank"; } HTMLFrameElementImpl::~HTMLFrameElementImpl() @@ -325,7 +326,7 @@ switch(attr->id()) { case ATTR_SRC: - setLocation(attr->value().trimSpaces().string()); + setLocation(khtml::parseURL(attr->val())); break; case ATTR_FRAMEBORDER: { @@ -390,7 +391,7 @@ } if (parentNode()->renderer() && parentNode()->renderer()->childAllowed() - && document()->isURLAllowed(url)) { + && document()->isURLAllowed(url.string())) { RenderStyle* _style = document()->styleSelector()->styleForElement(this); _style->ref(); if ( _style->display() != NONE ) { @@ -422,7 +423,7 @@ return; // Bail out on any disallowed URLs - if( !document()->isURLAllowed(url) ) + if( !document()->isURLAllowed(url.string()) ) return; // If we have a part already, make sure it's in the right spot... @@ -437,20 +438,20 @@ // Go ahead and load a part... We don't need to clear the widget here, // since the -frames- have their lifetime managed, using the name uniqueness. - parentPart->loadFrameElement( this, url, name.string() ); + parentPart->loadFrameElement( this, url.string(), name.string() ); } -void HTMLFrameElementImpl::setLocation( const QString& str ) +void HTMLFrameElementImpl::setLocation( const DOMString& str ) { url = str; - if( !document()->isURLAllowed(url) ) + if( !document()->isURLAllowed(url.string()) ) return; // if we already have a child part, ask it to go there.. KHTMLPart* childPart = contentPart(); if ( childPart ) - childPart->openUrl( KUrl( document()->completeURL( url ) ) ); + childPart->openUrl( KUrl( document()->completeURL( url.string() ) ) ); else setNeedComputeContent(); // otherwise, request it.. } @@ -755,7 +756,7 @@ addHTMLAlignment( attr->value() ); break; case ATTR_SRC: - url = attr->value().trimSpaces().string(); + url = khtml::parseURL(attr->val()); setNeedComputeContent(); // ### synchronously start the process? break; @@ -805,7 +806,7 @@ RenderStyle* style = document()->styleSelector()->styleForElement(this); style->ref(); - if (document()->isURLAllowed(url) && parentNode()->renderer() + if (document()->isURLAllowed(url.string()) && parentNode()->renderer() && parentNode()->renderer()->childAllowed() && style->display() != NONE) { m_render = new (document()->renderArena()) RenderPartObject(this); m_render->setStyle(style); @@ -826,7 +827,7 @@ if (!parentPart) return; - if (!document()->isURLAllowed(url)) + if (!document()->isURLAllowed(url.string())) return; if (!inDocument()) { @@ -838,9 +839,10 @@ ensureUniqueName(); // make sure "" is handled as about: blank - QString effectiveURL = url; + const QString aboutBlank = QLatin1String("about:blank"); + QString effectiveURL = url.string(); if (effectiveURL.isEmpty()) - effectiveURL = QLatin1String("about:blank"); + effectiveURL = aboutBlank; kDebug(6031) << "-> requesting:" << name.string() << effectiveURL << contentPart();
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/html/html_baseimpl.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/html/html_baseimpl.h
Changed
@@ -100,7 +100,7 @@ virtual void defaultEventHandler(EventImpl *evt); bool noResize() { return noresize; } - void setLocation( const QString& str ); + void setLocation( const DOMString& str ); virtual bool isFocusableImpl(FocusType ft) const; virtual void setFocus(bool); @@ -108,7 +108,7 @@ DocumentImpl* contentDocument() const; KHTMLPart* contentPart() const; - QString url; + DOMString url; DOMString name; //Computed name for the frame map int marginWidth;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/html/html_documentimpl.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/html/html_documentimpl.cpp
Changed
@@ -237,7 +237,7 @@ document()->dispatchWindowEvent(EventImpl::LOAD_EVENT, false, false); // don't update rendering if we're going to redirect anyway - if ( part() && (part()->d->m_redirectURL.isEmpty() || + if ( part() && (part()->d->m_redirectURL.isNull() || part()->d->m_delayRedirect > 1) ) updateRendering(); }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/html/html_formimpl.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/html/html_formimpl.cpp
Changed
@@ -36,6 +36,7 @@ #include "css/cssstyleselector.h" #include "css/cssproperties.h" #include "css/cssvalues.h" +#include "css/csshelper.h" #include "xml/dom_textimpl.h" #include "xml/dom_docimpl.h" #include "xml/dom2_eventsimpl.h" @@ -679,18 +680,19 @@ } #endif // KHTML_NO_WALLET - QString url = getAttribute(ATTR_ACTION).trimSpaces().string(); + DOMString value = getAttribute(ATTR_ACTION); + DOMString url = khtml::parseURL(value); // ignore base url if 'action' attribute is empty. - if (url.isEmpty()) + if (value.isEmpty()) url = formUrl.url(); if(m_post) { - view->part()->submitForm( "post", url, form_data, + view->part()->submitForm( "post", url.string(), form_data, m_target.string(), enctype().string(), m_boundary ); } else { - view->part()->submitForm( "get", url, form_data, + view->part()->submitForm( "get", url.string(), form_data, m_target.string() ); } } @@ -2447,11 +2449,11 @@ switch(attr->id()) { case ATTR_SIZE: - m_size = qMax(attr->value().toInt(), 1); + m_size = qMax( attr->val()->toInt(), 1 ); setChanged(); break; case ATTR_WIDTH: - m_minwidth = qMax(attr->value().toInt(), 0); + m_minwidth = qMax( attr->val()->toInt(), 0 ); break; case ATTR_MULTIPLE: m_multiple = (attr->val() != 0); @@ -2518,7 +2520,10 @@ (items[0]->id() == ID_OPTION && !items[0]->disabled()) ) { HTMLOptionElementImpl* const option = static_cast<HTMLOptionElementImpl*>(items[0]); encoded_values += enc_name; - encoded_values += fixUpfromUnicode(codec, option->value().string()); + if (option->value().isNull()) + encoded_values += fixUpfromUnicode(codec, option->text().string()); + else + encoded_values += fixUpfromUnicode(codec, option->value().string()); successful = true; } @@ -2798,7 +2803,7 @@ if ( !m_value.isNull() ) return m_value; // Use the text if the value wasn't set. - return text(); + return text().string(); } void HTMLOptionElementImpl::setValue(DOMStringImpl* value)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/html/html_headimpl.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/html/html_headimpl.cpp
Changed
@@ -32,9 +32,11 @@ #include "khtml_part.h" #include "misc/loader.h" +#include "misc/helper.h" #include "css/cssstyleselector.h" #include "css/css_stylesheetimpl.h" +#include "css/csshelper.h" #include "css/css_mediaquery.h" #include "ecma/kjs_proxy.h" @@ -55,7 +57,7 @@ switch(attr->id()) { case ATTR_HREF: - m_href = attr->value().trimSpaces().string(); + m_href = khtml::parseURL(attr->value()); process(); break; case ATTR_TARGET: @@ -89,7 +91,7 @@ return; if(!m_href.isEmpty() && document()->part()) - document()->setBaseURL( KUrl( document()->part()->url(), m_href ) ); + document()->setBaseURL( KUrl( document()->part()->url(), m_href.string() ) ); if(!m_target.isEmpty()) document()->setBaseTarget( m_target.string() ); @@ -115,14 +117,10 @@ { switch (attr->id()) { - case ATTR_HREF: { - const DOMString hrefUrl = attr->value().trimSpaces(); - if (!hrefUrl.isEmpty()) { - m_url = document()->completeURL(hrefUrl.string()); - } - process(); + case ATTR_HREF: + m_url = document()->completeURL( khtml::parseURL(attr->value()).string() ); + process(); break; - } case ATTR_REL: case ATTR_TYPE: process(); @@ -185,10 +183,11 @@ // IE extension: location of small icon for locationbar / bookmarks // Uses both "shortcut icon" and "icon" - if (rel.contains("icon") && !m_url.isEmpty() && part && !part->parentPart()) { + if ( part && rel.contains("icon") && !m_url.isEmpty() && !part->parentPart()) part->browserExtension()->setIconUrl( KUrl(m_url.string()) ); - } // Stylesheet - else if (rel.contains("stylesheet") && !m_url.isEmpty() && !m_isDisabled) { + + // Stylesheet + else if (!m_isDisabled && rel.contains("stylesheet")) { // no need to load style sheets which aren't for the screen output // ### there may be in some situations e.g. for an editor or script to manipulate khtml::MediaQueryEvaluator allEval(true); @@ -385,7 +384,7 @@ // we'll only start doing things once we get insertedIntoDocument() if (m_evaluated || m_cachedScript || m_createdByParser || !inDocument()) return; - const DOMString url = attr->value().trimSpaces(); + DOMString url = attr->value(); if (!url.isEmpty()) loadFromUrl(url); break; @@ -490,7 +489,7 @@ if (m_createdByParser) return; - const DOMString url = getAttribute(ATTR_SRC).trimSpaces(); + DOMString url = getAttribute(ATTR_SRC).string(); if (!url.isEmpty()) { loadFromUrl(url); return; @@ -622,7 +621,7 @@ DOMString HTMLScriptElementImpl::src() const { - return document()->completeURL(getAttribute(ATTR_SRC).trimSpaces().string()); + return document()->completeURL(getAttribute(ATTR_SRC).string()); } void HTMLScriptElementImpl::setSrc(const DOMString &value)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/html/html_headimpl.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/html/html_headimpl.h
Changed
@@ -47,7 +47,7 @@ HTMLBaseElementImpl(DocumentImpl *doc) : HTMLElementImpl(doc) {} - DOMString href() const { return DOMString(m_href); } + DOMString href() const { return m_href; } DOMString target() const { return m_target; } virtual Id id() const; @@ -58,7 +58,7 @@ void process(); protected: - QString m_href; + DOMString m_href; DOMString m_target; };
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/html/html_imageimpl.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/html/html_imageimpl.cpp
Changed
@@ -84,7 +84,7 @@ setChanged(); //Start loading the image already, to generate events - const DOMString imgSrcUrl = attr->value().trimSpaces(); + DOMString imgSrcUrl = attr->value(); if (!imgSrcUrl.isEmpty()) { //### why do we not hide or something when setting this? CachedImage* newImage = document()->docLoader()->requestImage(imgSrcUrl); if (newImage && newImage != m_image) { @@ -151,7 +151,7 @@ if ( attr->value()[0] == '#' ) usemap = attr->value().lower(); else { - QString url = document()->completeURL(attr->value().trimSpaces().string()); + QString url = document()->completeURL(attr->value().string()); // ### we remove the part before the anchor and hope // the map is on the same html page.... usemap = url; @@ -438,7 +438,7 @@ } else { // add name with full url: - const QString url = document()->completeURL(attr->value().trimSpaces().string()); + QString url = document()->completeURL(attr->value().string()); if(document()->isHTMLDocument()) static_cast<HTMLDocumentImpl*>(document())->mapMap[url] = this; }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/html/html_inlineimpl.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/html/html_inlineimpl.cpp
Changed
@@ -30,6 +30,7 @@ #include "khtmlview.h" #include "khtml_part.h" +#include "css/csshelper.h" #include "css/cssproperties.h" #include "css/cssvalues.h" #include "css/cssstyleselector.h" @@ -66,6 +67,8 @@ if (keydown) k = static_cast<KeyEventBaseImpl *>( evt ); + QString utarget; + QString url; if ( e && e->button() == 2 ) { HTMLElementImpl::defaultEventHandler(evt); return; @@ -81,8 +84,9 @@ if (k->qKeyEvent()) k->qKeyEvent()->accept(); } - QString url = getAttribute(ATTR_HREF).trimSpaces().string(); - QString utarget = getAttribute(ATTR_TARGET).string(); + url = khtml::parseURL(getAttribute(ATTR_HREF)).string(); + + utarget = getAttribute(ATTR_TARGET).string(); if ( e && e->button() == 1 ) utarget = "_blank";
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/html/html_miscimpl.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/html/html_miscimpl.cpp
Changed
@@ -268,10 +268,6 @@ NodeImpl *HTMLCollectionImpl::namedItem( const DOMString &name ) const { - if (name.isEmpty()) { - return 0; - } - //Reset the position. The invariant is that nextNamedItem will start looking //from the current position. firstItem(); @@ -281,17 +277,13 @@ NodeImpl *HTMLCollectionImpl::nextNamedItem( const DOMString &name ) const { - if (name.isEmpty()) { - return 0; - } - - while (NodeImpl* candidate = m_cache->current.node) { + while (NodeImpl* candidate = m_cache->current.node) + { //Always advance, for next call nextItem(); if (checkForNameMatch(candidate, name)) return candidate; } - return 0; }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/html/html_objectimpl.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/html/html_objectimpl.cpp
Changed
@@ -40,6 +40,7 @@ #include "xml/dom_docimpl.h" #include "css/cssstyleselector.h" +#include "css/csshelper.h" #include "css/cssproperties.h" #include "css/cssvalues.h" #include "rendering/render_frames.h" @@ -695,7 +696,7 @@ { case ATTR_CODE: case ATTR_SRC: - url = attr->value().trimSpaces().string(); + url = khtml::parseURL(attr->val()).string(); setNeedComputeContent(); break; case ATTR_BORDER: @@ -775,7 +776,7 @@ switch ( attr->id() ) { case ATTR_DATA: - url = attr->value().trimSpaces().string(); + url = khtml::parseURL( attr->val() ).string(); setNeedComputeContent(); break; case ATTR_CLASSID:
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/html/html_tableimpl.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/html/html_tableimpl.cpp
Changed
@@ -38,6 +38,7 @@ #include <css/cssstyleselector.h> #include <css/cssproperties.h> #include <css/cssvalues.h> +#include <css/csshelper.h> #include <rendering/render_table.h> @@ -495,8 +496,8 @@ break; case ATTR_BACKGROUND: { - QString url = attr->value().trimSpaces().string(); - if (!url.isEmpty()) { + if (!attr->value().isEmpty()) { + QString url = khtml::parseURL( attr->value() ).string(); url = document()->completeURL( url ); addCSSProperty(CSS_PROP_BACKGROUND_IMAGE, DOMString("url('"+url+"')") ); } @@ -638,8 +639,8 @@ break; case ATTR_BACKGROUND: { - QString url = attr->value().trimSpaces().string(); - if (!url.isEmpty()) { + if (attr->val()) { + QString url = khtml::parseURL( attr->value() ).string(); url = document()->completeURL( url ); addCSSProperty(CSS_PROP_BACKGROUND_IMAGE, DOMString("url('"+url+"')") ); }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/html/htmlparser.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/html/htmlparser.cpp
Changed
@@ -55,6 +55,7 @@ #include <khtml_global.h> #include <css/cssproperties.h> #include <css/cssvalues.h> +#include <css/csshelper.h> #include <rendering/render_object.h> @@ -974,8 +975,7 @@ KHTMLGlobal::defaultHTMLSettings()->isHideAdsEnabled() && !strcasecmp( t->attrs->getValue( ATTR_TYPE ), "image" ) ) { - const QString url = doc()->completeURL(DOMString(t->attrs->getValue(ATTR_SRC)).trimSpaces().string()); - if (KHTMLGlobal::defaultHTMLSettings()->isAdFiltered(url)) + if (KHTMLGlobal::defaultHTMLSettings()->isAdFiltered( doc()->completeURL( khtml::parseURL(t->attrs->getValue(ATTR_SRC)).string() ) )) return 0; } n = new HTMLInputElementImpl(document, form); @@ -1104,7 +1104,7 @@ KHTMLGlobal::defaultHTMLSettings()->isAdFilterEnabled()&& KHTMLGlobal::defaultHTMLSettings()->isHideAdsEnabled()) { - const QString url = doc()->completeURL(DOMString(t->attrs->getValue(ATTR_SRC)).trimSpaces().string()); + QString url = doc()->completeURL( khtml::parseURL(t->attrs->getValue(ATTR_SRC)).string() ); if (KHTMLGlobal::defaultHTMLSettings()->isAdFiltered(url)) return 0; }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/html/htmlprospectivetokenizer.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/html/htmlprospectivetokenizer.cpp
Changed
@@ -706,7 +706,7 @@ LocalName attrLocal = LocalName::fromString(&attrDS, IDS_NormalizeLower); uint attribute = attrLocal.id(); if (attribute == localNamePart(ATTR_SRC) && m_urlToLoad.isEmpty()) - m_urlToLoad = DOMString(m_attributeValue.data(), m_attributeValue.size()).trimSpaces(); + m_urlToLoad = parseURL(DOMString(m_attributeValue.data(), m_attributeValue.size())); break; } case ID_LINK: @@ -715,7 +715,7 @@ LocalName attrLocal = LocalName::fromString(&attrDS, IDS_NormalizeLower); uint attribute = attrLocal.id(); if (attribute == localNamePart(ATTR_HREF) && m_urlToLoad.isEmpty()) - m_urlToLoad = DOMString(m_attributeValue.data(), m_attributeValue.size()).trimSpaces(); + m_urlToLoad = parseURL(DOMString(m_attributeValue.data(), m_attributeValue.size())); else if (attribute == localNamePart(ATTR_REL)) { DOMStringImpl* lowerAttribute = DOMStringImpl(DOMStringImpl::ShallowCopy, m_attributeValue.data(), m_attributeValue.size()).lower(); QString val = lowerAttribute->string();
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/html/htmltokenizer.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/html/htmltokenizer.cpp
Changed
@@ -30,7 +30,7 @@ // KDE HTML Widget - Tokenizers // #define TOKEN_DEBUG 1 -// #define TOKEN_DEBUG 2 +//#define TOKEN_DEBUG 2 #include "htmltokenizer.h" #include "html_documentimpl.h" @@ -1084,9 +1084,10 @@ checkBuffer(); #if defined(TOKEN_DEBUG) && TOKEN_DEBUG > 1 uint l = 0; - while(l < src.length() && (src.toString()[l]).toLatin1() != '>') + while(l < src.length() && (src.toString()[l]).toLatin1().constData() != '>') l++; - qDebug("src is now: *%s*, tquote: %d", src.toString().left(l).toLatin1().constData(), tquote); + qDebug("src is now: *%s*, tquote: %d", + src.toString().left(l).toLatin1().constData(), tquote); #endif switch(tag) { case NoTag:
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/khtml_part.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/khtml_part.cpp
Changed
@@ -57,6 +57,7 @@ #include "xml/dom2_rangeimpl.h" #include "xml/xml_tokenizer.h" #include "css/cssstyleselector.h" +#include "css/csshelper.h" using namespace DOM; #include "khtmlview.h" @@ -630,18 +631,14 @@ void KHTMLPartPrivate::executeAnchorJump( const KUrl& url, bool lockHistory ) { + // Note: we want to emit openUrlNotify first thing, to make the history capture the old state. + if (!lockHistory) + emit m_extension->openUrlNotify(); + DOM::HashChangeEventImpl *hashChangeEvImpl = 0; const QString &oldRef = q->url().ref(); const QString &newRef = url.ref(); - const bool hashChanged = (oldRef != newRef) || (oldRef.isNull() && newRef.isEmpty()); - - if (hashChanged) { - // Note: we want to emit openUrlNotify first thing to make the history capture the old state, - // however do not update history if a lock was explicitly requested, e.g. Location.replace() - if (!lockHistory) { - emit m_extension->openUrlNotify(); - } - // Create hashchange event + if ((oldRef != newRef) || (oldRef.isNull() && newRef.isEmpty())) { hashChangeEvImpl = new DOM::HashChangeEventImpl(); hashChangeEvImpl->initHashChangeEvent("hashchange", true, //bubble @@ -651,8 +648,8 @@ ); } - if (!q->gotoAnchor(newRef)) // encoded fragment - q->gotoAnchor(url.htmlRef()); // not encoded fragment + if ( !q->gotoAnchor( url.encodedHtmlRef()) ) + q->gotoAnchor( url.htmlRef() ); q->setUrl(url); emit m_extension->setLocationBarUrl( url.prettyUrl() ); @@ -2710,7 +2707,8 @@ if (!d->m_doc) return false; - HTMLCollectionImpl *anchors = new HTMLCollectionImpl(d->m_doc, HTMLCollectionImpl::DOC_ANCHORS); + HTMLCollectionImpl *anchors = + new HTMLCollectionImpl( d->m_doc, HTMLCollectionImpl::DOC_ANCHORS); anchors->ref(); NodeImpl *n = anchors->namedItem(name); anchors->deref(); @@ -2721,10 +2719,10 @@ d->m_doc->setCSSTarget(n); // Setting to null will clear the current target. - // Implement the rule that "" and "top" both mean top of page. - bool top = !n && (name.isEmpty() || name.toLower() == "top"); + // Implement the rule that "" and "top" both mean top of page as in other browsers. + bool quirkyName = !n && !d->m_doc->inStrictMode() && (name.isEmpty() || name.toLower() == "top"); - if (top) { + if (quirkyName) { d->m_view->setContentsPos( d->m_view->contentsX(), 0); return true; } else if (!n) { @@ -6404,13 +6402,14 @@ if (!dndEnabled()) return false; + DOM::Node innerNode = event->innerNode(); + if( (d->m_bMousePressed && ( (!d->m_strSelectedURL.isEmpty() && !isEditable()) || (!d->m_mousePressNode.isNull() && d->m_mousePressNode.elementId() == ID_IMG) ) ) && ( d->m_dragStartPos - QPoint(event->x(), event->y()) ).manhattanLength() > KGlobalSettings::dndEventDelay() ) { - const DOM::DOMString url = event->url(); - DOM::NodeImpl* innerNodeImpl = event->innerNode().handle(); + DOM::DOMString url = event->url(); QPixmap pix; HTMLImageElementImpl *img = 0L; @@ -6420,10 +6419,10 @@ // qDebug("****************** Event Target: %s", target.string().toLatin1().constData()); // Normal image... - if (url.isEmpty() && innerNodeImpl && innerNodeImpl->id() == ID_IMG) + if ( url.length() == 0 && innerNode.handle() && innerNode.handle()->id() == ID_IMG ) { - img = static_cast<HTMLImageElementImpl *>(innerNodeImpl); - u = completeURL(img->getAttribute(ATTR_SRC).trimSpaces().string()); + img = static_cast<HTMLImageElementImpl *>(innerNode.handle()); + u = KUrl( completeURL( khtml::parseURL(img->getAttribute(ATTR_SRC)).string() ) ); pix = KIconLoader::global()->loadIcon("image-x-generic", KIconLoader::Desktop); } else @@ -6722,7 +6721,7 @@ node->id() == ID_IFRAME || (node->id() == ID_INPUT && static_cast<HTMLInputElementImpl *>(node)->inputType() == HTMLInputElementImpl::IMAGE )) { - if (KHTMLGlobal::defaultHTMLSettings()->isAdFiltered(d->m_doc->completeURL(static_cast<ElementImpl *>(node)->getAttribute(ATTR_SRC).trimSpaces().string()))) + if ( KHTMLGlobal::defaultHTMLSettings()->isAdFiltered( d->m_doc->completeURL( static_cast<ElementImpl *>(node)->getAttribute(ATTR_SRC).string() ) ) ) { // Since any kids of node will be deleted, too, fastforward nextNode // until we get outside of node.
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/khtmlimage.desktop -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/khtmlimage.desktop
Changed
@@ -160,7 +160,7 @@ Name[nn]=Innebyggbar biletvisar Name[or]=ସନ୍ନିବେଶଯୋଗ୍ୟ ପ୍ରତିଛବି ପ୍ରଦର୍ଶକ Name[pa]=ਸ਼ਾਮਿਲ ਚਿੱਤਰ ਦਰਸ਼ਕ -Name[pl]=Wbudowana przeglądarka obrazów +Name[pl]=Wbudowana przeglądarka obrazków Name[ps]=راتاوېدونکی انځور ليدانی Name[pt]=Visualizador de Imagens Incorporado Name[pt_BR]=Visualizador de imagens integrado
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/khtmlview.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/khtmlview.cpp
Changed
@@ -55,6 +55,8 @@ #undef protected #include "xml/dom2_eventsimpl.h" #include "css/cssstyleselector.h" +#include "css/csshelper.h" +#include "misc/helper.h" #include "misc/loader.h" #include "khtml_settings.h" #include "khtml_printsettings.h" @@ -500,7 +502,7 @@ viewportToContents(QPoint(0, 0)), p, r, s); } if (!found) { - s = e->getAttribute(ATTR_TITLE).string().trimmed(); + s = e->getAttribute( ATTR_TITLE ).string(); r = node->getRect(); } region |= QRect( contentsToViewport( r.topLeft() ), r.size() ); @@ -2780,7 +2782,7 @@ bool text_before = false; switch( element->id()) { case ID_A: - url = element->getAttribute(ATTR_HREF).trimSpaces().string(); + url = khtml::parseURL(element->getAttribute(ATTR_HREF)).string(); if( url.isEmpty()) // doesn't have href, it's only an anchor continue; text = static_cast< HTMLElementImpl* >( element )->innerText().string().simplified();
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/rendering/font.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/rendering/font.cpp
Changed
@@ -580,14 +580,6 @@ descent = fm.descent(); height = fm.height(); lineSpacing = fm.lineSpacing(); - xHeight = fm.xHeight(); - - const QChar zeroChar((ushort)48); - if (!fm.inFont(zeroChar)) { - m_zeroCharWidth = -1; - } else { - m_zeroCharWidth = (int)cachedCharWidth(zeroChar); - } } void CachedFontInstance::invalidate() @@ -610,14 +602,6 @@ descent = fm.descent(); height = fm.height(); lineSpacing = fm.lineSpacing(); - xHeight = fm.xHeight(); - - const QChar zeroChar((ushort)48); - if (!fm.inFont(zeroChar)) { - m_zeroCharWidth = -1; - } else { - m_zeroCharWidth = (int)cachedCharWidth(zeroChar); - } } CachedFontInstance::~CachedFontInstance() @@ -708,7 +692,7 @@ // ### this may cache an instance we don't need though; but font family // is extremely likely to be used Font f; - f.fontDef.size = 16; + f.fontDef.size = 10; f.update(96); defaultCFI = f.cfi.get();
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/rendering/font.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/rendering/font.h
Changed
@@ -82,8 +82,6 @@ int descent; int height; int lineSpacing; - int xHeight; - int m_zeroCharWidth; mutable bool invalidated; ~CachedFontInstance(); @@ -242,10 +240,7 @@ int descent() const { return cfi->descent; } int height() const { return cfi->height; } int lineSpacing() const { return cfi->lineSpacing; } - int xHeight() const { return cfi->xHeight; } - - // return -1 if '0' char glyph not in font - int zeroCharWidth() const { return cfi->m_zeroCharWidth; } + float xHeight() const { return cfi->fm.xHeight(); } //FIXME: IMPLEMENT ME unsigned unitsPerEm() const { return 0; } int spaceWidth() const { return 0; }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/rendering/render_box.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/rendering/render_box.cpp
Changed
@@ -1104,7 +1104,7 @@ tx -= style()->right().width(containingBlockWidth()); if(!style()->top().isAuto()) { if (style()->top().isPercent()) { - double p = style()->top().percent(); + float p = style()->top().percent(); bool neg = p < 0.0; int ph = calcPercentageHeight(Length((neg?-p:p), Percent)); if (ph != -1) @@ -1115,7 +1115,7 @@ } else if(!style()->bottom().isAuto()) { if (style()->bottom().isPercent()) { - double p = style()->bottom().percent(); + float p = style()->bottom().percent(); bool neg = p < 0.0; int ph = calcPercentageHeight(Length((neg?-p:p), Percent)); if (ph != -1)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/rendering/render_form.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/rendering/render_form.cpp
Changed
@@ -1856,7 +1856,7 @@ // Prefer label if set DOMString label = optElem->getAttribute(ATTR_LABEL); if (!label.isEmpty()) - domText = label; + domText = label.string(); domText = domText.implementation()->collapseWhiteSpace(false, false); QString text;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/rendering/render_image.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/rendering/render_image.cpp
Changed
@@ -34,6 +34,8 @@ #include <kdebug.h> #include <kglobalsettings.h> +#include "css/csshelper.h" +#include "misc/helper.h" #include "misc/loader.h" #include "html/html_formimpl.h" #include "html/html_imageimpl.h" @@ -427,20 +429,16 @@ else if (element()->id() == ID_IMG) alt = static_cast<HTMLImageElementImpl*>(element())->altText(); - const DOMString u = element()->id() == ID_OBJECT ? - element()->getAttribute(ATTR_DATA).trimSpaces() : element()->getAttribute(ATTR_SRC).trimSpaces(); - - if (!u.isEmpty()) { - // Need to compute completeURL, as 'u' can be relative - // while m_cachedImage->url() is always full url - DocumentImpl *docImpl = element()->document(); - const QString fullUrl = docImpl->completeURL(u.string()); - if (!m_cachedImage || m_cachedImage->url() != fullUrl) { - CachedImage *new_image = docImpl->docLoader()->requestImage(DOMString(fullUrl)); - if (new_image && new_image != m_cachedImage) { - updateImage(new_image); - } - } + DOMString u = element()->id() == ID_OBJECT ? + element()->getAttribute(ATTR_DATA) : element()->getAttribute(ATTR_SRC); + + if (!u.isEmpty() && + ( !m_cachedImage || m_cachedImage->url() != u ) ) { + CachedImage *new_image = element()->document()->docLoader()-> + requestImage(khtml::parseURL(u)); + + if(new_image && new_image != m_cachedImage) + updateImage( new_image ); } }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/rendering/render_style.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/rendering/render_style.cpp
Changed
@@ -107,8 +107,6 @@ BackgroundLayer::BackgroundLayer() :m_image(RenderStyle::initialBackgroundImage()), - m_xPosition(RenderStyle::initialBackgroundXPosition()), - m_yPosition(RenderStyle::initialBackgroundYPosition()), m_bgAttachment(RenderStyle::initialBackgroundAttachment()), m_bgClip(RenderStyle::initialBackgroundClip()), m_bgOrigin(RenderStyle::initialBackgroundOrigin()),
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/rendering/render_style.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/rendering/render_style.h
Changed
@@ -1464,8 +1464,8 @@ static ETextTransform initialTextTransform() { return TTNONE; } static EVisibility initialVisibility() { return VISIBLE; } static EWhiteSpace initialWhiteSpace() { return NORMAL; } - static Length initialBackgroundXPosition() { return Length(0.0, Percent); } - static Length initialBackgroundYPosition() { return Length(0.0, Percent); } + static Length initialBackgroundXPosition() { return Length(); } + static Length initialBackgroundYPosition() { return Length(); } static short initialBorderHorizontalSpacing() { return 0; } static short initialBorderVerticalSpacing() { return 0; } static ECursor initialCursor() { return CURSOR_AUTO; }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/khtml/xml/dom_docimpl.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/khtml/xml/dom_docimpl.cpp
Changed
@@ -37,8 +37,10 @@ #include <html/htmltokenizer.h> #include "dom_restyler.h" +#include <css/csshelper.h> #include <css/cssstyleselector.h> #include <css/css_stylesheetimpl.h> +#include <misc/helper.h> #include <misc/seed.h> #include <misc/loader.h> #include <ecma/kjs_proxy.h> @@ -1696,18 +1698,6 @@ QString DocumentImpl::completeURL(const QString& url) const { - if (url.startsWith(QLatin1Char('#'))) { - const QString ref = KUrl::fromPercentEncoding(url.mid(1).toUtf8()); - KUrl u = baseURL(); - if (ref.isEmpty()) { - u.setHTMLRef(""); - } - else { - u.setHTMLRef(ref); - } - return u.url(); - } - return KUrl(baseURL(),url /*,m_decoderMibEnum*/).url(); } @@ -1991,16 +1981,16 @@ v->part()->scheduleRedirection(delay, v->part()->url().url() ); } else { pos++; - while(pos < str.length() && str[pos].isSpace()) pos++; + while(pos < (int)str.length() && str[pos].isSpace()) pos++; str = str.mid(pos); if(str.indexOf("url", 0, Qt::CaseInsensitive ) == 0) str = str.mid(3); str = str.trimmed(); if ( str.length() && str[0] == '=' ) str = str.mid( 1 ).trimmed(); - while (str.length() && (str[str.length()-1] == ';' || str[str.length()-1] == ',')) { + while(str.length() && + (str[str.length()-1] == ';' || str[str.length()-1] == ',')) str.resize(str.length()-1); - } - str = DOMString(str).trimSpaces().string(); - QString newURL = document()->completeURL(str); + str = parseURL( DOMString(str) ).string(); + QString newURL = document()->completeURL( str ); if ( ok ) v->part()->scheduleRedirection(delay, newURL, delay < 2 || newURL == URL().url()); } @@ -2060,8 +2050,8 @@ //qDebug("urlnode: %s (%d)", getTagName(renderInfo.URLElement()->id()).string().toLatin1().constData(), renderInfo.URLElement()->id()); ElementImpl* e = static_cast<ElementImpl*>(renderInfo.URLElement()); - const DOMString href = e->getAttribute(ATTR_HREF).trimSpaces(); - const DOMString target = e->getAttribute(ATTR_TARGET); + DOMString href = khtml::parseURL(e->getAttribute(ATTR_HREF)); + DOMString target = e->getAttribute(ATTR_TARGET); if (!target.isNull() && !href.isNull()) { ev->target = target;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kinit/lnusertemp.c -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kinit/lnusertemp.c
Changed
@@ -256,7 +256,6 @@ int main(int argc, char **argv) { const char *tmp = 0; - const char *xdg_runtime_dir = 0; char *tmp_prefix = 0; const char *kde_prefix = 0; int res = 0; @@ -286,10 +285,6 @@ } else if (strcmp(argv[1], "socket") == 0) { - xdg_runtime_dir = getenv("XDG_RUNTIME_DIR"); - if (xdg_runtime_dir && xdg_runtime_dir[0]) - tmp = xdg_runtime_dir; - tmp_prefix = (char *)malloc(strlen(tmp)+strlen("/ksocket-")+1); strcpy(tmp_prefix, tmp ); strcat(tmp_prefix, "/ksocket-" );
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/data.protocol -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/data.protocol
Changed
@@ -68,7 +68,7 @@ Description[or]=ତଥ୍ୟ URI ଗୁଡିକ ପାଇଁ ଗୋଟିଏ kioslave (rfc2397) Description[pa]=ਡਾਟਾ URI ਲਈ kioslave(rfc2397) Description[pl]=Wtyczka protokołu URI danych (rfc2397) -Description[pt]=Um 'kioslave' para os URI's de dados (RFC2397) +Description[pt]=Um 'kioslave' para URIs data (rfc2397) Description[pt_BR]=Um kioslave para URIs de dados (rfc2397) Description[ro]=Un dispozitiv de I/E pentru URI-urile de date (rfc2397) Description[ru]=Открытие URI по rfc2397
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kcmodule.desktop -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kcmodule.desktop
Changed
@@ -62,7 +62,7 @@ Name[nn]=KDE-oppsettsmodul Name[or]=KDE ବିନ୍ୟାସ ଏକକାଂଶ Name[pa]=KDE ਸੰਰਚਨਾ ਮੋਡੀਊਲ -Name[pl]=Moduł ustawień KDE +Name[pl]=Moduł konfiguracji KDE Name[ps]=کډي سازونې بېلګه Name[pt]=Módulo de Configuração do KDE Name[pt_BR]=Módulo de configuração do KDE
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kcmoduleinit.desktop -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kcmoduleinit.desktop
Changed
@@ -59,7 +59,7 @@ Name[nn]=KDE-oppsettsklargjering Name[or]=KDE ବିନ୍ୟାସ ପ୍ରାରମ୍ଭିକରଣ Name[pa]=KDE ਸੰਰਚਨਾ ਸ਼ੁਰੂਆਤ -Name[pl]=Inicjacja ustawień KDE +Name[pl]=Inicjacja konfiguracji KDE Name[ps]=کډي سازونې پېلونه Name[pt]=Inicialização da Configuração do KDE Name[pt_BR]=Inicialização da configuração do KDE
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kfile/kiofilemodule.desktop -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kfile/kiofilemodule.desktop
Changed
@@ -17,7 +17,6 @@ Name[es]=filemodule Name[et]=Failimoodul Name[eu]=fitxategi modulua -Name[fa]=ماژول پرونده Name[fi]=filemodule Name[fr]=module de fichiers Name[ga]=filemodule
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kfile/kpropertiesdialogplugin.desktop -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kfile/kpropertiesdialogplugin.desktop
Changed
@@ -67,10 +67,10 @@ Comment[pa]=ਵਿਸ਼ੇਸ਼ਤਾ ਡਾਈਲਾਗ ਲਈ ਪਲੱਗਇਨ Comment[pl]=Wtyczka do okna dialogowego Właściwości Comment[ps]=د ځانتياوې کړکۍ لپاره لګون -Comment[pt]='Plugin' da Janela de Propriedades +Comment[pt]='Plugin' para a Janela de Propriedades Comment[pt_BR]=Plugin para a janela de propriedades Comment[ro]=Modul pentru dialogul de proprietăți -Comment[ru]=Расширение диалога свойств +Comment[ru]=Расширение диалога настройки Comment[se]=Lassemoduvla iešvuođahtaláseža várás Comment[si]=වත්කම් සංවාද කොටුව සඳහා ප්ලගීනය Comment[sk]=Modul pre dialóg vlastností
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kfile/kurlrequester.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kfile/kurlrequester.cpp
Changed
@@ -33,7 +33,6 @@ #include <QMimeData> #include <QAction> #include <QApplication> -#include <QDir> class KUrlDragPushButton : public KPushButton { @@ -145,19 +144,12 @@ edit->setCompletionObject( comp ); } - void updateCompletionStartDir( const KUrl &newStartDir ) - { - if ( newStartDir.isLocalFile() ) - myCompletion->setDir(newStartDir.toLocalFile()); - } - QString text() const { return combo ? combo->currentText() : edit->text(); } /** * replaces ~user or $FOO, if necessary - * if text() is a relative path, make it absolute using startDir() */ KUrl url() const { const QString txt = text(); @@ -167,19 +159,10 @@ else comp = qobject_cast<KUrlCompletion*>(edit->completionObject()); - KUrl enteredPath; - KUrl baseDir(m_startDir); if ( comp ) - enteredPath = KUrl( comp->replacedPath( txt ) ); + return KUrl( comp->replacedPath( txt ) ); else - enteredPath = KUrl( txt ); - - if ( enteredPath.isRelative() && !txt.isEmpty() ) { - baseDir.addPath(enteredPath.path()); - return baseDir; - } else { - return enteredPath; - } + return KUrl( txt ); } // slots @@ -188,7 +171,6 @@ void _k_slotFileDialogFinished(); KUrl m_startDir; - bool m_startDirCustomized; KUrlRequester *m_parent; KLineEdit *edit; KComboBox *combo; @@ -272,11 +254,7 @@ connectSignals( m_parent ); m_parent->connect(myButton, SIGNAL(clicked()), m_parent, SLOT(_k_slotOpenDialog())); - m_startDir = KUrl::fromPath(QDir::currentPath()); - m_startDirCustomized = false; - myCompletion = new KUrlCompletion(); - updateCompletionStartDir(m_startDir); setCompletionObject( myCompletion ); QAction* openAction = new QAction(m_parent); @@ -304,8 +282,8 @@ void KUrlRequester::setStartDir(const KUrl& startDir) { d->m_startDir = startDir; - d->m_startDirCustomized = true; - d->updateCompletionStartDir(startDir); + if (startDir.isLocalFile()) + d->myCompletion->setDir(startDir.toLocalFile()); } void KUrlRequester::changeEvent(QEvent *e) @@ -407,12 +385,6 @@ { m_parent->setUrl( newUrl ); emit m_parent->urlSelected( url() ); - // remember url as defaultStartDir and update startdir for autocompletion - if ( newUrl.isLocalFile() && !m_startDirCustomized ) { - m_startDir = newUrl; - m_startDir.setPath(m_startDir.directory()); - updateCompletionStartDir(m_startDir); - } } } }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kfile/kurlrequester.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kfile/kurlrequester.h
Changed
@@ -48,7 +48,7 @@ * the current working directory, or the last directory where a file has been * selected. * - * You can change this behavior by using setMode(), setFilter() and setStartDir(). + * You can change this behavior by using setMode() or setFilter(). * * The default window modality for the file dialog is Qt::ApplicationModal * @@ -92,8 +92,8 @@ /** * @returns the current url in the lineedit. May be malformed, if the user - * entered something weird. For local files, ~user or environment variables - * are substituted, relative paths will be resolved against startDir() + * entered something weird. ~user or environment variables are substituted + * for local files. */ KUrl url() const;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kio/copyjob.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kio/copyjob.cpp
Changed
@@ -53,6 +53,7 @@ #include "job_p.h" #include <kdiskfreespaceinfo.h> +#include <kfilesystemtype_p.h> using namespace KIO; @@ -338,19 +339,16 @@ if ( destinationState == DEST_NOT_STATED ) { if ( m_dest.isLocalFile() ) { //works for dirs as well - QString path(m_dest.toLocalFile()); - QFileInfo fileInfo(path); - if (m_asMethod || !fileInfo.exists()) { + QString path = m_dest.toLocalFile(); + if (m_asMethod) { // In copy-as mode, we want to check the directory to which we're // copying. The target file or directory does not exist yet, which // might confuse KDiskFreeSpaceInfo. - path = fileInfo.absolutePath(); + path = QFileInfo(path).absolutePath(); } - KDiskFreeSpaceInfo freeSpaceInfo = KDiskFreeSpaceInfo::freeSpaceInfo(path); - if (freeSpaceInfo.isValid()) { - m_freeSpace = freeSpaceInfo.available(); - } else { - kDebug(7007) << "Couldn't determine free space information for" << path; + KFileSystemType::Type fsType = KFileSystemType::fileSystemType( path ); + if ( fsType != KFileSystemType::Nfs && fsType != KFileSystemType::Smb && fsType != KFileSystemType::Ramfs ) { + m_freeSpace = KDiskFreeSpaceInfo::freeSpaceInfo( path ).available(); } //TODO actually preliminary check is even more valuable for slow NFS/SMB mounts, //but we need to find a way to report connection errors to user
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kio/global.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kio/global.h
Changed
@@ -26,7 +26,7 @@ #include <QtCore/QMap> #include <QtCore/QList> #include <QtCore/QVariant> -#include <QtCore/QFile> // for QFile::Permissions +#include <QFile> // for QFile::Permissions #include <kiconloader.h> #include <QtGui/QPixmap> // for pixmapForUrl
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kio/kdbusservicestarter.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kio/kdbusservicestarter.h
Changed
@@ -57,7 +57,7 @@ * will be ignored * @param flags for future extensions (currently unused) * - * @return an error code indicating success (== 0) or failure (< 0). + * @return an error code indicating success (== 0) or failure (> 0). */ int findServiceFor( const QString& serviceType, const QString& constraint = QString(),
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kio/kfileitem.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kio/kfileitem.cpp
Changed
@@ -959,7 +959,8 @@ names.append("emblem-symbolic-link"); } - if (!isReadable()) { + if ( !S_ISDIR( d->m_fileMode ) // Locked dirs have a special icon, use the overlay for files only + && !isReadable()) { names.append("object-locked"); } @@ -999,6 +1000,11 @@ } #endif // Q_OS_WIN + if ( d->m_pMimeType && d->m_url.fileName().endsWith( QLatin1String( ".gz" ) ) && + d->m_pMimeType->is("application/x-gzip") ) { + names.append("application-zip"); + } + return names; }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kio/kfileitemactionplugin.desktop -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kio/kfileitemactionplugin.desktop
Changed
@@ -38,7 +38,7 @@ Comment[nl]=Plugin voor het contextmenu van het KIO-bestandsitem Comment[pa]=KIO ਫਾਇਲ ਆਈਟਮ ਸਮੱਗਰੀ ਮੇਨੂ ਲਈ ਪਲੱਗਇਨ Comment[pl]=Wtyczka do menu kontekstowego elementu pliku KIO -Comment[pt]='Plugin' do menu de contexto dos itens de ficheiros do KIO +Comment[pt]='Plugin' para o menu de contexto do item de ficheiros do KIO Comment[pt_BR]=Plugin para o menu de contexto do item de arquivos do KIO Comment[ro]=Modul pentru meniul contextual al fișierelor KIO Comment[ru]=Расширение контекстного меню файла KIO
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kio/kfilemetainfo.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kio/kfilemetainfo.cpp
Changed
@@ -421,10 +421,9 @@ { } -KFileMetaInfo& KFileMetaInfo::operator= ( KFileMetaInfo const & kfmi ) +const KFileMetaInfo& KFileMetaInfo::operator= ( KFileMetaInfo const & kfmi ) { - d = kfmi.d; - return *this; + return kfmi; } KFileMetaInfo::~KFileMetaInfo()
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kio/tcpslavebase.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kio/tcpslavebase.cpp
Changed
@@ -815,51 +815,45 @@ message = message.trimmed(); int msgResult; - QDateTime ruleExpiry = QDateTime::currentDateTime(); do { msgResult = messageBox(WarningYesNoCancel, message, i18n("Server Authentication"), i18n("&Details"), i18n("Co&ntinue")); - switch (msgResult) { - case KMessageBox::Yes: + if (msgResult == KMessageBox::Yes) { //Details was chosen- show the certificate and error details messageBox(SSLMessageBox /*the SSL info dialog*/, d->host); - break; - case KMessageBox::No: { - //fall through on KMessageBox::No - const int result = messageBox(WarningYesNoCancel, - i18n("Would you like to accept this " - "certificate forever without " - "being prompted?"), - i18n("Server Authentication"), - i18n("&Forever"), - i18n("&Current Session only")); - if (result == KMessageBox::Yes) { - //accept forever ("for a very long time") - ruleExpiry = ruleExpiry.addYears(1000); - } else if (result == KMessageBox::No) { - //accept "for a short time", half an hour. - ruleExpiry = ruleExpiry.addSecs(30*60); - } else { - msgResult = KMessageBox::Yes; - } - break; - } - case KMessageBox::Cancel: - return ResultFailed; - default: + } else if (msgResult == KMessageBox::Cancel) { + return ResultFailed; + } else if (msgResult != KMessageBox::No) { kWarning() << "Unexpected MessageBox response received:" << msgResult; return ResultFailed; } + //fall through on KMessageBox::No } while (msgResult == KMessageBox::Yes); + //Save the user's choice to ignore the SSL errors. + + msgResult = messageBox(WarningYesNo, + i18n("Would you like to accept this " + "certificate forever without " + "being prompted?"), + i18n("Server Authentication"), + i18n("&Forever"), + i18n("&Current Session only")); + QDateTime ruleExpiry = QDateTime::currentDateTime(); + if (msgResult == KMessageBox::Yes) { + //accept forever ("for a very long time") + ruleExpiry = ruleExpiry.addYears(1000); + } else { + //accept "for a short time", half an hour. + ruleExpiry = ruleExpiry.addSecs(30*60); + } + //TODO special cases for wildcard domain name in the certificate! //rule = KSslCertificateRule(d->socket.peerCertificateChain().first(), whatever); rule.setExpiryDateTime(ruleExpiry); rule.setIgnoredErrors(d->sslErrors); - - //Save the user's choice to ignore the SSL errors. cm->setRule(rule); return ResultOk | ResultOverridden;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kssl/kcm/cacertificatespage.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kssl/kcm/cacertificatespage.cpp
Changed
@@ -298,13 +298,9 @@ foreach (const QString &certFile, certFiles) { // trying both formats is easiest to program and most user-friendly if somewhat sloppy const int prevCertCount = certs.count(); - QFile file (certFile); - if (file.open(QIODevice::ReadOnly)) { - certs += QSslCertificate::fromDevice(&file, QSsl::Pem); - if (prevCertCount == certs.count()) { - file.reset(); - certs += QSslCertificate::fromDevice(&file, QSsl::Der); - } + certs += QSslCertificate::fromPath(certFile, QSsl::Pem); + if (prevCertCount == certs.count()) { + certs += QSslCertificate::fromPath(certFile, QSsl::Der); } if (prevCertCount == certs.count()) { kDebug(7029) << "failed to load certificate file" << certFile;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/kssl/kcm/kcm_ssl.desktop -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/kssl/kcm/kcm_ssl.desktop
Changed
@@ -23,8 +23,7 @@ Name[es]=Preferencias de SSL Name[et]=SSL-i seadistused Name[eu]=SSL hobespenak -Name[fa]=ترجیحات اساسال -Name[fi]=SSL-asetukset +Name[fi]=SSL:n asetukset Name[fr]=Préférences SSL Name[ga]=Sainroghanna SSL Name[gl]=Preferencias de SSL @@ -87,7 +86,6 @@ Comment[es]=Versiones y certificados SSL Comment[et]=SSL-i versioonid ja sertifikaadid Comment[eu]=SSL bertsioak eta ziurtagiriak -Comment[fa]=نسخهها و ترجیحات اساسال Comment[fi]=SSL-versioiden ja varmenteiden asetukset Comment[fr]=Certificats et versions SSL Comment[ga]=Leaganacha agus Teastais SSL
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/misc/kpac/proxyscout.desktop -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/misc/kpac/proxyscout.desktop
Changed
@@ -41,7 +41,7 @@ Name[nds]=Nettwark-Proxy instellen Name[nl]=Configuratie voor netwerk-proxy Name[pa]=ਨੈੱਟਵਰਕ ਪਰਾਕਸੀ ਸੰਰਚਨਾ -Name[pl]=Ustawienia pośrednika sieciowego +Name[pl]=Konfiguracja pośrednika sieciowego Name[pt]=Configuração do 'Proxy' de Rede Name[pt_BR]=Configuração do proxy de rede Name[ro]=Configurare proxy rețea @@ -131,7 +131,7 @@ Comment[nn]=Automatisk mellomtenaroppsett Comment[or]=ସ୍ୱୟଂଚାଳିତ ଛାୟା ବିନ୍ୟାସ Comment[pa]=ਆਟੋਮੈਟਿਕ ਪਰਾਕਸੀ ਸੰਰਚਨਾ -Comment[pl]=Autoustawienia pośrednika +Comment[pl]=Autokonfiguracja pośrednika Comment[ps]=خپلکارې ګوډاګي سازونه Comment[pt]=Configuração automática do 'proxy' Comment[pt_BR]=Configuração automática do proxy
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/misc/kpac/proxyscout.notifyrc -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/misc/kpac/proxyscout.notifyrc
Changed
@@ -41,7 +41,7 @@ Comment[nds]=Nettwark-Proxy instellen Comment[nl]=Configuratie voor netwerk-proxy Comment[pa]=ਆਟੋਮੈਟਿਕ ਪਰਾਕਸੀ ਸੰਰਚਨਾ -Comment[pl]=Ustawienia pośrednika sieciowego +Comment[pl]=Konfiguracja pośrednika sieciowego Comment[pt]=Configuração do 'Proxy' de Rede Comment[pt_BR]=Configuração do proxy de rede Comment[ro]=Configurare proxy rețea @@ -219,9 +219,9 @@ Comment[nn]=Det nedlasta skriptet for automatisk mellomtenaroppsett er ugyldig Comment[or]=ଆହରଣ କୃତ ଛାୟା ବିନ୍ୟାସ ସ୍କ୍ରିପ୍ଟ ଟି ଅବୈଧ Comment[pa]=ਡਾਊਨਲੋਡ ਕੀਤੀ ਪਰਾਕਸੀ ਸੰਰਚਨਾ ਸਕ੍ਰਿਪਟ ਗਲਤ ਹੈ -Comment[pl]=Pobrany skrypt ustawień pośrednika jest nieprawidłowy +Comment[pl]=Pobrany skrypt konfiguracji pośrednika jest nieprawidłowy Comment[ps]=رالېښل شوی ګوډاګي سازونې سکرېپټ ناسم دی -Comment[pt]=O programa de configuração do 'proxy' transferido é inválido +Comment[pt]=O programa obtido de configuração do 'proxy' é inválido Comment[pt_BR]=O script de configuração do proxy obtido é inválido Comment[ro]=Scriptul de configurare proxy este eronat Comment[ru]=Загруженный сценарий настройки прокси-сервера содержит ошибки @@ -404,9 +404,9 @@ Comment[nn]=Klarte ikkje lasta ned skript for automatisk mellomtenaroppsett Comment[or]=ଛାୟା ବିନ୍ୟାସ ସ୍କ୍ରିପ୍ଟ ଆହରଣ କରିହେଲା ନାହିଁ Comment[pa]=ਪਰਾਕਸੀ ਸੰਰਚਨਾ ਸਕ੍ਰਿਪਟ ਡਾਊਨਲੋਡ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕੀ -Comment[pl]=Nie można pobrać skryptu ustawień pośrednika +Comment[pl]=Nie można pobrać skryptu konfiguracji pośrednika Comment[ps]=د ګوډاګي د سازونې سکرېپټ رالېښل کېدی نه شي -Comment[pt]=Não foi possível transferir o programa de configuração do 'proxy' +Comment[pt]=O programa de configuração do 'proxy' não pôde ser transferido Comment[pt_BR]=O script de configuração do proxy não pôde ser baixado Comment[ro]=Nu am putut descărca scriptul de configurare proxy Comment[ru]=Невозможно загрузить сценарий настройки прокси-сервера @@ -501,7 +501,7 @@ Name[pt]=Erro de Avaliação do Programa Name[pt_BR]=Erro de avaliação do script Name[ro]=Eroare de evaluare a scriptului -Name[ru]=Ошибка выполнения сценария +Name[ru]=Ошибка выполнения скрипта Name[se]=Skriptadulkonmeattáhus Name[sk]=Chyba vykonávania skriptu Name[sl]=Napaka med ovrednotenjem skripta @@ -587,9 +587,9 @@ Comment[nn]=Det oppstod ein feil ved køyring av skriptet for automatisk mellomtenaroppsett Comment[or]=ଛାୟା ବିନ୍ୟାସ ସ୍କ୍ରିପ୍ଟ ନିଷ୍ପାଦନ କରିବା ସମୟରେ ତ୍ରୁଟି Comment[pa]=ਪਰਾਕਸੀ ਸੰਰਚਨਾ ਸਕ੍ਰਿਪਟ ਚਲਾਉਣ ਦੌਰਾਨ ਗਲਤੀ ਹੈ -Comment[pl]=Wystąpił błąd w czasie wykonywania skryptu ustawień pośrednika +Comment[pl]=Wystąpił błąd w czasie wykonywania skryptu konfiguracji pośrednika Comment[ps]=د ګوډاګي سازونې سکرېپټ په چلولو کې ستونزه رامنځته شوه -Comment[pt]=Ocorreu um erro ao executar o programa de configuração do 'proxy' +Comment[pt]=Ocorreu um problema ao executar o programa de configuração do 'proxy' Comment[pt_BR]=Houve um erro ao executar o script de configuração do proxy Comment[ro]=A apărut o eroare la execuția scriptului de configurare proxy Comment[ru]=Ошибка при выполнении сценария настройки прокси-сервера
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/misc/mms.protocol -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/misc/mms.protocol
Changed
@@ -1,6 +1,7 @@ [Protocol] helper=true exec= +defaultMimetype=uri/mms protocol=mms input=none output=none @@ -70,7 +71,7 @@ Description[or]=Microsoft ସଞ୍ଚାରମାଧ୍ୟମ ସର୍ଭର ପ୍ରୋଟୋକଲ Description[pa]=Microsoft Media ਸਰਵਰ ਪ੍ਰੋਟੋਕਾਲ Description[pl]=Protokół Microsoft Media Server -Description[pt]=Protocolo de Servidores Multimédia da Microsoft +Description[pt]=Protocolo do Microsoft Media Server Description[pt_BR]=Protocolo do Microsoft Media Server Description[ro]=Protocol Microsoft Media Server Description[ru]=Протокол Microsoft Media Server
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/misc/mmst.protocol -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/misc/mmst.protocol
Changed
@@ -1,4 +1,5 @@ [Protocol] +defaultMimetype=uri/mmst exec= protocol=mmst input=none
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/misc/mmsu.protocol -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/misc/mmsu.protocol
Changed
@@ -1,4 +1,5 @@ [Protocol] +defaultMimetype=uri/mmsu exec= protocol=mmsu input=none
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/misc/pnm.protocol -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/misc/pnm.protocol
Changed
@@ -1,4 +1,5 @@ [Protocol] +defaultMimetype=uri/pnm exec= protocol=pnm input=none
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/misc/rtspt.protocol -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/misc/rtspt.protocol
Changed
@@ -1,4 +1,5 @@ [Protocol] +defaultMimetype=uri/rtspt exec= protocol=rtspt input=none
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kio/misc/rtspu.protocol -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kio/misc/rtspu.protocol
Changed
@@ -1,4 +1,5 @@ [Protocol] +defaultMimetype=uri/rtspu exec= protocol=rtspu input=none
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kioslave/file/file_unix.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kioslave/file/file_unix.cpp
Changed
@@ -110,18 +110,18 @@ bool dest_exists = ( KDE_lstat( _dest.data(), &buff_dest ) != -1 ); if ( dest_exists ) { - if ( same_inode( buff_dest, buff_src) ) - { - error(KIO::ERR_IDENTICAL_FILES, dest); - return; - } - if (S_ISDIR(buff_dest.st_mode)) { error(KIO::ERR_DIR_ALREADY_EXIST, dest); return; } + if ( same_inode( buff_dest, buff_src) ) + { + error(KIO::ERR_IDENTICAL_FILES, dest); + return; + } + if (!(_flags & KIO::Overwrite)) { error(KIO::ERR_FILE_ALREADY_EXIST, dest); @@ -439,18 +439,18 @@ bool dest_exists = ( KDE_lstat( _dest.data(), &buff_dest ) != -1 ); if ( dest_exists ) { - if ( same_inode( buff_dest, buff_src) ) - { - error(KIO::ERR_IDENTICAL_FILES, dest); - return; - } - if (S_ISDIR(buff_dest.st_mode)) { error(KIO::ERR_DIR_ALREADY_EXIST, dest); return; } + if ( same_inode( buff_dest, buff_src) ) + { + error(KIO::ERR_IDENTICAL_FILES, dest); + return; + } + if (!(_flags & KIO::Overwrite)) { error(KIO::ERR_FILE_ALREADY_EXIST, dest);
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kioslave/ftp/ftp.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kioslave/ftp/ftp.cpp
Changed
@@ -868,7 +868,7 @@ // Check that we can do PASV QHostAddress address = m_control->peerAddress(); - if (address.protocol() != QAbstractSocket::IPv4Protocol && !isSocksProxy()) + if (address.protocol() != QAbstractSocket::IPv4Protocol) return ERR_INTERNAL; // no PASV for non-PF_INET connections if (m_extControl & pasvUnknown) @@ -2376,40 +2376,33 @@ bool bDestLocal = dest.isLocalFile(); QString sCopyFile; - if(bSrcLocal && !bDestLocal) { // File -> Ftp + if(bSrcLocal && !bDestLocal) // File -> Ftp + { sCopyFile = src.toLocalFile(); kDebug(7102) << "local file" << sCopyFile << "-> ftp" << dest.path(); cs = ftpCopyPut(iError, iCopyFile, sCopyFile, dest, permissions, flags); - if(cs == statusServerError) { - sCopyFile = dest.url(); - } - } else if(!bSrcLocal && bDestLocal) { // Ftp -> File + if( cs == statusServerError) sCopyFile = dest.url(); + } + else if(!bSrcLocal && bDestLocal) // Ftp -> File + { sCopyFile = dest.toLocalFile(); kDebug(7102) << "ftp" << src.path() << "-> local file" << sCopyFile; cs = ftpCopyGet(iError, iCopyFile, sCopyFile, src, permissions, flags); - if(cs == statusServerError) { - sCopyFile = src.url(); - } - } else { - error(ERR_UNSUPPORTED_ACTION, QString()); + if( cs == statusServerError ) sCopyFile = src.url(); + } + else { + error( ERR_UNSUPPORTED_ACTION, QString() ); return; } // perform clean-ups and report error (if any) - if(iCopyFile != -1) { + if(iCopyFile != -1) ::close(iCopyFile); - } - ftpCloseCommand(); // must close command! - - if (cs == statusSuccess) { - finished(); - return; - } - - if(iError) { + if(iError) error(iError, sCopyFile); - } + else + finished(); }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kioslave/http/http.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kioslave/http/http.cpp
Changed
@@ -340,16 +340,6 @@ } } -static void changeProtocolToHttp(KUrl* url) -{ - const QString protocol(url->protocol()); - if (protocol == QLatin1String("webdavs")) { - url->setProtocol(QLatin1String("https")); - } else if (protocol == QLatin1String("webdav")) { - url->setProtocol(QLatin1String("http")); - } -} - /************************************************************************************************************************/ @@ -727,7 +717,6 @@ // Also, if we've just loaded an error page there is nothing more to do. // In that case we abort to avoid loops; some webservers manage to send 401 and // no authentication request. Or an auth request we don't understand. - setMetaData(QLatin1String("responsecode"), QString::number(m_request.responseCode)); return false; } @@ -1311,7 +1300,7 @@ m_request.url.setQuery(QString()); m_request.cacheTag.policy = CC_Reload; - proceedUntilResponseContent(true); + proceedUntilResponseHeader(); if ( m_request.responseCode == 201 ) davFinished(); @@ -1350,10 +1339,37 @@ if (!davHostOk()) return; - // Checks if the destination exists and return an error if it does. - if (!davStatDestination()) { + const QByteArray request ("<?xml version=\"1.0\" encoding=\"utf-8\" ?>" + "<D:propfind xmlns:D=\"DAV:\"><D:prop>" + "<D:creationdate/>" + "<D:getcontentlength/>" + "<D:displayname/>" + "<D:resourcetype/>" + "</D:prop></D:propfind>"); + + davSetRequest( request ); + + // WebDAV Stat or List... + m_request.method = DAV_PROPFIND; + m_request.url.setQuery(QString()); + m_request.cacheTag.policy = CC_Reload; + m_request.davData.depth = 0; + + proceedUntilResponseContent(true); + + if (!m_request.isKeepAlive) { + httpCloseConnection(); // close connection if server requested it. + m_request.isKeepAlive = true; // reset the keep alive flag. + } + + if (m_request.responseCode == 207) { + error(ERR_FILE_ALREADY_EXIST, QString()); return; } + + // force re-authentication... + delete m_wwwAuth; + m_wwwAuth = 0; } } @@ -1365,39 +1381,32 @@ void HTTPProtocol::copy( const KUrl& src, const KUrl& dest, int, KIO::JobFlags flags ) { - kDebug(7113) << src << "->" << dest; + kDebug(7113) << src << "->" << dest; - const bool isSourceLocal = src.isLocalFile(); - const bool isDestinationLocal = dest.isLocalFile(); + if (!maybeSetRequestUrl(dest) || !maybeSetRequestUrl(src)) + return; + resetSessionSettings(); - if (isSourceLocal && !isDestinationLocal) { - copyPut(src, dest, flags); - } else { - if (!maybeSetRequestUrl(dest) || !maybeSetRequestUrl(src)) { - return; - } + // destination has to be "http(s)://..." + KUrl newDest = dest; + if (newDest.protocol() == QLatin1String("webdavs")) + newDest.setProtocol(QLatin1String("https")); + else if (newDest.protocol() == QLatin1String("webdav")) + newDest.setProtocol(QLatin1String("http")); - resetSessionSettings(); + m_request.method = DAV_COPY; + m_request.davData.desturl = newDest.url(); + m_request.davData.overwrite = (flags & KIO::Overwrite); + m_request.url.setQuery(QString()); + m_request.cacheTag.policy = CC_Reload; - // destination has to be "http(s)://..." - KUrl newDest (dest); - changeProtocolToHttp(&newDest); - - m_request.method = DAV_COPY; - m_request.davData.desturl = newDest.url(); - m_request.davData.overwrite = (flags & KIO::Overwrite); - m_request.url.setQuery(QString()); - m_request.cacheTag.policy = CC_Reload; - - proceedUntilResponseHeader(); - - // The server returns a HTTP/1.1 201 Created or 204 No Content on successful completion - if (m_request.responseCode == 201 || m_request.responseCode == 204) { - davFinished(); - } else { - davError(); - } - } + proceedUntilResponseHeader(); + + // The server returns a HTTP/1.1 201 Created or 204 No Content on successful completion + if ( m_request.responseCode == 201 || m_request.responseCode == 204 ) + davFinished(); + else + davError(); } void HTTPProtocol::rename( const KUrl& src, const KUrl& dest, KIO::JobFlags flags ) @@ -1409,8 +1418,11 @@ resetSessionSettings(); // destination has to be "http://..." - KUrl newDest(dest); - changeProtocolToHttp(&newDest); + KUrl newDest = dest; + if (newDest.protocol() == QLatin1String("webdavs")) + newDest.setProtocol(QLatin1String("https")); + else if (newDest.protocol() == QLatin1String("webdav")) + newDest.setProtocol(QLatin1String("http")); m_request.method = DAV_MOVE; m_request.davData.desturl = newDest.url(); @@ -3852,12 +3864,11 @@ { infoMessage(i18n("Sending data to %1" , m_request.url.host())); - const qint64 size = m_POSTbuf->size(); QByteArray cLength ("Content-Length: "); - cLength += QByteArray::number(size); + cLength += QByteArray::number(m_POSTbuf->size()); cLength += "\r\n\r\n"; - kDebug(7113) << "sending cached data (size=" << size << ")"; + kDebug(7113) << "sending cached data (size=" << m_POSTbuf->size() << ")"; // Send the content length... bool sendOk = (write(cLength.data(), cLength.size()) == (ssize_t) cLength.size()); @@ -3868,24 +3879,19 @@ return false; } - totalSize(size); // Make sure the read head is at the beginning... m_POSTbuf->reset(); - KIO::filesize_t totalBytesSent = 0; // Send the data... while (!m_POSTbuf->atEnd()) { - const QByteArray buffer = m_POSTbuf->read(65536); - const ssize_t bytesSent = write(buffer.data(), buffer.size()); - if (bytesSent != static_cast<ssize_t>(buffer.size())) { + const QByteArray buffer = m_POSTbuf->read(s_MaxInMemPostBufSize); + sendOk = (write(buffer.data(), buffer.size()) == (ssize_t) buffer.size()); + if (!sendOk) { kDebug(7113) << "Connection broken when sending message body: (" << m_request.url.host() << ")"; error( ERR_CONNECTION_BROKEN, m_request.url.host() ); return false; } - - totalBytesSent += bytesSent; - processedSize(totalBytesSent); } return true; @@ -5517,74 +5523,5 @@ return authRequiresAnotherRoundtrip; } -void HTTPProtocol::copyPut(const KUrl& src, const KUrl& dest, JobFlags flags) -{ - kDebug(7113) << src << "->" << dest;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kioslave/http/http.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kioslave/http/http.h
Changed
@@ -509,16 +509,6 @@ */ bool handleAuthenticationHeader(const HeaderTokenizer* tokenizer); - /** - * Handles file -> webdav put requests. - */ - void copyPut(const KUrl& src, const KUrl& dest, KIO::JobFlags flags); - - /** - * Stats a remote DAV file and returns true if it exists. - */ - bool davStatDestination(); - protected: HTTPServerState m_server; HTTPRequest m_request;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kioslave/http/http_cache_cleaner.desktop -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kioslave/http/http_cache_cleaner.desktop
Changed
@@ -66,7 +66,7 @@ Name[pa]=HTTP ਕੈਸ਼ ਸਾਫ਼ ਕਰੋ Name[pl]=Czyszczenie bufora HTTP Name[ps]=پټياد پاکوونکی HTTP -Name[pt]=Limpeza da 'Cache' de HTTP +Name[pt]=Limpeza da Cache de HTTP Name[pt_BR]=Limpador de cache HTTP Name[ro]=Curățător cache HTTP Name[ru]=Очистка кэша HTTP @@ -163,7 +163,7 @@ Comment[pa]=HTTP ਕੈਸ਼ ਤੋਂ ਪੁਰਾਣੀਆਂ ਐਂਟਰੀਆਂ ਸਾਫ਼ ਕਰੋ Comment[pl]=Usuwa stare wpisy z bufora HTTP Comment[ps]=پټياد څخه زړې ننوتنې پاکوي HTTP د -Comment[pt]=Limpa os itens antigos da 'cache' de HTTP +Comment[pt]=Limpa o conteúdo desactualizado da cache do HTTP Comment[pt_BR]=Limpa itens antigos do cache HTTP Comment[ro]=Elimină înregistrările vechi din cache-ul HTTP Comment[ru]=Удаление устаревших элементов из кэша HTTP
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kioslave/http/webdav.protocol -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kioslave/http/webdav.protocol
Changed
@@ -10,7 +10,6 @@ deleting=true moving=true deleteRecursive=true -copyFromFile=true defaultMimetype=application/octet-stream determineMimetypeFromExtension=false Icon=folder-remote
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kjs/jsonlexer.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/kjs/jsonlexer.cpp
Changed
@@ -514,6 +514,11 @@ } UChar next = Lexer::convertUnicode(m_code[m_pos+1].uc, m_code[m_pos+2].uc, m_code[m_pos+3].uc, m_code[m_pos+4].uc); + if (next.uc <= InvalidJSONUnicode) + { + *error = true; + return UChar(' '); + } *error = false; m_pos += 5;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/mimetypes/kde.xml -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/mimetypes/kde.xml
Changed
@@ -16,413 +16,31 @@ <mime-type type="application/metalink+xml"> <sub-class-of type="application/xml"/> <comment>Metalink download</comment> - <comment xml:lang="ar">تنزيل Metalink</comment> - <comment xml:lang="ast">Descarga Metalink</comment> - <comment xml:lang="bs">metalink preuzimanje</comment> - <comment xml:lang="ca">Baixada de «Metalink»</comment> - <comment xml:lang="ca@valencia">Baixada de «Metalink»</comment> - <comment xml:lang="cs">Stahování Metalink</comment> - <comment xml:lang="da">Metalink-download</comment> - <comment xml:lang="de">Metalink-Download</comment> - <comment xml:lang="el">Λήψη Metalink</comment> - <comment xml:lang="en_GB">Metalink download</comment> - <comment xml:lang="es">Descarga Metalink</comment> - <comment xml:lang="et">Metalinki allalaadimine</comment> - <comment xml:lang="eu">Metalik deskarga</comment> - <comment xml:lang="fi">Metalink-lataus</comment> - <comment xml:lang="fr">Téléchargement par méta-liens</comment> - <comment xml:lang="ga">Íosluchtú Metalink</comment> - <comment xml:lang="gl">Descarga de Metalink</comment> - <comment xml:lang="hr">Metalink preuzimanje</comment> - <comment xml:lang="hu">Metalinkletöltés</comment> - <comment xml:lang="ia">Discargamento de Metalink</comment> - <comment xml:lang="is">Metalink niðurhal</comment> - <comment xml:lang="it">scaricamento Metalink</comment> - <comment xml:lang="ja">Metalink ダウンロード</comment> - <comment xml:lang="kk">Метасілтеме</comment> - <comment xml:lang="km">ទាញយកតំណមេតា</comment> - <comment xml:lang="ko">Metalink 다운로드</comment> - <comment xml:lang="lt">Metalink atsiuntimas</comment> - <comment xml:lang="lv">Metalink lejupielāde</comment> - <comment xml:lang="ml">മെറ്റാ-കണ്ണി ഡൌണ്ലോഡ്</comment> - <comment xml:lang="mr">मेटालिंक डाउनलोड</comment> - <comment xml:lang="nb">Metalink nedlasting</comment> - <comment xml:lang="nds">Metalink-Daalladen</comment> - <comment xml:lang="nl">Download van metalink</comment> - <comment xml:lang="nn">Metalink-nedlasting</comment> - <comment xml:lang="pa">ਮੇਟਾਲਿੰਕ ਡਾਊਨਲੋਡ</comment> - <comment xml:lang="pl">Pobieranie Metalink</comment> - <comment xml:lang="pt">Transferência do Metalink</comment> - <comment xml:lang="pt_BR">Transferência do Metalink</comment> - <comment xml:lang="ro">Descărcare Metalink</comment> - <comment xml:lang="ru">метассылка</comment> - <comment xml:lang="se">Metalink-viežžan</comment> - <comment xml:lang="sk">Sťahovanie Metalink</comment> - <comment xml:lang="sl">Prejem Metalink</comment> - <comment xml:lang="sr">металинк преузимање</comment> - <comment xml:lang="sr@ijekavian">металинк преузимање</comment> - <comment xml:lang="sr@ijekavianlatin">metalink preuzimanje</comment> - <comment xml:lang="sr@latin">metalink preuzimanje</comment> - <comment xml:lang="sv">Metalink-nerladdning</comment> - <comment xml:lang="tr">Metalink indirmesi</comment> - <comment xml:lang="ug">Metalink چۈشۈرۈش</comment> - <comment xml:lang="uk">метапосилання звантаження</comment> - <comment xml:lang="zh_CN">Metalink 下载</comment> - <comment xml:lang="zh_TW">Metalink 下載</comment> <glob pattern="*.metalink"/> </mime-type> <mime-type type="application/relaxng"> <sub-class-of type="application/xml"/> <comment>RELAX NG</comment> - <comment xml:lang="ar">RELAX NG</comment> - <comment xml:lang="ast">RELAX NG</comment> - <comment xml:lang="bs">Relax NG</comment> - <comment xml:lang="ca">RELAX NG</comment> - <comment xml:lang="ca@valencia">RELAX NG</comment> - <comment xml:lang="cs">RELAX NG</comment> - <comment xml:lang="da">RELAX NG</comment> - <comment xml:lang="de">RELAX NG</comment> - <comment xml:lang="el">RELAX NG</comment> - <comment xml:lang="en_GB">RELAX NG</comment> - <comment xml:lang="eo">RELAX NG</comment> - <comment xml:lang="es">RELAX NG</comment> - <comment xml:lang="et">RELAX NG</comment> - <comment xml:lang="eu">RELAX NG</comment> - <comment xml:lang="fi">RELAX NG</comment> - <comment xml:lang="fr">RELAX NG</comment> - <comment xml:lang="ga">RELAX NG</comment> - <comment xml:lang="gl">RELAX NG</comment> - <comment xml:lang="hr">RELAX NG</comment> - <comment xml:lang="hu">RELAX NG</comment> - <comment xml:lang="ia">RELAX NG</comment> - <comment xml:lang="is">RELAX NG</comment> - <comment xml:lang="it">RELAX NG</comment> - <comment xml:lang="ja">RELAX NG</comment> - <comment xml:lang="kk">RELAX NG</comment> - <comment xml:lang="km">RELAX NG</comment> - <comment xml:lang="ko">RELAX NG</comment> - <comment xml:lang="lt">RELAX NG</comment> - <comment xml:lang="lv">RELAX NG</comment> - <comment xml:lang="ml">റിലാക്സ് എന് ജി</comment> - <comment xml:lang="mr">RELAX NG</comment> - <comment xml:lang="nb">RELAX NG</comment> - <comment xml:lang="nds">RELAX NG</comment> - <comment xml:lang="nl">RELAX NG</comment> - <comment xml:lang="nn">RELAX NG</comment> - <comment xml:lang="pa">RELAX NG</comment> - <comment xml:lang="pl">RELAX NG</comment> - <comment xml:lang="pt">RELAX NG</comment> - <comment xml:lang="pt_BR">RELAX NG</comment> - <comment xml:lang="ro">RELAX NG</comment> - <comment xml:lang="ru">документ RELAX NG</comment> - <comment xml:lang="se">RELAX NG</comment> - <comment xml:lang="sk">RELAX NG</comment> - <comment xml:lang="sl">RELAX NG</comment> - <comment xml:lang="sq">RELAX NG</comment> - <comment xml:lang="sr">релакс НГ</comment> - <comment xml:lang="sr@ijekavian">релакс НГ</comment> - <comment xml:lang="sr@ijekavianlatin">Relax NG</comment> - <comment xml:lang="sr@latin">Relax NG</comment> - <comment xml:lang="sv">RELAX NG</comment> - <comment xml:lang="tr">RELAX NG</comment> - <comment xml:lang="ug">RELAX NG</comment> - <comment xml:lang="uk">RELAX NG</comment> - <comment xml:lang="zh_CN">RELAX NG</comment> - <comment xml:lang="zh_TW">RELAX NG</comment> <glob pattern="*.rng"/> </mime-type> <mime-type type="application/x-cda"> <comment>CD audio</comment> - <comment xml:lang="ar">صوت CD</comment> - <comment xml:lang="ast">Audio CD</comment> - <comment xml:lang="bs">CD audio</comment> - <comment xml:lang="ca">CD àudio</comment> - <comment xml:lang="ca@valencia">CD àudio</comment> - <comment xml:lang="cs">Audio CD</comment> - <comment xml:lang="da">Cd-lyd</comment> - <comment xml:lang="de">CD-Audio</comment> - <comment xml:lang="el">Ήχος CD</comment> - <comment xml:lang="en_GB">CD audio</comment> - <comment xml:lang="es">Audio CD</comment> - <comment xml:lang="et">CD audio</comment> - <comment xml:lang="eu">Audio CDa</comment> - <comment xml:lang="fi">CD-ääni</comment> - <comment xml:lang="fr">CD audio</comment> - <comment xml:lang="ga">Fuaim dhlúthdhiosca</comment> - <comment xml:lang="gl">CD de son</comment> - <comment xml:lang="hr">CD audio</comment> - <comment xml:lang="hu">CD-hang</comment> - <comment xml:lang="ia">Audio CD</comment> - <comment xml:lang="is">CD hljóð</comment> - <comment xml:lang="it">audio CD</comment> - <comment xml:lang="ja">CD オーディオ</comment> - <comment xml:lang="kk">аудио CD</comment> - <comment xml:lang="km">ស៊ីឌីអូឌីយ៉ូ</comment> - <comment xml:lang="ko">CD 오디오</comment> - <comment xml:lang="lt">CD audio</comment> - <comment xml:lang="lv">CD audio</comment> - <comment xml:lang="ml">സിഡി ശബ്ദം</comment> - <comment xml:lang="mr">CD ऑडिओ</comment> - <comment xml:lang="ms">Audio CD</comment> - <comment xml:lang="nb">CD-lyd</comment> - <comment xml:lang="nds">Klang-CD</comment> - <comment xml:lang="nl">CD-audio</comment> - <comment xml:lang="nn">CD-lyd</comment> - <comment xml:lang="pa">CD ਆਡੀਓ</comment> - <comment xml:lang="pl">Audio CD</comment> - <comment xml:lang="pt">Áudio de CD</comment> - <comment xml:lang="pt_BR">Áudio de CD</comment> - <comment xml:lang="ro">CD audio</comment> - <comment xml:lang="ru">дорожка на Audio CD</comment> - <comment xml:lang="se">CD-jietna</comment> - <comment xml:lang="sk">Audio CD</comment> - <comment xml:lang="sl">Zvočni CD</comment> - <comment xml:lang="sq">CD audio</comment> - <comment xml:lang="sr">ЦД аудио</comment> - <comment xml:lang="sr@ijekavian">ЦД аудио</comment> - <comment xml:lang="sr@ijekavianlatin">CD audio</comment> - <comment xml:lang="sr@latin">CD audio</comment> - <comment xml:lang="sv">Cd-ljud</comment> - <comment xml:lang="th">แผ่นซีดีเสียง</comment> - <comment xml:lang="tr">CD sesi</comment> - <comment xml:lang="ug">ئۈن CD</comment> - <comment xml:lang="uk">звуковий КД</comment> - <comment xml:lang="zh_CN">CD 音频</comment> - <comment xml:lang="zh_TW">CD 音效</comment> <glob pattern="*.cda"/> </mime-type> <mime-type type="application/x-font-snf"> <comment>SNF bitmap font</comment> - <comment xml:lang="ar">خط SNF bitmap</comment> - <comment xml:lang="ast">Triba de lletra de mapa de bits SNF</comment> - <comment xml:lang="bs">SNF bitmapski font</comment> - <comment xml:lang="ca">tipus de lletra de mapa de bits SNF</comment> - <comment xml:lang="ca@valencia">tipus de lletra de mapa de bits SNF</comment> - <comment xml:lang="cs">Bitmapový font SNF</comment> - <comment xml:lang="da">SNF bitmap-skrifttype</comment> - <comment xml:lang="de">SNF-Bitmap-Schriftart</comment> - <comment xml:lang="el">Γραμματοσειρά bitmap SNF</comment> - <comment xml:lang="en_GB">SNF bitmap font</comment> - <comment xml:lang="es">Tipo de letra de mapa de bits SNF</comment> - <comment xml:lang="et">SNF bittrasterfont</comment> - <comment xml:lang="eu">SNF bitmap letra tipoa</comment> - <comment xml:lang="fi">SNF-bittikarttafontti</comment> - <comment xml:lang="fr">Police bitmap SNF</comment> - <comment xml:lang="ga">Cló Giotánmhapach SNF</comment> - <comment xml:lang="gl">Tipo de letra SNF bitmap</comment> - <comment xml:lang="hr">SNF bitmap pismo</comment> - <comment xml:lang="hu">SNF-betűtípus</comment>
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/plasma/datacontainer.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/plasma/datacontainer.cpp
Changed
@@ -52,7 +52,7 @@ } d->dirty = true; - d->updateTimer.start(); + d->updateTs.start(); //check if storage is enabled and if storage is needed. //If it is not set to be stored,then this is the first @@ -74,7 +74,7 @@ d->data.clear(); d->dirty = true; - d->updateTimer.start(); + d->updateTs.start(); } bool DataContainer::visualizationIsConnected(QObject *visualization) const @@ -315,7 +315,9 @@ uint DataContainer::timeSinceLastUpdate() const { - return d->updateTimer.elapsed(); + //FIXME: we still assume it's been <24h + //and ignore possible daylight savings changes + return d->updateTs.elapsed(); } void DataContainer::setNeedsUpdate(bool update)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/plasma/dataengine.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/plasma/dataengine.cpp
Changed
@@ -370,12 +370,12 @@ } // minPollingInterval - if (d->updateTimer.elapsed() < d->minPollingInterval) { + if (d->updateTimestamp.elapsed() < d->minPollingInterval) { //kDebug() << "hey now.. slow down!"; return; } - d->updateTimer.start(); + d->updateTimestamp.restart(); updateAllSources(); } else if (event->timerId() == d->checkSourcesTimerId) { killTimer(d->checkSourcesTimerId); @@ -520,7 +520,7 @@ package(0), publishedService(0) { - updateTimer.start(); + updateTimestamp.start(); if (!info.isValid()) { engineName = i18n("Unnamed");
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/plasma/packagestructure.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/plasma/packagestructure.cpp
Changed
@@ -21,7 +21,6 @@ #include "config-plasma.h" -#include <QDirIterator> #include <QDir> #include <QMap> #include <QMutableListIterator> @@ -639,29 +638,7 @@ const KArchiveDirectory *source = archive->directory(); KTempDir tempdir; source->copyTo(tempdir.name()); - - // This is to help with the theme packages, which include an extra folder in their package archive. - // Question: Would it be better to search just the first level dirs for metadata.desktop file? - // As in /path/Theme Name/Dir1/metadata.desktop and not /path/Theme Name/Dir1/Dir2/metadata.desktop - // This fixes bug https://bugs.kde.org/show_bug.cgi?id=149479 properly. - // 2nd rev. Search an extra first directory only. - - QDir dir(tempdir.name()); - QString filename = "metadata.desktop"; - QFileInfo metadataFileInfo(dir, filename); - - if (metadataFileInfo.exists()) { - d->createPackageMetadata(metadataFileInfo.absolutePath()); - } else { - dir.setFilter(QDir::NoDotAndDotDot|QDir::Dirs); - dir.setSorting(QDir::DirsFirst); - QFileInfo firstDir(dir.entryInfoList().first()); - metadataFileInfo = QFileInfo(firstDir.filePath(), filename); - if (metadataFileInfo.exists()) { - kWarning() << "Found in: " << metadataFileInfo.absolutePath(); - d->createPackageMetadata(metadataFileInfo.absolutePath()); - } - } + d->createPackageMetadata(tempdir.name()); } else { kWarning() << "Could not open package file:" << d->path; }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/plasma/private/datacontainer_p.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/plasma/private/datacontainer_p.h
Changed
@@ -24,7 +24,7 @@ #include "storage_p.h" #include <QtCore/QTimerEvent> -#include <QtCore/QElapsedTimer> +#include <QtCore/QTime> #include <QtCore/QBasicTimer> class QTimer; @@ -73,7 +73,7 @@ DataEngine::Data data; QMap<QObject *, SignalRelay *> relayObjects; QMap<uint, SignalRelay *> relays; - QElapsedTimer updateTimer; + QTime updateTs; Storage* storage; QBasicTimer storageTimer; QBasicTimer checkUsageTimer;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/plasma/private/dataengine_p.h -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/plasma/private/dataengine_p.h
Changed
@@ -21,10 +21,12 @@ #define DATAENGINE_P_H #include <QQueue> -#include <QElapsedTimer> +#include <QTime> #include <kplugininfo.h> +class QTime; + namespace Plasma { @@ -105,7 +107,7 @@ int checkSourcesTimerId; int updateTimerId; int minPollingInterval; - QElapsedTimer updateTimer; + QTime updateTimestamp; DataEngine::SourceDict sources; QQueue<DataContainer*> sourceQueue; QString icon;
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/plasma/tests/packagemetadatatest.desktop -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/plasma/tests/packagemetadatatest.desktop
Changed
@@ -125,7 +125,7 @@ Comment[nn]=Ei .desktop-fil for testing av PackageMetaData-klassen. Comment[pa]=PackageMetaData ਕਲਾਸ ਟੈਸਟ ਕਰਨ ਲਈ ਟੈਸਟ ਡੈਸਕਟਾਪ ਫਾਇਲ Comment[pl]=Plik testowy desktop do testowania klasy PackageMetaData. -Comment[pt]=Um ficheiro '.desktop' de testes para testar a classe PackageMetaData. +Comment[pt]=Um ficheiro 'desktop' de testes da classe PackageMetaData. Comment[pt_BR]=Um arquivo desktop de testes para a classe PackageMetaData. Comment[ro]=Un fișier de probă pentru a verifica clasa PackageMetadata. Comment[ru]=Тестовый файл .desktop для проверки класса PackageMetaData.
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/security/crypto/crypto.desktop -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/security/crypto/crypto.desktop
Changed
@@ -153,7 +153,7 @@ Comment[nn]=Set opp SSL, sertifikat og andre krypteringsinnstillingar Comment[or]=SSL ବିନ୍ୟାସ କରନ୍ତୁ, ପ୍ରମାଣପତ୍ର ପରିଚାଳନ, ଏବଂ ଅନ୍ୟ ଗୁଢଲେଖନ ବିନ୍ୟାସଗୁଡିକ Comment[pa]=SSL ਸੰਰਚਨਾ, ਸਰਟੀਫਿਕੇਟ ਪਰਬੰਧ, ਅਤੇ ਹੋਰ ਕਰਿਪਟੋਗਰਾਫ਼ੀ ਸੈਟਿੰਘ -Comment[pl]=Ustawienia SSL, zarządzanie certyfikatami i inne ustawienia kryptografii +Comment[pl]=Konfiguracja SSL, zarządzanie certyfikatami i inne ustawienia kryptografii Comment[pt]=Configurar o SSL, gerir os certificados e outras opções de criptografia Comment[pt_BR]=Configura SSL, gerencia certificados e outras configurações de criptografia Comment[ro]=Configurează SSL, administrează certificate și alte setări criptografice
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/solid/solid/backends/udev/udevmanager.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/solid/solid/backends/udev/udevmanager.cpp
Changed
@@ -130,7 +130,7 @@ device.subsystem() == QLatin1String("video4linux") || device.subsystem() == QLatin1String("net") || device.deviceProperty("ID_MEDIA_PLAYER").toString().isEmpty() == false || // media-player-info recognized devices - (device.deviceProperty("ID_GPHOTO2").toInt() == 1 && device.parent().deviceProperty("ID_GPHOTO2").toInt() != 1); // GPhoto2 cameras + device.deviceProperty("ID_GPHOTO2").toInt() == 1; // GPhoto2 cameras } bool UDevManager::Private::isLidBubtton(const UdevQt::Device& device)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/solid/solid/backends/upower/upowermanager.cpp -> _service:recompress:tar_scm:kdelibs-4.14.30.git20140909.a932980.tar.gz/solid/solid/backends/upower/upowermanager.cpp
Changed
@@ -64,18 +64,16 @@ } if (serviceFound) { - if (m_manager.metaObject()->indexOfSignal("DeviceAdded(QDBusObjectPath)") != -1) { - // for UPower >= 0.99.0, changed signature :o/ - connect(&m_manager, SIGNAL(DeviceAdded(QDBusObjectPath)), - this, SLOT(onDeviceAdded(QDBusObjectPath))); - connect(&m_manager, SIGNAL(DeviceRemoved(QDBusObjectPath)), - this, SLOT(onDeviceRemoved(QDBusObjectPath))); - } else { - connect(&m_manager, SIGNAL(DeviceAdded(QString)), - this, SIGNAL(deviceAdded(QString))); - connect(&m_manager, SIGNAL(DeviceRemoved(QString)), - this, SIGNAL(deviceRemoved(QString))); - } + connect(&m_manager, SIGNAL(DeviceAdded(QString)), + this, SIGNAL(deviceAdded(QString))); + connect(&m_manager, SIGNAL(DeviceRemoved(QString)), + this, SIGNAL(deviceRemoved(QString))); + + // for UPower >= 0.99.0, changed signature :o/ + connect(&m_manager, SIGNAL(DeviceAdded(QDBusObjectPath)), + this, SLOT(onDeviceAdded(QDBusObjectPath))); + connect(&m_manager, SIGNAL(DeviceRemoved(QDBusObjectPath)), + this, SLOT(onDeviceRemoved(QDBusObjectPath))); } }
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdeui/util/qosxkeychain.cpp
Deleted
@@ -1,723 +0,0 @@ -/* This file is part of the KDE project - * - * Copyright (C) 2014 René Bertin <rjvbertin@gmail.com> - * - * 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; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. - */ - -#include <cassert> -#include <sys/param.h> - -#include <QtGui/QApplication> -#include <QtCore/QtCore> -#include <QtCore/QPointer> -#include <QtGui/QWidget> - -#include "kwallet.h" -#include <kdebug.h> -using namespace KWallet; -#include "qosxkeychain.h" - -#include <CoreServices/CoreServices.h> - -//! Define INTERNET_TOO=1 in order to build read-access to the kSecInternetPasswordItemClass items -#define INTERNET_TOO 0 - -// #undef kWarning -// #undef kDebug -// #define kWarning qWarning -// #define kDebug qDebug - -// returns the textual representation of a FourCharCode (e.g. 'JPEG') -static QString OSTStr( FourCharCode etype ) -{ union OSTStr { - struct { - char startquote; - uint32_t four; - char endquote; - } __attribute__ ((packed)) value; - char representation[7]; - } __attribute__ ((packed)) ltype; - ltype.value.four = EndianU32_BtoN(etype); - ltype.representation[0] = ltype.representation[5] = '\''; - ltype.representation[6] = '\0'; - return QString::fromAscii(ltype.representation); -} - -static SecKeychainRef defaultChain() -{ QString errMsg; - SecKeychainRef keychain; - if( isError( SecKeychainCopyDefault(&keychain), &errMsg ) ){ - kWarning() << "Could not retrieve reference to default keychain:" << qPrintable(errMsg); - keychain = NULL; - } - return keychain; -} - -/*! Return a name for @p keychain, and possibly the full path to its file - * The name will be the equivalent of the `basename path .keychain` shell - * command. - */ -static QString keyChainName( SecKeychainRef keychain, QString *path=NULL ) -{ QFileInfo keyFile; - QString p = OSXKeychain::Path(keychain); - int ext = p.lastIndexOf(".keychain"); - keyFile = QFileInfo( ((ext > 0)? p.left(ext) : p) ); - if( path ){ - *path = QString(p); - } - return keyFile.fileName(); -} - -/*! Open an OS X keychain with name @p n. - * OS X keychains can be created without a full path (say, "kdewallet"), in which case they - * are stored e.g. as ~/Library/Keychains/kdewallet . However, opening a preexisting keychain like "login" - * without using the full path seems to fail even if e.g. ~/Library/Keychains/login exists. - * We try to work around that issue by matching @p n against the known keychain names. - */ -static OSStatus openKeychain( const QString &n, SecKeychainRef *keychain ) -{ OSStatus err; - CFArrayRef list = NULL; - - *keychain = NULL; - err = SecKeychainCopySearchList( &list ); - if( !err && list ){ - CFIndex len = CFArrayGetCount(list), i; - for( i = 0 ; i < len && !*keychain ; ++i ){ - SecKeychainRef kr = (SecKeychainRef) CFArrayGetValueAtIndex( list, i ); - QString path, name = keyChainName( kr, &path ); - if( name == n ){ - // a hit, try to open it! - err = SecKeychainOpen( path.toUtf8(), keychain ); - if( err ){ - kWarning() << "openKeychain(" << n << ") error" << err << "opening matching" << path; - } - else{ - kDebug() << "openKeychain(" << n << ") opened matching" << path; - } - } - } - CFRelease(list); - } - if( !*keychain ){ - err = SecKeychainOpen( n.toUtf8(), keychain ); - } - // we actually need to query the keychain's status to know if we succeeded - // in opening an existing keychain! - if( !err ){ - SecKeychainStatus status; - err = SecKeychainGetStatus( *keychain, &status ); - } - return err; -} - -static OSStatus basicWriteItem( const QByteArray *serviceName, const QByteArray &accountName, const QByteArray &value, - const SecKeychainRef keychain, SecKeychainItemRef *itemRef=NULL ) -{ OSStatus err; - QString errMsg; - if( serviceName ){ - err = SecKeychainAddGenericPassword( keychain, serviceName->size(), serviceName->constData(), - accountName.size(), accountName.constData(), - value.size(), value.constData(), itemRef ); - } - else{ - err = SecKeychainAddGenericPassword( keychain, 0, NULL, - accountName.size(), accountName.constData(), - value.size(), value.constData(), itemRef ); - } - if( err != errSecDuplicateItem && isError( err, &errMsg ) ){ - kWarning() << "Could not store password in keychain: " << qPrintable(errMsg); - } - return err; -} - -OSXKeychain::OSXKeychain() - : name("default") -{ QString errMsg; - keyChainRef = defaultChain(); - if( keyChainRef ){ - keyChainPath = OSXKeychain::Path(keyChainRef); - kDebug() << "Retrieved reference to default keychain" << (void*) keyChainRef << "in " << keyChainPath; - name = keyChainName(keyChainRef); - isDefaultKeychain = true; - } - else{ - keyChainPath = QString::fromUtf8("<undefined>"); - } - serviceList.clear(); - serviceList.append(""); -} - -OSXKeychain::OSXKeychain(const QString &n) - : name(n) -{ QString errMsg; - OSStatus err = openKeychain( n, &keyChainRef ); - - if( err == errSecNoSuchKeychain ){ - kWarning() << "Keychain '" << n << "' does not exist: attempting to create it"; - err = SecKeychainCreate( n.toUtf8(), 0, NULL, true, NULL, &keyChainRef ); - isKDEChain = true; - } - - if( isError( err, &errMsg ) ){ - // the protocol cannot handle failure to open a keychain, so we have to return the default. - keyChainRef = defaultChain(); - kWarning() << "Error opening keychain '" << n << "' (falling back to default keychain): " << qPrintable(errMsg); - name = keyChainName(keyChainRef); - isDefaultKeychain = true; - } - else{ - isDefaultKeychain = false; - } - - if( keyChainRef ){ - keyChainPath = OSXKeychain::Path(keyChainRef); - kDebug() << "Retrieved reference to keychain" << name << (void*) keyChainRef << "in " << keyChainPath; - } - else{ - keyChainPath = QString::fromUtf8("<undefined>"); - } - serviceList.clear(); - serviceList.append(""); -} - -void OSXKeychain::close() -{ - if( keyChainRef ){
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdeui/util/qosxkeychain.h
Deleted
@@ -1,200 +0,0 @@ -/* This file is part of the KDE project - * - * Copyright (C) 2014 René Bertin <rjvbertin@gmail.com> - * - * 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; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. - */ - -#include <Security/Security.h> -#include <Security/SecKeychain.h> - -namespace { - template <typename T> - struct CFReleaser { - explicit CFReleaser( const T& r ) : ref( r ) {} - ~CFReleaser() { if( ref ){ CFRelease( ref ); } } - T ref; - }; - - template <typename T> - struct CPPDeleter { - explicit CPPDeleter( const T& r ) : ptr( r ) {} - ~CPPDeleter() { if( ptr ){ delete ptr; } } - T ptr; - }; - - template <typename T> - struct CPPArrayDeleter { - explicit CPPArrayDeleter( const T& r ) : ptr( r ) {} - ~CPPArrayDeleter() { if( ptr ){ delete[] ptr; } } - T ptr; - }; - - template <typename T> - struct CacheOldValue { - explicit CacheOldValue( T &var, const T newVal ) - : oldVal(var), varRef(var) - { - var = newVal; - } - ~CacheOldValue() - { - varRef = oldVal; - } - T oldVal, &varRef; - }; -} - -static inline QString asQString( CFStringRef sr ) -{ CFIndex len = CFStringGetLength(sr)*2; - const CPPArrayDeleter<char*> buff(new char[len]); - if( CFStringGetCString( sr, buff.ptr, len, kCFStringEncodingUTF8 ) ){ - return QString::fromUtf8(buff.ptr); //RJVB: use UTF8 - } - else if( CFStringGetCString( sr, buff.ptr, len, kCFStringEncodingNonLossyASCII ) ){ - return QString::fromLocal8Bit(buff.ptr); - } - else{ - CFStringGetCString( sr, buff.ptr, len, NULL ); - return QString::fromLatin1(buff.ptr); - } -} - -static inline QString errorString( OSStatus s ) -{ - const CFReleaser<CFStringRef> ref( SecCopyErrorMessageString( s, NULL ) ); - return asQString( ref.ref ); -} - -static inline bool isError( OSStatus s, QString *errMsg ) -{ - if( errMsg ){ - *errMsg = errorString(s); - } - return s != 0; -} - -class OSXKeychain -{ -private: - SecKeychainRef keyChainRef; - QString keyChainPath; - bool isDefaultKeychain, generateFolderList; - -public: - enum EntryType { Unknown='K\?\?\?', Password='KPWD', Map='KMAP', Stream='KSTR' }; - QString name; - QString currentService, lastReadService; - QStringList serviceList; - bool isKDEChain; - - OSXKeychain(); - OSXKeychain(const QString &name); - virtual ~OSXKeychain(); - - inline SecKeychainRef reference() - { - return keyChainRef; - } - inline QString &path() - { - return keyChainPath; - } - inline bool isDefault() - { - return isDefaultKeychain; - } - inline bool isOpen() - { - return IsOpen(keyChainRef); - } - inline OSStatus lock() - { - return Lock(keyChainRef); - } - inline OSStatus unLock() - { - return UnLock(keyChainRef); - } - void close(); - inline bool hasItem(const QString &key, OSStatus *errReturn, SecKeychainItemRef *itemRef=NULL) - { - // qDebug() << "OSXKeychain::hasItem(" << key << "): scanning '" << name << "'=" << (void*) keyChainRef; - return OSXKeychain::HasItem( key, keyChainRef, errReturn, itemRef ); - } - inline OSStatus readItem(const QString &key, QByteArray *value, SecKeychainItemRef *itemRef=NULL) - { - return ReadItem( key, value, keyChainRef, itemRef, this ); - } - inline OSStatus itemType(const QString &key, EntryType *entryType) - { - return ItemType( key, entryType, keyChainRef ); - } - inline OSStatus removeItem(const QString &key) - { - return RemoveItem( key, keyChainRef ); - } - inline OSStatus writeItem( const QString &key, const QByteArray &value, EntryType *entryType=NULL ) - { - return WriteItem( key, value, keyChainRef, NULL, entryType, this ); - } - inline OSStatus writeItem( const QString &key, const QByteArray &value, const QString &comment, - EntryType *entryType=NULL ) - { - return WriteItem( key, value, comment, keyChainRef, entryType, this ); - } - inline OSStatus itemList( QStringList &keyList ) - { - return ItemList( keyChainRef, keyList, this ); - } - inline QStringList folderList() - { - QStringList r; - CacheOldValue<bool> gFL(generateFolderList, true); - ItemList( keyChainRef, r, this ); - r.clear(); - return serviceList; - } - OSStatus renameItem(const QString ¤tKey, const QString &newKey); - -#pragma mark ==== class methods aka static member functions ==== - static OSStatus KeychainList(QStringList &theList); - static QString Path(const SecKeychainRef keychain); - static bool IsOpen(const SecKeychainRef keychain); - static bool IsOpen(const QString& name); - static OSStatus UnLock(const SecKeychainRef keychain); - static OSStatus Lock(const SecKeychainRef keychain); - static OSStatus Lock(const QString &walletName); - /** use the keychain search functions to find the first matching item, if any, returning True if found. - The OS X error code is returned through @p errReturn when not NULL, the item itself through @p itemRef. - This reference will have to be released with CFRelease() when done with it (when @p itemRef==NULL the - function does this release itself). - */ - static bool HasItem(const QString &key, - const SecKeychainRef keychain, OSStatus *errReturn, SecKeychainItemRef *itemRef); - static OSStatus ReadItem(const QString &key, QByteArray *value, - const SecKeychainRef keychain, SecKeychainItemRef *itemRef=NULL, OSXKeychain *osxKeyChain=NULL); - static OSStatus ItemType(const QString &key, EntryType *entryType, - const SecKeychainRef keychain); - static OSStatus RemoveItem(const QString &key, const SecKeychainRef keychain); - static OSStatus WriteItem( const QString &key, const QByteArray &value, - const SecKeychainRef keychain, SecKeychainItemRef *itemRef=NULL, EntryType *entryType=NULL, OSXKeychain *osxKeyChain=NULL ); - static OSStatus WriteItem( const QString& key, const QByteArray& value, - const QString& comment, const SecKeychainRef keychain, EntryType *entryType, OSXKeychain *osxKeyChain=NULL ); - static OSStatus ItemList( const SecKeychainRef keychain, QStringList &keyList, OSXKeychain *osxKeyChain=NULL ); - static OSStatus Destroy( SecKeychainRef *keychain ); - static OSStatus Destroy( const QString &walletName );
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdoctools/tests
Deleted
-(directory)
View file
_service:recompress:tar_scm:kdelibs-4.14.30.git20141230.42bd1a3.tar.gz/kdoctools/tests/CMakeLists.txt
Deleted
@@ -1,5 +0,0 @@ -add_test( - NAME meinproc_template - COMMAND meinproc4 --srcdir ${CMAKE_CURRENT_BINARY_DIR}/.. ${CMAKE_CURRENT_SOURCE_DIR}/../template.docbook - WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} -)
View file
_service:set_version:kdelibs.dsc
Changed
@@ -2,7 +2,7 @@ Source: kde4libs Binary: libkdecore5, libkdeui5, libkpty4, libkdesu5, libkjsapi4, libkjsembed4, libkio5, libkntlm4, libsolid4, libkde3support4, libkfile4, libknewstuff2-4, libknewstuff3-4, libkparts4, libkutils4, libthreadweaver4, libkhtml5, libkimproxy4, libkmediaplayer4, libktexteditor4, libknotifyconfig4, libkdnssd4, libkrosscore4, libkrossui4, libnepomuk4, libnepomukutils4, libnepomukquery4a, libplasma3, libkunitconversion4, libkdewebkit5, libkcmutils4, libkemoticons4, libkidletime4, libkprintutils4, libkdeclarative5, kdelibs-bin, kdelibs5-plugins, kdelibs5-data, kdoctools, kdelibs5-dev, kdelibs5-dbg Architecture: any all -Version: 4.14.30.git20141230.42bd1a3 +Version: 4.14.30.git20140909.a932980 Maintainer: Kubuntu Developers <kubuntu-devel@lists.ubuntu.com> Uploaders: Sune Vuorela <sune@debian.org>, Fathi Boudra <fabo@debian.org>, Modestas Vainius <modax@debian.org>, George Kiagiadakis <kiagiadakis.george@gmail.com> Homepage: http://www.kde.org/
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.