From 59dd46ef985a719579132efa6a9aa49bfeeae112 Mon Sep 17 00:00:00 2001 From: Robert Xu Date: Sat, 31 Mar 2012 14:28:06 -0400 Subject: better late than never, hm... --- opensuse/core/tdelibs.old/.project | 12 + opensuse/core/tdelibs.old/10888-bt.tar.gz | Bin 0 -> 48208 bytes opensuse/core/tdelibs.old/3_5_BRANCH.diff | 126 + opensuse/core/tdelibs.old/CATALOG.kdelibs3.diff | 139 + .../core/tdelibs.old/add-suse-translations.diff | 14 + opensuse/core/tdelibs.old/admin.diff | 55 + opensuse/core/tdelibs.old/allow-man-setgid.diff | 32 + opensuse/core/tdelibs.old/api_docu_description | 36 + .../tdelibs.old/applications.menu-fallback.diff | 19 + opensuse/core/tdelibs.old/arts-acinclude.patch | 66 + opensuse/core/tdelibs.old/artwork.diff | 46 + opensuse/core/tdelibs.old/autostart-spec.diff | 55 + opensuse/core/tdelibs.old/avahi-pidfile.diff | 13 + opensuse/core/tdelibs.old/baselibs.conf | 3 + opensuse/core/tdelibs.old/bnc557126.diff | 21 + .../bug-382959_kabc_fix_vcardparser.patch | 562 ++ .../tdelibs.old/bug-399296_ftphandling-fix.diff | 57 + opensuse/core/tdelibs.old/bundle-locale-help.diff | 107 + opensuse/core/tdelibs.old/clever-menu.diff | 221 + opensuse/core/tdelibs.old/common_options | 156 + .../core/tdelibs.old/cr16-filesys-file_broken.png | Bin 0 -> 696 bytes opensuse/core/tdelibs.old/create-kdeapi | 107 + opensuse/core/tdelibs.old/default-useragent.diff | 13 + .../core/tdelibs.old/desktop-translations.diff | 209 + opensuse/core/tdelibs.old/disable-idn-support.diff | 34 + .../disable-samba-dialog-without-smb.diff | 66 + opensuse/core/tdelibs.old/do_make | 96 + opensuse/core/tdelibs.old/fileshare.diff | 296 + .../fix-dcopidlng-within-kdelibs-build.diff | 16 + .../core/tdelibs.old/fix-gnome-help-support.diff | 130 + .../tdelibs.old/fix-gnome-help-support_legacy.diff | 126 + opensuse/core/tdelibs.old/fix-kdemm-build.diff | 88 + .../core/tdelibs.old/fix-kerberos-printing.diff | 37 + opensuse/core/tdelibs.old/fix-macmenu.patch | 11 + opensuse/core/tdelibs.old/fix-qxembed.diff | 80 + .../core/tdelibs.old/flash-player-non-oss.diff | 44 + .../tdelibs.old/fontconfig-reverse-lookup.diff | 137 + opensuse/core/tdelibs.old/gcc44.diff | 20 + opensuse/core/tdelibs.old/gcc45.diff | 31 + opensuse/core/tdelibs.old/google-mail.diff | 18 + opensuse/core/tdelibs.old/ignore-inline-menu.diff | 18 + .../tdelibs.old/integrate-global-pixmaps-10.1.diff | 26 + .../tdelibs.old/integrate-global-pixmaps-new.diff | 13 + .../core/tdelibs.old/kcontrol_crash_patch.diff | 11 + opensuse/core/tdelibs.old/kde3rc.dif | 17 + opensuse/core/tdelibs.old/kde4-applications.diff | 70 + .../core/tdelibs.old/kdecode_fakes_include.diff | 18 + .../tdelibs.old/kdelibs-3.5.10-CVE-2009-2702.patch | 62 + .../tdelibs.old/kdelibs-3.5.10-cve-2009-1698.patch | 42 + .../tdelibs.old/kdelibs-3.5.10-cve-2009-1725.patch | 13 + ...delibs-3.5.10-cve-2009-2537-select-length.patch | 30 + opensuse/core/tdelibs.old/kdelibs-3.5.10-kio.patch | 47 + .../kdelibs-3.5.10-latex-syntax-kile-2.0.3.patch | 143 + .../core/tdelibs.old/kdelibs-3.5.10-ossl-1.x.patch | 180 + .../tdelibs.old/kdelibs-3.5.4-CVE-2009-1690.patch | 545 ++ .../tdelibs.old/kdelibs3-gcc-4.1-miscompile.diff | 15 + .../kdelibs3-hicolor-scalable-sizes.patch | 50 + .../tdelibs.old/kdelibs_networkstatus_branch2.diff | 69 + opensuse/core/tdelibs.old/kdemm-filepreview.diff | 40 + opensuse/core/tdelibs.old/kdemm.diff | 669 +++ .../core/tdelibs.old/kdeprint-restart-cupsd.diff | 32 + opensuse/core/tdelibs.old/kdeprint-utf8.diff | 13 + opensuse/core/tdelibs.old/kdesu-settings.diff | 50 + opensuse/core/tdelibs.old/kdeversion.diff | 13 + opensuse/core/tdelibs.old/kfile-beagle.diff | 42 + opensuse/core/tdelibs.old/kickoff-drop-shadow.diff | 177 + opensuse/core/tdelibs.old/kimproxy-warning.diff | 13 + opensuse/core/tdelibs.old/kmimelist.diff | 81 + .../core/tdelibs.old/kremoteencoding-utf8.diff | 28 + opensuse/core/tdelibs.old/ktip-icon-hack.diff | 56 + opensuse/core/tdelibs.old/kwalletd-try-open.diff | 81 + .../tdelibs.old/light_v_2_scrollbar_patch.patch | 34 + .../core/tdelibs.old/limit-max-image-size.diff | 28 + opensuse/core/tdelibs.old/lpoptions-cups-1.2.diff | 28 + opensuse/core/tdelibs.old/mimetype-changes.diff | 36 + opensuse/core/tdelibs.old/mozilla-sliders.patch | 19 + opensuse/core/tdelibs.old/networkstatus.diff | 6006 ++++++++++++++++++++ opensuse/core/tdelibs.old/no-debug-by-default.diff | 158 + .../no-progress-for-beagle-status-query.diff | 13 + opensuse/core/tdelibs.old/noauto-package.diff | 13 + opensuse/core/tdelibs.old/oom_score_adj.patch | 36 + .../core/tdelibs.old/patch-mimetype-iconnames.diff | 39 + .../tdelibs.old/prefer_distribution_settings.dif | 13 + opensuse/core/tdelibs.old/printpreview.patch | 14 + opensuse/core/tdelibs.old/r874968-ebay-crash.diff | 24 + .../core/tdelibs.old/rubberband-selection.diff | 380 ++ opensuse/core/tdelibs.old/show-distribution.diff | 21 + opensuse/core/tdelibs.old/silence.diff | 13 + opensuse/core/tdelibs.old/smooth-scrolling.diff | 267 + .../core/tdelibs.old/spellcheck-default-utf8.diff | 26 + opensuse/core/tdelibs.old/stat-on-media.diff | 14 + .../core/tdelibs.old/tdelibs-devel-doc.changes | 2956 ++++++++++ opensuse/core/tdelibs.old/tdelibs-devel-doc.spec | 115 + opensuse/core/tdelibs.old/tdelibs.changes | 4301 ++++++++++++++ opensuse/core/tdelibs.old/tdelibs.spec | 645 +++ opensuse/core/tdelibs.old/tdelibs.spec.old | 826 +++ opensuse/core/tdelibs.old/tderc | 11 + .../core/tdelibs.old/textcompletion-editor.diff | 344 ++ opensuse/core/tdelibs.old/use-mediamanager.diff | 44 + .../core/tdelibs.old/use-xauthlocalhostname.diff | 240 + ...icedocument.presentationml.presentation.desktop | 10 + ...mats-officedocument.spreadsheetml.sheet.desktop | 10 + ...fficedocument.wordprocessingml.document.desktop | 10 + opensuse/core/tdelibs.old/x-jar-desktop.diff | 10 + .../core/tdelibs.old/x-kde-InitialPreference.diff | 16 + opensuse/core/tdelibs.old/xinerama.patch | 543 ++ opensuse/core/tdelibs.old/xml-catalog.diff | 44 + opensuse/core/tdelibs.old/xmlhttprequest_3.x.diff | 47 + opensuse/core/tdelibs/.project | 12 - opensuse/core/tdelibs/3_5_BRANCH.diff | 126 - opensuse/core/tdelibs/CATALOG.kdelibs3.diff | 139 - opensuse/core/tdelibs/add-suse-translations.diff | 22 +- opensuse/core/tdelibs/admin.diff | 55 - opensuse/core/tdelibs/admin.tar.bz2 | Bin 188090 -> 0 bytes opensuse/core/tdelibs/allow-man-setgid.diff | 32 - .../core/tdelibs/applications.menu-fallback.diff | 4 +- opensuse/core/tdelibs/arts-acinclude.patch | 12 +- opensuse/core/tdelibs/artwork.diff | 46 - opensuse/core/tdelibs/autostart-spec.diff | 55 - opensuse/core/tdelibs/avahi-pidfile.diff | 13 - opensuse/core/tdelibs/bnc557126.diff | 21 - .../tdelibs/bug-382959_kabc_fix_vcardparser.patch | 330 +- .../core/tdelibs/bug-399296_ftphandling-fix.diff | 57 - opensuse/core/tdelibs/bundle-locale-help.diff | 107 - opensuse/core/tdelibs/clever-menu.diff | 221 - opensuse/core/tdelibs/default-useragent.diff | 6 +- opensuse/core/tdelibs/desktop-translations.diff | 209 - opensuse/core/tdelibs/disable-idn-support.diff | 12 +- .../tdelibs/disable-samba-dialog-without-smb.diff | 66 - opensuse/core/tdelibs/fileshare.diff | 296 - .../fix-dcopidlng-within-kdelibs-build.diff | 8 +- opensuse/core/tdelibs/fix-gnome-help-support.diff | 52 +- .../tdelibs/fix-gnome-help-support_legacy.diff | 46 +- opensuse/core/tdelibs/fix-kdemm-build.diff | 88 - opensuse/core/tdelibs/fix-kerberos-printing.diff | 37 - opensuse/core/tdelibs/fix-macmenu.patch | 11 - opensuse/core/tdelibs/fix-qxembed.diff | 80 - opensuse/core/tdelibs/flash-player-non-oss.diff | 64 +- .../core/tdelibs/fontconfig-reverse-lookup.diff | 137 - opensuse/core/tdelibs/gcc44.diff | 20 - opensuse/core/tdelibs/gcc45.diff | 31 - opensuse/core/tdelibs/google-mail.diff | 18 - opensuse/core/tdelibs/ignore-inline-menu.diff | 6 +- .../tdelibs/integrate-global-pixmaps-10.1.diff | 14 +- .../core/tdelibs/integrate-global-pixmaps-new.diff | 10 +- opensuse/core/tdelibs/kcontrol_crash_patch.diff | 11 - opensuse/core/tdelibs/kde3rc.dif | 18 +- opensuse/core/tdelibs/kde4-applications.diff | 70 - opensuse/core/tdelibs/kdecode_fakes_include.diff | 18 - .../tdelibs/kdelibs-3.5.10-CVE-2009-2702.patch | 62 - .../tdelibs/kdelibs-3.5.10-cve-2009-1698.patch | 42 - .../tdelibs/kdelibs-3.5.10-cve-2009-1725.patch | 13 - opensuse/core/tdelibs/kdelibs-3.5.10-kio.patch | 21 +- .../kdelibs-3.5.10-latex-syntax-kile-2.0.3.patch | 143 - .../core/tdelibs/kdelibs-3.5.10-ossl-1.x.patch | 180 - .../core/tdelibs/kdelibs-3.5.4-CVE-2009-1690.patch | 545 -- .../core/tdelibs/kdelibs3-gcc-4.1-miscompile.diff | 15 - .../tdelibs/kdelibs3-hicolor-scalable-sizes.patch | 2 +- .../tdelibs/kdelibs_networkstatus_branch2.diff | 69 - opensuse/core/tdelibs/kdemm-20050330.tar.bz2 | Bin 42068 -> 0 bytes opensuse/core/tdelibs/kdemm-filepreview.diff | 40 - opensuse/core/tdelibs/kdemm.diff | 669 --- opensuse/core/tdelibs/kdeprint-restart-cupsd.diff | 38 +- opensuse/core/tdelibs/kdeprint-utf8.diff | 13 - opensuse/core/tdelibs/kdesu-settings.diff | 50 - opensuse/core/tdelibs/kdeversion.diff | 8 +- opensuse/core/tdelibs/kfile-beagle.diff | 42 - opensuse/core/tdelibs/kickoff-drop-shadow.diff | 177 - opensuse/core/tdelibs/kimproxy-warning.diff | 13 - opensuse/core/tdelibs/kmimelist.diff | 81 - opensuse/core/tdelibs/kremoteencoding-utf8.diff | 28 - opensuse/core/tdelibs/ktip-icon-hack.diff | 56 - opensuse/core/tdelibs/kwalletd-try-open.diff | 81 - .../core/tdelibs/light_v_2_scrollbar_patch.patch | 34 - opensuse/core/tdelibs/limit-max-image-size.diff | 28 - opensuse/core/tdelibs/lpoptions-cups-1.2.diff | 28 - opensuse/core/tdelibs/mimetype-changes.diff | 36 - opensuse/core/tdelibs/mozilla-sliders.patch | 19 - opensuse/core/tdelibs/networkstatus.diff | 6006 -------------------- opensuse/core/tdelibs/no-debug-by-default.diff | 40 +- .../no-progress-for-beagle-status-query.diff | 13 - opensuse/core/tdelibs/noauto-package.diff | 2 +- opensuse/core/tdelibs/oom_score_adj.patch | 36 - .../core/tdelibs/patch-mimetype-iconnames.diff | 39 - .../core/tdelibs/prefer_distribution_settings.dif | 14 +- opensuse/core/tdelibs/printpreview.patch | 14 - opensuse/core/tdelibs/r874968-ebay-crash.diff | 24 - opensuse/core/tdelibs/rubberband-selection.diff | 380 -- opensuse/core/tdelibs/show-distribution.diff | 21 - opensuse/core/tdelibs/silence.diff | 13 - opensuse/core/tdelibs/smooth-scrolling.diff | 267 - opensuse/core/tdelibs/spellcheck-default-utf8.diff | 26 - opensuse/core/tdelibs/stat-on-media.diff | 14 - opensuse/core/tdelibs/tdelibs-devel-doc.spec | 6 +- opensuse/core/tdelibs/tdelibs.spec | 90 +- opensuse/core/tdelibs/tdelibs.spec.old | 826 --- opensuse/core/tdelibs/textcompletion-editor.diff | 344 -- opensuse/core/tdelibs/use-mediamanager.diff | 44 - opensuse/core/tdelibs/use-xauthlocalhostname.diff | 240 - opensuse/core/tdelibs/x-kde-InitialPreference.diff | 16 - opensuse/core/tdelibs/xinerama.patch | 543 -- opensuse/core/tdelibs/xml-catalog.diff | 44 - opensuse/core/tdelibs/xmlhttprequest_3.x.diff | 47 - 203 files changed, 23743 insertions(+), 13796 deletions(-) create mode 100644 opensuse/core/tdelibs.old/.project create mode 100644 opensuse/core/tdelibs.old/10888-bt.tar.gz create mode 100644 opensuse/core/tdelibs.old/3_5_BRANCH.diff create mode 100644 opensuse/core/tdelibs.old/CATALOG.kdelibs3.diff create mode 100644 opensuse/core/tdelibs.old/add-suse-translations.diff create mode 100644 opensuse/core/tdelibs.old/admin.diff create mode 100644 opensuse/core/tdelibs.old/allow-man-setgid.diff create mode 100644 opensuse/core/tdelibs.old/api_docu_description create mode 100644 opensuse/core/tdelibs.old/applications.menu-fallback.diff create mode 100644 opensuse/core/tdelibs.old/arts-acinclude.patch create mode 100644 opensuse/core/tdelibs.old/artwork.diff create mode 100644 opensuse/core/tdelibs.old/autostart-spec.diff create mode 100644 opensuse/core/tdelibs.old/avahi-pidfile.diff create mode 100644 opensuse/core/tdelibs.old/baselibs.conf create mode 100644 opensuse/core/tdelibs.old/bnc557126.diff create mode 100644 opensuse/core/tdelibs.old/bug-382959_kabc_fix_vcardparser.patch create mode 100644 opensuse/core/tdelibs.old/bug-399296_ftphandling-fix.diff create mode 100644 opensuse/core/tdelibs.old/bundle-locale-help.diff create mode 100644 opensuse/core/tdelibs.old/clever-menu.diff create mode 100644 opensuse/core/tdelibs.old/common_options create mode 100644 opensuse/core/tdelibs.old/cr16-filesys-file_broken.png create mode 100644 opensuse/core/tdelibs.old/create-kdeapi create mode 100644 opensuse/core/tdelibs.old/default-useragent.diff create mode 100644 opensuse/core/tdelibs.old/desktop-translations.diff create mode 100644 opensuse/core/tdelibs.old/disable-idn-support.diff create mode 100644 opensuse/core/tdelibs.old/disable-samba-dialog-without-smb.diff create mode 100644 opensuse/core/tdelibs.old/do_make create mode 100644 opensuse/core/tdelibs.old/fileshare.diff create mode 100644 opensuse/core/tdelibs.old/fix-dcopidlng-within-kdelibs-build.diff create mode 100644 opensuse/core/tdelibs.old/fix-gnome-help-support.diff create mode 100644 opensuse/core/tdelibs.old/fix-gnome-help-support_legacy.diff create mode 100644 opensuse/core/tdelibs.old/fix-kdemm-build.diff create mode 100644 opensuse/core/tdelibs.old/fix-kerberos-printing.diff create mode 100644 opensuse/core/tdelibs.old/fix-macmenu.patch create mode 100644 opensuse/core/tdelibs.old/fix-qxembed.diff create mode 100644 opensuse/core/tdelibs.old/flash-player-non-oss.diff create mode 100644 opensuse/core/tdelibs.old/fontconfig-reverse-lookup.diff create mode 100644 opensuse/core/tdelibs.old/gcc44.diff create mode 100644 opensuse/core/tdelibs.old/gcc45.diff create mode 100644 opensuse/core/tdelibs.old/google-mail.diff create mode 100644 opensuse/core/tdelibs.old/ignore-inline-menu.diff create mode 100644 opensuse/core/tdelibs.old/integrate-global-pixmaps-10.1.diff create mode 100644 opensuse/core/tdelibs.old/integrate-global-pixmaps-new.diff create mode 100644 opensuse/core/tdelibs.old/kcontrol_crash_patch.diff create mode 100644 opensuse/core/tdelibs.old/kde3rc.dif create mode 100644 opensuse/core/tdelibs.old/kde4-applications.diff create mode 100644 opensuse/core/tdelibs.old/kdecode_fakes_include.diff create mode 100644 opensuse/core/tdelibs.old/kdelibs-3.5.10-CVE-2009-2702.patch create mode 100644 opensuse/core/tdelibs.old/kdelibs-3.5.10-cve-2009-1698.patch create mode 100644 opensuse/core/tdelibs.old/kdelibs-3.5.10-cve-2009-1725.patch create mode 100644 opensuse/core/tdelibs.old/kdelibs-3.5.10-cve-2009-2537-select-length.patch create mode 100644 opensuse/core/tdelibs.old/kdelibs-3.5.10-kio.patch create mode 100644 opensuse/core/tdelibs.old/kdelibs-3.5.10-latex-syntax-kile-2.0.3.patch create mode 100644 opensuse/core/tdelibs.old/kdelibs-3.5.10-ossl-1.x.patch create mode 100644 opensuse/core/tdelibs.old/kdelibs-3.5.4-CVE-2009-1690.patch create mode 100644 opensuse/core/tdelibs.old/kdelibs3-gcc-4.1-miscompile.diff create mode 100644 opensuse/core/tdelibs.old/kdelibs3-hicolor-scalable-sizes.patch create mode 100644 opensuse/core/tdelibs.old/kdelibs_networkstatus_branch2.diff create mode 100644 opensuse/core/tdelibs.old/kdemm-filepreview.diff create mode 100644 opensuse/core/tdelibs.old/kdemm.diff create mode 100644 opensuse/core/tdelibs.old/kdeprint-restart-cupsd.diff create mode 100644 opensuse/core/tdelibs.old/kdeprint-utf8.diff create mode 100644 opensuse/core/tdelibs.old/kdesu-settings.diff create mode 100644 opensuse/core/tdelibs.old/kdeversion.diff create mode 100644 opensuse/core/tdelibs.old/kfile-beagle.diff create mode 100644 opensuse/core/tdelibs.old/kickoff-drop-shadow.diff create mode 100644 opensuse/core/tdelibs.old/kimproxy-warning.diff create mode 100644 opensuse/core/tdelibs.old/kmimelist.diff create mode 100644 opensuse/core/tdelibs.old/kremoteencoding-utf8.diff create mode 100644 opensuse/core/tdelibs.old/ktip-icon-hack.diff create mode 100644 opensuse/core/tdelibs.old/kwalletd-try-open.diff create mode 100644 opensuse/core/tdelibs.old/light_v_2_scrollbar_patch.patch create mode 100644 opensuse/core/tdelibs.old/limit-max-image-size.diff create mode 100644 opensuse/core/tdelibs.old/lpoptions-cups-1.2.diff create mode 100644 opensuse/core/tdelibs.old/mimetype-changes.diff create mode 100644 opensuse/core/tdelibs.old/mozilla-sliders.patch create mode 100644 opensuse/core/tdelibs.old/networkstatus.diff create mode 100644 opensuse/core/tdelibs.old/no-debug-by-default.diff create mode 100644 opensuse/core/tdelibs.old/no-progress-for-beagle-status-query.diff create mode 100644 opensuse/core/tdelibs.old/noauto-package.diff create mode 100644 opensuse/core/tdelibs.old/oom_score_adj.patch create mode 100644 opensuse/core/tdelibs.old/patch-mimetype-iconnames.diff create mode 100644 opensuse/core/tdelibs.old/prefer_distribution_settings.dif create mode 100644 opensuse/core/tdelibs.old/printpreview.patch create mode 100644 opensuse/core/tdelibs.old/r874968-ebay-crash.diff create mode 100644 opensuse/core/tdelibs.old/rubberband-selection.diff create mode 100644 opensuse/core/tdelibs.old/show-distribution.diff create mode 100644 opensuse/core/tdelibs.old/silence.diff create mode 100644 opensuse/core/tdelibs.old/smooth-scrolling.diff create mode 100644 opensuse/core/tdelibs.old/spellcheck-default-utf8.diff create mode 100644 opensuse/core/tdelibs.old/stat-on-media.diff create mode 100644 opensuse/core/tdelibs.old/tdelibs-devel-doc.changes create mode 100644 opensuse/core/tdelibs.old/tdelibs-devel-doc.spec create mode 100644 opensuse/core/tdelibs.old/tdelibs.changes create mode 100644 opensuse/core/tdelibs.old/tdelibs.spec create mode 100644 opensuse/core/tdelibs.old/tdelibs.spec.old create mode 100644 opensuse/core/tdelibs.old/tderc create mode 100644 opensuse/core/tdelibs.old/textcompletion-editor.diff create mode 100644 opensuse/core/tdelibs.old/use-mediamanager.diff create mode 100644 opensuse/core/tdelibs.old/use-xauthlocalhostname.diff create mode 100644 opensuse/core/tdelibs.old/vnd.openxmlformats-officedocument.presentationml.presentation.desktop create mode 100644 opensuse/core/tdelibs.old/vnd.openxmlformats-officedocument.spreadsheetml.sheet.desktop create mode 100644 opensuse/core/tdelibs.old/vnd.openxmlformats-officedocument.wordprocessingml.document.desktop create mode 100644 opensuse/core/tdelibs.old/x-jar-desktop.diff create mode 100644 opensuse/core/tdelibs.old/x-kde-InitialPreference.diff create mode 100644 opensuse/core/tdelibs.old/xinerama.patch create mode 100644 opensuse/core/tdelibs.old/xml-catalog.diff create mode 100644 opensuse/core/tdelibs.old/xmlhttprequest_3.x.diff delete mode 100644 opensuse/core/tdelibs/.project delete mode 100644 opensuse/core/tdelibs/3_5_BRANCH.diff delete mode 100644 opensuse/core/tdelibs/CATALOG.kdelibs3.diff delete mode 100644 opensuse/core/tdelibs/admin.diff delete mode 100644 opensuse/core/tdelibs/admin.tar.bz2 delete mode 100644 opensuse/core/tdelibs/allow-man-setgid.diff delete mode 100644 opensuse/core/tdelibs/artwork.diff delete mode 100644 opensuse/core/tdelibs/autostart-spec.diff delete mode 100644 opensuse/core/tdelibs/avahi-pidfile.diff delete mode 100644 opensuse/core/tdelibs/bnc557126.diff delete mode 100644 opensuse/core/tdelibs/bug-399296_ftphandling-fix.diff delete mode 100644 opensuse/core/tdelibs/bundle-locale-help.diff delete mode 100644 opensuse/core/tdelibs/clever-menu.diff delete mode 100644 opensuse/core/tdelibs/desktop-translations.diff delete mode 100644 opensuse/core/tdelibs/disable-samba-dialog-without-smb.diff delete mode 100644 opensuse/core/tdelibs/fileshare.diff delete mode 100644 opensuse/core/tdelibs/fix-kdemm-build.diff delete mode 100644 opensuse/core/tdelibs/fix-kerberos-printing.diff delete mode 100644 opensuse/core/tdelibs/fix-macmenu.patch delete mode 100644 opensuse/core/tdelibs/fix-qxembed.diff delete mode 100644 opensuse/core/tdelibs/fontconfig-reverse-lookup.diff delete mode 100644 opensuse/core/tdelibs/gcc44.diff delete mode 100644 opensuse/core/tdelibs/gcc45.diff delete mode 100644 opensuse/core/tdelibs/google-mail.diff delete mode 100644 opensuse/core/tdelibs/kcontrol_crash_patch.diff delete mode 100644 opensuse/core/tdelibs/kde4-applications.diff delete mode 100644 opensuse/core/tdelibs/kdecode_fakes_include.diff delete mode 100644 opensuse/core/tdelibs/kdelibs-3.5.10-CVE-2009-2702.patch delete mode 100644 opensuse/core/tdelibs/kdelibs-3.5.10-cve-2009-1698.patch delete mode 100644 opensuse/core/tdelibs/kdelibs-3.5.10-cve-2009-1725.patch delete mode 100644 opensuse/core/tdelibs/kdelibs-3.5.10-latex-syntax-kile-2.0.3.patch delete mode 100644 opensuse/core/tdelibs/kdelibs-3.5.10-ossl-1.x.patch delete mode 100644 opensuse/core/tdelibs/kdelibs-3.5.4-CVE-2009-1690.patch delete mode 100644 opensuse/core/tdelibs/kdelibs3-gcc-4.1-miscompile.diff delete mode 100644 opensuse/core/tdelibs/kdelibs_networkstatus_branch2.diff delete mode 100644 opensuse/core/tdelibs/kdemm-20050330.tar.bz2 delete mode 100644 opensuse/core/tdelibs/kdemm-filepreview.diff delete mode 100644 opensuse/core/tdelibs/kdemm.diff delete mode 100644 opensuse/core/tdelibs/kdeprint-utf8.diff delete mode 100644 opensuse/core/tdelibs/kdesu-settings.diff delete mode 100644 opensuse/core/tdelibs/kfile-beagle.diff delete mode 100644 opensuse/core/tdelibs/kickoff-drop-shadow.diff delete mode 100644 opensuse/core/tdelibs/kimproxy-warning.diff delete mode 100644 opensuse/core/tdelibs/kmimelist.diff delete mode 100644 opensuse/core/tdelibs/kremoteencoding-utf8.diff delete mode 100644 opensuse/core/tdelibs/ktip-icon-hack.diff delete mode 100644 opensuse/core/tdelibs/kwalletd-try-open.diff delete mode 100644 opensuse/core/tdelibs/light_v_2_scrollbar_patch.patch delete mode 100644 opensuse/core/tdelibs/limit-max-image-size.diff delete mode 100644 opensuse/core/tdelibs/lpoptions-cups-1.2.diff delete mode 100644 opensuse/core/tdelibs/mimetype-changes.diff delete mode 100644 opensuse/core/tdelibs/mozilla-sliders.patch delete mode 100644 opensuse/core/tdelibs/networkstatus.diff delete mode 100644 opensuse/core/tdelibs/no-progress-for-beagle-status-query.diff delete mode 100644 opensuse/core/tdelibs/oom_score_adj.patch delete mode 100644 opensuse/core/tdelibs/patch-mimetype-iconnames.diff delete mode 100644 opensuse/core/tdelibs/printpreview.patch delete mode 100644 opensuse/core/tdelibs/r874968-ebay-crash.diff delete mode 100644 opensuse/core/tdelibs/rubberband-selection.diff delete mode 100644 opensuse/core/tdelibs/show-distribution.diff delete mode 100644 opensuse/core/tdelibs/silence.diff delete mode 100644 opensuse/core/tdelibs/smooth-scrolling.diff delete mode 100644 opensuse/core/tdelibs/spellcheck-default-utf8.diff delete mode 100644 opensuse/core/tdelibs/stat-on-media.diff delete mode 100644 opensuse/core/tdelibs/tdelibs.spec.old delete mode 100644 opensuse/core/tdelibs/textcompletion-editor.diff delete mode 100644 opensuse/core/tdelibs/use-mediamanager.diff delete mode 100644 opensuse/core/tdelibs/use-xauthlocalhostname.diff delete mode 100644 opensuse/core/tdelibs/x-kde-InitialPreference.diff delete mode 100644 opensuse/core/tdelibs/xinerama.patch delete mode 100644 opensuse/core/tdelibs/xml-catalog.diff delete mode 100644 opensuse/core/tdelibs/xmlhttprequest_3.x.diff (limited to 'opensuse/core') diff --git a/opensuse/core/tdelibs.old/.project b/opensuse/core/tdelibs.old/.project new file mode 100644 index 000000000..de1dea1f3 --- /dev/null +++ b/opensuse/core/tdelibs.old/.project @@ -0,0 +1,12 @@ + + + tdelibs + + + + + + + org.eclipse.linuxtools.rpm.core.rpmnature + + diff --git a/opensuse/core/tdelibs.old/10888-bt.tar.gz b/opensuse/core/tdelibs.old/10888-bt.tar.gz new file mode 100644 index 000000000..8c94be571 Binary files /dev/null and b/opensuse/core/tdelibs.old/10888-bt.tar.gz differ diff --git a/opensuse/core/tdelibs.old/3_5_BRANCH.diff b/opensuse/core/tdelibs.old/3_5_BRANCH.diff new file mode 100644 index 000000000..6809b8aea --- /dev/null +++ b/opensuse/core/tdelibs.old/3_5_BRANCH.diff @@ -0,0 +1,126 @@ +package: kdelibs-3.5.10.tar.bz2 +kdemod: kdelibs +Index: BRANCH_STATUS +=================================================================== +--- /dev/null ++++ BRANCH_STATUS +@@ -0,0 +1,2 @@ ++current HEAD: 859452 ++svn di between //tags/KDE/3.5.10/kdelibs and //branches/KDE/3.5/kdelibs +Index: kinit/start_kdeinit.c +=================================================================== +--- kinit/start_kdeinit.c.orig ++++ kinit/start_kdeinit.c +@@ -44,7 +44,7 @@ static int set_protection( pid_t pid, in + { + char buf[ 1024 ]; + int procfile; +- sprintf( buf, "/proc/%d/oom_adj", pid ); ++ sprintf( buf, "/proc/%d/stat", pid ); + if( !enable ) { + /* Be paranoid and check that the pid we got from the pipe + belongs to this user. */ +@@ -52,6 +52,7 @@ static int set_protection( pid_t pid, in + if( lstat( buf, &st ) < 0 || st.st_uid != getuid()) + return 0; + } ++ sprintf( buf, "/proc/%d/oom_adj", pid ); + procfile = open( buf, O_WRONLY ); + if( procfile >= 0 ) { + if( enable ) +Index: kio/kio/configure.in.in +=================================================================== +--- kio/kio/configure.in.in.orig ++++ kio/kio/configure.in.in +@@ -139,8 +139,30 @@ if test "x$kde_enable_inotify" = "xyes"; + AC_LANG_RESTORE + ]) + +- if test "$kde_cv_have_inotify" = "yes" ; then ++ AC_CACHE_VAL(kde_cv_have_sys_inotify, ++ [ ++ kde_cv_have_sys_inotify=no ++ AC_LANG_SAVE ++ AC_LANG_C ++ ++ AC_TRY_COMPILE( ++ [ ++#include ++ ], ++ [ ++#ifndef IN_ALL_EVENTS ++#error no inotify notification ++#endif ++ ],kde_cv_have_sys_inotify=yes,kde_cv_have_sys_inotify=no) ++ ++ AC_LANG_RESTORE ++ ]) ++ ++ if test "$kde_cv_have_inotify" = "yes" -o "$kde_cv_have_sys_inotify" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_INOTIFY, 1, [Define if your system has Linux Inode Notification]) ++ if test "$kde_cv_have_sys_inotify" = "yes"; then ++ AC_DEFINE_UNQUOTED(HAVE_SYS_INOTIFY, 1, [Define if your system has glibc support for inotify]) ++ fi + AC_MSG_RESULT(yes) + else + AC_MSG_RESULT(no) +Index: kio/kio/kdirwatch.cpp +=================================================================== +--- kio/kio/kdirwatch.cpp.orig ++++ kio/kio/kdirwatch.cpp +@@ -64,11 +64,13 @@ + // debug + #include + +-#ifdef HAVE_INOTIFY ++#ifdef HAVE_SYS_INOTIFY ++#include ++#include ++#elif HAVE_INOTIFY + #include + #include + #include +-#include + // Linux kernel headers are documented to not compile + #define _S390_BITOPS_H + #include +@@ -87,7 +89,9 @@ static inline int inotify_rm_watch (int + { + return syscall (__NR_inotify_rm_watch, fd, wd); + } ++#endif + ++#ifdef HAVE_INOTIFY + #ifndef IN_ONLYDIR + #define IN_ONLYDIR 0x01000000 + #endif +@@ -99,7 +103,6 @@ static inline int inotify_rm_watch (int + #ifndef IN_MOVE_SELF + #define IN_MOVE_SELF 0x00000800 + #endif +- + #endif + + #include +Index: kdoctools/customization/pt-BR/user.entities +=================================================================== +--- kdoctools/customization/pt-BR/user.entities.orig ++++ kdoctools/customization/pt-BR/user.entities +@@ -17,7 +17,7 @@ + Esc"> + etc"> + por exemplo"> +-FAQ)"> ++FAQ)"> + HTML'> + + Centro de Informações"> +@@ -34,7 +34,7 @@ + esquerdo do mouse"> + meio do mouse"> + Sistema Operacional"> +-direto do mouse"> ++direito do mouse"> + Shift"> + bandeja do sistema"> + Tab"> diff --git a/opensuse/core/tdelibs.old/CATALOG.kdelibs3.diff b/opensuse/core/tdelibs.old/CATALOG.kdelibs3.diff new file mode 100644 index 000000000..5fac7cf92 --- /dev/null +++ b/opensuse/core/tdelibs.old/CATALOG.kdelibs3.diff @@ -0,0 +1,139 @@ +Index: kdelibs-3.5.10/CATALOG.kdelibs3 +=================================================================== +--- /dev/null ++++ kdelibs-3.5.10/CATALOG.kdelibs3 +@@ -0,0 +1,134 @@ ++-- ++Catalogue for KDE DocBook XML ++ ++Copyright (C) 2001,2002 Frederik Fouvry ++ ++This program is free software; you can redistribute it and/or ++modify it under the terms of the GNU General Public License ++as published by the Free Software Foundation; either version 2 ++of the License, or (at your option) any later version. ++ ++This program 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 General Public License for more details. ++ ++You should have received a copy of the GNU General Public License ++along with this program; if not, write to the Free Software ++Foundation, Inc., 51 Franklin Steet, Fifth Floor, Boston, MA 02110-1301, USA. ++ ++Send suggestions, comments, etc. to the KDE DocBook mailing list ++. ++-- ++ ++OVERRIDE YES ++-- SGMLDECL "xml.dcl" -- ++DTDDECL "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" /usr/share/sgml/opensp/xml.dcl ++DTDDECL "-//KDE//ELEMENTS DocBook XML Hierarchy Redeclarations 2 V1.0//EN" /usr/share/sgml/opensp/xml.dcl ++DTDDECL "-//KDE//ELEMENTS DocBook XML Pool Redeclarations V1.1//EN" /usr/share/sgml/opensp/xml.dcl ++DTDDECL "-//KDE//ELEMENTS DocBook XML Modifications (Restrictions) V1.1//EN" /usr/share/sgml/opensp/xml.dcl ++DTDDECL "-//KDE//ENTITIES DocBook XML General Entity Declarations V1.2//EN" /usr/share/sgml/opensp/xml.dcl ++DTDDECL "-//KDE//ENTITIES DocBook XML General Entity Declarations (Persons) V1.0//EN" /usr/share/sgml/opensp/xml.dcl ++DTDDECL "-//KDE//ENTITIES DocBook XML Localisation Entity Declarations V1.0//EN" /usr/share/sgml/opensp/xml.dcl ++ ++ -- DocBook -- ++ ++-- DocBook 4.2 KDE Variant V1.1 -- ++ ++PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" ++ "dtd/kdex.dtd" ++PUBLIC "-//KDE//ELEMENTS DocBook XML Hierarchy Redeclarations 2 V1.0//EN" ++ "dtd/rdbhier2.elements" ++PUBLIC "-//KDE//ELEMENTS DocBook XML Pool Redeclarations V1.1//EN" ++ "dtd/rdbpool.elements" ++PUBLIC "-//KDE//ELEMENTS DocBook XML Modifications (Restrictions) V1.1//EN" ++ "dtd/modifications.elements" ++ ++PUBLIC "-//KDE//ENTITIES DocBook XML General Entity Declarations V1.2//EN" ++ "entities/general.entities" ++PUBLIC "-//KDE//ENTITIES DocBook XML General Entity Declarations (Persons) V1.0//EN" ++ "entities/contributor.entities" ++ ++ -- General KDE Entities -- ++ ++PUBLIC "-//KDE//ENTITIES DocBook XML Localisation Entity Declarations V1.0//EN" ++ "entities/l10n.entities" ++ ++ -- Various external files -- ++ ++-- only DocBook XML files are in entities, the others are in ++ kdelibs/doc/common or in kdelibs/licenses -- ++ ++PUBLIC "-//GNU//DOCUMENT GNU General Public License V2//EN" ++ "entities/gpl-license" ++PUBLIC "-//GNU//DOCUMENT GNU Lesser General Public License V2.1//EN" ++ "entities/lgpl-license" ++PUBLIC "-//GNU//DOCUMENT GNU Free Documentation License V1.1//EN" ++ "entities/fdl-license" ++PUBLIC "-//KDE//DOCUMENT X11 License//EN" ++ "entities/x11-license" ++PUBLIC "-//KDE//DOCUMENT BSD License//EN" ++ "entities/bsd-license" ++PUBLIC "-//KDE//DOCUMENT Artistic License//EN" ++ "entities/artistic-license" ++ ++CATALOG af/catalog ++CATALOG bg/catalog ++CATALOG ca/catalog ++CATALOG cs/catalog ++CATALOG da/catalog ++CATALOG de/catalog ++CATALOG el/catalog ++CATALOG en/catalog ++CATALOG en-GB/catalog ++CATALOG es/catalog ++CATALOG et/catalog ++CATALOG fi/catalog ++CATALOG fo/catalog ++CATALOG fr/catalog ++CATALOG he/catalog ++CATALOG hu/catalog ++CATALOG id/catalog ++CATALOG it/catalog ++CATALOG ja/catalog ++CATALOG ko/catalog ++CATALOG lt/catalog ++CATALOG nl/catalog ++CATALOG no/catalog -- considered to be the same as nb -- ++CATALOG nn/catalog -- incorrectly known as no_NY -- ++CATALOG pl/catalog ++CATALOG pt-BR/catalog ++CATALOG pt/catalog ++CATALOG ro/catalog ++CATALOG ru/catalog ++CATALOG sk/catalog ++CATALOG sl/catalog ++CATALOG sr/catalog ++CATALOG sv/catalog ++CATALOG tr/catalog ++CATALOG uk/catalog ++CATALOG wa/catalog ++CATALOG xh/catalog ++CATALOG zh-CN/catalog ++CATALOG zh-TW/catalog ++ ++-- DocBook 4.1.2 KDE Variant V1.1 -- ++ ++PUBLIC "-//KDE//DTD DocBook XML V4.1.2-Based Variant V1.1//EN" ++ "obsolete/kdex.dtd" ++PUBLIC "-//KDE//ENTITIES DocBook XML General Entity Declarations V1.1//EN" ++ "obsolete/general.entities" ++PUBLIC "-//KDE//ELEMENTS DocBook XML Pool Redeclarations V1.0//EN" ++ "obsolete/rdbpool.elements" ++PUBLIC "-//KDE//ELEMENTS DocBook XML Modifications V1.0//EN" ++ "obsolete/modifications.elements" ++ ++-- DocBook 4.1.2 KDE Variant V1.0 -- ++ ++PUBLIC "-//KDE//DTD DocBook XML V4.1.2-Based Variant V1.0//EN" ++ "obsolete/kdex-412-10.dtd" ++ ++-- DocBook 4.1 KDE Variant V1.0 -- ++ ++PUBLIC "-//KDE//DTD DocBook XML V4.1-Based Variant V1.0//EN" ++ "obsolete/kdex-412-10.dtd" diff --git a/opensuse/core/tdelibs.old/add-suse-translations.diff b/opensuse/core/tdelibs.old/add-suse-translations.diff new file mode 100644 index 000000000..2cb8ce8cb --- /dev/null +++ b/opensuse/core/tdelibs.old/add-suse-translations.diff @@ -0,0 +1,14 @@ +Index: kdecore/klocale.cpp +=================================================================== +--- kdecore/klocale.cpp.orig ++++ kdecore/klocale.cpp +@@ -131,6 +131,9 @@ void KLocale::initMainCatalogues(const Q + d->catalogNames.append( mainCatalogue ); // application catalog + d->catalogNames.append( SYSTEM_MESSAGES ); // always include kdelibs.mo + d->catalogNames.append( "kio" ); // always include kio.mo ++ KGlobal::dirs()->addResourceDir("locale", "/usr/share/locale"); ++ d->catalogNames.append( "desktop_translations" ); ++ d->catalogNames.append( "susetranslations" ); + updateCatalogues(); // evaluate this for all languages + } + } diff --git a/opensuse/core/tdelibs.old/admin.diff b/opensuse/core/tdelibs.old/admin.diff new file mode 100644 index 000000000..8abac2426 --- /dev/null +++ b/opensuse/core/tdelibs.old/admin.diff @@ -0,0 +1,55 @@ +Index: admin/acinclude.m4.in +=================================================================== +--- admin/acinclude.m4.in.orig ++++ admin/acinclude.m4.in +@@ -4988,6 +4988,7 @@ AC_DEFUN([KDE_SET_PREFIX_CORE], + fi + # And delete superfluous '/' to make compares easier + prefix=`echo "$prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` ++ kde_libs_htmldir=$prefix/share/doc/HTML/ + exec_prefix=`echo "$exec_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` + + kde_libs_prefix='$(prefix)' +Index: admin/detect-autoconf.pl +=================================================================== +--- admin/detect-autoconf.pl.orig ++++ admin/detect-autoconf.pl +@@ -216,7 +216,7 @@ $unsermake = ""; + # backward compatible: if $UNSERMAKE points to a path, use it + $unsermake = findProgram('unsermake') if (defined($ENV{'UNSERMAKE'}) and $ENV{'UNSERMAKE'} =~ /\//); + # new compatible: if it says 'yes', use the one from path +-$unsermake = which('unsermake') if ($ENV{'UNSERMAKE'} ne 'no'); ++$unsermake = which('unsermake') if ($ENV{'UNSERMAKE'} eq 'yes'); + + ($automake_suffix) = $automake =~ /.*automake(.*)$/; + + +--- admin/cvs.sh ++++ admin/cvs.sh +@@ -32,7 +32,7 @@ check_autotool_versions() + required_autoconf_version="2.53 or newer" + AUTOCONF_VERSION=`$AUTOCONF --version | head -n 1` + case $AUTOCONF_VERSION in +- Autoconf*2.5* | autoconf*2.5* | autoconf*2.6* ) : ;; ++ autoconf* ) : ;; + "" ) + echo "*** AUTOCONF NOT FOUND!." + echo "*** KDE requires autoconf $required_autoconf_version" +@@ -47,7 +47,7 @@ esac + + AUTOHEADER_VERSION=`$AUTOHEADER --version | head -n 1` + case $AUTOHEADER_VERSION in +- Autoconf*2.5* | autoheader*2.5* | autoheader*2.6* ) : ;; ++ autoheader* ) : ;; + "" ) + echo "*** AUTOHEADER NOT FOUND!." + echo "*** KDE requires autoheader $required_autoconf_version" +@@ -68,7 +68,7 @@ case $AUTOMAKE_STRING in + echo "*** KDE requires automake $required_automake_version" + exit 1 + ;; +- automake*1.6.* | automake*1.7* | automake*1.8* | automake*1.9* | automake*1.10*) ++ automake*) + echo "*** $AUTOMAKE_STRING found." + UNSERMAKE=no + ;; diff --git a/opensuse/core/tdelibs.old/allow-man-setgid.diff b/opensuse/core/tdelibs.old/allow-man-setgid.diff new file mode 100644 index 000000000..51a47d720 --- /dev/null +++ b/opensuse/core/tdelibs.old/allow-man-setgid.diff @@ -0,0 +1,32 @@ +Index: kdecore/kapplication.cpp +=================================================================== +--- kdecore/kapplication.cpp.orig ++++ kdecore/kapplication.cpp +@@ -87,6 +87,8 @@ + #include + #endif + #include ++#include ++#include + + #ifndef Q_WS_WIN + #include "kwin.h" +@@ -776,10 +778,15 @@ void KApplication::init(bool GUIenabled) + { + d->guiEnabled = GUIenabled; + if ((getuid() != geteuid()) || +- (getgid() != getegid())) ++ (getgid() != getegid()) ) + { +- fprintf(stderr, "The KDE libraries are not designed to run with suid privileges.\n"); +- ::exit(127); ++ // man permissions are not exploitable and better than ++ // world writable directories ++ struct group *man = getgrnam("man"); ++ if ( !man || man->gr_gid != getegid() ){ ++ fprintf(stderr, "The KDE libraries are not designed to run with suid privileges.\n"); ++ ::exit(127); ++ } + } + + KProcessController::ref(); diff --git a/opensuse/core/tdelibs.old/api_docu_description b/opensuse/core/tdelibs.old/api_docu_description new file mode 100644 index 000000000..8c26424dd --- /dev/null +++ b/opensuse/core/tdelibs.old/api_docu_description @@ -0,0 +1,36 @@ +arts:KDE bindings for arts including knotify +dcop:The DCOP communications library +interfaces:Defines interfaces for common components so that new implementations can be dropped in +kabc:Access to the KDE address book +kate:Interfaces for the standard text editor KPart +kdecore: Core KDE classes that are not related to the user interface +kded:The KDE daemon interface, to observe your file system +kdejava:The KDE Java enviroment +kdeprint:High level printer control functionality +kdeui:KDE User interface classes such as widgets +kfile:High level access to the KDE network aware file abstraction +khtml:The KDE HTML component +kio:Low level access to network files. Also provides access to facilities such as KDirWatcher which monitors directories for changes +kjs:Javascript (aka. ECMAScript and JScript) support +kparts:Support for re-usable, embeddable, extendable applications +kspell:Easy access to the spell checker +kspell2:Easy access to the spell checker +kdefx:A library with pixmap effects +kssl:KDE secure socket layer interface +kutils:High-level utils, like search/replace support +kmdi:MultiDocument Interface library +kresources:The KDE resources system +kwallet:KDE password manager classes +kdeprint:High level printer control functionality +libkmid:Midi library +knewstuff:Upload and download of application data +dnssd:mDNS support library to request and register network services +kdemm:KDE Multimedia Framework +kcmshell:KControl module shell +kdesu:Change user helper framework +kdoctools:Documentation support +kimgio:Image Handlers +kinit:KDEinit support +kioslave:Basic IO slaves +kunittest:Support for unit tests +libkscreensaver:KDE screensavers diff --git a/opensuse/core/tdelibs.old/applications.menu-fallback.diff b/opensuse/core/tdelibs.old/applications.menu-fallback.diff new file mode 100644 index 000000000..69450dad8 --- /dev/null +++ b/opensuse/core/tdelibs.old/applications.menu-fallback.diff @@ -0,0 +1,19 @@ +Index: kded/kbuildsycoca.cpp +=================================================================== +--- kded/kbuildsycoca.cpp.orig ++++ kded/kbuildsycoca.cpp +@@ -378,8 +378,12 @@ bool KBuildSycoca::build() + + connect(g_vfolder, SIGNAL(newService(const QString &, KService **)), + this, SLOT(slotCreateEntry(const QString &, KService **))); +- +- VFolderMenu::SubMenu *kdeMenu = g_vfolder->parseMenu("applications.menu", true); ++ ++ VFolderMenu::SubMenu *kdeMenu; ++ if ( QFile::exists( "/etc/xdg/menus/applications.menu" ) ) ++ kdeMenu = g_vfolder->parseMenu("applications.menu", true); ++ else ++ kdeMenu = g_vfolder->parseMenu("applications.menu.kde", true); + + KServiceGroup *entry = g_bsgf->addNew("/", kdeMenu->directoryFile, 0, false); + entry->setLayoutInfo(kdeMenu->layoutList); diff --git a/opensuse/core/tdelibs.old/arts-acinclude.patch b/opensuse/core/tdelibs.old/arts-acinclude.patch new file mode 100644 index 000000000..0610d6df5 --- /dev/null +++ b/opensuse/core/tdelibs.old/arts-acinclude.patch @@ -0,0 +1,66 @@ +2009-12-10 Stepan Kasal + +The change of implementation of AC_REQUIRE in 2.64 caused a regression +in the arts project. +This can be fixed by shuffling some macro calls. + +I suppose that most of this patch will not be needed with a future +release of Autoconf. +But the last chunk of this patch is a real bug in this source and +should go upstream. + +--- arts-1.5.10/admin/acinclude.m4.in 2008-08-20 18:07:05.000000000 +0200 ++++ arts-1.5.10/admin/acinclude.m4.in 2009-12-09 17:30:57.000000000 +0100 +@@ -3081,8 +3081,18 @@ + fi + ]) + ++AC_DEFUN([AC_CHECK_COMPILERS_CC], ++[ ++ dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS ++ CFLAGS=" $CFLAGS" ++ AC_PROG_CC ++ CXXFLAGS=" $CXXFLAGS" ++ AC_PROG_CXX ++]) ++ + AC_DEFUN([AC_CHECK_COMPILERS], + [ ++ AC_REQUIRE([AC_CHECK_COMPILERS_CC]) + AC_ARG_ENABLE(debug, + AC_HELP_STRING([--enable-debug=ARG],[enables debug symbols (yes|no|full) [default=no]]), + [ +@@ -3141,11 +3151,6 @@ + [kde_use_profiling="no"] + ) + +- dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS +- CFLAGS=" $CFLAGS" +- +- AC_PROG_CC +- + AC_PROG_CPP + + if test "$GCC" = "yes"; then +@@ -3174,10 +3179,6 @@ + LDFLAGS="" + fi + +- CXXFLAGS=" $CXXFLAGS" +- +- AC_PROG_CXX +- + KDE_CHECK_FOR_BAD_COMPILER + + if test "$GXX" = "yes" || test "$CXX" = "KCC"; then +@@ -3503,8 +3504,8 @@ + AC_REQUIRE([AC_LIBTOOL_DLOPEN]) + AC_REQUIRE([KDE_CHECK_LIB64]) + +-AC_OBJEXT +-AC_EXEEXT ++AC_REQUIRE([AC_OBJEXT]) ++AC_REQUIRE([AC_EXEEXT]) + + AM_PROG_LIBTOOL + AC_LIBTOOL_CXX diff --git a/opensuse/core/tdelibs.old/artwork.diff b/opensuse/core/tdelibs.old/artwork.diff new file mode 100644 index 000000000..0c6742d22 --- /dev/null +++ b/opensuse/core/tdelibs.old/artwork.diff @@ -0,0 +1,46 @@ +Index: kdecore/eventsrc +=================================================================== +--- kdecore/eventsrc.orig ++++ kdecore/eventsrc +@@ -2572,7 +2572,7 @@ Comment[wa]=On messaedje critike est hå + Comment[zh_CN]=正在显示关键消息 + Comment[zh_HK]=顯示嚴重警告訊息 + Comment[zh_TW]=嚴重的警告訊息已顯示 +-default_sound=KDE_Glass_Break.ogg ++default_sound=KDE_Error_1.ogg + default_presentation=65 + nopresentation=18 + level=4 +Index: mimetypes/application/x-bittorrent.desktop +=================================================================== +--- mimetypes/application/x-bittorrent.desktop.orig ++++ mimetypes/application/x-bittorrent.desktop +@@ -1,4 +1,5 @@ + [Desktop Entry] ++Icon=torrent + Comment=BitTorrent Download + Comment[af]=BitTorrent Aflaai + Comment[ar]=ملف تنزيل BitTorrent +Index: mimetypes/application/x-msdos-program.desktop +=================================================================== +--- mimetypes/application/x-msdos-program.desktop.orig ++++ mimetypes/application/x-msdos-program.desktop +@@ -85,5 +85,5 @@ MimeType=application/x-msdos-program + X-KDE-IsAlso=application/x-executable + [Property::X-KDE-NativeExtension] + Type=QString +-Value=.exe ++Value=.exe;.EXE; + +Index: kresources/kresources.desktop +=================================================================== +--- kresources/kresources.desktop.orig ++++ kresources/kresources.desktop +@@ -1,6 +1,6 @@ + [Desktop Entry] + Exec=kcmshell kresources +-Icon=date ++Icon=about_kde + Type=Application + Terminal=false + diff --git a/opensuse/core/tdelibs.old/autostart-spec.diff b/opensuse/core/tdelibs.old/autostart-spec.diff new file mode 100644 index 000000000..a67a8e487 --- /dev/null +++ b/opensuse/core/tdelibs.old/autostart-spec.diff @@ -0,0 +1,55 @@ +Index: kdecore/kstandarddirs.cpp +=================================================================== +--- kdecore/kstandarddirs.cpp.orig ++++ kdecore/kstandarddirs.cpp +@@ -100,7 +100,7 @@ static const char* const types[] = {"htm + "wallpaper", "lib", "pixmap", "templates", + "module", "qtplugins", + "xdgdata-apps", "xdgdata-dirs", "xdgconf-menu", +- "xdgdata-icon", "xdgdata-pixmap", ++ "xdgdata-icon", "xdgdata-pixmap", "xdgconf-autostart", + "kcfg", "emoticons", 0 }; + + static int tokenize( QStringList& token, const QString& str, +@@ -1067,6 +1067,8 @@ QString KStandardDirs::kde_default(const + return "desktop-directories/"; + if (!strcmp(type, "xdgconf-menu")) + return "menus/"; ++ if (!strcmp(type, "xdgconf-autostart")) ++ return "autostart/"; + if (!strcmp(type, "kcfg")) + return "share/config.kcfg"; + if (!strcmp(type, "emoticons")) +Index: kinit/autostart.cpp +=================================================================== +--- kinit/autostart.cpp.orig ++++ kinit/autostart.cpp +@@ -104,7 +104,9 @@ static bool startCondition(const QString + void + AutoStart::loadAutoStartList() + { +- QStringList files = KGlobal::dirs()->findAllResources("autostart", "*.desktop", false, true); ++ QStringList files = KGlobal::dirs()->findAllResources("xdgconf-autostart", "*.desktop", false, true); ++ QStringList kdefiles = KGlobal::dirs()->findAllResources("autostart", "*.desktop", false, true); ++ files += kdefiles; + + for(QStringList::ConstIterator it = files.begin(); + it != files.end(); +@@ -129,6 +131,17 @@ AutoStart::loadAutoStartList() + continue; + } + ++ if (config.hasKey("OnlyShowIn")) ++ { ++ if (!config.readListEntry("OnlyShowIn", ';').contains("KDE")) ++ continue; ++ } ++ if (config.hasKey("NotShowIn")) ++ { ++ if (config.readListEntry("NotShowIn", ';').contains("KDE")) ++ continue; ++ } ++ + AutoStartItem *item = new AutoStartItem; + item->name = extractName(*it); + item->service = *it; diff --git a/opensuse/core/tdelibs.old/avahi-pidfile.diff b/opensuse/core/tdelibs.old/avahi-pidfile.diff new file mode 100644 index 000000000..62cd3d8da --- /dev/null +++ b/opensuse/core/tdelibs.old/avahi-pidfile.diff @@ -0,0 +1,13 @@ +Index: dnssd/servicebrowser.cpp +=================================================================== +--- dnssd/servicebrowser.cpp.orig ++++ dnssd/servicebrowser.cpp +@@ -30,7 +30,7 @@ + #include + #endif + +-#define MDNSD_PID "/var/run/mdnsd.pid" ++#define MDNSD_PID "/var/run/avahi-daemon/pid" + + namespace DNSSD + { diff --git a/opensuse/core/tdelibs.old/baselibs.conf b/opensuse/core/tdelibs.old/baselibs.conf new file mode 100644 index 000000000..903729278 --- /dev/null +++ b/opensuse/core/tdelibs.old/baselibs.conf @@ -0,0 +1,3 @@ +tdelibs +tdelibs-arts +tdelibs-default-style diff --git a/opensuse/core/tdelibs.old/bnc557126.diff b/opensuse/core/tdelibs.old/bnc557126.diff new file mode 100644 index 000000000..0782537b9 --- /dev/null +++ b/opensuse/core/tdelibs.old/bnc557126.diff @@ -0,0 +1,21 @@ +------------------------------------------------------------------------ +r1052100 | mueller | 2009-11-20 19:35:00 +0000 (Fri, 20 Nov 2009) | 2 lines +Changed paths: + M /branches/KDE/4.3/kdelibs/kjs/dtoa.cpp + +fix array overrun (CVE-2009-0689) + +------------------------------------------------------------------------ +Index: dtoa.cpp +=================================================================== +--- kjs/dtoa.cpp (revision 1052099) ++++ kjs/dtoa.cpp (revision 1052100) +@@ -457,7 +457,7 @@ + #define FREE_DTOA_LOCK(n) /*nothing*/ + #endif + +-#define Kmax 15 ++#define Kmax (sizeof(size_t) << 3) + + struct + Bigint { diff --git a/opensuse/core/tdelibs.old/bug-382959_kabc_fix_vcardparser.patch b/opensuse/core/tdelibs.old/bug-382959_kabc_fix_vcardparser.patch new file mode 100644 index 000000000..f7c3ee78d --- /dev/null +++ b/opensuse/core/tdelibs.old/bug-382959_kabc_fix_vcardparser.patch @@ -0,0 +1,562 @@ +Index: kabc/vcardconverter.cpp +=================================================================== +--- kabc/vcardconverter.cpp.orig ++++ kabc/vcardconverter.cpp +@@ -51,6 +51,14 @@ QString VCardConverter::createVCard( con + return createVCards( list, version ); + } + ++QCString VCardConverter::createVCardRaw( const Addressee &addr, Version version ) ++{ ++ Addressee::List list; ++ list.append( addr ); ++ ++ return createVCardsRaw( list, version ); ++} ++ + QString VCardConverter::createVCards( Addressee::List list, Version version ) + { + VCardTool tool; +@@ -58,6 +66,13 @@ QString VCardConverter::createVCards( Ad + return tool.createVCards( list, ( version == v3_0 ? VCard::v3_0 : VCard::v2_1 ) ); + } + ++QCString VCardConverter::createVCardsRaw( Addressee::List list, Version version ) ++{ ++ VCardTool tool; ++ ++ return tool.createVCardsRaw( list, ( version == v3_0 ? VCard::v3_0 : VCard::v2_1 ) ); ++} ++ + Addressee VCardConverter::parseVCard( const QString& vcard ) + { + Addressee::List list = parseVCards( vcard ); +@@ -65,6 +80,13 @@ Addressee VCardConverter::parseVCard( co + return list[ 0 ]; + } + ++Addressee VCardConverter::parseVCardRaw( const QCString& vcard ) ++{ ++ Addressee::List list = parseVCardsRaw( vcard ); ++ ++ return list[ 0 ]; ++} ++ + Addressee::List VCardConverter::parseVCards( const QString& vcard ) + { + VCardTool tool; +@@ -72,6 +94,13 @@ Addressee::List VCardConverter::parseVCa + return tool.parseVCards( vcard ); + } + ++Addressee::List VCardConverter::parseVCardsRaw( const QCString& vcard ) ++{ ++ VCardTool tool; ++ ++ return tool.parseVCardsRaw( vcard ); ++} ++ + // ---------------------------- deprecated stuff ---------------------------- // + + bool VCardConverter::vCardToAddressee( const QString &str, Addressee &addr, Version version ) +Index: kabc/vcardconverter.h +=================================================================== +--- kabc/vcardconverter.h.orig ++++ kabc/vcardconverter.h +@@ -82,6 +82,7 @@ class KABC_EXPORT VCardConverter + @param version The version of the generated vCard format + */ + QString createVCard( const Addressee &addr, Version version = v3_0 ); ++ QCString createVCardRaw( const Addressee &addr, Version version = v3_0 ); + + /** + Creates a string in vCard format which contains the given +@@ -92,6 +93,7 @@ class KABC_EXPORT VCardConverter + */ + // FIXME: Add error handling + QString createVCards( Addressee::List list, Version version = v3_0 ); ++ QCString createVCardsRaw( Addressee::List list, Version version = v3_0 ); + + // FIXME: Add "createVCards( AddressBook * )" + +@@ -99,12 +101,14 @@ class KABC_EXPORT VCardConverter + Parses a string in vCard format and returns the first contact. + */ + Addressee parseVCard( const QString& vcard ); ++ Addressee parseVCardRaw( const QCString& vcard ); + + /** + Parses a string in vCard format and returns a list of contact objects. + */ + // FIXME: Add error handling + Addressee::List parseVCards( const QString& vcard ); ++ Addressee::List parseVCardsRaw( const QCString& vcard ); + + // FIXME: Add "bool parseVCards( AddressBook *, const QString &vcard )" + +Index: kabc/vcardformatplugin.cpp +=================================================================== +--- kabc/vcardformatplugin.cpp.orig ++++ kabc/vcardformatplugin.cpp +@@ -38,14 +38,11 @@ VCardFormatPlugin::~VCardFormatPlugin() + + bool VCardFormatPlugin::load( Addressee &addressee, QFile *file ) + { +- QString data; +- +- QTextStream t( file ); +- t.setEncoding( QTextStream::Latin1 ); +- data = t.read(); ++ const QByteArray rawData = file->readAll(); ++ const QCString data( rawData.data(), rawData.size() ); + + VCardConverter converter; +- Addressee::List l = converter.parseVCards( data ); ++ Addressee::List l = converter.parseVCardsRaw( data ); + + if ( ! l.first().isEmpty() ) { + addressee = l.first(); +@@ -57,15 +54,11 @@ bool VCardFormatPlugin::load( Addressee + + bool VCardFormatPlugin::loadAll( AddressBook*, Resource *resource, QFile *file ) + { +- QString data; +- +- QTextStream t( file ); +- t.setEncoding( QTextStream::Latin1 ); +- data = t.read(); ++ const QByteArray rawData = file->readAll(); ++ const QCString data( rawData.data(), rawData.size() ); + + VCardConverter converter; +- +- Addressee::List l = converter.parseVCards( data ); ++ Addressee::List l = converter.parseVCardsRaw( data ); + + Addressee::List::iterator itr; + for ( itr = l.begin(); itr != l.end(); ++itr) { +@@ -86,9 +79,8 @@ void VCardFormatPlugin::save( const Addr + + vcardlist.append( addressee ); + +- QTextStream t( file ); +- t.setEncoding( QTextStream::UnicodeUTF8 ); +- t << converter.createVCards( vcardlist ); ++ const QCString data = converter.createVCardsRaw( vcardlist ); ++ file->writeBlock( data, data.length() ); + } + + void VCardFormatPlugin::saveAll( AddressBook*, Resource *resource, QFile *file ) +@@ -102,9 +94,8 @@ void VCardFormatPlugin::saveAll( Address + vcardlist.append( *it ); + } + +- QTextStream t( file ); +- t.setEncoding( QTextStream::UnicodeUTF8 ); +- t << converter.createVCards( vcardlist ); ++ const QCString data = converter.createVCardsRaw( vcardlist ); ++ file->writeBlock( data, data.length() ); + } + + bool VCardFormatPlugin::checkFormat( QFile *file ) const +Index: kabc/vcardparser/vcardparser.cpp +=================================================================== +--- kabc/vcardparser/vcardparser.cpp.orig ++++ kabc/vcardparser/vcardparser.cpp +@@ -18,10 +18,13 @@ + Boston, MA 02110-1301, USA. + */ + ++#include + #include + #include ++#include + + #include ++#include + + #include "vcardparser.h" + +@@ -29,25 +32,60 @@ + + using namespace KABC; + +-static QString backslash( "\\\\" ); +-static QString comma( "\\," ); +-static QString newline( "\\n" ); +-static QString cr( "\\r" ); ++typedef QValueList QCStringList; + +-static void addEscapes( QString &str ) ++QValueList splitCString( const QCString &str, char sep ) + { +- str.replace( '\\', backslash ); +- str.replace( ',', comma ); +- str.replace( '\r', cr ); +- str.replace( '\n', newline ); ++ QValueList list; ++ int start = 0; ++ int end; ++ while ((end = str.find(sep, start)) != -1) { ++ list.append(str.mid(start, end - start)); ++ start = end + 1; ++ } ++ list.append(str.mid(start)); ++ ++ return list; ++} ++ ++QValueList splitCString( const QCString &str, const QRegExp &exp ) ++{ ++ QValueList list; ++ int start = 0; ++ int end; ++ while ((end = str.find(exp, start)) != -1) { ++ list.append(str.mid(start, end - start)); ++ start = end + 1; ++ } ++ list.append(str.mid(start)); ++ ++ return list; ++} ++ ++bool cStringStartsWith( const QCString &str, const QCString &pattern ) ++{ ++ const int length = pattern.length(); ++ if ( length == 0 ) ++ return true; ++ ++ const QCString part = str.left( length ); ++ return (pattern == part); + } + +-static void removeEscapes( QString &str ) ++static void addEscapes( QCString &str ) + { +- str.replace( cr, "\\r" ); +- str.replace( newline, "\n" ); +- str.replace( comma, "," ); +- str.replace( backslash, "\\" ); ++ str.replace( '\\', "\\\\" ); ++ str.replace( ',', "\\," ); ++ str.replace( '\r', "\\r" ); ++ str.replace( '\n', "\\n" ); ++} ++ ++static void removeEscapes( QCString &str ) ++{ ++ str.replace( "\\r", "\r" ); ++ str.replace( "\\n", "\n" ); ++ str.replace( "\\,", "," ); ++ str.replace( "\\\\", "\\" ); + } + + VCardParser::VCardParser() +@@ -60,24 +98,29 @@ VCardParser::~VCardParser() + + VCard::List VCardParser::parseVCards( const QString& text ) + { ++ return parseVCardsRaw( text.utf8() ); ++} ++ ++VCard::List VCardParser::parseVCardsRaw( const QCString& text ) ++{ + static QRegExp sep( "[\x0d\x0a]" ); + + VCard currentVCard; + VCard::List vCardList; +- QString currentLine; ++ QCString currentLine; + +- const QStringList lines = QStringList::split( sep, text ); +- QStringList::ConstIterator it; ++ const QCStringList lines = splitCString( text, sep ); ++ QCStringList::ConstIterator it; + + bool inVCard = false; +- QStringList::ConstIterator linesEnd( lines.end() ); ++ QCStringList::ConstIterator linesEnd( lines.end() ); + for ( it = lines.begin(); it != linesEnd; ++it ) { + + if ( (*it).isEmpty() ) // empty line + continue; + + if ( (*it)[ 0 ] == ' ' || (*it)[ 0 ] == '\t' ) { // folded line => append to previous +- currentLine += QString( *it ).remove( 0, 1 ); ++ currentLine.append( (*it).mid( 1 ) ); + continue; + } else { + if ( inVCard && !currentLine.isEmpty() ) { // now parse the line +@@ -88,23 +131,23 @@ VCard::List VCardParser::parseVCards( co + } + + VCardLine vCardLine; +- const QString key = currentLine.left( colon ).stripWhiteSpace(); +- QString value = currentLine.mid( colon + 1 ); ++ const QCString key = currentLine.left( colon ).stripWhiteSpace(); ++ QCString value = currentLine.mid( colon + 1 ); + +- QStringList params = QStringList::split( ';', key ); ++ QCStringList params = splitCString( key, ';' ); + + // check for group + if ( params[0].find( '.' ) != -1 ) { +- const QStringList groupList = QStringList::split( '.', params[0] ); +- vCardLine.setGroup( groupList[0] ); +- vCardLine.setIdentifier( groupList[1] ); ++ const QCStringList groupList = splitCString( params[0], '.' ); ++ vCardLine.setGroup( QString::fromLatin1( groupList[0] ) ); ++ vCardLine.setIdentifier( QString::fromLatin1( groupList[1] ) ); + } else +- vCardLine.setIdentifier( params[0] ); ++ vCardLine.setIdentifier( QString::fromLatin1( params[0] ) ); + + if ( params.count() > 1 ) { // find all parameters +- QStringList::ConstIterator paramIt = params.begin(); ++ QCStringList::ConstIterator paramIt = params.begin(); + for ( ++paramIt; paramIt != params.end(); ++paramIt ) { +- QStringList pair = QStringList::split( '=', *paramIt ); ++ QCStringList pair = splitCString( *paramIt, '=' ); + if ( pair.size() == 1 ) { + // correct the fucking 2.1 'standard' + if ( pair[0].lower() == "quoted-printable" ) { +@@ -119,12 +162,12 @@ VCard::List VCardParser::parseVCards( co + } + // This is pretty much a faster pair[1].contains( ',' )... + if ( pair[1].find( ',' ) != -1 ) { // parameter in type=x,y,z format +- const QStringList args = QStringList::split( ',', pair[ 1 ] ); +- QStringList::ConstIterator argIt; ++ const QCStringList args = splitCString( pair[ 1 ], ',' ); ++ QCStringList::ConstIterator argIt; + for ( argIt = args.begin(); argIt != args.end(); ++argIt ) +- vCardLine.addParameter( pair[0].lower(), *argIt ); ++ vCardLine.addParameter( QString::fromLatin1( pair[0].lower() ), QString::fromLatin1( *argIt ) ); + } else +- vCardLine.addParameter( pair[0].lower(), pair[1] ); ++ vCardLine.addParameter( QString::fromLatin1( pair[0].lower() ), QString::fromLatin1( pair[1] ) ); + } + } + +@@ -133,10 +176,8 @@ VCard::List VCardParser::parseVCards( co + QByteArray output; + bool wasBase64Encoded = false; + +- params = vCardLine.parameterList(); +- if ( params.findIndex( "encoding" ) != -1 ) { // have to decode the data +- QByteArray input; +- input = QCString(value.latin1()); ++ if ( vCardLine.parameterList().findIndex( "encoding" ) != -1 ) { // have to decode the data ++ QByteArray input = value; + if ( vCardLine.parameter( "encoding" ).lower() == "b" || + vCardLine.parameter( "encoding" ).lower() == "base64" ) { + KCodecs::base64Decode( input, output ); +@@ -148,14 +189,14 @@ VCard::List VCardParser::parseVCards( co + value = value.remove( value.length() - 1, 1 ) + (*it); + ++it; + } +- input = QCString(value.latin1()); ++ input = value; + KCodecs::quotedPrintableDecode( input, output ); + } + } else { +- output = QCString(value.latin1()); ++ output = value; + } + +- if ( params.findIndex( "charset" ) != -1 ) { // have to convert the data ++ if ( vCardLine.parameterList().findIndex( "charset" ) != -1 ) { // have to convert the data + QTextCodec *codec = + QTextCodec::codecForName( vCardLine.parameter( "charset" ).latin1() ); + if ( codec ) { +@@ -173,17 +214,17 @@ VCard::List VCardParser::parseVCards( co + } + + // we do not save the start and end tag as vcardline +- if ( (*it).lower().startsWith( "begin:vcard" ) ) { ++ if ( cStringStartsWith( (*it).lower(), QCString( "begin:vcard" ) ) ) { + inVCard = true; +- currentLine.setLength( 0 ); ++ currentLine = QCString(); + currentVCard.clear(); // flush vcard + continue; + } + +- if ( (*it).lower().startsWith( "end:vcard" ) ) { ++ if ( cStringStartsWith( (*it).lower(), QCString( "end:vcard" ) ) ) { + inVCard = false; + vCardList.append( currentVCard ); +- currentLine.setLength( 0 ); ++ currentLine = QCString(); + currentVCard.clear(); // flush vcard + continue; + } +@@ -197,8 +238,13 @@ VCard::List VCardParser::parseVCards( co + + QString VCardParser::createVCards( const VCard::List& list ) + { +- QString text; +- QString textLine; ++ return QString::fromUtf8( createVCardsRaw( list ) ); ++} ++ ++QCString VCardParser::createVCardsRaw( const VCard::List& list ) ++{ ++ QCString text; ++ QCString textLine; + QString encodingType; + QStringList idents; + QStringList params; +@@ -213,7 +259,7 @@ QString VCardParser::createVCards( const + + bool hasEncoding; + +- text.reserve( list.size() * 300 ); // reserve memory to be more efficient ++// text.reserve( list.size() * 300 ); // reserve memory to be more efficient + + // iterate over the cards + VCard::List::ConstIterator listEnd( list.end() ); +@@ -228,9 +274,9 @@ QString VCardParser::createVCards( const + for ( lineIt = lines.constBegin(); lineIt != lines.constEnd(); ++lineIt ) { + if ( !(*lineIt).value().asString().isEmpty() ) { + if ( (*lineIt).hasGroup() ) +- textLine = (*lineIt).group() + "." + (*lineIt).identifier(); ++ textLine = (*lineIt).group().latin1() + QCString( "." ) + (*lineIt).identifier().latin1(); + else +- textLine = (*lineIt).identifier(); ++ textLine = (*lineIt).identifier().latin1(); + + params = (*lineIt).parameterList(); + hasEncoding = false; +@@ -243,9 +289,9 @@ QString VCardParser::createVCards( const + + values = (*lineIt).parameters( *paramIt ); + for ( valueIt = values.constBegin(); valueIt != values.constEnd(); ++valueIt ) { +- textLine.append( ";" + (*paramIt).upper() ); ++ textLine.append( QCString( ";" ) + (*paramIt).upper().latin1() ); + if ( !(*valueIt).isEmpty() ) +- textLine.append( "=" + (*valueIt) ); ++ textLine.append( QCString( "=" ) + (*valueIt).latin1() ); + } + } + } +@@ -261,11 +307,11 @@ QString VCardParser::createVCards( const + KCodecs::quotedPrintableEncode( input, output, false ); + } + +- QString value( output ); ++ QCString value( output ); + addEscapes( value ); + textLine.append( ":" + value ); + } else { +- QString value( (*lineIt).value().asString() ); ++ QCString value( (*lineIt).value().toString().utf8() ); + addEscapes( value ); + textLine.append( ":" + value ); + } +Index: kabc/vcardparser/vcardparser.h +=================================================================== +--- kabc/vcardparser/vcardparser.h.orig ++++ kabc/vcardparser/vcardparser.h +@@ -34,6 +34,9 @@ class VCardParser + static VCard::List parseVCards( const QString& text ); + static QString createVCards( const VCard::List& list ); + ++ static VCard::List parseVCardsRaw( const QCString& text ); ++ static QCString createVCardsRaw( const VCard::List& list ); ++ + private: + class VCardParserPrivate; + VCardParserPrivate *d; +Index: kabc/vcardtool.cpp +=================================================================== +--- kabc/vcardtool.cpp.orig ++++ kabc/vcardtool.cpp +@@ -74,15 +74,28 @@ VCardTool::~VCardTool() + { + } + +-// TODO: make list a const& ++QCString VCardTool::createVCardsRaw( Addressee::List list, VCard::Version version ) ++{ ++ const VCard::List vCardList = createVCardsInternal( list, version ); ++ ++ return VCardParser::createVCardsRaw( vCardList ); ++} ++ + QString VCardTool::createVCards( Addressee::List list, VCard::Version version ) + { +- VCard::List vCardList; ++ const VCard::List vCardList = createVCardsInternal( list, version ); ++ ++ return VCardParser::createVCards( vCardList ); ++} ++ ++KABC::VCard::List VCardTool::createVCardsInternal( Addressee::List list, KABC::VCard::Version version ) ++{ ++ KABC::VCard::List vCardList; + + Addressee::List::ConstIterator addrIt; + Addressee::List::ConstIterator listEnd( list.constEnd() ); + for ( addrIt = list.constBegin(); addrIt != listEnd; ++addrIt ) { +- VCard card; ++ KABC::VCard card; + QStringList::ConstIterator strIt; + + // ADR + LABEL +@@ -348,17 +361,30 @@ QString VCardTool::createVCards( Address + vCardList.append( card ); + } + +- return VCardParser::createVCards( vCardList ); ++ return vCardList; ++} ++ ++Addressee::List VCardTool::parseVCardsRaw( const QCString& vcard ) ++{ ++ const VCard::List vCardList = VCardParser::parseVCardsRaw( vcard ); ++ ++ return parseVCardsInternal( vCardList ); + } + + Addressee::List VCardTool::parseVCards( const QString& vcard ) + { ++ const VCard::List vCardList = VCardParser::parseVCards( vcard ); ++ ++ return parseVCardsInternal( vCardList ); ++} ++ ++Addressee::List VCardTool::parseVCardsInternal( const VCard::List &vCardList ) ++{ + static const QChar semicolonSep( ';' ); + static const QChar commaSep( ',' ); + QString identifier; + + Addressee::List addrList; +- const VCard::List vCardList = VCardParser::parseVCards( vcard ); + + VCard::List::ConstIterator cardIt; + VCard::List::ConstIterator listEnd( vCardList.end() ); +Index: kabc/vcardtool.h +=================================================================== +--- kabc/vcardtool.h.orig ++++ kabc/vcardtool.h +@@ -46,12 +46,19 @@ class KABC_EXPORT VCardTool + */ + QString createVCards( Addressee::List list, VCard::Version version = VCard::v3_0 ); + ++ QCString createVCardsRaw( Addressee::List list, VCard::Version version = VCard::v3_0 ); ++ + /** + Parses the string and returns a list of addressee objects. + */ + Addressee::List parseVCards( const QString& vcard ); + ++ Addressee::List parseVCardsRaw( const QCString& vcard ); ++ + private: ++ VCard::List createVCardsInternal( Addressee::List list, VCard::Version version ); ++ Addressee::List parseVCardsInternal( const VCard::List &vCardList ); ++ + /** + Split a string and replaces escaped separators on the fly with + unescaped ones. diff --git a/opensuse/core/tdelibs.old/bug-399296_ftphandling-fix.diff b/opensuse/core/tdelibs.old/bug-399296_ftphandling-fix.diff new file mode 100644 index 000000000..a8719ab92 --- /dev/null +++ b/opensuse/core/tdelibs.old/bug-399296_ftphandling-fix.diff @@ -0,0 +1,57 @@ +Index: kioslave/ftp/ftp.cc +=================================================================== +--- kioslave/ftp/ftp.cc.orig ++++ kioslave/ftp/ftp.cc +@@ -1275,6 +1275,16 @@ bool Ftp::ftpRename( const QString & src + return false; + } + ++ // Must check if dst already exists, RNFR+RNTO overwrites by default (#127793). ++ if (ftpFileExists(dst)) { ++ error(ERR_FILE_ALREADY_EXIST, dst); ++ return false; ++ } ++ if (ftpFolder(dst, false)) { ++ error(ERR_DIR_ALREADY_EXIST, dst); ++ return false; ++ } ++ + int pos = src.findRev("/"); + if( !ftpFolder(src.left(pos+1), false) ) + return false; +@@ -2406,6 +2416,19 @@ bool Ftp::ftpSize( const QString & path, + return true; + } + ++bool Ftp::ftpFileExists(const QString& path) ++{ ++ QCString buf; ++ buf = "SIZE "; ++ buf += remoteEncoding()->encode(path); ++ if( !ftpSendCmd( buf ) || (m_iRespType != 2) ) ++ return false; ++ ++ // skip leading "213 " (response code) ++ const char* psz = ftpResponse(4); ++ return psz != 0; ++} ++ + // Today the differences between ASCII and BINARY are limited to + // CR or CR/LF line terminators. Many servers ignore ASCII (like + // win2003 -or- vsftp with default config). In the early days of +Index: kioslave/ftp/ftp.h +=================================================================== +--- kioslave/ftp/ftp.h.orig ++++ kioslave/ftp/ftp.h +@@ -350,6 +350,11 @@ private: + /** + * Set the current working directory, but only if not yet current + */ ++ bool ftpFileExists(const QString& path); ++ ++ /** ++ * Set the current working directory, but only if not yet current ++ */ + bool ftpFolder(const QString& path, bool bReportError); + + /** diff --git a/opensuse/core/tdelibs.old/bundle-locale-help.diff b/opensuse/core/tdelibs.old/bundle-locale-help.diff new file mode 100644 index 000000000..8305fad3a --- /dev/null +++ b/opensuse/core/tdelibs.old/bundle-locale-help.diff @@ -0,0 +1,107 @@ +Index: kdecore/kstandarddirs.cpp +=================================================================== +--- kdecore/kstandarddirs.cpp.orig ++++ kdecore/kstandarddirs.cpp +@@ -94,8 +94,8 @@ KStandardDirsSingleton* KStandardDirsSin + return s_self; + } + +-static const char* const types[] = {"html", "icon", "apps", "sound", +- "data", "locale", "services", "mime", ++static const char* const types[] = {"html", "html-bundle", "icon", "apps", "sound", ++ "data", "locale", "locale-bundle", "services", "mime", + "servicetypes", "config", "exe", + "wallpaper", "lib", "pixmap", "templates", + "module", "qtplugins", +@@ -1023,6 +1023,8 @@ static int tokenize( QStringList& tokens + QString KStandardDirs::kde_default(const char *type) { + if (!strcmp(type, "data")) + return "share/apps/"; ++ if (!strcmp(type, "html-bundle")) ++ return "share/doc-bundle/HTML/"; + if (!strcmp(type, "html")) + return "share/doc/HTML/"; + if (!strcmp(type, "icon")) +@@ -1035,6 +1037,8 @@ QString KStandardDirs::kde_default(const + return "share/applnk/"; + if (!strcmp(type, "sound")) + return "share/sounds/"; ++ if (!strcmp(type, "locale-bundle")) ++ return "share/locale-bundle/"; + if (!strcmp(type, "locale")) + return "share/locale/"; + if (!strcmp(type, "services")) +Index: kdecore/kcatalogue.cpp +=================================================================== +--- kdecore/kcatalogue.cpp.orig ++++ kdecore/kcatalogue.cpp +@@ -66,7 +66,11 @@ KCatalogue::KCatalogue(const QString & n + .arg( d->language ) + .arg( d->name ); + +- setFileName( locate( "locale", path ) ); ++ QString fileName = locate( "locale", path ); ++ if (fileName.isEmpty()) ++ fileName = locate( "locale-bundle", path ); ++ ++ setFileName( fileName ); + + } + +Index: kdecore/klocale.cpp +=================================================================== +--- kdecore/klocale.cpp.orig ++++ kdecore/klocale.cpp +@@ -402,7 +402,11 @@ QString KLocale::catalogueFileName(const + .arg( language ) + .arg( catalog.name() ); + +- return locate( "locale", path ); ++ QString fileName = locate( "locale", path ); ++ if (fileName.isEmpty()) ++ fileName = locate( "locale-bundle", path ); ++ ++ return fileName; + } + + bool KLocale::setLanguage(const QString & language) +@@ -501,6 +505,9 @@ bool KLocale::isApplicationTranslatedInt + // kdDebug() << "isApplicationTranslatedInto: filename " << sFileName << endl; + + QString sAbsFileName = locate( "locale", sFileName ); ++ if (sAbsFileName.isEmpty()) ++ sAbsFileName = locate( "locale-bundle", sFileName ); ++ + // kdDebug() << "isApplicationTranslatedInto: absname " << sAbsFileName << endl; + return ! sAbsFileName.isEmpty(); + } +Index: kdoctools/kio_help.cpp +=================================================================== +--- kdoctools/kio_help.cpp.orig ++++ kdoctools/kio_help.cpp +@@ -42,7 +42,7 @@ QString HelpProtocol::langLookup(const Q + QStringList search; + + // assemble the local search paths +- const QStringList localDoc = KGlobal::dirs()->resourceDirs("html"); ++ const QStringList localDoc = KGlobal::dirs()->resourceDirs("html") + KGlobal::dirs()->resourceDirs("html-bundle"); + + kdDebug( 7119 ) << "Looking up help for: " << fname << endl; + QString _fname = fname; +@@ -60,10 +60,14 @@ QString HelpProtocol::langLookup(const Q + QStringList langs = KGlobal::locale()->languageList(); + QStringList::ConstIterator lang; + for (lang = langs.begin(); lang != langs.end(); ++lang) +- if ((*lang).left(2) == "en") ++ if ((*lang).left(2) == "en") { + search.append(QString("/usr/share/gnome/help/%1/C%2").arg(path).arg(_fname)); +- else ++ search.append(QString("/usr/share/gnome/help-bundle/%1/C%2").arg(path).arg(_fname)); ++ } ++ else { + search.append(QString("/usr/share/gnome/help/%1/%2%3").arg(path).arg(*lang).arg(_fname)); ++ search.append(QString("/usr/share/gnome/help-bundle/%1/%2%3").arg(path).arg(*lang).arg(_fname)); ++ } + + langs.append( "en" ); + langs.remove( "C" ); diff --git a/opensuse/core/tdelibs.old/clever-menu.diff b/opensuse/core/tdelibs.old/clever-menu.diff new file mode 100644 index 000000000..e2ae876c5 --- /dev/null +++ b/opensuse/core/tdelibs.old/clever-menu.diff @@ -0,0 +1,221 @@ +Index: kio/kio/kservice.cpp +=================================================================== +--- kio/kio/kservice.cpp.orig ++++ kio/kio/kservice.cpp +@@ -725,6 +725,20 @@ QString KService::untranslatedGenericNam + return v.isValid() ? v.toString() : QString::null; + } + ++bool KService::SuSEunimportant() const { ++ QMap::ConstIterator it = m_mapProps.find( "X-SuSE-Unimportant" ); ++ if ( (it == m_mapProps.end()) || (!it.data().isValid())) ++ { ++ return false; ++ } ++ ++ QString aValue = it.data().toString(); ++ if (aValue == "true" || aValue == "on" || aValue == "yes") ++ return true; ++ else ++ return false; ++} ++ + QString KService::parentApp() const { + QMap::ConstIterator it = m_mapProps.find( "X-KDE-ParentApp" ); + if ( (it == m_mapProps.end()) || (!it.data().isValid())) +Index: kio/kio/kservice.h +=================================================================== +--- kio/kio/kservice.h.orig ++++ kio/kio/kservice.h +@@ -327,6 +327,10 @@ public: + * @return true to suppress this service + */ + bool noDisplay() const; ++ /** ++ * check if the application entry is important ++ */ ++ bool SuSEunimportant() const; + + /** + * Name of the application this service belongs to. +Index: kio/kio/kservicegroup.cpp +=================================================================== +--- kio/kio/kservicegroup.cpp.orig ++++ kio/kio/kservicegroup.cpp +@@ -31,8 +31,10 @@ + class KServiceGroup::Private + { + public: +- Private() { m_bNoDisplay = false; m_bShowEmptyMenu = false;m_bShowInlineHeader=false;m_bInlineAlias=false; m_bAllowInline = false;m_inlineValue = 4;} ++ Private() { m_bNoDisplay = false; m_bShowEmptyMenu = false;m_bShowInlineHeader=false;m_bInlineAlias=false; m_bAllowInline = false; m_inlineValue = 4; m_bShortMenu = false; m_bGeneralDescription = false;} + bool m_bNoDisplay; ++ bool m_bShortMenu; ++ bool m_bGeneralDescription; + bool m_bShowEmptyMenu; + bool m_bShowInlineHeader; + bool m_bInlineAlias; +@@ -73,6 +75,11 @@ KServiceGroup::KServiceGroup( const QStr + m_strComment = config.readEntry( "Comment" ); + m_bDeleted = config.readBoolEntry( "Hidden", false ); + d->m_bNoDisplay = config.readBoolEntry( "NoDisplay", false ); ++ if (d->directoryEntryPath.startsWith(QDir::homeDirPath())) ++ d->m_bShortMenu = false; ++ else ++ d->m_bShortMenu = config.readBoolEntry( "X-SuSE-AutoShortMenu", true ); ++ d->m_bGeneralDescription = config.readBoolEntry( "X-SuSE-GeneralDescription", false ); + QStringList tmpList; + if (config.hasKey("OnlyShowIn")) + { +@@ -120,6 +127,10 @@ int KServiceGroup::childCount() + { + if (m_childCount == -1) + { ++ KConfig global("kdeglobals"); ++ global.setGroup("KDE"); ++ bool showUnimportant = global.readBoolEntry("showUnimportant", false); ++ + m_childCount = 0; + + for( List::ConstIterator it = m_serviceList.begin(); +@@ -130,7 +141,8 @@ int KServiceGroup::childCount() + { + KService *service = static_cast(p); + if (!service->noDisplay()) +- m_childCount++; ++ if ( showUnimportant || !service->SuSEunimportant() ) ++ m_childCount++; + } + else if (p->isType(KST_KServiceGroup)) + { +@@ -203,6 +215,16 @@ QStringList KServiceGroup::suppressGener + return d->suppressGenericNames; + } + ++bool KServiceGroup::SuSEgeneralDescription() const ++{ ++ return d->m_bGeneralDescription; ++} ++ ++bool KServiceGroup::SuSEshortMenu() const ++{ ++ return d->m_bShortMenu; ++} ++ + void KServiceGroup::load( QDataStream& s ) + { + QStringList groupList; +@@ -214,7 +236,8 @@ void KServiceGroup::load( QDataStream& s + s >> m_strCaption >> m_strIcon >> + m_strComment >> groupList >> m_strBaseGroupName >> m_childCount >> + noDisplay >> d->suppressGenericNames >> d->directoryEntryPath >> +- d->sortOrder >> _showEmptyMenu >> inlineHeader >> _inlineAlias >> _allowInline; ++ d->sortOrder >> _showEmptyMenu >> inlineHeader >> _inlineAlias >> ++ _allowInline >> d->m_bShortMenu >> d->m_bGeneralDescription; + + d->m_bNoDisplay = (noDisplay != 0); + d->m_bShowEmptyMenu = ( _showEmptyMenu != 0 ); +@@ -286,7 +309,8 @@ void KServiceGroup::save( QDataStream& s + s << m_strCaption << m_strIcon << + m_strComment << groupList << m_strBaseGroupName << m_childCount << + noDisplay << d->suppressGenericNames << d->directoryEntryPath << +- d->sortOrder <<_showEmptyMenu <sortOrder <<_showEmptyMenu <m_bShortMenu << d->m_bGeneralDescription; + } + + KServiceGroup::List +@@ -312,6 +336,12 @@ static void addItem(KServiceGroup::List + KServiceGroup::List + KServiceGroup::entries(bool sort, bool excludeNoDisplay, bool allowSeparators, bool sortByGenericName) + { ++ return SuSEentries(sort, excludeNoDisplay, allowSeparators, sortByGenericName); ++} ++ ++KServiceGroup::List ++KServiceGroup::SuSEentries(bool sort, bool excludeNoDisplay, bool allowSeparators, bool sortByGenericName, bool excludeSuSEunimportant) ++{ + KServiceGroup *group = this; + + // If the entries haven't been loaded yet, we have to reload ourselves +@@ -338,11 +368,18 @@ KServiceGroup::entries(bool sort, bool e + for (List::ConstIterator it(group->m_serviceList.begin()); it != group->m_serviceList.end(); ++it) + { + KSycocaEntry *p = (*it); ++ if( !p->isType(KST_KServiceGroup) && !p->isType(KST_KService)) ++ continue; + bool noDisplay = p->isType(KST_KServiceGroup) ? + static_cast(p)->noDisplay() : + static_cast(p)->noDisplay(); + if (excludeNoDisplay && noDisplay) + continue; ++ bool SuSEunimportant = p->isType(KST_KService) && ++ static_cast(p)->SuSEunimportant(); ++ if (excludeSuSEunimportant && SuSEunimportant) ++ continue; ++ + // Choose the right list + KSortableValueList & list = p->isType(KST_KServiceGroup) ? glist : slist; + QString name; +@@ -374,6 +411,15 @@ KServiceGroup::entries(bool sort, bool e + } + list.insert(key,SPtr(*it)); + } ++ ++ return group->SuSEsortEntries( slist, glist, excludeNoDisplay, allowSeparators ); ++} ++ ++KServiceGroup::List ++KServiceGroup::SuSEsortEntries( KSortableValueList slist, KSortableValueList glist, bool excludeNoDisplay, bool allowSeparators ) ++{ ++ KServiceGroup *group = this; ++ + // Now sort + slist.sort(); + glist.sort(); +@@ -415,6 +461,8 @@ KServiceGroup::entries(bool sort, bool e + // TODO: This prevents duplicates + for(KSortableValueList::Iterator it2 = slist.begin(); it2 != slist.end(); ++it2) + { ++ if (!(*it2).value()->isType(KST_KService)) ++ continue; + KService *service = (KService *)((KSycocaEntry *)((*it2).value())); + if (service->menuId() == item) + { +Index: kio/kio/kservicegroup.h +=================================================================== +--- kio/kio/kservicegroup.h.orig ++++ kio/kio/kservicegroup.h +@@ -26,6 +26,7 @@ + #include + + #include ++#include + + #include "ksycocaentry.h" + #include "ksycocatype.h" +@@ -201,6 +202,12 @@ public: + void setLayoutInfo(const QStringList &layout); + + /** ++ * SuSE special, not part of KDE API ++ */ ++ bool SuSEshortMenu() const; ++ bool SuSEgeneralDescription() const; ++ ++ /** + * @internal + * Returns information related to the layout of services in this group. + */ +@@ -238,6 +245,12 @@ public: + */ + virtual List entries(bool sorted = false); + ++ /* ++ * UNOFFICIAL SuSE special ++ */ ++ virtual List SuSEentries(bool sort, bool excludeNoDisplay, bool allowSeparators, bool sortByGenericName, bool excludeSuSEunimportant = true); ++ virtual List SuSEsortEntries( KSortableValueList slist, KSortableValueList glist, bool excludeNoDisplay, bool allowSeparators ); ++ + /** + * Returns a non-empty string if the group is a special base group. + * By default, "Settings/" is the kcontrol base group ("settings") diff --git a/opensuse/core/tdelibs.old/common_options b/opensuse/core/tdelibs.old/common_options new file mode 100644 index 000000000..b1883c282 --- /dev/null +++ b/opensuse/core/tdelibs.old/common_options @@ -0,0 +1,156 @@ +export prefix="/opt/kde3" +export includedir="$prefix/include" + +export kde_prefix="$prefix" +export kde_confdir="$prefix/share/config" + +export kde_bindir="$kde_prefix/bin" +export kde_libdir="$kde_prefix/@_lib@" +export kde_includes="$kde_prefix/include" +export kde_includedir="$kde_prefix/include" + +export kde_htmldir="$kde_prefix/share/doc/HTML" +export kde_icondir="$kde_prefix/share/icons" +export kde_sounddir="$kde_prefix/share/sounds" +export kde_datadir="$kde_prefix/share/apps" +export kde_locale="$kde_prefix/share/locale" +export kde_mimedir="$kde_prefix/share/mimelnk" +export kde_wallpaperdir="$kde_prefix/share/wallpapers" + +export kde_appsdir="$kde_prefix/share/applnk" +export kde_servicesdir="$kde_prefix/share/services" +export kde_servicetypesdir="$kde_prefix/share/servicetypes" + +export kde_styledir="$kde_libdir/kde3/plugins/styles" +export kde_widgetdir="$kde_libdir/kde3/plugins/designer" + +export PATH=$PWD/admin/:$PATH +if test -x $PWD/admin/do_make; then +alias make=do_make +else +alias make=/opt/kde3/share/apps/kdelibs/admin/do_make +fi + +export configkde="@configkde@" + +unset KDEDIR || : +unset KDEDIRS || : +unset QTDIR || : + +#export INSTALL_TARGET=install-strip +export INSTALL_TARGET=install + +Debug=0 +if test "$Debug" = 1; then + export configkde="$configkde --enable-debug=full" + export NO_BRP_STRIP_DEBUG=true +else + export configkde="$configkde --disable-debug" +fi + +CFLAGS="$CFLAGS $RPM_OPT_FLAGS" +CXXFLAGS="$CXXFLAGS $RPM_OPT_FLAGS" +LDFLAGS= +if ld -Bsymbolic-functions -v &> /dev/null; then + LDFLAGS="$LDFLAGS -Wl,-Bsymbolic-functions" +fi +export CFLAGS CXXFLAGS LDFLAGS + +update_admin() +{ + set +x + if [ ! -d /opt/kde3/share/apps/kdelibs/admin ]; then + echo "ERROR: kde2-compat-devel isn't installed." + exit 1 + fi + if [ ! -d admin ]; then + echo "WARNING: there is no admin directory." + fi + rm -rf admin autom4te.cache + cp -a /opt/kde3/share/apps/kdelibs/admin . + arg=$1 +# if [ "$arg" != "--no-unsermake" ] && \ +# [ -f /.buildenv ] && grep -q BUILD_BASENAME=beta- /.buildenv; then +# arg="--unsermake" +# fi + if [ "$arg" = "--no-unsermake" ]; then + touch $RPM_BUILD_DIR/.no_unsermake + else + export UNSERMAKE=yes + fi + + make -f admin/Makefile.common cvs + + test -f /.buildenv && . /.buildenv + + find . -name \*.ui | while read i; do + for j in ${i%.ui}.cpp ${i%.ui}.h ${i%.ui}.moc;do + if [ -e "$j" ] && grep -q "by: The User Interface Compiler" "$j"; then + echo WARNING: pregenerated files from $i exist, deleting ... + rm -f "$j" + fi + done + if [ "${BUILD_BASENAME:0:4}" != "beta" ]; then + if grep -q "" "$i"; then + echo WARNING: removing include hints from $i + sed -i -e 's,.*,,' "$i" + fi + fi + done +} + +kde_post_install() +{ + # remove not needed development files + rm -f $RPM_BUILD_ROOT/opt/kde3/@_lib@/libkdeinit_*.la + + # not worth the hassle + rm -rf $RPM_BUILD_ROOT/opt/kde3/share/icons/locolor + + # move icons in one theme - prefering hicolor + d="$RPM_BUILD_ROOT/opt/kde3/share/icons/crystalsvg" + if [ -d "$d" -a ! -e "$d/index.theme" ]; then + find "$d" -type f | while read src; do + dest="${src/\/crystalsvg\///hicolor/}" + dir="${dest%/*}" + mkdir -p "$dir" + mv "$src" "$dest" + done + fi + # we do this 3 times as there is a 3 fold hierarchy + if [ -d $RPM_BUILD_ROOT/opt/kde3/share/icons ]; then + for i in `seq 1 3`; do + find $RPM_BUILD_ROOT/opt/kde3/share/icons -type d -exec rmdir -v --ignore-fail-on-non-empty -- {} \; || true + done + fi + + if [ -d $RPM_BUILD_ROOT/opt/kde3/share/locale/sr@Latn ]; then + mv $RPM_BUILD_ROOT/opt/kde3/share/locale/sr@Latn $RPM_BUILD_ROOT/opt/kde3/share/locale/sr@latin + fi + + if test -e /usr/lib/rpm/suse_update_desktop_file.sh; then + distribution='' + if test -f $HOME/.rpmmacros && test -d /usr/src/packages/SRPMS; then + distribution=`grep ^%distribution $HOME/.rpmmacros | cut '-d ' -f2` + fi + + find $RPM_BUILD_ROOT/opt/kde3/share \ + -name '*.desktop' 2> /dev/null | while read file; do + test -r "$file" || continue + grep -q "^X-SuSE-translate=" "$file" && continue + case "$file" in + */.hidden/*) + /usr/lib/rpm/suse_update_desktop_file.sh -n "$file" + ;; + *) + if test -n "$distribution"; then + /usr/lib/rpm/suse_update_desktop_file.sh --project "$distribution" --basedir /usr/src/packages/SRPMS "$file" + else + /usr/lib/rpm/suse_update_desktop_file.sh "$file" + fi + ;; + esac + done + fi +} + diff --git a/opensuse/core/tdelibs.old/cr16-filesys-file_broken.png b/opensuse/core/tdelibs.old/cr16-filesys-file_broken.png new file mode 100644 index 000000000..fbbb60a0b Binary files /dev/null and b/opensuse/core/tdelibs.old/cr16-filesys-file_broken.png differ diff --git a/opensuse/core/tdelibs.old/create-kdeapi b/opensuse/core/tdelibs.old/create-kdeapi new file mode 100644 index 000000000..6a11907eb --- /dev/null +++ b/opensuse/core/tdelibs.old/create-kdeapi @@ -0,0 +1,107 @@ +#! /bin/sh +# Copyright (c) 2001 SuSE GmbH Nuernberg, Germany. All rights reserved. +# +# Author: Adrian Schroeter +# +# This module generates a index.html page for all KDE main api index.html pages +# SuSEhelp will use this index.html page as start point + +r=`pwd` +while test ! -x usr/share/doc/TDE-API/ && test "$r" != "/"; do + r=`dirname $root` + cd .. +done + +kdeapi=/usr/share/doc/TDE-API/ + +if test ! -w $r/${kdeapi} ; then + echo "The KDE API directory $kdeapi is not writeable. Exit..." + exit 1 +fi + +# +# write html header +# +cat > $r/${kdeapi}/index.html < + + + + + + KDE API Reference + + + +

KDE 3.x API Reference

+ +EOF + +# +# list all the api start pages +# + +cat >> $r/${kdeapi}/index.html < + + Descriptionfrom package + +Qt all Qt classes qt +EOF + +dark=1 +mods= +list=`ls -1 $r/${kdeapi}/*/index.html 2> /dev/null` +for page in $list; do + mainapi=`echo $page | sed -n -e "s@$r/$kdeapi/\([^/]*\)/index.html@\1@p"` + mods="$mods $mainapi" + eval "page_$mainapi=$page" + eval "path_$mainapi=/$kdeapi/$mainapi" +done + +list=`ls -1 $r/opt/tde/share/doc/HTML/en/*-apidocs/*/html/index.html 2> /dev/null` +for page in $list; do + mainapi=`echo $page | sed -n -e "s@$r/opt/tde/share/doc/HTML/en/.*-apidocs/\([^/]*\)/html/index.html@\1@p"` + mods="$mods $mainapi" + path=`echo $page | sed -e "s,$r/opt,/opt,"` + eval "page_$mainapi=$path" + path=`echo $page | sed -n -e "s@$r\(/opt/tde/share/doc/HTML/en/.*-apidocs/[^/]*\)/html/index.html@\1@p"` + eval "path_$mainapi=$path" +done + +mods=`(for i in $mods; do echo $i; done ) | sort` + +for mod in $mods; do + eval "apipath=$""page_$mod" + eval "basepath=$""path_$mod" + description="`cat $r/$basepath/description.SuSE`" + package="`cat $r/$basepath/package.SuSE`" + + if [ "$dark" == "1" ]; then + dark=0 + echo "" >> $r/${kdeapi}/index.html + else + dark=1 + echo "" >> $r/${kdeapi}/index.html + fi + + echo " ${mod} " >> $r/${kdeapi}/index.html + echo "${description}" >> $r/${kdeapi}/index.html + echo "${package}" >> $r/${kdeapi}/index.html + echo "" >> $r/${kdeapi}/index.html + +done + +# +# finish it ... +# +cat >> $r/${kdeapi}/index.html < +
+ + +
generated by create-kdeapi on `date`
+ + + +EOF diff --git a/opensuse/core/tdelibs.old/default-useragent.diff b/opensuse/core/tdelibs.old/default-useragent.diff new file mode 100644 index 000000000..76b92aef8 --- /dev/null +++ b/opensuse/core/tdelibs.old/default-useragent.diff @@ -0,0 +1,13 @@ +Index: kio/kio/kprotocolmanager.cpp +=================================================================== +--- kio/kio/kprotocolmanager.cpp.orig ++++ kio/kio/kprotocolmanager.cpp +@@ -72,7 +72,7 @@ KProtocolManagerPrivate::~KProtocolManag + + // DEFAULT USERAGENT STRING + #define CFG_DEFAULT_UAGENT(X) \ +-QString("Mozilla/5.0 (compatible; Konqueror/%1.%2%3) KHTML/%4.%5.%6 (like Gecko)") \ ++QString("Mozilla/5.0 (compatible; Konqueror/%1.%2%3) KHTML/%4.%5.%6 (like Gecko) SUSE") \ + .arg(KDE_VERSION_MAJOR).arg(KDE_VERSION_MINOR).arg(X).arg(KDE_VERSION_MAJOR).arg(KDE_VERSION_MINOR).arg(KDE_VERSION_RELEASE) + + void KProtocolManager::reparseConfiguration() diff --git a/opensuse/core/tdelibs.old/desktop-translations.diff b/opensuse/core/tdelibs.old/desktop-translations.diff new file mode 100644 index 000000000..6bf878469 --- /dev/null +++ b/opensuse/core/tdelibs.old/desktop-translations.diff @@ -0,0 +1,209 @@ +Index: kdecore/kconfigbase.h +=================================================================== +--- kdecore/kconfigbase.h.orig ++++ kdecore/kconfigbase.h +@@ -1985,6 +1985,7 @@ public: + + protected: + QCString readEntryUtf8( const char *pKey) const; ++ bool hasTranslatedKey( const char *pKey ) const; + + /** + * The currently selected group. */ +Index: kdecore/kconfigbase.cpp +=================================================================== +--- kdecore/kconfigbase.cpp.orig ++++ kdecore/kconfigbase.cpp +@@ -131,6 +131,24 @@ bool KConfigBase::hasKey(const char *pKe + return !entry.mValue.isNull(); + } + ++bool KConfigBase::hasTranslatedKey(const char* pKey) const ++{ ++ KEntryKey aEntryKey(mGroup, 0); ++ aEntryKey.c_key = pKey; ++ aEntryKey.bDefault = readDefaults(); ++ ++ if (!locale().isNull()) { ++ // try the localized key first ++ aEntryKey.bLocal = true; ++ KEntry entry = lookupData(aEntryKey); ++ if (!entry.mValue.isNull()) ++ return true; ++ aEntryKey.bLocal = false; ++ } ++ ++ return false; ++} ++ + bool KConfigBase::hasGroup(const QString &group) const + { + return internalHasGroup( group.utf8()); +Index: kdecore/kdesktopfile.h +=================================================================== +--- kdecore/kdesktopfile.h.orig ++++ kdecore/kdesktopfile.h +@@ -236,6 +236,8 @@ private: + + private: + ++ QString translatedEntry(const char*) const; ++ + // copy-construction and assignment are not allowed + KDesktopFile( const KDesktopFile& ); + KDesktopFile& operator= ( const KDesktopFile& ); +Index: kdecore/kdesktopfile.cpp +=================================================================== +--- kdecore/kdesktopfile.cpp.orig ++++ kdecore/kdesktopfile.cpp +@@ -34,6 +34,8 @@ + #include "kapplication.h" + #include "kstandarddirs.h" + #include "kmountpoint.h" ++#include "kcatalogue.h" ++#include "klocale.h" + + #include "kdesktopfile.h" + #include "kdesktopfile.moc" +@@ -145,6 +147,27 @@ bool KDesktopFile::isAuthorizedDesktopFi + return false; + } + ++QString KDesktopFile::translatedEntry(const char* key) const ++{ ++ if (hasTranslatedKey(key)) ++ return readEntry(key); ++ ++ if (hasKey(key)) { ++ QString value = readEntryUntranslated(key); ++ QString fName = fileName(); ++ fName = fName.mid(fName.findRev('/')+1); ++ QString po_lookup_key = QString::fromLatin1(key) + "(" + fName + "): " + value; ++ QString po_value = KGlobal::locale()->translate(po_lookup_key.utf8().data()); ++ ++ if (po_value == po_lookup_key) ++ return value; ++ ++ return po_value; ++ } ++ ++ return QString::null; ++} ++ + QString KDesktopFile::readType() const + { + return readEntry("Type"); +@@ -157,17 +180,17 @@ QString KDesktopFile::readIcon() const + + QString KDesktopFile::readName() const + { +- return readEntry("Name"); ++ return translatedEntry("Name"); + } + + QString KDesktopFile::readComment() const + { +- return readEntry("Comment"); ++ return translatedEntry("Comment"); + } + + QString KDesktopFile::readGenericName() const + { +- return readEntry("GenericName"); ++ return translatedEntry("GenericName"); + } + + QString KDesktopFile::readPath() const +@@ -342,5 +365,3 @@ KDesktopFile* KDesktopFile::copyTo(const + config->setDesktopGroup(); + return config; + } +- +- +Index: kio/kio/kservice.cpp +=================================================================== +--- kio/kio/kservice.cpp.orig ++++ kio/kio/kservice.cpp +@@ -114,7 +114,7 @@ KService::init( KDesktopFile *config ) + return; + } + +- m_strName = config->readEntry( "Name" ); ++ m_strName = config->readName(); + entryMap.remove("Name"); + if ( m_strName.isEmpty() ) + { +@@ -134,7 +134,7 @@ KService::init( KDesktopFile *config ) + m_strName = m_strName.left(i); + } + +- m_strType = config->readEntry( "Type" ); ++ m_strType = config->readType(); + entryMap.remove("Type"); + if ( m_strType.isEmpty() ) + { +@@ -204,11 +204,11 @@ KService::init( KDesktopFile *config ) + entryMap.remove("Terminal"); + m_strTerminalOptions = config->readEntry( "TerminalOptions" ); // should be a property IMHO + entryMap.remove("TerminalOptions"); +- m_strPath = config->readPathEntry( "Path" ); ++ m_strPath = config->readPath(); + entryMap.remove("Path"); +- m_strComment = config->readEntry( "Comment" ); ++ m_strComment = config->readComment(); + entryMap.remove("Comment"); +- m_strGenName = config->readEntry( "GenericName" ); ++ m_strGenName = config->readGenericName(); + entryMap.remove("GenericName"); + QString untranslatedGenericName = config->readEntryUntranslated( "GenericName" ); + if (!untranslatedGenericName.isEmpty()) +Index: kio/kio/kservicegroup.cpp +=================================================================== +--- kio/kio/kservicegroup.cpp.orig ++++ kio/kio/kservicegroup.cpp +@@ -66,13 +66,11 @@ KServiceGroup::KServiceGroup( const QStr + + d->directoryEntryPath = cfg; + +- KConfig config( cfg, true, false, "apps" ); ++ KDesktopFile config( cfg, true, "apps" ); + +- config.setDesktopGroup(); +- +- m_strCaption = config.readEntry( "Name" ); +- m_strIcon = config.readEntry( "Icon" ); +- m_strComment = config.readEntry( "Comment" ); ++ m_strCaption = config.readName(); ++ m_strIcon = config.readIcon(); ++ m_strComment = config.readComment(); + m_bDeleted = config.readBoolEntry( "Hidden", false ); + d->m_bNoDisplay = config.readBoolEntry( "NoDisplay", false ); + if (d->directoryEntryPath.startsWith(QDir::homeDirPath())) +Index: kio/kio/kmimetype.cpp +=================================================================== +--- kio/kio/kmimetype.cpp.orig ++++ kio/kio/kmimetype.cpp +@@ -677,9 +677,8 @@ QString KFolderType::comment( const KURL + KURL u( _url ); + u.addPath( ".directory" ); + +- KSimpleConfig cfg( u.path(), true ); +- cfg.setDesktopGroup(); +- QString comment = cfg.readEntry( "Comment" ); ++ KDesktopFile cfg( u.path(), true ); ++ QString comment = cfg.readComment(); + if ( comment.isEmpty() ) + return KMimeType::comment( _url, _is_local ); + +@@ -772,9 +771,8 @@ QString KDEDesktopMimeType::comment( con + if ( !_is_local ) + return KMimeType::comment( _url, _is_local ); + +- KSimpleConfig cfg( _url.path(), true ); +- cfg.setDesktopGroup(); +- QString comment = cfg.readEntry( "Comment" ); ++ KDesktopFile cfg( _url.path(), true ); ++ QString comment = cfg.readComment(); + if ( comment.isEmpty() ) + return KMimeType::comment( _url, _is_local ); + diff --git a/opensuse/core/tdelibs.old/disable-idn-support.diff b/opensuse/core/tdelibs.old/disable-idn-support.diff new file mode 100644 index 000000000..37c59bc91 --- /dev/null +++ b/opensuse/core/tdelibs.old/disable-idn-support.diff @@ -0,0 +1,34 @@ +Index: kdecore/network/kresolver.cpp +=================================================================== +--- kdecore/network/kresolver.cpp.orig ++++ kdecore/network/kresolver.cpp +@@ -50,6 +50,7 @@ + + // IDN + #ifdef HAVE_IDNA_H ++# include + # include + #endif + +@@ -1084,6 +1085,10 @@ static QStringList splitLabels(const QSt + static QCString ToASCII(const QString& label) + { + #ifdef HAVE_IDNA_H ++ // We do disable it by default for security reasons for now. ++ if ( getenv("KDE_NO_IPV6") && strcmp( getenv("KDE_NO_IPV6"), "no" ) ) ++ return label.latin1(); ++ + // We have idna.h, so we can use the idna_to_ascii + // function :) + +@@ -1118,6 +1123,10 @@ static QCString ToASCII(const QString& l + static QString ToUnicode(const QString& label) + { + #ifdef HAVE_IDNA_H ++ // We do disable it by default for security reasons for now. ++ if ( getenv("KDE_NO_IPV6") && strcmp( getenv("KDE_NO_IPV6"), "no" ) ) ++ return label; ++ + // We have idna.h, so we can use the idna_to_unicode + // function :) + diff --git a/opensuse/core/tdelibs.old/disable-samba-dialog-without-smb.diff b/opensuse/core/tdelibs.old/disable-samba-dialog-without-smb.diff new file mode 100644 index 000000000..cd0c29927 --- /dev/null +++ b/opensuse/core/tdelibs.old/disable-samba-dialog-without-smb.diff @@ -0,0 +1,66 @@ +Index: kio/kio/kfileshare.cpp +=================================================================== +--- kio/kio/kfileshare.cpp.orig ++++ kio/kio/kfileshare.cpp +@@ -291,4 +291,24 @@ bool KFileShare::setShared( const QStrin + return ok; + } + ++bool KFileShare::sambaActive() ++{ ++ // rcsmb is not executable by users, try ourselves ++ int status = system( "/sbin/checkproc -p /var/run/samba/smbd.pid /usr/sbin/smbd" ); ++ return status != -1 && WIFEXITED( status ) && WEXITSTATUS( status ) == 0; ++} ++ ++bool KFileShare::nfsActive() ++{ ++ // rcnfsserver is not executable by users, try ourselves ++ int status = system( "/sbin/checkproc /usr/sbin/rpc.mountd" ); ++ if( status != -1 && WIFEXITED( status ) && WEXITSTATUS( status ) == 0 ) ++ { ++ status = system( "/sbin/checkproc -n nfsd" ); ++ if( status != -1 && WIFEXITED( status ) && WEXITSTATUS( status ) == 0 ) ++ return true; ++ } ++ return false; ++} ++ + #include "kfileshare.moc" +Index: kio/kio/kfileshare.h +=================================================================== +--- kio/kio/kfileshare.h.orig ++++ kio/kio/kfileshare.h +@@ -131,6 +131,18 @@ public: + * Returns whether NFS is enabled + */ + static bool nfsEnabled(); ++ ++ /** ++ * Returns whether Samba is active (service is running) ++ * @internal ++ */ ++ static bool sambaActive(); ++ ++ /** ++ * Returns whether NFS is active (service is running) ++ * @internal ++ */ ++ static bool nfsActive(); + + private: + static Authorization s_authorization; +Index: kio/kfile/kfilesharedlg.cpp +=================================================================== +--- kio/kfile/kfilesharedlg.cpp.orig ++++ kio/kfile/kfilesharedlg.cpp +@@ -167,6 +167,9 @@ void KFileSharePropsPlugin::init() + vbox->addWidget( m_pbConfig, 0, Qt::AlignHCenter ); + + vbox->addStretch( 10 ); ++ ++ if( !KFileShare::sambaActive() && !KFileShare::nfsActive()) ++ m_widget->setEnabled( false ); + } + } + break; diff --git a/opensuse/core/tdelibs.old/do_make b/opensuse/core/tdelibs.old/do_make new file mode 100644 index 000000000..b317494db --- /dev/null +++ b/opensuse/core/tdelibs.old/do_make @@ -0,0 +1,96 @@ +#!/bin/bash + +# this is a script around make which basicly checks +# if it's in srcdir or in builddir and changes to +# the right directory for calling /usr/bin/make +# (C) Stephan Kulow + +# You may need to set OBJ_REPLACEMENT variable to get it to work. +# In the variable use the sed syntax to switch directories, for example +# export OBJ_REPLACEMENT="s:/home/zack/cvs/kde:/home/zack/build:" +# will assure that the builds are performed under /home/zack/build +# directory, when the cvs is held under /home/zack/cvs/kde. + +file=Makefile +dir=. +args=() +jobs= + +while test $# -gt 0 ; do + case "${1}" in + -f) + shift + file="${1}" + shift + args=("${args[@]}" -f $file) + ;; + -C) + shift + dir="${1}" + shift ;; + -j) + shift + jobs="${1}" + shift ;; + -j*) + jobs="${1/-j/}" + shift ;; + *) + args=("${args[@]}" "$1") + shift + ;; + esac +done + +if test ! -f $dir/$file; then + if test -n "$OBJ_SUBDIR"; then + dir=$PWD + subdir=. + while test ! -f $dir/$OBJ_SUBDIR/$file; do + subdir=`basename $dir`"/$subdir" + dir=`dirname $dir` + if test "$dir" = "/"; then + # the case that someone puts the compile dir in / + # is very unlikely, so we better skip here ;) + echo "can't find $OBJ_SUBDIR above current dir" + exit 1 + fi + done + cd $dir/$OBJ_SUBDIR/$subdir + else + if test -n "$OBJ_REPLACEMENT"; then + pwd=`echo $PWD | sed -e "$OBJ_REPLACEMENT"` + if test ! -f $pwd/$dir/$file; then + echo "no objdir found. Tried $pwd" + exit 1 + fi + cd $pwd/$dir + fi + fi +else + cd $dir +fi + +echo "makeobj[0]: Entering directory \`$PWD'" +if test -z "$MAKE"; then + if head -n 1 $file | grep unsermake >/dev/null; then + MAKE=`type -p unsermake` + if test ! -x "$MAKE"; then + echo 'Makefile was created with unsermake, but there' + echo 'is no unsermake in $PATH' + exit 1 + fi + MAKE="$MAKE --no-real-compare VERBOSE=1" + if test -n "$jobs"; then args=("${args[@]}" --compile-jobs=$jobs); fi + else + MAKE=/usr/bin/make + if test -n "$jobs"; then args=("${args[@]}" -j $jobs); fi + fi +fi + +echo "Calling $MAKE ${args[@]}" +LANGUAGE=C $MAKE "${args[@]}" +retval=$? +echo "makeobj[0]: Leaving directory \`$PWD'" +exit $retval + diff --git a/opensuse/core/tdelibs.old/fileshare.diff b/opensuse/core/tdelibs.old/fileshare.diff new file mode 100644 index 000000000..86f7d0941 --- /dev/null +++ b/opensuse/core/tdelibs.old/fileshare.diff @@ -0,0 +1,296 @@ +--- kio/kfile/kfilesharedlg.cpp ++++ kio/kfile/kfilesharedlg.cpp 2004/08/06 08:38:31 +@@ -24,6 +24,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -93,8 +94,10 @@ + delete m_widget; + m_rbShare = 0L; + m_rbUnShare = 0L; ++ m_rbSharerw = 0L; + m_widget = new QWidget( d->m_vBox ); + QVBoxLayout * vbox = new QVBoxLayout( m_widget ); ++ //QHBoxLayout * hbox = new QHBoxLayout( vbox ); + + switch ( KFileShare::authorization() ) { + case KFileShare::Authorized: +@@ -105,18 +108,31 @@ + home += '/'; + bool ok = true; + KFileItemList items = properties->items(); +- // We have 3 possibilities: all shared, all unshared, or mixed. ++ // We have some possibilities: all shared, all unshared (ro,rw), or mixed. + bool allShared = true; + bool allUnshared = true; ++ bool allreadonly = true; + KFileItemListIterator it( items ); + for ( ; it.current() && ok; ++it ) { + QString path = (*it)->url().path(); ++ ++ // 0 => not shared ++ // 1 => shared read only ++ // 3 => shared writeable ++ int dirStatus = KFileShare::isDirectoryShared( path ); + if ( !path.startsWith( home ) ) + ok = false; +- if ( KFileShare::isDirectoryShared( path ) ) ++ if ( dirStatus == 1 ) { + allUnshared = false; +- else ++ } ++ else if ( dirStatus == 3 ) { ++ allUnshared = false; ++ allreadonly = false; ++ } ++ else { + allShared = false; ++ allreadonly = false; ++ } + } + if ( !ok ) + { +@@ -136,16 +152,31 @@ + vbox->addWidget( m_rbUnShare, 0 ); + rbGroup->insert( m_rbUnShare ); + +- m_rbShare = new QRadioButton( i18n("Shared"), m_widget ); ++ m_rbShare = new QRadioButton( i18n("Shared - read only for others"), m_widget ); + connect( m_rbShare, SIGNAL( toggled(bool) ), SIGNAL( changed() ) ); + vbox->addWidget( m_rbShare, 0 ); + rbGroup->insert( m_rbShare ); + ++ m_rbSharerw = new QRadioButton( i18n("Shared - writeable for others"), m_widget ); ++ connect( m_rbSharerw, SIGNAL( toggled(bool) ), SIGNAL( changed() ) ); ++ vbox->addWidget( m_rbSharerw, 0 ); ++ rbGroup->insert( m_rbSharerw ); ++ ++ //QLabel *testlabel1 = new QLabel(i18n("Enter Samba Share Name here"),m_widget); ++ //m_leSmbShareName = new QLineEdit(m_widget); ++ //m_leSmbShareName->setMaxLength(12); ++ ++ //hbox->addWidget( testlabel1, 0 ); ++ //hbox->addWidget( m_leSmbShareName ); ++ //vbox->addLayout( hbox ); ++ + // Activate depending on status + if ( allShared ) +- m_rbShare->setChecked(true); ++ m_rbSharerw->setChecked(true); + if ( allUnshared ) + m_rbUnShare->setChecked(true); ++ if ( allreadonly ) ++ m_rbShare->setChecked(true); + + // Some help text + QLabel *label = new QLabel( i18n("Sharing this folder makes it available under Linux/UNIX (NFS) and Windows (Samba).") , m_widget ); +@@ -204,7 +235,7 @@ + void KFileSharePropsPlugin::applyChanges() + { + kdDebug() << "KFileSharePropsPlugin::applyChanges" << endl; +- if ( m_rbShare && m_rbUnShare ) ++ if ( m_rbShare && m_rbUnShare && m_rbSharerw ) + { + bool share = m_rbShare->isChecked(); + KFileItemList items = properties->items(); +@@ -212,7 +243,7 @@ + bool ok = true; + for ( ; it.current() && ok; ++it ) { + QString path = (*it)->url().path(); +- ok = setShared( path, share ); ++ ok = SuSEsetShared( path, share, m_rbSharerw->isChecked() ); + if (!ok) { + if (share) + KMessageBox::detailedError(properties, +@@ -239,8 +270,14 @@ + + bool KFileSharePropsPlugin::setShared( const QString& path, bool shared ) + { +- kdDebug() << "KFileSharePropsPlugin::setShared " << path << "," << shared << endl; +- return KFileShare::setShared( path, shared ); ++ return SuSEsetShared( path, shared, true ); ++} ++ ++bool KFileSharePropsPlugin::SuSEsetShared( const QString& path, bool shared, bool readonly ) ++{ ++ kdDebug() << "KFileSharePropsPlugin::setShared " << path << "," ++ << shared << readonly << endl; ++ return KFileShare::SuSEsetShared( path, shared, readonly ); + } + + QWidget* KFileSharePropsPlugin::page() const +--- kio/kfile/kfilesharedlg.h ++++ kio/kfile/kfilesharedlg.h 2004/08/06 08:38:31 +@@ -54,10 +54,13 @@ + private: + void init(); + bool setShared( const QString&path, bool shared ); ++ bool SuSEsetShared( const QString&path, bool shared, bool readonly ); + + QWidget *m_widget; + QRadioButton *m_rbShare; ++ QRadioButton *m_rbSharerw; + QRadioButton *m_rbUnShare; ++ //QLineEdit *m_leSmbShareName; + QPushButton *m_pbConfig; + class Private; + Private *d; +--- kio/kio/kfileshare.cpp ++++ kio/kio/kfileshare.cpp 2004/08/06 08:38:51 +@@ -20,6 +20,7 @@ + #include "kfileshare.h" + #include + #include ++#include + #include + #include + #include +@@ -35,8 +36,10 @@ + #include + + KFileShare::Authorization KFileShare::s_authorization = NotInitialized; +-QStringList* KFileShare::s_shareList = 0L; +-static KStaticDeleter sdShareList; ++//QStringList* KFileShare::s_shareList = 0L; ++//static KStaticDeleter sdShareList; ++QMap* KFileShare::s_shareMap = 0L; ++static KStaticDeleter > sdShareMap; + + KFileShare::ShareMode KFileShare::s_shareMode; + bool KFileShare::s_sambaEnabled; +@@ -164,10 +167,10 @@ + void KFileShare::readShareList() + { + KFileSharePrivate::self(); +- if ( !s_shareList ) +- sdShareList.setObject( s_shareList, new QStringList ); ++ if ( !s_shareMap ) ++ sdShareMap.setObject( s_shareMap, new QMap ); + else +- s_shareList->clear(); ++ s_shareMap->clear(); + + // /usr/sbin on Mandrake, $PATH allows flexibility for other distributions + QString exe = findExe( "filesharelist" ); +@@ -185,29 +188,45 @@ + + // Reading code shamelessly stolen from khostname.cpp ;) + QString line; ++ QString options; ++ QString path; + int length; ++ QRegExp rx_line("([^\\s]+)\\s+(.*)"); + do { + length = proc.readln(line, true); + if ( length > 0 ) + { + if ( line[length-1] != '/' ) + line += '/'; +- s_shareList->append(line); ++ if( rx_line.search( line ) != -1 ) { ++ options = rx_line.cap(1); ++ path = rx_line.cap(2); ++ (*s_shareMap)[path] = options; ++ } + kdDebug(7000) << "Shared dir:" << line << endl; + } + } while (length > -1); + } + + +-bool KFileShare::isDirectoryShared( const QString& _path ) ++int KFileShare::isDirectoryShared( const QString& _path ) + { +- if ( ! s_shareList ) ++ int ret(0); ++ ++ if ( ! s_shareMap ) + readShareList(); + + QString path( _path ); + if ( path[path.length()-1] != '/' ) + path += '/'; +- return s_shareList && s_shareList->contains( path ); ++ //return s_shareList && s_shareList->contains( path ); ++ if( (*s_shareMap).contains(path) && !((*s_shareMap)[path].isEmpty()) ) { ++ ret+=1; ++ if( (*s_shareMap)[path].find("readwrite") != -1 ) ++ ret+=2; ++ } ++ ++ return ret; + } + + KFileShare::Authorization KFileShare::authorization() +@@ -230,17 +249,30 @@ + + bool KFileShare::setShared( const QString& path, bool shared ) + { ++ return SuSEsetShared( path, shared, false ); ++} ++ ++bool KFileShare::SuSEsetShared( const QString& path, bool shared, bool rw ) ++{ + if (! KFileShare::sharingEnabled() || + KFileShare::shareMode() == Advanced) + return false; + +- kdDebug(7000) << "KFileShare::setShared " << path << "," << shared << endl; + QString exe = KFileShare::findExe( "fileshareset" ); + if (exe.isEmpty()) + return false; +- ++ ++ // we want to share, so we kick it first - just to be sure + KProcess proc; + proc << exe; ++ proc << "--remove"; ++ proc << path; ++ proc.start( KProcess::Block ); ++ proc.clearArguments(); ++ ++ proc << exe; ++ if( rw ) ++ proc << "--rw"; + if ( shared ) + proc << "--add"; + else +--- kio/kio/kfileshare.h ++++ kio/kio/kfileshare.h 2004/08/06 08:38:31 +@@ -65,7 +65,7 @@ + /** + * Call this to know if a directory is currently shared + */ +- static bool isDirectoryShared( const QString& path ); ++ static int isDirectoryShared( const QString& path ); + + enum Authorization { NotInitialized, ErrorNotFound, Authorized, UserNotAllowed }; + /** +@@ -83,7 +83,12 @@ + * @returns wether the perl script was successful + */ + static bool setShared( const QString& path, bool shared ); +- ++ ++ /* ++ * SuSE only enhancement for now ++ */ ++ static bool SuSEsetShared( const QString& path, bool shared, bool ro ); ++ + /** + * The used share mode. + * Simple means that the simple sharing dialog is used and +@@ -132,7 +137,8 @@ + + private: + static Authorization s_authorization; +- static QStringList* s_shareList; ++// static QStringList* s_shareList; ++ static QMap* s_shareMap; + static ShareMode s_shareMode; + static bool s_sambaEnabled; + static bool s_nfsEnabled; diff --git a/opensuse/core/tdelibs.old/fix-dcopidlng-within-kdelibs-build.diff b/opensuse/core/tdelibs.old/fix-dcopidlng-within-kdelibs-build.diff new file mode 100644 index 000000000..bac35d2b4 --- /dev/null +++ b/opensuse/core/tdelibs.old/fix-dcopidlng-within-kdelibs-build.diff @@ -0,0 +1,16 @@ +Index: dcop/dcopidlng/dcopidlng +=================================================================== +--- dcop/dcopidlng/dcopidlng.orig ++++ dcop/dcopidlng/dcopidlng +@@ -5,7 +5,11 @@ trap "rm -f dcopidlng.stderr.$$" 0 1 2 1 + if test -z "$KDECONFIG"; then + KDECONFIG=kde-config + fi ++if type kde-config > /dev/null; then + LIBDIR="`$KDECONFIG --install data --expandvars`/dcopidlng" ++else ++LIBDIR="${0%/*}" ++fi + perl -I"$LIBDIR" "$LIBDIR/kalyptus" --allow_k_dcop_accessors -f dcopidl $1 2> dcopidlng.stderr.$$ + RET=$? + if [ $RET -ne 0 ] diff --git a/opensuse/core/tdelibs.old/fix-gnome-help-support.diff b/opensuse/core/tdelibs.old/fix-gnome-help-support.diff new file mode 100644 index 000000000..c9778f9bf --- /dev/null +++ b/opensuse/core/tdelibs.old/fix-gnome-help-support.diff @@ -0,0 +1,130 @@ +Index: kdoctools/kio_help.cpp +=================================================================== +--- kdoctools/kio_help.cpp.orig ++++ kdoctools/kio_help.cpp +@@ -44,7 +44,27 @@ QString HelpProtocol::langLookup(const Q + // assemble the local search paths + const QStringList localDoc = KGlobal::dirs()->resourceDirs("html"); + ++ kdDebug( 7119 ) << "Looking up help for: " << fname << endl; ++ QString _fname = fname; ++ ++ QString path; ++ int slash = _fname.findRev ('/'); ++ if (slash == -1 || slash == 0) { ++ path = _fname; ++ _fname = ""; ++ } else { ++ path = _fname.left (slash); ++ _fname = _fname.right (_fname.length() - slash); ++ } ++ + QStringList langs = KGlobal::locale()->languageList(); ++ QStringList::ConstIterator lang; ++ for (lang = langs.begin(); lang != langs.end(); ++lang) ++ if ((*lang).left(2) == "en") ++ search.append(QString("/usr/share/gnome/help/%1/C%2").arg(path).arg(_fname)); ++ else ++ search.append(QString("/usr/share/gnome/help/%1/%2%3").arg(path).arg(*lang).arg(_fname)); ++ + langs.append( "en" ); + langs.remove( "C" ); + +@@ -60,7 +80,7 @@ QString HelpProtocol::langLookup(const Q + { + QStringList::ConstIterator lang; + for (lang = langs.begin(); lang != langs.end(); ++lang) +- search.append(QString("%1%2/%3").arg(localDoc[id], *lang, fname)); ++ search.append(QString("%1%2/%3").arg(localDoc[id], *lang, path + _fname)); + } + + // try to locate the file +@@ -81,6 +101,15 @@ QString HelpProtocol::langLookup(const Q + if (info.exists() && info.isFile() && info.isReadable()) + return *it; + } ++ ++ if ( ( *it ).right( 5 ) == ".html" ) ++ { ++ QString file = (*it).left((*it).findRev('/')) + "/" + path + ".xml"; ++ kdDebug( 7119 ) << "Looking for help in: " << file << endl; ++ info.setFile(file); ++ if (info.exists() && info.isFile() && info.isReadable()) ++ return *it; ++ } + } + + +@@ -100,7 +129,7 @@ QString HelpProtocol::lookupFile(const Q + result = langLookup(path); + if (result.isEmpty()) + { +- result = langLookup(path+"/index.html"); ++ result = langLookup(path + "/index.html"); + if (!result.isEmpty()) + { + KURL red( "help:/" ); +@@ -190,12 +219,26 @@ void HelpProtocol::get( const KURL& url + } + } else { + QString docbook_file = file.left(file.findRev('/')) + "/index.docbook"; ++ int last_slash = file.findRev('/'); ++ if (last_slash != -1 && last_slash != 0) { ++ int slash2 = file.findRev('/', last_slash -1); ++ if (slash2 != -1 && slash2 != 0) { ++ int slash3 = file.findRev('/', slash2 - 1); ++ if (slash3 != -1) { ++ QString xml_file = file.left(file.findRev('/')) + "/" + file.mid(slash3 + 1, slash2 - (slash3 + 1)) + ".xml"; ++ kdDebug( 7119 ) << "xml_file " << xml_file << endl; ++ QFileInfo fi(xml_file); ++ if (fi.exists()) ++ docbook_file = xml_file; ++ } ++ } ++ } + if (!KStandardDirs::exists(file)) { + file = docbook_file; + } else { + QFileInfo fi(file); + if (fi.isDir()) { +- file = file + "/index.docbook"; ++ file = docbook_file; + } else { + if ( file.right( 5 ) != ".html" || !compareTimeStamps( file, docbook_file ) ) { + get_file( target ); +@@ -238,7 +281,11 @@ void HelpProtocol::get( const KURL& url + mParsed = transform(file, locate("dtd", "customization/kde-chunk.xsl")); + if ( !mParsed.isEmpty() ) { + infoMessage( i18n( "Saving to cache" ) ); +- QString cache = file.left( file.length() - 7 ); ++ QString cache; ++ if (file.endsWith(".xml")) ++ cache = file.left( file.length() - strlen ("xml") ); ++ else ++ cache = file.left( file.length() - strlen ("docbook") ); + saveToCache( mParsed, locateLocal( "cache", + "kio_help" + cache + + "cache.bz2" ) ); +Index: kdoctools/xslt.cpp +=================================================================== +--- kdoctools/xslt.cpp.orig ++++ kdoctools/xslt.cpp +@@ -278,10 +278,16 @@ static bool readCache( const QString &fi + QString lookForCache( const QString &filename ) + { + kdDebug() << "lookForCache " << filename << endl; +- assert( filename.endsWith( ".docbook" ) ); ++ assert( filename.endsWith( ".docbook" ) || filename.endsWith( ".xml" ) ); + assert( filename.at( 0 ) == '/' ); + +- QString cache = filename.left( filename.length() - 7 ); ++ QString cache; ++ ++ if (filename.endsWith( ".xml" )) ++ cache = filename.left( filename.length() - strlen ("xml") ); ++ else ++ cache = filename.left( filename.length() - strlen ("docbook") ); ++ + QString output; + if ( readCache( filename, cache + "cache.bz2", output) ) + return output; diff --git a/opensuse/core/tdelibs.old/fix-gnome-help-support_legacy.diff b/opensuse/core/tdelibs.old/fix-gnome-help-support_legacy.diff new file mode 100644 index 000000000..0e2922e41 --- /dev/null +++ b/opensuse/core/tdelibs.old/fix-gnome-help-support_legacy.diff @@ -0,0 +1,126 @@ +--- kdoctools/kio_help.cpp ++++ kdoctools/kio_help.cpp +@@ -44,7 +44,27 @@ + // assemble the local search paths + const QStringList localDoc = KGlobal::dirs()->resourceDirs("html"); + ++ kdDebug( 7119 ) << "Looking up help for: " << fname << endl; ++ QString _fname = fname; ++ ++ QString path; ++ int slash = _fname.findRev ('/'); ++ if (slash == -1 || slash == 0) { ++ path = _fname; ++ _fname = ""; ++ } else { ++ path = _fname.left (slash); ++ _fname = _fname.right (_fname.length() - slash); ++ } ++ + QStringList langs = KGlobal::locale()->languageList(); ++ QStringList::ConstIterator lang; ++ for (lang = langs.begin(); lang != langs.end(); ++lang) ++ if ((*lang).left(2) == "en") ++ search.append(QString("/opt/gnome/share/gnome/help/%1/C%2").arg(path).arg(_fname)); ++ else ++ search.append(QString("/opt/gnome/share/gnome/help/%1/%2%3").arg(path).arg(*lang).arg(_fname)); ++ + langs.append( "en" ); + langs.remove( "C" ); + +@@ -60,7 +80,7 @@ + { + QStringList::ConstIterator lang; + for (lang = langs.begin(); lang != langs.end(); ++lang) +- search.append(QString("%1%2/%3").arg(localDoc[id], *lang, fname)); ++ search.append(QString("%1%2/%3").arg(localDoc[id], *lang, path + _fname)); + } + + // try to locate the file +@@ -81,6 +101,15 @@ + if (info.exists() && info.isFile() && info.isReadable()) + return *it; + } ++ ++ if ( ( *it ).right( 5 ) == ".html" ) ++ { ++ QString file = (*it).left((*it).findRev('/')) + "/" + path + ".xml"; ++ kdDebug( 7119 ) << "Looking for help in: " << file << endl; ++ info.setFile(file); ++ if (info.exists() && info.isFile() && info.isReadable()) ++ return *it; ++ } + } + + +@@ -100,7 +129,7 @@ + result = langLookup(path); + if (result.isEmpty()) + { +- result = langLookup(path+"/index.html"); ++ result = langLookup(path + "/index.html"); + if (!result.isEmpty()) + { + KURL red( "help:/" ); +@@ -190,12 +219,26 @@ + } + } else { + QString docbook_file = file.left(file.findRev('/')) + "/index.docbook"; ++ int last_slash = file.findRev('/'); ++ if (last_slash != -1 && last_slash != 0) { ++ int slash2 = file.findRev('/', last_slash -1); ++ if (slash2 != -1 && slash2 != 0) { ++ int slash3 = file.findRev('/', slash2 - 1); ++ if (slash3 != -1) { ++ QString xml_file = file.left(file.findRev('/')) + "/" + file.mid(slash3 + 1, slash2 - (slash3 + 1)) + ".xml"; ++ kdDebug( 7119 ) << "xml_file " << xml_file << endl; ++ QFileInfo fi(xml_file); ++ if (fi.exists()) ++ docbook_file = xml_file; ++ } ++ } ++ } + if (!KStandardDirs::exists(file)) { + file = docbook_file; + } else { + QFileInfo fi(file); + if (fi.isDir()) { +- file = file + "/index.docbook"; ++ file = docbook_file; + } else { + if ( file.right( 5 ) != ".html" || !compareTimeStamps( file, docbook_file ) ) { + get_file( target ); +@@ -238,7 +281,11 @@ + mParsed = transform(file, locate("dtd", "customization/kde-chunk.xsl")); + if ( !mParsed.isEmpty() ) { + infoMessage( i18n( "Saving to cache" ) ); +- QString cache = file.left( file.length() - 7 ); ++ QString cache; ++ if (file.endsWith(".xml")) ++ cache = file.left( file.length() - strlen ("xml") ); ++ else ++ cache = file.left( file.length() - strlen ("docbook") ); + saveToCache( mParsed, locateLocal( "cache", + "kio_help" + cache + + "cache.bz2" ) ); +--- kdoctools/xslt.cpp ++++ kdoctools/xslt.cpp +@@ -274,10 +274,16 @@ + QString lookForCache( const QString &filename ) + { + kdDebug() << "lookForCache " << filename << endl; +- assert( filename.endsWith( ".docbook" ) ); ++ assert( filename.endsWith( ".docbook" ) || filename.endsWith( ".xml" ) ); + assert( filename.at( 0 ) == '/' ); + +- QString cache = filename.left( filename.length() - 7 ); ++ QString cache; ++ ++ if (filename.endsWith( ".xml" )) ++ cache = filename.left( filename.length() - strlen ("xml") ); ++ else ++ cache = filename.left( filename.length() - strlen ("docbook") ); ++ + QString output; + if ( readCache( filename, cache + "cache.bz2", output) ) + return output; diff --git a/opensuse/core/tdelibs.old/fix-kdemm-build.diff b/opensuse/core/tdelibs.old/fix-kdemm-build.diff new file mode 100644 index 000000000..befe5e324 --- /dev/null +++ b/opensuse/core/tdelibs.old/fix-kdemm-build.diff @@ -0,0 +1,88 @@ +Index: kdemm/backend.h +=================================================================== +--- kdemm/backend.h.orig ++++ kdemm/backend.h +@@ -41,7 +41,7 @@ namespace Multimedia + * \author Matthias Kretz + * \since 4.0 + */ +- class Backend : public QObject ++ class KDE_EXPORT Backend : public QObject + { + Q_OBJECT + public: +Index: kdemm/channel.h +=================================================================== +--- kdemm/channel.h.orig ++++ kdemm/channel.h +@@ -34,7 +34,7 @@ namespace Multimedia + * \author Matthias Kretz + * \since 4.0 + */ +- class Channel : public QObject, virtual public MixerIface ++ class KDE_EXPORT Channel : public QObject, virtual public MixerIface + { + Q_OBJECT + public: +Index: kdemm/factory.h +=================================================================== +--- kdemm/factory.h.orig ++++ kdemm/factory.h +@@ -64,7 +64,7 @@ class VideoPlayer; + * \author Matthias Kretz + * \since 4.0 + */ +-class Factory : public QObject, public DCOPObject ++class KDE_EXPORT Factory : public QObject, public DCOPObject + { + Q_OBJECT + public: +Index: kdemm/player.h +=================================================================== +--- kdemm/player.h.orig ++++ kdemm/player.h +@@ -20,6 +20,7 @@ + #ifndef PLAYOBJECT_H + #define PLAYOBJECT_H + ++#include + #include + + class KURL; +@@ -35,7 +36,7 @@ namespace Multimedia + * \author Matthias Kretz + * \since 4.0 + */ +- class Player : public QObject ++ class KDE_EXPORT Player : public QObject + { + Q_OBJECT + public: +Index: kdemm/simpleplayer.h +=================================================================== +--- kdemm/simpleplayer.h.orig ++++ kdemm/simpleplayer.h +@@ -32,7 +32,7 @@ namespace KDE + namespace Multimedia + { + +-class SimplePlayer : public QObject ++class KDE_EXPORT SimplePlayer : public QObject + { + Q_OBJECT + public: +Index: kdemm/mixeriface.h +=================================================================== +--- kdemm/mixeriface.h.orig ++++ kdemm/mixeriface.h +@@ -21,8 +21,9 @@ + #define MIXERIFACE_H + + #include ++#include + +-class MixerIface : public DCOPObject ++class KDE_EXPORT MixerIface : public DCOPObject + { + K_DCOP + k_dcop: diff --git a/opensuse/core/tdelibs.old/fix-kerberos-printing.diff b/opensuse/core/tdelibs.old/fix-kerberos-printing.diff new file mode 100644 index 000000000..0276cdd06 --- /dev/null +++ b/opensuse/core/tdelibs.old/fix-kerberos-printing.diff @@ -0,0 +1,37 @@ +Index: kdeprint/management/smbview.cpp +=================================================================== +--- kdeprint/management/smbview.cpp.orig ++++ kdeprint/management/smbview.cpp +@@ -187,13 +187,26 @@ void SmbView::setOpen(QListViewItem *ite + } + else if (item->depth() == 1) + { // opening server ++ char *krb5ccname = getenv ("KRB5CCNAME"); + m_current = item; +- *m_proc << "smbclient -N -L "; +- *m_proc << KProcess::quote(item->text(0)); +- *m_proc << " -W "; +- *m_proc << KProcess::quote(item->parent()->text(0)); +- *m_proc << " -A "; +- *m_proc << KProcess::quote(m_passwdFile->name()); ++ if (krb5ccname) ++ { ++ *m_proc << "smbclient -k -N -L "; ++ } ++ else ++ { ++ *m_proc << "smbclient -N -L "; ++ } ++ *m_proc << KProcess::quote (item->text (0)); ++ *m_proc << " -W "; ++ *m_proc << KProcess::quote (item->parent ()-> ++ text (0)); ++ if (!krb5ccname) ++ { ++ *m_proc << " -A "; ++ *m_proc << KProcess:: ++ quote (m_passwdFile->name ()); ++ } + startProcess(ShareListing); + } + } diff --git a/opensuse/core/tdelibs.old/fix-macmenu.patch b/opensuse/core/tdelibs.old/fix-macmenu.patch new file mode 100644 index 000000000..4b8f6b1cf --- /dev/null +++ b/opensuse/core/tdelibs.old/fix-macmenu.patch @@ -0,0 +1,11 @@ +--- kdeui/kmenubar.cpp.sav 2008-03-08 17:32:38.000000000 +0100 ++++ kdeui/kmenubar.cpp 2009-08-30 09:27:29.000000000 +0200 +@@ -308,7 +308,7 @@ void KMenuBar::updateFallbackSize() + if( d->fallback_mode ) + { + d->fallback_mode = false; +-// KWin::setStrut( winId(), 0, 0, 0, 0 ); KWin will set strut as it will see fit ++ KWin::setStrut( winId(), 0, 0, 0, 0 ); + setMinimumSize( 0, 0 ); + setMaximumSize( QWIDGETSIZE_MAX, QWIDGETSIZE_MAX ); + updateMenuBarSize(); diff --git a/opensuse/core/tdelibs.old/fix-qxembed.diff b/opensuse/core/tdelibs.old/fix-qxembed.diff new file mode 100644 index 000000000..8ea18d69d --- /dev/null +++ b/opensuse/core/tdelibs.old/fix-qxembed.diff @@ -0,0 +1,80 @@ +Index: kdeui/qxembed.h +=================================================================== +--- kdeui/qxembed.h.orig ++++ kdeui/qxembed.h +@@ -191,6 +191,11 @@ public: + void enterWhatsThisMode(); // temporary, fix in Qt (Matthias, Mon Jul 17 15:20:55 CEST 2000 ) + virtual void reparent( QWidget * parent, WFlags f, const QPoint & p, bool showIt = false ); + ++ /** ++ * @internal ++ */ ++ void updateEmbeddedFocus( bool hasfocus ); ++ + signals: + /** + * This signal is emitted when the embedded window has been lost (destroyed or reparented away) +Index: kdeui/qxembed.cpp +=================================================================== +--- kdeui/qxembed.cpp.orig ++++ kdeui/qxembed.cpp +@@ -314,8 +314,8 @@ bool QXEmbedAppFilter::eventFilter( QObj + if ( qApp->focusWidget() == o && + ((QPublicWidget*)qApp->focusWidget()->topLevelWidget())->topData()->embedded ) { + QFocusEvent* fe = (QFocusEvent*) e; +- if ( obeyFocus || fe->reason() == QFocusEvent::Mouse || +- fe->reason() == QFocusEvent::Shortcut ) { ++ if ( obeyFocus || fe->reason() != QFocusEvent::ActiveWindow /*|| fe->reason() == QFocusEvent::Mouse || ++ fe->reason() == QFocusEvent::Shortcut*/ ) { + // L0614: A widget in the embedded client was just given the Qt focus. + // Variable `obeyFocus' suggests that this is the result of mouse + // activity in the client. The XEMBED_REQUEST_FOCUS message causes +@@ -478,8 +478,11 @@ static int qxembed_x11_event_filter( XEv + switch ( detail ) { + case XEMBED_FOCUS_CURRENT: + // L0683: Set focus on saved focus widget +- if ( focusCurrent ) ++ if ( focusCurrent ) { + focusCurrent->setFocus(); ++ if( QXEmbed* emb = dynamic_cast< QXEmbed* >( focusCurrent )) ++ emb->updateEmbeddedFocus( true ); ++ } + else if ( !w->topLevelWidget()->focusWidget() ) + w->topLevelWidget()->setFocus(); + break; +@@ -511,6 +514,8 @@ static int qxembed_x11_event_filter( XEv + // We first record what the focus widget was + // and clear the Qt focus. + if ( w->topLevelWidget()->focusWidget() ) { ++ if( QXEmbed* emb = dynamic_cast< QXEmbed* >( w->topLevelWidget()->focusWidget())) ++ emb->updateEmbeddedFocus( false ); + focusMap->insert( w->topLevelWidget(), + new QGuardedPtr(w->topLevelWidget()->focusWidget() ) ); + w->topLevelWidget()->focusWidget()->clearFocus(); +@@ -919,6 +924,17 @@ void QXEmbed::focusOutEvent( QFocusEvent + } + + ++// When QXEmbed has Qt focus and gets/loses X focus, make sure the client knows ++// about the state of the focus. ++void QXEmbed::updateEmbeddedFocus( bool hasfocus ){ ++ if (!window || d->xplain) ++ return; ++ if( hasfocus ) ++ sendXEmbedMessage( window, XEMBED_FOCUS_IN, XEMBED_FOCUS_CURRENT); ++ else ++ sendXEmbedMessage( window, XEMBED_FOCUS_OUT); ++} ++ + // L1600: Helper for QXEmbed::embed() + // Check whether a window is in withdrawn state. + static bool wstate_withdrawn( WId winid ) +@@ -1161,6 +1177,8 @@ bool QXEmbed::x11Event( XEvent* e) + // L2085: The client asks for the focus. + case XEMBED_REQUEST_FOCUS: + if( ((QPublicWidget*)topLevelWidget())->topData()->embedded ) { ++ focusMap->remove( topLevelWidget() ); ++ focusMap->insert( topLevelWidget(), new QGuardedPtr( this )); + WId window = ((QPublicWidget*)topLevelWidget())->topData()->parentWinId; + sendXEmbedMessage( window, XEMBED_REQUEST_FOCUS ); + } else { diff --git a/opensuse/core/tdelibs.old/flash-player-non-oss.diff b/opensuse/core/tdelibs.old/flash-player-non-oss.diff new file mode 100644 index 000000000..e3bcdc3e4 --- /dev/null +++ b/opensuse/core/tdelibs.old/flash-player-non-oss.diff @@ -0,0 +1,44 @@ +Index: khtml/rendering/render_frames.cpp +=================================================================== +--- khtml/rendering/render_frames.cpp.orig ++++ khtml/rendering/render_frames.cpp +@@ -940,14 +940,33 @@ void RenderPartObject::slotPartLoadingEr + // Prepare the URL to show in the question (host only if http, to make it short) + KURL pluginPageURL( embed->pluginPage ); + QString shortURL = pluginPageURL.protocol() == "http" ? pluginPageURL.host() : pluginPageURL.prettyURL(); +- int res = KMessageBox::questionYesNo( m_view, +- i18n("No plugin found for '%1'.\nDo you want to download one from %2?").arg(mimeName).arg(shortURL), ++ ++ int res; ++ if (mimeName.startsWith("Shockwave Flash",false)) ++ { ++ res = KMessageBox::questionYesNo( m_view, ++ i18n("No plugin found for '%1'.\nDo you want to download one from %2?").arg(mimeName).arg("openSUSE"), + i18n("Missing Plugin"), i18n("Download"), i18n("Do Not Download"), QString("plugin-")+serviceType); +- if ( res == KMessageBox::Yes ) ++ ++ if ( res == KMessageBox::Yes ) ++ { ++ // Open YMP file ++ KURL ymp_flash ("http://download.opensuse.org/YaST/flash-player.ymp"); ++ ext->openURLRequest( ymp_flash ); ++ return; ++ } ++ } ++ else + { +- // Display vendor download page +- ext->createNewWindow( pluginPageURL ); +- return; ++ res = KMessageBox::questionYesNo( m_view, ++ i18n("No plugin found for '%1'.\nDo you want to download one from %2?").arg(mimeName).arg(shortURL), ++ i18n("Missing Plugin"), i18n("Download"), i18n("Do Not Download"), QString("plugin-")+serviceType); ++ if ( res == KMessageBox::Yes ) ++ { ++ // Display vendor download page ++ ext->createNewWindow( pluginPageURL ); ++ return; ++ } + } + } + } diff --git a/opensuse/core/tdelibs.old/fontconfig-reverse-lookup.diff b/opensuse/core/tdelibs.old/fontconfig-reverse-lookup.diff new file mode 100644 index 000000000..af32e5600 --- /dev/null +++ b/opensuse/core/tdelibs.old/fontconfig-reverse-lookup.diff @@ -0,0 +1,137 @@ +Index: kdeui/Makefile.am +=================================================================== +--- kdeui/Makefile.am.orig ++++ kdeui/Makefile.am +@@ -20,7 +20,7 @@ + + SUBDIRS = . kdetrayproxy tests about + +-INCLUDES= -I$(top_srcdir)/kdefx -I$(top_srcdir)/interfaces $(all_includes) ++INCLUDES= -I/usr/include/freetype2/ -I$(top_srcdir)/kdefx -I$(top_srcdir)/interfaces $(all_includes) + + # For the future: examine if condensing the tons of *_LDFLAGS variables + # into $(all_libraries) isn't better +Index: kdeui/kaction.cpp +=================================================================== +--- kdeui/kaction.cpp.orig ++++ kdeui/kaction.cpp +@@ -42,6 +42,17 @@ + #include + #include + ++#include ++#include FT_FREETYPE_H ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++ + /** + * How it works. + * KActionCollection is an organizing container for KActions. +Index: kdeui/kactionclasses.cpp +=================================================================== +--- kdeui/kactionclasses.cpp.orig ++++ kdeui/kactionclasses.cpp +@@ -27,6 +27,9 @@ + #include "kactionclasses.h" + + #include ++#include ++#include FT_FREETYPE_H ++#include + + #include + #include +@@ -35,6 +38,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -1498,7 +1502,24 @@ void KFontAction::setFont( const QString + return; + } + } +- kdDebug(129) << "Font not found " << family.lower() << endl; ++ ++ // nothing matched yet, try a fontconfig reverse lookup and ++ // check again to solve an alias ++ FcPattern *pattern = NULL; ++ FcConfig *config = NULL; ++ QString realFamily; ++ QRegExp regExp("[-:]"); ++ pattern = FcNameParse( (unsigned char*) family.ascii() ); ++ FcDefaultSubstitute(pattern); ++ FcConfigSubstitute (config, pattern, FcMatchPattern); ++ pattern = FcFontMatch(NULL, pattern, NULL); ++ realFamily = (char*)FcNameUnparse(pattern); ++ realFamily.remove(realFamily.find(regExp), realFamily.length()); ++ ++ if ( !realFamily.isEmpty() && realFamily != family ) ++ setFont( realFamily ); ++ else ++ kdDebug(129) << "Font not found " << family.lower() << endl; + } + + int KFontAction::plug( QWidget *w, int index ) +Index: kdeui/kfontcombo.cpp +=================================================================== +--- kdeui/kfontcombo.cpp.orig ++++ kdeui/kfontcombo.cpp +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -29,6 +30,18 @@ + #include "kfontcombo.h" + #include "kfontcombo.moc" + ++#include ++#include FT_FREETYPE_H ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++ ++ + struct KFontComboPrivate + { + KFontComboPrivate() +@@ -227,6 +240,22 @@ void KFontCombo::setCurrentFont(const QS + return; + } + } ++ ++ // nothing matched yet, try a fontconfig reverse lookup and ++ // check again to solve an alias ++ FcPattern *pattern = NULL; ++ FcConfig *config = NULL; ++ QString realFamily; ++ QRegExp regExp("[-:]"); ++ pattern = FcNameParse( (unsigned char*) family.ascii() ); ++ FcDefaultSubstitute(pattern); ++ FcConfigSubstitute (config, pattern, FcMatchPattern); ++ pattern = FcFontMatch(NULL, pattern, NULL); ++ realFamily = (char*)FcNameUnparse(pattern); ++ realFamily.remove(realFamily.find(regExp), realFamily.length()); ++ ++ if ( !realFamily.isEmpty() && realFamily != family ) ++ setCurrentFont( realFamily ); + } + + void KFontCombo::slotModified( int ) diff --git a/opensuse/core/tdelibs.old/gcc44.diff b/opensuse/core/tdelibs.old/gcc44.diff new file mode 100644 index 000000000..f191e1202 --- /dev/null +++ b/opensuse/core/tdelibs.old/gcc44.diff @@ -0,0 +1,20 @@ +--- kioslave/ftp/ftp.cc.sav 2009-05-29 13:38:11.000000000 +0200 ++++ kioslave/ftp/ftp.cc 2009-05-29 13:38:38.000000000 +0200 +@@ -876,7 +876,7 @@ int Ftp::ftpOpenPASVDataConnection() + // The usual answer is '227 Entering Passive Mode. (160,39,200,55,6,245)' + // but anonftpd gives '227 =160,39,200,55,6,245' + int i[6]; +- char *start = strchr(ftpResponse(3), '('); ++ const char *start = strchr(ftpResponse(3), '('); + if ( !start ) + start = strchr(ftpResponse(3), '='); + if ( !start || +@@ -931,7 +931,7 @@ int Ftp::ftpOpenEPSVDataConnection() + return ERR_INTERNAL; + } + +- char *start = strchr(ftpResponse(3), '|'); ++ const char *start = strchr(ftpResponse(3), '|'); + if ( !start || sscanf(start, "|||%d|", &portnum) != 1) + return ERR_INTERNAL; + diff --git a/opensuse/core/tdelibs.old/gcc45.diff b/opensuse/core/tdelibs.old/gcc45.diff new file mode 100644 index 000000000..a4b8679bf --- /dev/null +++ b/opensuse/core/tdelibs.old/gcc45.diff @@ -0,0 +1,31 @@ +------------------------------------------------------------------------ +r1074156 | mueller | 2010-01-13 16:02:53 +0100 (Mi, 13. Jan 2010) | 2 Zeilen + +fix build with gcc 4.5 + +------------------------------------------------------------------------ +Index: kate/part/katehighlight.cpp +=================================================================== +--- kate/part/katehighlight.cpp (Revision 1074155) ++++ kate/part/katehighlight.cpp (Revision 1074156) +@@ -3225,7 +3225,7 @@ void KateHlManager::getDefaults(uint sch + list.append(charAttribute); + + KateAttribute* string = new KateAttribute(); +- string->setTextColor(QColor::QColor("#D00")); ++ string->setTextColor(QColor("#D00")); + string->setSelectedTextColor(Qt::red); + list.append(string); + +@@ -3242,9 +3242,9 @@ void KateHlManager::getDefaults(uint sch + + KateAttribute* alert = new KateAttribute(); + alert->setTextColor(Qt::black); +- alert->setSelectedTextColor( QColor::QColor("#FCC") ); ++ alert->setSelectedTextColor( QColor("#FCC") ); + alert->setBold(true); +- alert->setBGColor( QColor::QColor("#FCC") ); ++ alert->setBGColor( QColor("#FCC") ); + list.append(alert); + + KateAttribute* functionAttribute = new KateAttribute(); diff --git a/opensuse/core/tdelibs.old/google-mail.diff b/opensuse/core/tdelibs.old/google-mail.diff new file mode 100644 index 000000000..59b132529 --- /dev/null +++ b/opensuse/core/tdelibs.old/google-mail.diff @@ -0,0 +1,18 @@ +Index: khtml/html/html_elementimpl.cpp +=================================================================== +--- khtml/html/html_elementimpl.cpp.orig ++++ khtml/html/html_elementimpl.cpp +@@ -565,6 +565,13 @@ DocumentFragment HTMLElementImpl::create + + void HTMLElementImpl::setInnerHTML( const DOMString &html, int &exceptioncode ) + { ++ // Works line innerText in Gecko ++ // ### test if needed for ID_SCRIPT as well. ++ if ( id() == ID_STYLE ) { ++ setInnerText(html, exceptioncode); ++ return; ++ } ++ + DocumentFragment fragment = createContextualFragment( html ); + if ( fragment.isNull() ) { + exceptioncode = DOMException::NO_MODIFICATION_ALLOWED_ERR; diff --git a/opensuse/core/tdelibs.old/ignore-inline-menu.diff b/opensuse/core/tdelibs.old/ignore-inline-menu.diff new file mode 100644 index 000000000..106bc5284 --- /dev/null +++ b/opensuse/core/tdelibs.old/ignore-inline-menu.diff @@ -0,0 +1,18 @@ +--- kded/vfolder_menu.cpp 2009/11/07 07:01:12 1.1 ++++ kded/vfolder_menu.cpp 2009/11/07 07:01:42 +@@ -1496,6 +1496,7 @@ + else + kdDebug()<<" Error in parsing show_empty attribute :"<hidden = cfg.readBoolEntry("Hidden", false); + d->example = cfg.readPathEntry("Example"); diff --git a/opensuse/core/tdelibs.old/integrate-global-pixmaps-new.diff b/opensuse/core/tdelibs.old/integrate-global-pixmaps-new.diff new file mode 100644 index 000000000..2d3a831b7 --- /dev/null +++ b/opensuse/core/tdelibs.old/integrate-global-pixmaps-new.diff @@ -0,0 +1,13 @@ +Index: kdecore/kicontheme.cpp +=================================================================== +--- kdecore/kicontheme.cpp.orig ++++ kdecore/kicontheme.cpp +@@ -150,6 +150,8 @@ KIconTheme::KIconTheme(const QString& na + if ( name != "crystalsvg" ) + for ( QStringList::Iterator it = mInherits.begin(); it != mInherits.end(); ++it ) + if ( *it == "default" || *it == "hicolor" ) *it="crystalsvg"; ++ if ( name == "hicolor" ) ++ mInherits = "crystalsuse"; + + d->hidden = cfg.readBoolEntry("Hidden", false); + d->example = cfg.readPathEntry("Example"); diff --git a/opensuse/core/tdelibs.old/kcontrol_crash_patch.diff b/opensuse/core/tdelibs.old/kcontrol_crash_patch.diff new file mode 100644 index 000000000..22b3749f6 --- /dev/null +++ b/opensuse/core/tdelibs.old/kcontrol_crash_patch.diff @@ -0,0 +1,11 @@ +--- kdecore/svgicons/ksvgiconengine.cpp.orig 2011-03-15 01:29:21.172970849 +0300 ++++ kdecore/svgicons/ksvgiconengine.cpp 2011-03-15 01:42:09.904779795 +0300 +@@ -538,6 +538,8 @@ + + bool KSVGIconEngine::load(int width, int height, const QString &path) + { ++ if(path.isNull()) return false; ++ + QDomDocument svgDocument("svg"); + QFile file(path); + diff --git a/opensuse/core/tdelibs.old/kde3rc.dif b/opensuse/core/tdelibs.old/kde3rc.dif new file mode 100644 index 000000000..72465757e --- /dev/null +++ b/opensuse/core/tdelibs.old/kde3rc.dif @@ -0,0 +1,17 @@ +Index: kdecore/kconfigbackend.cpp +=================================================================== +--- kdecore/kconfigbackend.cpp.orig ++++ kdecore/kconfigbackend.cpp +@@ -352,7 +352,11 @@ bool KConfigINIBackEnd::parseConfigFiles + #ifdef Q_WS_WIN + QString etc_kderc = QFile::decodeName( QCString(getenv("WINDIR")) + "\\kderc" ); + #else +- QString etc_kderc = QString::fromLatin1("/etc/kderc"); ++ QString etc_kderc; ++ if (checkAccess(QString::fromLatin1("/etc/tderc"), R_OK)) ++ etc_kderc = QString::fromLatin1("/etc/tderc"); ++ else ++ etc_kderc = QString::fromLatin1("/etc/kde3rc"); + #endif + + if (checkAccess(etc_kderc, R_OK)) diff --git a/opensuse/core/tdelibs.old/kde4-applications.diff b/opensuse/core/tdelibs.old/kde4-applications.diff new file mode 100644 index 000000000..78f223d46 --- /dev/null +++ b/opensuse/core/tdelibs.old/kde4-applications.diff @@ -0,0 +1,70 @@ +Index: kio/kio/kservice.cpp +=================================================================== +--- kio/kio/kservice.cpp.orig ++++ kio/kio/kservice.cpp +@@ -97,6 +97,7 @@ KService::init( KDesktopFile *config ) + m_bValid = true; + + bool absPath = !QDir::isRelativePath(entryPath()); ++ bool kde4application = config->fileName().startsWith("/usr/share/applications/kde4/"); + + config->setDesktopGroup(); + +@@ -133,6 +134,8 @@ KService::init( KDesktopFile *config ) + if (i != -1) + m_strName = m_strName.left(i); + } ++ if (kde4application) ++ m_strName += "/KDE4"; + + m_strType = config->readType(); + entryMap.remove("Type"); +@@ -196,6 +199,18 @@ KService::init( KDesktopFile *config ) + name = name.left(pos); + + m_strExec = config->readPathEntry( "Exec" ); ++ if (kde4application && !m_strExec.startsWith("/")) ++ m_strExec = "/usr/bin/"+m_strExec; ++ else if (config->readBoolEntry("X-KDE-SubstituteUID")) { ++ int space = m_strExec.find(" "); ++ if (space==-1) ++ m_strExec = KStandardDirs::findExe(m_strExec); ++ else { ++ const QString command = m_strExec.left(space); ++ m_strExec.replace(command,KStandardDirs::findExe(command)); ++ } ++ } ++ + entryMap.remove("Exec"); + + m_strIcon = config->readEntry( "Icon", "unknown" ); +@@ -245,6 +260,8 @@ KService::init( KDesktopFile *config ) + m_DCOPServiceType = DCOP_None; + + m_strDesktopEntryName = name.lower(); ++ if (kde4application) ++ m_strDesktopEntryName = "kde4-" + m_strDesktopEntryName; + + m_bAllowAsDefault = config->readBoolEntry( "AllowDefault", true ); + entryMap.remove("AllowDefault"); +@@ -254,6 +271,8 @@ KService::init( KDesktopFile *config ) + if ( m_initialPreference == 1 ) + m_initialPreference = config->readNumEntry( "InitialPreference", 1 ); + entryMap.remove("InitialPreference"); ++ if (kde4application) ++ m_initialPreference = 1; + + // Store all additional entries in the property map. + // A QMap would be easier for this but we can't +@@ -263,7 +282,10 @@ KService::init( KDesktopFile *config ) + for( ; it != entryMap.end();++it) + { + //qDebug(" Key = %s Data = %s", it.key().latin1(), it.data().latin1()); +- m_mapProps.insert( it.key(), QVariant( it.data())); ++ QString key = it.key(); ++ if (kde4application && key=="OnlyShowIn" && it.data()=="KDE;") ++ key = "NotShowIn"; ++ m_mapProps.insert( key, QVariant( it.data())); + } + } + diff --git a/opensuse/core/tdelibs.old/kdecode_fakes_include.diff b/opensuse/core/tdelibs.old/kdecode_fakes_include.diff new file mode 100644 index 000000000..a00585286 --- /dev/null +++ b/opensuse/core/tdelibs.old/kdecode_fakes_include.diff @@ -0,0 +1,18 @@ +--- kdecore/fakes.c ++++ kdecore/fakes.c 2010/01/10 14:00:22 +@@ -323,6 +323,7 @@ + #endif + + #ifndef HAVE_STRLCPY ++#include + KDECORE_EXPORT unsigned long strlcpy(char* d, const char* s, unsigned long bufsize) + { + unsigned long len, ret = strlen(s); +@@ -341,6 +342,7 @@ + #endif + + #ifndef HAVE_STRLCAT ++#include + KDECORE_EXPORT unsigned long strlcat(char* d, const char* s, unsigned long bufsize) + { + char *cp; diff --git a/opensuse/core/tdelibs.old/kdelibs-3.5.10-CVE-2009-2702.patch b/opensuse/core/tdelibs.old/kdelibs-3.5.10-CVE-2009-2702.patch new file mode 100644 index 000000000..e6f06a779 --- /dev/null +++ b/opensuse/core/tdelibs.old/kdelibs-3.5.10-CVE-2009-2702.patch @@ -0,0 +1,62 @@ +diff -pruN kdelibs-3.5.4.orig/kio/kssl/kopenssl.cc kdelibs-3.5.4/kio/kssl/kopenssl.cc +--- kdelibs-3.5.4.orig/kio/kssl/kopenssl.cc 2009-08-31 20:50:12.000000000 +0200 ++++ kdelibs-3.5.4/kio/kssl/kopenssl.cc 2009-08-31 21:46:47.000000000 +0200 +@@ -196,6 +196,7 @@ static int (*K_X509_NAME_add_entry_by_tx + static X509_NAME *(*K_X509_NAME_new)() = 0L; + static int (*K_X509_REQ_set_subject_name)(X509_REQ*,X509_NAME*) = 0L; + static unsigned char *(*K_ASN1_STRING_data)(ASN1_STRING*) = 0L; ++static int (*K_ASN1_STRING_length)(ASN1_STRING*) = 0L; + static STACK_OF(SSL_CIPHER) *(*K_SSL_get_ciphers)(const SSL *ssl) = 0L; + + #endif +@@ -498,6 +499,7 @@ KConfig *cfg; + K_X509_NAME_new = (X509_NAME *(*)()) _cryptoLib->symbol("X509_NAME_new"); + K_X509_REQ_set_subject_name = (int (*)(X509_REQ*,X509_NAME*)) _cryptoLib->symbol("X509_REQ_set_subject_name"); + K_ASN1_STRING_data = (unsigned char *(*)(ASN1_STRING*)) _cryptoLib->symbol("ASN1_STRING_data"); ++ K_ASN1_STRING_length = (int (*)(ASN1_STRING*)) _cryptoLib->symbol("ASN1_STRING_length"); + #endif + } + +@@ -1549,6 +1551,13 @@ unsigned char *KOpenSSLProxy::ASN1_STRIN + return 0L; + } + ++ ++int KOpenSSLProxy::ASN1_STRING_length(ASN1_STRING *x) { ++ if (K_ASN1_STRING_length) return (K_ASN1_STRING_length)(x); ++ return 0L; ++} ++ ++ + STACK_OF(SSL_CIPHER) *KOpenSSLProxy::SSL_get_ciphers(const SSL* ssl) { + if (K_SSL_get_ciphers) return (K_SSL_get_ciphers)(ssl); + return 0L; +diff -pruN kdelibs-3.5.4.orig/kio/kssl/kopenssl.h kdelibs-3.5.4/kio/kssl/kopenssl.h +--- kdelibs-3.5.4.orig/kio/kssl/kopenssl.h 2006-07-22 10:16:39.000000000 +0200 ++++ kdelibs-3.5.4/kio/kssl/kopenssl.h 2009-08-31 21:46:47.000000000 +0200 +@@ -622,6 +622,11 @@ public: + unsigned char *ASN1_STRING_data(ASN1_STRING *x); + + /* ++ * ASN1_STRING_length ++ */ ++ int ASN1_STRING_length(ASN1_STRING *x); ++ ++ /* + * + */ + int OBJ_obj2nid(ASN1_OBJECT *o); +diff -pruN kdelibs-3.5.4.orig/kio/kssl/ksslcertificate.cc kdelibs-3.5.4/kio/kssl/ksslcertificate.cc +--- kdelibs-3.5.4.orig/kio/kssl/ksslcertificate.cc 2006-01-19 18:06:12.000000000 +0100 ++++ kdelibs-3.5.4/kio/kssl/ksslcertificate.cc 2009-08-31 21:54:38.000000000 +0200 +@@ -1099,7 +1099,9 @@ QStringList KSSLCertificate::subjAltName + } + + QString s = (const char *)d->kossl->ASN1_STRING_data(val->d.ia5); +- if (!s.isEmpty()) { ++ if (!s.isEmpty() && ++ /* skip subjectAltNames with embedded NULs */ ++ s.length() == d->kossl->ASN1_STRING_length(val->d.ia5)) { + rc += s; + } + } diff --git a/opensuse/core/tdelibs.old/kdelibs-3.5.10-cve-2009-1698.patch b/opensuse/core/tdelibs.old/kdelibs-3.5.10-cve-2009-1698.patch new file mode 100644 index 000000000..ab9fea5c2 --- /dev/null +++ b/opensuse/core/tdelibs.old/kdelibs-3.5.10-cve-2009-1698.patch @@ -0,0 +1,42 @@ +diff -ur kdelibs-3.5.10/khtml/css/cssparser.cpp kdelibs-3.5.10-cve-2009-1698/khtml/css/cssparser.cpp +--- kdelibs-3.5.10/khtml/css/cssparser.cpp 2007-01-15 12:34:04.000000000 +0100 ++++ kdelibs-3.5.10-cve-2009-1698/khtml/css/cssparser.cpp 2009-07-26 05:46:39.000000000 +0200 +@@ -1344,6 +1344,14 @@ + if ( args->size() != 1) + return false; + Value *a = args->current(); ++ if (a->unit != CSSPrimitiveValue::CSS_IDENT) { ++ isValid=false; ++ break; ++ } ++ if (qString(a->string)[0] == '-') { ++ isValid=false; ++ break; ++ } + parsedValue = new CSSPrimitiveValueImpl(domString(a->string), CSSPrimitiveValue::CSS_ATTR); + } + else +@@ -1396,7 +1404,8 @@ + + CounterImpl *counter = new CounterImpl; + Value *i = args->current(); +-// if (i->unit != CSSPrimitiveValue::CSS_IDENT) goto invalid; ++ if (i->unit != CSSPrimitiveValue::CSS_IDENT) goto invalid; ++ if (qString(i->string)[0] == '-') goto invalid; + counter->m_identifier = domString(i->string); + if (counters) { + i = args->next(); +diff -ur kdelibs-3.5.10/khtml/css/css_valueimpl.cpp kdelibs-3.5.10-cve-2009-1698/khtml/css/css_valueimpl.cpp +--- kdelibs-3.5.10/khtml/css/css_valueimpl.cpp 2006-07-22 10:16:49.000000000 +0200 ++++ kdelibs-3.5.10-cve-2009-1698/khtml/css/css_valueimpl.cpp 2009-07-26 05:45:36.000000000 +0200 +@@ -736,7 +736,9 @@ + text = getValueName(m_value.ident); + break; + case CSSPrimitiveValue::CSS_ATTR: +- // ### ++ text = "attr("; ++ text += DOMString( m_value.string ); ++ text += ")"; + break; + case CSSPrimitiveValue::CSS_COUNTER: + text = "counter("; diff --git a/opensuse/core/tdelibs.old/kdelibs-3.5.10-cve-2009-1725.patch b/opensuse/core/tdelibs.old/kdelibs-3.5.10-cve-2009-1725.patch new file mode 100644 index 000000000..ee8fdbc3f --- /dev/null +++ b/opensuse/core/tdelibs.old/kdelibs-3.5.10-cve-2009-1725.patch @@ -0,0 +1,13 @@ +Index: khtml/html/htmltokenizer.cpp +=================================================================== +--- khtml/html/htmltokenizer.cpp (revision 1002163) ++++ khtml/html/htmltokenizer.cpp (revision 1002164) +@@ -736,7 +736,7 @@ + #ifdef TOKEN_DEBUG + kdDebug( 6036 ) << "unknown entity!" << endl; + #endif +- checkBuffer(10); ++ checkBuffer(11); + // ignore the sequence, add it to the buffer as plaintext + *dest++ = '&'; + for(unsigned int i = 0; i < cBufferPos; i++) diff --git a/opensuse/core/tdelibs.old/kdelibs-3.5.10-cve-2009-2537-select-length.patch b/opensuse/core/tdelibs.old/kdelibs-3.5.10-cve-2009-2537-select-length.patch new file mode 100644 index 000000000..5972b0a38 --- /dev/null +++ b/opensuse/core/tdelibs.old/kdelibs-3.5.10-cve-2009-2537-select-length.patch @@ -0,0 +1,30 @@ +diff -ur kdelibs-3.5.10/khtml/ecma/kjs_html.cpp kdelibs-3.5.10-cve-2009-2537-select-length/khtml/ecma/kjs_html.cpp +--- kdelibs-3.5.10/khtml/ecma/kjs_html.cpp 2008-02-13 10:41:09.000000000 +0100 ++++ kdelibs-3.5.10-cve-2009-2537-select-length/khtml/ecma/kjs_html.cpp 2009-07-26 04:54:52.000000000 +0200 +@@ -62,6 +62,9 @@ + + #include + ++// CVE-2009-2537 (vendors agreed on max 10000 elements) ++#define MAX_SELECT_LENGTH 10000 ++ + namespace KJS { + + KJS_DEFINE_PROTOTYPE_WITH_PROTOTYPE(HTMLDocumentProto, DOMDocumentProto) +@@ -2550,8 +2553,14 @@ + case SelectValue: { select.setValue(str); return; } + case SelectLength: { // read-only according to the NS spec, but webpages need it writeable + Object coll = Object::dynamicCast( getSelectHTMLCollection(exec, select.options(), select) ); +- if ( coll.isValid() ) +- coll.put(exec,"length",value); ++ ++ if ( coll.isValid() ) { ++ if (value.toInteger(exec) >= MAX_SELECT_LENGTH) { ++ Object err = Error::create(exec, RangeError); ++ exec->setException(err); ++ } else ++ coll.put(exec, "length", value); ++ } + return; + } + // read-only: form diff --git a/opensuse/core/tdelibs.old/kdelibs-3.5.10-kio.patch b/opensuse/core/tdelibs.old/kdelibs-3.5.10-kio.patch new file mode 100644 index 000000000..9fb299d4a --- /dev/null +++ b/opensuse/core/tdelibs.old/kdelibs-3.5.10-kio.patch @@ -0,0 +1,47 @@ +--- kdelibs-3.5.10/kio/kio/kzip.cpp.orig 2009-12-09 18:42:47.000000000 +0100 ++++ kdelibs-3.5.10/kio/kio/kzip.cpp 2009-12-09 18:45:43.000000000 +0100 +@@ -1051,6 +1051,20 @@ + return true; + } + ++bool KZip::writeDir(const QString& name, const QString& user, const QString& group) ++{ ++ // Zip files have no explicit directories, they are implicitly created during extraction time ++ // when file entries have paths in them. ++ // However, to support empty directories, we must create a dummy file entry which ends with '/'. ++ QString dirName = name; ++ if (!name.endsWith("/")) ++ dirName = dirName.append('/'); ++ ++ mode_t perm = 040755; ++ time_t the_time = time(0); ++ return writeFile(dirName, user, group, 0, perm, the_time, the_time, the_time, 0); ++} ++ + // Doesn't need to be reimplemented anymore. Remove for KDE-4.0 + bool KZip::writeFile( const QString& name, const QString& user, const QString& group, uint size, const char* data ) + { +@@ -1114,7 +1128,7 @@ + } + + // delete entries in the filelist with the same filename as the one we want +- // to save, so that we dont have duplicate file entries when viewing the zip ++ // to save, so that we don�t have duplicate file entries when viewing the zip + // with konqi... + // CAUTION: the old file itself is still in the zip and won't be removed !!! + QPtrListIterator it( d->m_fileList ); +diff -up kdelibs-3.5.10/kio/kio/kzip.h.orig kdelibs-3.5.10/kio/kio/kzip.h +--- kdelibs-3.5.10/kio/kio/kzip.h.orig 2009-12-09 19:35:42.000000000 +0100 ++++ kdelibs-3.5.10/kio/kio/kzip.h 2009-12-09 19:35:48.000000000 +0100 +@@ -191,10 +191,7 @@ protected: + /// Closes the archive + virtual bool closeArchive(); + +- /** +- * @internal Not needed for zip +- */ +- virtual bool writeDir( const QString& name, const QString& user, const QString& group) { Q_UNUSED(name); Q_UNUSED(user); Q_UNUSED(group); return true; } ++ virtual bool writeDir(const QString& name, const QString& user, const QString& group); + // TODO(BIC) uncomment and make virtual for KDE 4. + // bool writeDir( const QString& name, const QString& user, const QString& group, + // mode_t perm, time_t atime, time_t mtime, time_t ctime ); diff --git a/opensuse/core/tdelibs.old/kdelibs-3.5.10-latex-syntax-kile-2.0.3.patch b/opensuse/core/tdelibs.old/kdelibs-3.5.10-latex-syntax-kile-2.0.3.patch new file mode 100644 index 000000000..450dd1fe8 --- /dev/null +++ b/opensuse/core/tdelibs.old/kdelibs-3.5.10-latex-syntax-kile-2.0.3.patch @@ -0,0 +1,143 @@ +diff -ur kdelibs-3.5.10/kate/data/latex.xml kdelibs-3.5.10-latex-syntax-kile-2.0.3/kate/data/latex.xml +--- kdelibs-3.5.10/kate/data/latex.xml 2007-05-14 09:52:27.000000000 +0200 ++++ kdelibs-3.5.10-latex-syntax-kile-2.0.3/kate/data/latex.xml 2008-12-05 14:08:28.000000000 +0100 +@@ -1,16 +1,18 @@ + + +- ++ + + + + + + +- ++ + ++ + + ++ + + + +@@ -22,6 +24,11 @@ + + + ++ ++ ++ ++ ++ + + + +@@ -59,9 +66,46 @@ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + +- ++ + + + +@@ -137,8 +181,9 @@ + + + +- + ++ ++ + + + +@@ -228,6 +273,28 @@ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +@@ -315,11 +382,18 @@ + + + ++ ++ + + + + + ++ ++ ++ ++ ++ + + + diff --git a/opensuse/core/tdelibs.old/kdelibs-3.5.10-ossl-1.x.patch b/opensuse/core/tdelibs.old/kdelibs-3.5.10-ossl-1.x.patch new file mode 100644 index 000000000..a948b884a --- /dev/null +++ b/opensuse/core/tdelibs.old/kdelibs-3.5.10-ossl-1.x.patch @@ -0,0 +1,180 @@ +diff -up kdelibs-3.5.10/kio/kssl/kopenssl.cc.ossl-1.x kdelibs-3.5.10/kio/kssl/kopenssl.cc +--- kdelibs-3.5.10/kio/kssl/kopenssl.cc.ossl-1.x 2009-09-04 23:10:53.000000000 +0200 ++++ kdelibs-3.5.10/kio/kssl/kopenssl.cc 2009-09-04 23:10:53.000000000 +0200 +@@ -96,9 +96,14 @@ static int (*K_BIO_write) (BIO *b, cons + static int (*K_PEM_ASN1_write_bio) (int (*)(),const char *,BIO *,char *, + const EVP_CIPHER *,unsigned char *,int , + pem_password_cb *, void *) = 0L; ++#if OPENSSL_VERSION_NUMBER >= 0x10000000L ++static int (*K_ASN1_item_i2d_fp)(ASN1_ITEM *,FILE *,unsigned char *) = 0L; ++static ASN1_ITEM *K_NETSCAPE_X509_it = 0L; ++#else + static ASN1_METHOD* (*K_X509_asn1_meth) (void) = 0L; + static int (*K_ASN1_i2d_fp)(int (*)(),FILE *,unsigned char *) = 0L; + static int (*K_i2d_ASN1_HEADER)(ASN1_HEADER *, unsigned char **) = 0L; ++#endif + static int (*K_X509_print_fp) (FILE *, X509*) = 0L; + static int (*K_i2d_PKCS12) (PKCS12*, unsigned char**) = 0L; + static int (*K_i2d_PKCS12_fp) (FILE *, PKCS12*) = 0L; +@@ -430,9 +435,14 @@ KConfig *cfg; + K_BIO_ctrl = (long (*) (BIO *,int,long,void *)) _cryptoLib->symbol("BIO_ctrl"); + K_BIO_write = (int (*) (BIO *b, const void *data, int len)) _cryptoLib->symbol("BIO_write"); + K_PEM_ASN1_write_bio = (int (*)(int (*)(), const char *,BIO*, char*, const EVP_CIPHER *, unsigned char *, int, pem_password_cb *, void *)) _cryptoLib->symbol("PEM_ASN1_write_bio"); ++#if OPENSSL_VERSION_NUMBER >= 0x10000000L ++ K_ASN1_item_i2d_fp = (int (*)(ASN1_ITEM *, FILE*, unsigned char *)) _cryptoLib->symbol("ASN1_item_i2d_fp"); ++ K_NETSCAPE_X509_it = (ASN1_ITEM *) _cryptoLib->symbol("NETSCAPE_X509_it"); ++#else + K_X509_asn1_meth = (ASN1_METHOD* (*)(void)) _cryptoLib->symbol("X509_asn1_meth"); + K_ASN1_i2d_fp = (int (*)(int (*)(), FILE*, unsigned char *)) _cryptoLib->symbol("ASN1_i2d_fp"); + K_i2d_ASN1_HEADER = (int (*)(ASN1_HEADER *, unsigned char **)) _cryptoLib->symbol("i2d_ASN1_HEADER"); ++#endif + K_X509_print_fp = (int (*)(FILE*, X509*)) _cryptoLib->symbol("X509_print_fp"); + K_i2d_PKCS12 = (int (*)(PKCS12*, unsigned char**)) _cryptoLib->symbol("i2d_PKCS12"); + K_i2d_PKCS12_fp = (int (*)(FILE *, PKCS12*)) _cryptoLib->symbol("i2d_PKCS12_fp"); +@@ -594,7 +604,7 @@ KConfig *cfg; + K_SSL_set_session = (int (*)(SSL*,SSL_SESSION*)) _sslLib->symbol("SSL_set_session"); + K_d2i_SSL_SESSION = (SSL_SESSION* (*)(SSL_SESSION**,unsigned char**, long)) _sslLib->symbol("d2i_SSL_SESSION"); + K_i2d_SSL_SESSION = (int (*)(SSL_SESSION*,unsigned char**)) _sslLib->symbol("i2d_SSL_SESSION"); +- K_SSL_get_ciphers = (STACK *(*)(const SSL*)) _sslLib->symbol("SSL_get_ciphers"); ++ K_SSL_get_ciphers = (STACK_OF(SSL_CIPHER) *(*)(const SSL*)) _sslLib->symbol("SSL_get_ciphers"); + #endif + + +@@ -982,7 +992,13 @@ int KOpenSSLProxy::PEM_write_bio_X509(BI + else return -1; + } + +- ++#if OPENSSL_VERSION_NUMBER >= 0x10000000L ++int KOpenSSLProxy::ASN1_i2d_fp(FILE *out,unsigned char *x) { ++ if (K_ASN1_item_i2d_fp && K_NETSCAPE_X509_it) ++ return (K_ASN1_item_i2d_fp)(K_NETSCAPE_X509_it, out, x); ++ else return -1; ++} ++#else + ASN1_METHOD *KOpenSSLProxy::X509_asn1_meth(void) { + if (K_X509_asn1_meth) return (K_X509_asn1_meth)(); + else return 0L; +@@ -994,7 +1010,7 @@ int KOpenSSLProxy::ASN1_i2d_fp(FILE *out + return (K_ASN1_i2d_fp)((int (*)())K_i2d_ASN1_HEADER, out, x); + else return -1; + } +- ++#endif + + int KOpenSSLProxy::X509_print(FILE *fp, X509 *x) { + if (K_X509_print_fp) return (K_X509_print_fp)(fp, x); +diff -up kdelibs-3.5.10/kio/kssl/kopenssl.h.ossl-1.x kdelibs-3.5.10/kio/kssl/kopenssl.h +--- kdelibs-3.5.10/kio/kssl/kopenssl.h.ossl-1.x 2006-07-22 10:16:39.000000000 +0200 ++++ kdelibs-3.5.10/kio/kssl/kopenssl.h 2009-09-04 23:10:53.000000000 +0200 +@@ -48,6 +48,9 @@ class KOpenSSLProxyPrivate; + #include + #include + #undef crypt ++#if OPENSSL_VERSION_NUMBER >= 0x10000000L ++#define STACK _STACK ++#endif + #endif + + #include +@@ -446,12 +449,12 @@ public: + */ + int PEM_write_bio_X509(BIO *bp, X509 *x); + +- ++#if OPENSSL_VERSION_NUMBER < 0x10000000L + /* + * X509_asn1_meth - used for netscape output + */ + ASN1_METHOD *X509_asn1_meth(); +- ++#endif + + /* + * ASN1_i2d_fp - used for netscape output +@@ -531,6 +534,9 @@ public: + */ + void sk_free(STACK *s); + ++#if OPENSSL_VERSION_NUMBER >= 0x10000000L ++ void sk_free(void *s) { return sk_free(reinterpret_cast(s)); } ++#endif + + /* + * Number of elements in the stack +@@ -543,6 +549,9 @@ public: + */ + char *sk_value(STACK *s, int n); + ++#if OPENSSL_VERSION_NUMBER >= 0x10000000L ++ char *sk_value(void *s, int n) { return sk_value(reinterpret_cast(s), n); } ++#endif + + /* + * Create a new stack +@@ -555,6 +564,9 @@ public: + */ + int sk_push(STACK *s, char *d); + ++#if OPENSSL_VERSION_NUMBER >= 0x10000000L ++ int sk_push(void *s, void *d) { return sk_push(reinterpret_cast(s), reinterpret_cast(d)); } ++#endif + + /* + * Duplicate the stack +diff -up kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc.ossl-1.x kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc +--- kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc.ossl-1.x 2005-10-10 17:05:44.000000000 +0200 ++++ kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc 2009-09-04 23:10:53.000000000 +0200 +@@ -87,7 +87,7 @@ KSMIMECryptoPrivate::KSMIMECryptoPrivate + + + STACK_OF(X509) *KSMIMECryptoPrivate::certsToX509(QPtrList &certs) { +- STACK_OF(X509) *x509 = sk_new(NULL); ++ STACK_OF(X509) *x509 = reinterpret_cast(sk_new(NULL)); + KSSLCertificate *cert = certs.first(); + while(cert) { + sk_X509_push(x509, cert->getCert()); +diff -up kdelibs-3.5.10/kio/kssl/ksslcertificate.cc.ossl-1.x kdelibs-3.5.10/kio/kssl/ksslcertificate.cc +--- kdelibs-3.5.10/kio/kssl/ksslcertificate.cc.ossl-1.x 2006-01-19 18:06:12.000000000 +0100 ++++ kdelibs-3.5.10/kio/kssl/ksslcertificate.cc 2009-09-04 23:10:53.000000000 +0200 +@@ -1003,17 +1003,31 @@ return qba; + QByteArray KSSLCertificate::toNetscape() { + QByteArray qba; + #ifdef KSSL_HAVE_SSL +-ASN1_HEADER ah; +-ASN1_OCTET_STRING os; +-KTempFile ktf; ++#if OPENSSL_VERSION_NUMBER >= 0x10000000L ++ NETSCAPE_X509 nx; ++ ASN1_OCTET_STRING hdr; ++#else ++ ASN1_HEADER ah; ++ ASN1_OCTET_STRING os; ++#endif ++ KTempFile ktf; + +- os.data = (unsigned char *)NETSCAPE_CERT_HDR; +- os.length = strlen(NETSCAPE_CERT_HDR); +- ah.header = &os; +- ah.data = (char *)getCert(); +- ah.meth = d->kossl->X509_asn1_meth(); ++#if OPENSSL_VERSION_NUMBER >= 0x10000000L ++ hdr.data = (unsigned char *)NETSCAPE_CERT_HDR; ++ hdr.length = strlen(NETSCAPE_CERT_HDR); ++ nx.header = &hdr; ++ nx.cert = getCert(); ++ ++ d->kossl->ASN1_i2d_fp(ktf.fstream(),(unsigned char *)&nx); ++#else ++ os.data = (unsigned char *)NETSCAPE_CERT_HDR; ++ os.length = strlen(NETSCAPE_CERT_HDR); ++ ah.header = &os; ++ ah.data = (char *)getCert(); ++ ah.meth = d->kossl->X509_asn1_meth(); + +- d->kossl->ASN1_i2d_fp(ktf.fstream(),(unsigned char *)&ah); ++ d->kossl->ASN1_i2d_fp(ktf.fstream(),(unsigned char *)&ah); ++#endif + + ktf.close(); + diff --git a/opensuse/core/tdelibs.old/kdelibs-3.5.4-CVE-2009-1690.patch b/opensuse/core/tdelibs.old/kdelibs-3.5.4-CVE-2009-1690.patch new file mode 100644 index 000000000..2972d0ebf --- /dev/null +++ b/opensuse/core/tdelibs.old/kdelibs-3.5.4-CVE-2009-1690.patch @@ -0,0 +1,545 @@ +--- kdelibs-3.5.4/khtml/html/RefPtr.h.CVE-2009-1690 2009-06-17 14:19:00.000000000 +0200 ++++ kdelibs-3.5.4/khtml/html/RefPtr.h 2009-06-17 14:19:00.000000000 +0200 +@@ -0,0 +1,202 @@ ++// -*- mode: c++; c-basic-offset: 4 -*- ++/* ++ * Copyright (C) 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. ++ * ++ * 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. ++ * ++ */ ++ ++#ifndef WTF_RefPtr_h ++#define WTF_RefPtr_h ++ ++#include ++#include "AlwaysInline.h" ++ ++namespace WTF { ++ ++ enum PlacementNewAdoptType { PlacementNewAdopt }; ++ ++ template class PassRefPtr; ++ ++ enum HashTableDeletedValueType { HashTableDeletedValue }; ++ ++ template class RefPtr { ++ public: ++ RefPtr() : m_ptr(0) { } ++ RefPtr(T* ptr) : m_ptr(ptr) { if (ptr) ptr->ref(); } ++ RefPtr(const RefPtr& o) : m_ptr(o.m_ptr) { if (T* ptr = m_ptr) ptr->ref(); } ++ // see comment in PassRefPtr.h for why this takes const reference ++ template RefPtr(const PassRefPtr&); ++ ++ // Special constructor for cases where we overwrite an object in place. ++ RefPtr(PlacementNewAdoptType) { } ++ ++ // Hash table deleted values, which are only constructed and never copied or destroyed. ++ RefPtr(HashTableDeletedValueType) : m_ptr(hashTableDeletedValue()) { } ++ bool isHashTableDeletedValue() const { return m_ptr == hashTableDeletedValue(); } ++ ++ ~RefPtr() { if (T* ptr = m_ptr) ptr->deref(); } ++ ++ template RefPtr(const RefPtr& o) : m_ptr(o.get()) { if (T* ptr = m_ptr) ptr->ref(); } ++ ++ T* get() const { return m_ptr; } ++ ++ void clear() { if (T* ptr = m_ptr) ptr->deref(); m_ptr = 0; } ++ PassRefPtr release() { PassRefPtr tmp = adoptRef(m_ptr); m_ptr = 0; return tmp; } ++ ++ T& operator*() const { return *m_ptr; } ++ ALWAYS_INLINE T* operator->() const { return m_ptr; } ++ ++ bool operator!() const { return !m_ptr; } ++ ++ // This conversion operator allows implicit conversion to bool but not to other integer types. ++ typedef T* RefPtr::*UnspecifiedBoolType; ++ operator UnspecifiedBoolType() const { return m_ptr ? &RefPtr::m_ptr : 0; } ++ ++ RefPtr& operator=(const RefPtr&); ++ RefPtr& operator=(T*); ++ RefPtr& operator=(const PassRefPtr&); ++ template RefPtr& operator=(const RefPtr&); ++ template RefPtr& operator=(const PassRefPtr&); ++ ++ void swap(RefPtr&); ++ ++ private: ++ static T* hashTableDeletedValue() { return reinterpret_cast(-1); } ++ ++ T* m_ptr; ++ }; ++ ++ template template inline RefPtr::RefPtr(const PassRefPtr& o) ++ : m_ptr(o.releaseRef()) ++ { ++ } ++ ++ template inline RefPtr& RefPtr::operator=(const RefPtr& o) ++ { ++ T* optr = o.get(); ++ if (optr) ++ optr->ref(); ++ T* ptr = m_ptr; ++ m_ptr = optr; ++ if (ptr) ++ ptr->deref(); ++ return *this; ++ } ++ ++ template template inline RefPtr& RefPtr::operator=(const RefPtr& o) ++ { ++ T* optr = o.get(); ++ if (optr) ++ optr->ref(); ++ T* ptr = m_ptr; ++ m_ptr = optr; ++ if (ptr) ++ ptr->deref(); ++ return *this; ++ } ++ ++ template inline RefPtr& RefPtr::operator=(T* optr) ++ { ++ if (optr) ++ optr->ref(); ++ T* ptr = m_ptr; ++ m_ptr = optr; ++ if (ptr) ++ ptr->deref(); ++ return *this; ++ } ++ ++ template inline RefPtr& RefPtr::operator=(const PassRefPtr& o) ++ { ++ T* ptr = m_ptr; ++ m_ptr = o.releaseRef(); ++ if (ptr) ++ ptr->deref(); ++ return *this; ++ } ++ ++ template template inline RefPtr& RefPtr::operator=(const PassRefPtr& o) ++ { ++ T* ptr = m_ptr; ++ m_ptr = o.releaseRef(); ++ if (ptr) ++ ptr->deref(); ++ return *this; ++ } ++ ++ template inline void RefPtr::swap(RefPtr& o) ++ { ++ std::swap(m_ptr, o.m_ptr); ++ } ++ ++ template inline void swap(RefPtr& a, RefPtr& b) ++ { ++ a.swap(b); ++ } ++ ++ template inline bool operator==(const RefPtr& a, const RefPtr& b) ++ { ++ return a.get() == b.get(); ++ } ++ ++ template inline bool operator==(const RefPtr& a, U* b) ++ { ++ return a.get() == b; ++ } ++ ++ template inline bool operator==(T* a, const RefPtr& b) ++ { ++ return a == b.get(); ++ } ++ ++ template inline bool operator!=(const RefPtr& a, const RefPtr& b) ++ { ++ return a.get() != b.get(); ++ } ++ ++ template inline bool operator!=(const RefPtr& a, U* b) ++ { ++ return a.get() != b; ++ } ++ ++ template inline bool operator!=(T* a, const RefPtr& b) ++ { ++ return a != b.get(); ++ } ++ ++ template inline RefPtr static_pointer_cast(const RefPtr& p) ++ { ++ return RefPtr(static_cast(p.get())); ++ } ++ ++ template inline RefPtr const_pointer_cast(const RefPtr& p) ++ { ++ return RefPtr(const_cast(p.get())); ++ } ++ ++ template inline T* getPtr(const RefPtr& p) ++ { ++ return p.get(); ++ } ++ ++} // namespace WTF ++ ++using WTF::RefPtr; ++using WTF::static_pointer_cast; ++using WTF::const_pointer_cast; ++ ++#endif // WTF_RefPtr_h +--- kdelibs-3.5.4/khtml/html/htmlparser.cpp.CVE-2009-1690 2006-07-22 10:16:43.000000000 +0200 ++++ kdelibs-3.5.4/khtml/html/htmlparser.cpp 2009-06-17 11:51:15.000000000 +0200 +@@ -199,7 +199,6 @@ + + form = 0; + map = 0; +- head = 0; + end = false; + isindex = 0; + +@@ -616,8 +615,7 @@ + case ID_BASE: + if(!head) { + head = new HTMLHeadElementImpl(document); +- e = head; +- insertNode(e); ++ insertNode(head.get()); + handled = true; + } + break; +@@ -839,7 +837,7 @@ + case ID_HEAD: + if(!head && current->id() == ID_HTML) { + head = new HTMLHeadElementImpl(document); +- n = head; ++ n = head.get(); + } + break; + case ID_BODY: +@@ -1679,12 +1677,12 @@ + head = new HTMLHeadElementImpl(document); + HTMLElementImpl *body = doc()->body(); + int exceptioncode = 0; +- doc()->firstChild()->insertBefore(head, body, exceptioncode); ++ doc()->firstChild()->insertBefore(head.get(), body, exceptioncode); + if ( exceptioncode ) { + #ifdef PARSER_DEBUG + kdDebug( 6035 ) << "creation of head failed!!!!" << endl; + #endif +- delete head; ++ delete head.get(); + head = 0; + } + } +--- kdelibs-3.5.4/khtml/html/Platform.h.CVE-2009-1690 2009-06-17 14:19:07.000000000 +0200 ++++ kdelibs-3.5.4/khtml/html/Platform.h 2009-06-17 14:19:07.000000000 +0200 +@@ -0,0 +1,218 @@ ++/* -*- mode: c++; c-basic-offset: 4 -*- */ ++/* ++ * Copyright (C) 2006 Apple Computer, Inc. All rights reserved. ++ * ++ * Redistribution and use in source and binary forms, with or without ++ * modification, are permitted provided that the following conditions ++ * are met: ++ * 1. Redistributions of source code must retain the above copyright ++ * notice, this list of conditions and the following disclaimer. ++ * 2. Redistributions in binary form must reproduce the above copyright ++ * notice, this list of conditions and the following disclaimer in the ++ * documentation and/or other materials provided with the distribution. ++ * ++ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY ++ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR ++ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR ++ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, ++ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, ++ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR ++ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY ++ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ++ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ++ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ++ */ ++ ++#ifndef WTF_Platform_h ++#define WTF_Platform_h ++ ++/* Force KDE build here in our tree... */ ++#ifndef BUILDING_KDE__ ++#define BUILDING_KDE__ 1 ++#endif ++ ++/* PLATFORM handles OS, operating environment, graphics API, and CPU */ ++#define PLATFORM(WTF_FEATURE) (defined( WTF_PLATFORM_##WTF_FEATURE ) && WTF_PLATFORM_##WTF_FEATURE) ++#define COMPILER(WTF_FEATURE) (defined( WTF_COMPILER_##WTF_FEATURE ) && WTF_COMPILER_##WTF_FEATURE) ++#define HAVE(WTF_FEATURE) (defined( HAVE_##WTF_FEATURE ) && HAVE_##WTF_FEATURE) ++#define USE(WTF_FEATURE) (defined( WTF_USE_##WTF_FEATURE ) && WTF_USE_##WTF_FEATURE) ++#define ENABLE(WTF_FEATURE) (defined( ENABLE_##WTF_FEATURE ) && ENABLE_##WTF_FEATURE) ++ ++/* Operating systems - low-level dependencies */ ++ ++/* PLATFORM(DARWIN) */ ++/* Operating system level dependencies for Mac OS X / Darwin that should */ ++/* be used regardless of operating environment */ ++#ifdef __APPLE__ ++#define WTF_PLATFORM_DARWIN 1 ++#endif ++ ++/* PLATFORM(WIN_OS) */ ++/* Operating system level dependencies for Windows that should be used */ ++/* regardless of operating environment */ ++#if defined(WIN32) || defined(_WIN32) ++#define WTF_PLATFORM_WIN_OS 1 ++#endif ++ ++/* PLATFORM(UNIX) */ ++/* Operating system level dependencies for Unix-like systems that */ ++/* should be used regardless of operating environment */ ++/* (includes PLATFORM(DARWIN)) */ ++#if defined(__APPLE__) \ ++ || defined(unix) \ ++ || defined(__unix) \ ++ || defined(__unix__) \ ++ || defined (__NetBSD__) \ ++ || defined(_AIX) ++#define WTF_PLATFORM_UNIX 1 ++#endif ++ ++/* PLATFORM(SOLARIS_OS) */ ++/* Operating system level dependencies for Sun (Open)Solaris 10. */ ++/* Studio 12 on Solaris defines __SunOS; gcc defines __sun__; */ ++/* Both compilers define __sun and sun. */ ++#if defined(__sun) || defined(sun) ++#define WTF_PLATFORM_SOLARIS_OS 1 ++#endif ++ ++/* Operating environments */ ++ ++/* I made the BUILDING_KDE__ macro up for the KDE build system to define */ ++ ++/* PLATFORM(KDE) */ ++/* PLATFORM(MAC) */ ++/* PLATFORM(WIN) */ ++#if BUILDING_KDE__ ++#define WTF_PLATFORM_KDE 1 ++#elif PLATFORM(DARWIN) ++#define WTF_PLATFORM_MAC 1 ++#elif PLATFORM(WIN_OS) ++#define WTF_PLATFORM_WIN 1 ++#endif ++#if defined(BUILDING_GDK__) ++#define WTF_PLATFORM_GDK 1 ++#endif ++ ++ ++/* CPU */ ++ ++/* PLATFORM(PPC) */ ++#if defined(__ppc__) \ ++ || defined(__PPC__) \ ++ || defined(__powerpc__) \ ++ || defined(__powerpc) \ ++ || defined(__POWERPC__) \ ++ || defined(_M_PPC) \ ++ || defined(__PPC) ++#define WTF_PLATFORM_PPC 1 ++#define WTF_PLATFORM_BIG_ENDIAN 1 ++#endif ++ ++/* PLATFORM(PPC64) */ ++#if defined(__ppc64__) \ ++ || defined(__PPC64__) ++#define WTF_PLATFORM_PPC64 1 ++#define WTF_PLATFORM_BIG_ENDIAN 1 ++#endif ++ ++#if defined(arm) ++#define WTF_PLATFORM_ARM 1 ++#if defined(__ARMEB__) ++#define WTF_PLATFORM_BIG_ENDIAN 1 ++#elif !defined(__ARM_EABI__) && !defined(__ARMEB__) ++#define WTF_PLATFORM_MIDDLE_ENDIAN 1 ++#endif ++#if !defined(__ARM_EABI__) ++#define WTF_PLATFORM_FORCE_PACK 1 ++#endif ++#endif ++ ++/* PLATFORM(X86) */ ++#if defined(__i386__) \ ++ || defined(i386) \ ++ || defined(_M_IX86) \ ++ || defined(_X86_) \ ++ || defined(__THW_INTEL) ++#define WTF_PLATFORM_X86 1 ++#endif ++ ++/* PLATFORM(X86_64) */ ++#if defined(__x86_64__) \ ++ || defined(__ia64__) ++#define WTF_PLATFORM_X86_64 1 ++#endif ++ ++/* PLATFORM(SPARC) */ ++#if defined(sparc) ++#define WTF_PLATFORM_SPARC 1 ++#endif ++ ++/* Compiler */ ++ ++/* COMPILER(CWP) */ ++#if defined(__MWERKS__) ++#define WTF_COMPILER_CWP 1 ++#endif ++ ++/* COMPILER(MSVC) */ ++#if defined(_MSC_VER) ++#define WTF_COMPILER_MSVC 1 ++#endif ++ ++/* COMPILER(GCC) */ ++#if defined(__GNUC__) ++#define WTF_COMPILER_GCC 1 ++#endif ++ ++/* COMPILER(SUNPRO) */ ++#if defined(__SUNPRO_CC) ++#define WTF_COMPILER_SUNPRO 1 ++#endif ++ ++/* COMPILER(BORLAND) */ ++/* not really fully supported - is this relevant any more? */ ++#if defined(__BORLANDC__) ++#define WTF_COMPILER_BORLAND 1 ++#endif ++ ++/* COMPILER(CYGWIN) */ ++/* not really fully supported - is this relevant any more? */ ++#if defined(__CYGWIN__) ++#define WTF_COMPILER_CYGWIN 1 ++#endif ++ ++/* multiple threads only supported on Mac for now */ ++#if PLATFORM(MAC) ++#ifndef WTF_USE_MULTIPLE_THREADS ++#define WTF_USE_MULTIPLE_THREADS 1 ++#endif ++#ifndef WTF_USE_BINDINGS ++#define WTF_USE_BINDINGS 1 ++#endif ++#endif ++ ++/* for Unicode, KDE uses Qt, everything else uses ICU */ ++#if PLATFORM(KDE) || PLATFORM(QT) ++#define WTF_USE_QT4_UNICODE 1 ++#elif PLATFORM(SYMBIAN) ++#define WTF_USE_SYMBIAN_UNICODE 1 ++#else ++#define WTF_USE_ICU_UNICODE 1 ++#endif ++ ++#if PLATFORM(MAC) ++#define WTF_PLATFORM_CF 1 ++#endif ++ ++#if PLATFORM(WIN) ++#define WTF_USE_WININET 1 ++#endif ++ ++#if PLATFORM(GDK) ++#define WTF_USE_CURL 1 ++#endif ++ ++/* ENABLE macro defaults */ ++ ++#endif /* WTF_Platform_h */ +--- kdelibs-3.5.4/khtml/html/AlwaysInline.h.CVE-2009-1690 2009-06-17 14:18:52.000000000 +0200 ++++ kdelibs-3.5.4/khtml/html/AlwaysInline.h 2009-06-17 13:56:36.000000000 +0200 +@@ -0,0 +1,49 @@ ++/* ++ * Copyright (C) 2005, 2007 Apple Inc. All rights reserved. ++ * ++ * 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 "html/Platform.h" ++ ++ ++#ifndef ALWAYS_INLINE ++#if COMPILER(GCC) && defined(NDEBUG) && __GNUC__ > 3 ++#define ALWAYS_INLINE inline __attribute__ ((__always_inline__)) ++#elif COMPILER(MSVC) && defined(NDEBUG) ++#define ALWAYS_INLINE __forceinline ++#else ++#define ALWAYS_INLINE inline ++#endif ++#endif ++ ++#ifndef ALWAYS_INLINE_INTO ++#if COMPILER(GCC) && defined(NDEBUG) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 1) || __GNUC__ > 4) ++#define ALWAYS_INLINE_INTO __attribute__ ((__flatten__)) ++#else ++#define ALWAYS_INLINE_INTO ++#endif ++#endif ++ ++ ++#ifndef NEVER_INLINE ++#if COMPILER(GCC) && __GNUC__ > 3 ++#define NEVER_INLINE __attribute__ ((__noinline__)) ++#else ++#define NEVER_INLINE ++#endif ++#endif +--- kdelibs-3.5.4/khtml/html/htmlparser.h.CVE-2009-1690 2005-10-10 17:06:04.000000000 +0200 ++++ kdelibs-3.5.4/khtml/html/htmlparser.h 2009-06-17 14:42:27.000000000 +0200 +@@ -38,10 +38,10 @@ + #include + #endif + +- + #include "dom/dom_string.h" + #include "xml/dom_nodeimpl.h" + #include "html/html_documentimpl.h" ++#include "html/RefPtr.h" + + class KHTMLView; + class HTMLStackElem; +@@ -148,7 +148,7 @@ + /* + * the head element. Needed for crappy html which defines after + */ +- DOM::HTMLHeadElementImpl *head; ++ RefPtr head; + + /* + * a possible element in the head. Compatibility hack for diff --git a/opensuse/core/tdelibs.old/kdelibs3-gcc-4.1-miscompile.diff b/opensuse/core/tdelibs.old/kdelibs3-gcc-4.1-miscompile.diff new file mode 100644 index 000000000..cad4ceedd --- /dev/null +++ b/opensuse/core/tdelibs.old/kdelibs3-gcc-4.1-miscompile.diff @@ -0,0 +1,15 @@ +Index: kdecore/kwinmodule.cpp +=================================================================== +--- kdecore/kwinmodule.cpp.orig ++++ kdecore/kwinmodule.cpp +@@ -436,7 +436,9 @@ QRect KWinModule::workArea( const QValue + if ( strut.bottom > 0 ) + r.setBottom( r.bottom() - (int) strut.bottom ); + +- a = a.intersect(r); ++ QRect tmp; ++ tmp = a.intersect(r); ++ a = tmp; + } + return a; + } diff --git a/opensuse/core/tdelibs.old/kdelibs3-hicolor-scalable-sizes.patch b/opensuse/core/tdelibs.old/kdelibs3-hicolor-scalable-sizes.patch new file mode 100644 index 000000000..9f06adc93 --- /dev/null +++ b/opensuse/core/tdelibs.old/kdelibs3-hicolor-scalable-sizes.patch @@ -0,0 +1,50 @@ +diff -uNr kdelibs-3.5.1.old/pics/hicolor/index.theme kdelibs-3.5.1/pics/hicolor/index.theme +--- kdelibs-3.5.1.old/pics/hicolor/index.theme 2006-01-20 07:53:04.000000000 +0100 ++++ kdelibs-3.5.1/pics/hicolor/index.theme 2006-04-12 20:18:31.907163700 +0200 +@@ -314,36 +314,36 @@ + Type=Threshold + + [scalable/actions] +-MinSize=1 +-Size=128 ++MinSize=32 ++Size=48 + MaxSize=256 + Context=Actions + Type=Scalable + + [scalable/apps] +-MinSize=1 +-Size=128 ++MinSize=32 ++Size=48 + MaxSize=256 + Context=Applications + Type=Scalable + + [scalable/devices] +-MinSize=1 +-Size=128 ++MinSize=32 ++Size=48 + MaxSize=256 + Context=Devices + Type=Scalable + + [scalable/filesystems] +-MinSize=1 +-Size=128 ++MinSize=32 ++Size=48 + MaxSize=256 + Context=FileSystems + Type=Scalable + + [scalable/mimetypes] +-MinSize=1 +-Size=128 ++MinSize=32 ++Size=48 + MaxSize=256 + Context=MimeTypes + Type=Scalable diff --git a/opensuse/core/tdelibs.old/kdelibs_networkstatus_branch2.diff b/opensuse/core/tdelibs.old/kdelibs_networkstatus_branch2.diff new file mode 100644 index 000000000..069dffbea --- /dev/null +++ b/opensuse/core/tdelibs.old/kdelibs_networkstatus_branch2.diff @@ -0,0 +1,69 @@ +Index: kioslave/http/http.cc +=================================================================== +--- kioslave/http/http.cc.orig ++++ kioslave/http/http.cc +@@ -1804,9 +1804,11 @@ bool HTTPProtocol::isOffline(const KURL + QByteArray reply; + + QDataStream stream(params, IO_WriteOnly); +- stream << url.url(); + +- if ( dcopClient()->call( "kded", "networkstatus", "status(QString)", ++ if ( url.host() == QString::fromLatin1("localhost") || url.host() == QString::fromLatin1("127.0.0.1") || url.host() == QString::fromLatin1("::") ) { ++ return false; ++ } ++ if ( dcopClient()->call( "kded", "networkstatus", "status()", + params, replyType, reply ) && (replyType == "int") ) + { + int result; +@@ -2210,6 +2212,11 @@ bool HTTPProtocol::httpOpen() + // Conditional cache hit. (Validate) + } + ++ if (bCacheOnly && bOffline) ++ { ++ error( ERR_OFFLINE_MODE, m_request.url.url() ); ++ return false; ++ } + if (bCacheOnly) + { + error( ERR_DOES_NOT_EXIST, m_request.url.url() ); +@@ -2217,7 +2224,7 @@ bool HTTPProtocol::httpOpen() + } + if (bOffline) + { +- error( ERR_COULD_NOT_CONNECT, m_request.url.url() ); ++ error( ERR_OFFLINE_MODE, m_request.url.url() ); + return false; + } + } +Index: kio/kio/global.cpp +=================================================================== +--- kio/kio/global.cpp.orig ++++ kio/kio/global.cpp +@@ -408,6 +408,9 @@ KIO_EXPORT QString KIO::buildErrorString + case KIO::ERR_POST_DENIED: + result = i18n( "Access to restricted port in POST denied."); + break; ++ case KIO::ERR_OFFLINE_MODE: ++ result = i18n( "Could not access %1.\nOffline mode active.").arg( errorText ); ++ break; + default: + result = i18n( "Unknown error code %1\n%2\nPlease send a full bug report at http://bugs.kde.org." ).arg( errorCode ).arg( errorText ); + break; +Index: kio/kio/global.h +=================================================================== +--- kio/kio/global.h.orig ++++ kio/kio/global.h +@@ -244,8 +244,10 @@ namespace KIO + ERR_UPGRADE_REQUIRED = 64, // A transport upgrade is required to access this + // object. For instance, TLS is demanded by + // the server in order to continue. +- ERR_POST_DENIED = 65 // Issued when trying to POST data to a certain Ports ++ ERR_POST_DENIED = 65, // Issued when trying to POST data to a certain Ports + // see job.cpp ++ ERR_OFFLINE_MODE = 66 // Used when an app is in offline mode and a ++ // requested document is unavailable. + }; + + /** diff --git a/opensuse/core/tdelibs.old/kdemm-filepreview.diff b/opensuse/core/tdelibs.old/kdemm-filepreview.diff new file mode 100644 index 000000000..227dc39ec --- /dev/null +++ b/opensuse/core/tdelibs.old/kdemm-filepreview.diff @@ -0,0 +1,40 @@ +Index: interfaces/kmediaplayer/kfileaudiopreview/Makefile.am +=================================================================== +--- interfaces/kmediaplayer/kfileaudiopreview/Makefile.am.orig ++++ interfaces/kmediaplayer/kfileaudiopreview/Makefile.am +@@ -1,11 +1,11 @@ +-INCLUDES = -I$(top_srcdir)/interfaces/ -I$(top_srcdir)/arts/kde -I$(includedir)/arts $(all_includes) ++INCLUDES = -I$(top_srcdir)/interfaces/ $(all_includes) + METASOURCES = AUTO + + kde_module_LTLIBRARIES = kfileaudiopreview.la + + kfileaudiopreview_la_SOURCES = kfileaudiopreview.cpp + kfileaudiopreview_la_LDFLAGS = $(all_libraries) $(KDE_RPATH) -module -avoid-version -no-undefined +-kfileaudiopreview_la_LIBADD = $(top_builddir)/interfaces/kmediaplayer/libkmediaplayer.la $(top_builddir)/arts/kde/libartskde.la $(LIB_KIO) ++kfileaudiopreview_la_LIBADD = $(top_builddir)/interfaces/kmediaplayer/libkmediaplayer.la $(top_builddir)/kdemm/libkdemm.la $(LIB_KIO) + + noinst_HEADERS = kfileaudiopreview.h + +Index: interfaces/kmediaplayer/kfileaudiopreview/kfileaudiopreview.cpp +=================================================================== +--- interfaces/kmediaplayer/kfileaudiopreview/kfileaudiopreview.cpp.orig ++++ interfaces/kmediaplayer/kfileaudiopreview/kfileaudiopreview.cpp +@@ -13,7 +13,7 @@ + #include + #include + +-#include ++#include + + #include + +@@ -58,7 +58,7 @@ KFileAudioPreview::KFileAudioPreview( QW + { + KGlobal::locale()->insertCatalogue("kfileaudiopreview"); + +- QStringList formats = KDE::PlayObjectFactory::mimeTypes(); ++ QStringList formats = KDE::Multimedia::Factory::self()->playableMimeTypes(); + // ### + QStringList::ConstIterator it = formats.begin(); + for ( ; it != formats.end(); ++it ) diff --git a/opensuse/core/tdelibs.old/kdemm.diff b/opensuse/core/tdelibs.old/kdemm.diff new file mode 100644 index 000000000..3d1e3d925 --- /dev/null +++ b/opensuse/core/tdelibs.old/kdemm.diff @@ -0,0 +1,669 @@ +Index: arts/knotify/knotify.cpp +=================================================================== +--- arts/knotify/knotify.cpp.orig ++++ arts/knotify/knotify.cpp +@@ -5,6 +5,7 @@ + 2000 Matthias Ettrich (ettrich@kde.org) + 2000 Waldo Bastian + 2000-2003 Carsten Pfeiffer ++ 2004 Allan Sandfeld Jensen + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by +@@ -26,21 +27,12 @@ + #include + #include + +-#include +-#ifndef WITHOUT_ARTS +-// aRts headers +-#include +-#include +-#include +-#include +-#include +-#endif +- + // QT headers + #include + #include + #include + #include ++#include + + // KDE headers + #include +@@ -80,15 +72,11 @@ public: + QString externalPlayer; + KProcess *externalPlayerProc; + +-#ifndef WITHOUT_ARTS +- QPtrList playObjects; +- QMap playObjectEventMap; +- KAudioManagerPlay *audioManager; +-#endif ++ QMap playObjectEventMap; + int externalPlayerEventId; + + bool useExternal; +- bool useArts; ++ bool useKDEMM; + int volume; + QTimer *playTimer; + bool inStartup; +@@ -106,12 +94,13 @@ extern "C"{ + KDE_EXPORT int kdemain(int argc, char **argv) + { + KAboutData aboutdata("knotify", I18N_NOOP("KNotify"), +- "3.0", I18N_NOOP("KDE Notification Server"), ++ "4.0", I18N_NOOP("KDE Notification Server"), + KAboutData::License_GPL, "(C) 1997-2003, KDE Developers"); + aboutdata.addAuthor("Carsten Pfeiffer",I18N_NOOP("Current Maintainer"),"pfeiffer@kde.org"); + aboutdata.addAuthor("Christian Esken",0,"esken@kde.org"); + aboutdata.addAuthor("Stefan Westerfeld",I18N_NOOP("Sound support"),"stefan@space.twc.de"); + aboutdata.addAuthor("Charles Samuels",I18N_NOOP("Previous Maintainer"),"charles@kde.org"); ++ aboutdata.addAuthor("Allan Sandfeld Jensen",I18N_NOOP("Conversion to KDEMM"),"kde@carewolf.com"); + + KCmdLineArgs::init( argc, argv, &aboutdata ); + KUniqueApplication::addCmdLineOptions(); +@@ -126,145 +115,36 @@ KDE_EXPORT int kdemain(int argc, char ** + KUniqueApplication app; + app.disableSessionManagement(); + +- // KNotify is started on KDE startup and on demand (using +- // KNotifClient::startDaemon()) whenever a KNotify event occurs. Especially +- // KWin may fire many events (e.g. when a window pops up). When we have +- // problems with aRts or the installation, we might get an infinite loop +- // of knotify crashing, popping up the crashhandler window and kwin firing +- // another event, starting knotify again... +- // We try to prevent this by tracking our startup and offer options to +- // abort this. +- +-#ifndef WITHOUT_ARTS +- KConfigGroup config( KGlobal::config(), "StartProgress" ); +- KConfig artsKCMConfig( "kcmartsrc" ); +- artsKCMConfig.setGroup( "Arts" ); +- bool useArts = artsKCMConfig.readBoolEntry( "StartServer", true ); +- if (useArts) +- useArts = config.readBoolEntry( "Use Arts", useArts ); +- bool ok = config.readBoolEntry( "Arts Init", true ); +- +- if ( useArts && !ok ) +- { +- if ( KMessageBox::questionYesNo( +- 0L, +- i18n("During the previous startup, KNotify crashed while creating " +- "Arts::Dispatcher. Do you want to try again or disable " +- "aRts sound output?\n\n" +- "If you choose to disable aRts output now, you can re-enable " +- "it later or select an alternate sound player " +- "in the System Notifications control panel."), +- i18n("KNotify Problem"), +- i18n("&Try Again"), +- i18n("D&isable aRts Output"), +- "KNotifyStartProgress", +- 0 /* don't call KNotify :) */ +- ) +- == KMessageBox::No ) +- { +- useArts = false; +- } +- } +- +- // when ArtsDispatcher crashes, we know it the next start. +- config.writeEntry( "Arts Init", false ); +- config.writeEntry( "Use Arts", useArts ); +- config.sync(); +- +- KArtsDispatcher *dispatcher = 0; +- if ( useArts ) +- { +- dispatcher = new KArtsDispatcher; +- soundServer = new KArtsServer; +- } +- +- // ok, seemed to work. +- config.writeEntry("Arts Init", useArts ); +- config.sync(); +- +- ok = config.readBoolEntry( "KNotify Init", true ); +- if ( useArts && !ok ) +- { +- if ( KMessageBox::questionYesNo( +- 0L, +- i18n("During the previous startup, KNotify crashed while instantiating " +- "KNotify. Do you want to try again or disable " +- "aRts sound output?\n\n" +- "If you choose to disable aRts output now, you can re-enable " +- "it later or select an alternate sound player " +- "in the System Notifications control panel."), +- i18n("KNotify Problem"), +- i18n("&Try Again"), +- i18n("D&isable aRts Output"), +- "KNotifyStartProgress", +- 0 /* don't call KNotify :) */ +- ) +- == KMessageBox::No ) +- { +- useArts = false; +- delete soundServer; +- soundServer = 0L; +- delete dispatcher; +- dispatcher = 0L; +- } +- } +- +- // when KNotify instantiation crashes, we know it the next start. +- config.writeEntry( "KNotify Init", false ); +- config.writeEntry( "Use Arts", useArts ); +- config.sync(); +- + // start notify service +- KNotify *notify = new KNotify( useArts ); +- +- config.writeEntry( "KNotify Init", true ); +- config.sync(); +- +-#else +- +- // start notify service, without aRts +- KNotify *notify = new KNotify( false ); +- +-#endif ++ KNotify notify( true ); + + app.dcopClient()->setDefaultObject( "Notify" ); + app.dcopClient()->setDaemonMode( true ); + // kdDebug() << "knotify starting" << endl; + + int ret = app.exec(); +- delete notify; +-#ifndef WITHOUT_ARTS +- delete soundServer; +- delete dispatcher; +-#endif + return ret; + } + }// end extern "C" + +-KNotify::KNotify( bool useArts ) ++KNotify::KNotify( bool useKDEMM ) + : QObject(), DCOPObject("Notify") + { + d = new KNotifyPrivate; + d->globalEvents = new KConfig("knotify/eventsrc", true, false, "data"); + d->globalConfig = new KConfig("knotify.eventsrc", true, false); + d->externalPlayerProc = 0; +- d->useArts = useArts; +- d->inStartup = true; +-#ifndef WITHOUT_ARTS +- d->playObjects.setAutoDelete(true); +- d->audioManager = 0; +- if( useArts ) +- { +- connect( soundServer, SIGNAL( restartedServer() ), this, SLOT( restartedArtsd() ) ); +- restartedArtsd(); //started allready need to initialize d->audioManager +- } +-#endif ++ d->useKDEMM = useKDEMM; + +- d->volume = 100; ++ d->inStartup = 0; ++ d->volume = 100; + + d->playTimer = 0; + + loadConfig(); ++ ++ connect ( this, SIGNAL(deletePlayObject(KDE::Multimedia::SimplePlayer*)), ++ SLOT(objectDeleter(KDE::Multimedia::SimplePlayer*)) ); + } + + KNotify::~KNotify() +@@ -272,12 +152,9 @@ KNotify::~KNotify() + reconfigure(); + + #ifndef WITHOUT_ARTS +- d->playObjects.clear(); +- + delete d->globalEvents; + delete d->globalConfig; + delete d->externalPlayerProc; +- delete d->audioManager; + #endif + delete d; + } +@@ -293,7 +170,7 @@ void KNotify::loadConfig() { + // try to locate a suitable player if none is configured + if ( d->externalPlayer.isEmpty() ) { + QStringList players; +- players << "wavplay" << "aplay" << "auplay"; ++ players << "wavplay" << "aplay" << "auplay" << "artsplay" << "akodeplay"; + QStringList::Iterator it = players.begin(); + while ( d->externalPlayer.isEmpty() && it != players.end() ) { + d->externalPlayer = KStandardDirs::findExe( *it ); +@@ -456,9 +333,9 @@ bool KNotify::notifyBySound( const QStri + if ( soundFile.isEmpty() ) + soundFile = locate( "sound", sound ); + } +- if ( soundFile.isEmpty() || isPlaying( soundFile ) ) ++ if ( soundFile.isEmpty() ) + { +- soundFinished( eventId, soundFile.isEmpty() ? NoSoundFile : FileAlreadyPlaying ); ++ soundFinished( eventId, NoSoundFile ); + return false; + } + +@@ -466,64 +343,18 @@ bool KNotify::notifyBySound( const QStri + // kdDebug() << "KNotify::notifyBySound - trying to play file " << soundFile << endl; + + if (!external) { +- //If we disabled using aRts, just return, +- //(If we don't, we'll blow up accessing the null soundServer) +- if (!d->useArts) ++ //If we disabled audio, just return, ++ if (!d->useKDEMM) + { + soundFinished( eventId, NoSoundSupport ); + return false; + } + +-#ifndef WITHOUT_ARTS +- // play sound finally +- while( d->playObjects.count()>5 ) +- abortFirstPlayObject(); +- +- KDE::PlayObjectFactory factory(soundServer->server()); +- if( d->audioManager ) +- factory.setAudioManagerPlay( d->audioManager ); + KURL soundURL; + soundURL.setPath(soundFile); +- KDE::PlayObject *playObject = factory.createPlayObject(soundURL, false); +- +- if (playObject->isNull()) +- { +- soundFinished( eventId, NoSoundSupport ); +- delete playObject; +- return false; +- } +- +- if ( d->volume != 100 ) +- { +- // It works to access the playObject immediately because we don't allow +- // non-file URLs for sounds. +- Arts::StereoVolumeControl volumeControl = Arts::DynamicCast(soundServer->server().createObject("Arts::StereoVolumeControl")); +- Arts::PlayObject player = playObject->object(); +- Arts::Synth_AMAN_PLAY ap = d->audioManager->amanPlay(); +- if( ! volumeControl.isNull() && ! player.isNull() && ! ap.isNull() ) +- { +- volumeControl.scaleFactor( d->volume/100.0 ); +- +- ap.stop(); +- Arts::disconnect( player, "left", ap, "left" ); +- Arts::disconnect( player, "right", ap, "right" ); +- +- ap.start(); +- volumeControl.start(); +- +- Arts::connect(player,"left",volumeControl,"inleft"); +- Arts::connect(player,"right",volumeControl,"inright"); +- +- Arts::connect(volumeControl,"outleft",ap,"left"); +- Arts::connect(volumeControl,"outright",ap,"right"); +- +- player._addChild( volumeControl, "volume" ); +- } +- } +- +- playObject->play(); +- d->playObjects.append( playObject ); ++ KDE::Multimedia::SimplePlayer* playObject = new KDE::Multimedia::SimplePlayer( this ); + d->playObjectEventMap.insert( playObject, eventId ); ++ playObject->play( soundURL ); + + if ( !d->playTimer ) + { +@@ -532,8 +363,7 @@ bool KNotify::notifyBySound( const QStri + } + if ( !d->playTimer->isActive() ) + d->playTimer->start( 1000 ); +-#endif +- return true; ++ return playObject->isPlaying(); + + } else if(!d->externalPlayer.isEmpty()) { + // use an external player to play the sound +@@ -686,58 +516,39 @@ void KNotify::setVolume( int volume ) + d->volume = volume; + } + ++void KNotify::slotPlayerProcessExited( KProcess *proc ) ++{ ++ soundFinished( d->externalPlayerEventId, ++ (proc->normalExit() && proc->exitStatus() == 0) ? PlayedOK : Unknown ); ++} ++ ++ + void KNotify::playTimeout() + { +-#ifndef WITHOUT_ARTS +- for ( QPtrListIterator< KDE::PlayObject > it(d->playObjects); *it;) ++qDebug("KNotify::playTimeout"); ++ for( QMap< KDE::Multimedia::SimplePlayer*, int >::Iterator it = d->playObjectEventMap.begin(); ++ it != d->playObjectEventMap.end(); ++ ) + { +- QPtrListIterator< KDE::PlayObject > current = it; ++ QMap< KDE::Multimedia::SimplePlayer*, int >::Iterator current = it; + ++it; +- if ( (*current)->state() != Arts::posPlaying ) ++ KDE::Multimedia::SimplePlayer* playObject = current.key(); ++ if ( !playObject->isPlaying() || playObject->totalTime() <= 0 ) // may be "playing" even if there's an error + { +- QMap::Iterator eit = d->playObjectEventMap.find( *current ); +- if ( eit != d->playObjectEventMap.end() ) +- { +- soundFinished( *eit, PlayedOK ); +- d->playObjectEventMap.remove( eit ); +- } +- d->playObjects.remove( current ); ++ soundFinished( *current, PlayedOK ); ++ d->playObjectEventMap.remove( current ); ++ disconnect( playObject, SIGNAL( finished() ) ); ++ playObject->stop(); ++ emit deletePlayObject(playObject); + } + } +- if ( !d->playObjects.count() ) ++ if ( !d->playObjectEventMap.count() ) + d->playTimer->stop(); +-#endif + } + +-bool KNotify::isPlaying( const QString& soundFile ) const ++void KNotify::objectDeleter( KDE::Multimedia::SimplePlayer *playObject ) + { +-#ifndef WITHOUT_ARTS +- for ( QPtrListIterator< KDE::PlayObject > it(d->playObjects); *it; ++it) +- { +- if ( (*it)->mediaName() == soundFile ) +- return true; +- } +-#endif +- return false; +-} +- +-void KNotify::slotPlayerProcessExited( KProcess *proc ) +-{ +- soundFinished( d->externalPlayerEventId, +- (proc->normalExit() && proc->exitStatus() == 0) ? PlayedOK : Unknown ); +-} +- +-void KNotify::abortFirstPlayObject() +-{ +-#ifndef WITHOUT_ARTS +- QMap::Iterator it = d->playObjectEventMap.find( d->playObjects.getFirst() ); +- if ( it != d->playObjectEventMap.end() ) +- { +- soundFinished( it.data(), Aborted ); +- d->playObjectEventMap.remove( it ); +- } +- d->playObjects.removeFirst(); +-#endif ++ delete playObject; + } + + void KNotify::soundFinished( int eventId, PlayingFinishedStatus reason ) +@@ -780,16 +591,6 @@ WId KNotify::checkWinId( const QString & + return senderWinId; + } + +-void KNotify::restartedArtsd() +-{ +-#ifndef WITHOUT_ARTS +- delete d->audioManager; +- d->audioManager = new KAudioManagerPlay( soundServer ); +- d->audioManager->setTitle( i18n( "KDE System Notifications" ) ); +- d->audioManager->setAutoRestoreID( "KNotify Aman Play" ); +-#endif +-} +- + void KNotify::sessionReady() + { + if( d->inStartup && !d->startupEvents.isEmpty()) +Index: arts/knotify/knotify.h +=================================================================== +--- arts/knotify/knotify.h.orig ++++ arts/knotify/knotify.h +@@ -24,9 +24,10 @@ + #include + #include + ++#include ++ + class KNotifyPrivate; + class KProcess; +-class KConfig; + + class KNotify : public QObject, public DCOPObject + { +@@ -76,19 +77,16 @@ private: + bool notifyByStderr(const QString &text); + bool notifyByPassivePopup(const QString &text, const QString &appName, + KConfig* eventsFile, WId winId ); +- bool notifyByExecute(const QString &command, +- const QString& event, +- const QString& fromApp, ++ bool notifyByExecute(const QString &command, ++ const QString& event, ++ const QString& fromApp, + const QString& text, + int winId, + int eventId ); +- bool notifyByTaskbar( WId winId ); +- +- bool isPlaying( const QString& soundFile ) const; +- +- void soundFinished( int eventId, PlayingFinishedStatus reason ); +- void abortFirstPlayObject(); +- ++ bool notifyByTaskbar( WId winId ); ++ ++ void soundFinished( int eventId, PlayingFinishedStatus reason ); ++ + WId checkWinId( const QString& appName, WId senderWinId ); + + /** +@@ -97,9 +95,13 @@ private: + bool isGlobal(const QString &eventname); + + private slots: +- void playTimeout(); +- void slotPlayerProcessExited( KProcess *proc ); +- void restartedArtsd(); ++ void playTimeout(); ++ void slotPlayerProcessExited( KProcess *proc ); ++ void objectDeleter( KDE::Multimedia::SimplePlayer* ); ++ ++signals: ++ void deletePlayObject( KDE::Multimedia::SimplePlayer* ); ++ + + private: + KNotifyPrivate* d; +Index: arts/knotify/Makefile.am +=================================================================== +--- arts/knotify/Makefile.am.orig ++++ arts/knotify/Makefile.am +@@ -3,12 +3,13 @@ INCLUDES= -I$(top_srcdir)/arts/kde -I$(i + + ####### Files + +-kde_module_LTLIBRARIES = knotify.la ++#kde_module_LTLIBRARIES = knotify.la ++bin_PROGRAMS = ++lib_LTLIBRARIES = ++kdeinit_LTLIBRARIES = knotify.la + + knotify_la_SOURCES = knotify.cpp knotify.skel +-if include_ARTS +-knotify_la_LIBADD = -lsoundserver_idl -lqtmcop $(LIB_KDEUI) $(top_builddir)/arts/kde/libartskde.la +-endif ++knotify_la_LIBADD = $(LIB_KDEUI) $(top_builddir)/kdemm/libkdemm.la + knotify_la_LDFLAGS = $(all_libraries) -module -avoid-version + knotify_la_METASOURCES = AUTO + +Index: kdemm/channel.h +=================================================================== +--- kdemm/channel.h.orig ++++ kdemm/channel.h +@@ -83,7 +83,7 @@ namespace Multimedia + * You can not instantiate channels yourself, use the Factory to + * create them. + */ +- Channel( const QString & name, const QString & type, Direction direction, ++ Channel( const QString & channelName, const QString & type, Direction direction, + QObject * parent = 0, const char * name = 0 ); + + private: +Index: kdemm/factory.cpp +=================================================================== +--- kdemm/factory.cpp.orig ++++ kdemm/factory.cpp +@@ -80,6 +80,7 @@ class Factory::Private + ":\n" << e << endl; + } + } ++#if 0 + if( 0 == backend ) + { + if( offers.size() == 0 ) +@@ -100,6 +101,7 @@ class Factory::Private + i18n( "Unable to use any of the available Multimedia Backends" ), details ); + } + } ++#endif + } + + Backend * backend; +Index: kdemm/simpleplayer.cpp +=================================================================== +--- kdemm/simpleplayer.cpp.orig ++++ kdemm/simpleplayer.cpp +@@ -50,10 +50,12 @@ SimplePlayer::SimplePlayer( QObject * pa + connect( Factory::self(), SIGNAL( recreateObjects() ), SLOT( recreateObjects() ) ); + d->channel = Factory::self()->createChannel( KGlobal::instance()->aboutData()->programName() ); + d->player = Factory::self()->createPlayer(); +- d->player->setOutputChannel( d->channel ); +- connect( d->player, SIGNAL( stateChanged( KDE::Multimedia::Player::State, KDE::Multimedia::Player::State ) ), ++ if ( d->player ) { ++ d->player->setOutputChannel( d->channel ); ++ connect( d->player, SIGNAL( stateChanged( KDE::Multimedia::Player::State, KDE::Multimedia::Player::State ) ), + SLOT( stateChanged( KDE::Multimedia::Player::State, KDE::Multimedia::Player::State ) ) ); +- connect( d->player, SIGNAL( finished() ), SIGNAL( finished() ) ); ++ connect( d->player, SIGNAL( finished() ), SIGNAL( finished() ) ); ++ }; + } + + SimplePlayer::~SimplePlayer() +@@ -64,6 +66,8 @@ SimplePlayer::~SimplePlayer() + + void SimplePlayer::play( const KURL & url ) + { ++ if( ! d->player ) ++ return; + if( isPaused() && url == d->url ) + { + d->player->play(); +@@ -78,51 +82,71 @@ void SimplePlayer::play( const KURL & ur + + void SimplePlayer::pause() + { ++ if( ! d->player ) ++ return; + d->player->pause(); + } + + void SimplePlayer::stop() + { ++ if( ! d->player ) ++ return; + d->player->stop(); + } + + long SimplePlayer::totalTime() const + { ++ if( ! d->player ) ++ return 0; + return d->player->totalTime(); + } + + long SimplePlayer::currentTime() const + { ++ if( ! d->player ) ++ return 0; + return d->player->currentTime(); + } + + void SimplePlayer::seek( long ms ) + { ++ if( ! d->player ) ++ return; + d->player->seek( ms ); + } + + float SimplePlayer::volume() const + { ++ if( ! d->player ) ++ return 0; + return d->channel->volume(); + } + + void SimplePlayer::setVolume( float v ) + { ++ if( ! d->player ) ++ return; + d->channel->setVolume( v ); + } + + bool SimplePlayer::isPlaying() const + { ++ if( ! d->player ) ++ return false; + return ( d->player->state() == Player::Playing ); + } + + bool SimplePlayer::isPaused() const + { ++ if( ! d->player ) ++ return false; + return ( d->player->state() == Player::Paused ); + } + + void SimplePlayer::stateChanged( Player::State ns, Player::State os ) + { ++ if( ! d->player ) ++ return; + if( os == Player::Loading && ns == Player::Stopped ) + d->player->play(); + } +@@ -135,7 +159,8 @@ void SimplePlayer::deleteYourObjects() + d->title = d->channel->channelName(); + d->type = d->channel->channelType(); + +- d->player->stop(); ++ if( d->player ) ++ d->player->stop(); + + delete d->player; + delete d->channel; +@@ -149,6 +174,9 @@ void SimplePlayer::recreateObjects() + d->channel->setVolume( d->channelvolume ); + + d->player = Factory::self()->createPlayer(); ++ if( ! d->player ) ++ return; ++ + d->player->setOutputChannel( d->channel ); + + if( d->state != Player::NoMedia ) diff --git a/opensuse/core/tdelibs.old/kdeprint-restart-cupsd.diff b/opensuse/core/tdelibs.old/kdeprint-restart-cupsd.diff new file mode 100644 index 000000000..d464098eb --- /dev/null +++ b/opensuse/core/tdelibs.old/kdeprint-restart-cupsd.diff @@ -0,0 +1,32 @@ +Index: kdeprint/cups/cupsdconf2/cupsddialog.cpp +=================================================================== +--- kdeprint/cups/cupsdconf2/cupsddialog.cpp.orig ++++ kdeprint/cups/cupsdconf2/cupsddialog.cpp +@@ -45,6 +45,7 @@ + #include + #include + ++#include + #include + #include + +@@ -205,15 +206,13 @@ bool CupsdDialog::restartServer(QString& + } + else + { ++ KProcess proc; + bool success = false; + if (getuid() == 0 ) +- success = (::kill(serverPid, SIGHUP) == 0); ++ proc << "rccups" << "force-reload"; + else +- { +- KProcess proc; +- proc << "kdesu" << "-c" << "kill -SIGHUP " + QString::number( serverPid ); +- success = proc.start( KProcess::Block ) && proc.normalExit(); +- } ++ proc << "kdesu" << "-c" << "rccups" << "force-reload"; ++ success = proc.start( KProcess::Block ) && proc.normalExit(); + if( !success ) + msg = i18n("Unable to restart CUPS server (pid = %1)").arg(serverPid); + } diff --git a/opensuse/core/tdelibs.old/kdeprint-utf8.diff b/opensuse/core/tdelibs.old/kdeprint-utf8.diff new file mode 100644 index 000000000..ed2ad79da --- /dev/null +++ b/opensuse/core/tdelibs.old/kdeprint-utf8.diff @@ -0,0 +1,13 @@ +Index: kdeprint/cups/kmcupsmanager.cpp +=================================================================== +--- kdeprint/cups/kmcupsmanager.cpp.orig ++++ kdeprint/cups/kmcupsmanager.cpp +@@ -85,7 +85,7 @@ static int trials = 5; + // change LANG variable so that CUPS is always using + // english language: translation may only come from the PPD + // itself, or from KDE. +- setenv("LANG", "en", 1); ++ setenv("LANG", "en_US.UTF-8", 1); + } + + KMCupsManager::~KMCupsManager() diff --git a/opensuse/core/tdelibs.old/kdesu-settings.diff b/opensuse/core/tdelibs.old/kdesu-settings.diff new file mode 100644 index 000000000..fc24c09b6 --- /dev/null +++ b/opensuse/core/tdelibs.old/kdesu-settings.diff @@ -0,0 +1,50 @@ +Subject: Change kdesu settings +From: Lubos Lunak +Bug: 216796 +Relates: kdelibs4/kdesu-settings.diff +Patch-upstream: never + +Change kdesu(d) password keeping timeout only to 5 minutes and enable +it by default (to match kdesu using sudo in 10.3 behaviour). +KDE3 needs a hack in KPasswordDialog for enabling it by default. + +Update: Change the timeout back to 2 hours (bnc#404521). + +Index: kdesu/defaults.h +=================================================================== +--- kdesu/defaults.h.orig ++++ kdesu/defaults.h +@@ -13,8 +13,9 @@ + #ifndef __Defaults_h_included__ + #define __Defaults_h_included__ + ++/*const int defTimeout = 120*60;*/ + const int defTimeout = 120*60; + const int defEchoMode = 0; +-const int defKeep = false; ++const int defKeep = true; + + #endif +Index: kdeui/kpassdlg.cpp +=================================================================== +--- kdeui/kpassdlg.cpp.orig ++++ kdeui/kpassdlg.cpp +@@ -49,6 +49,8 @@ + + #include "kpassdlg.h" + ++#include "../kdesu/defaults.h" ++ + /* + * Password line editor. + */ +@@ -337,7 +339,8 @@ void KPasswordDialog::init() + + KConfig* const cfg = KGlobal::config(); + const KConfigGroupSaver saver(cfg, "Passwords"); +- if (m_Keep && cfg->readBoolEntry("Keep", false)) ++ bool def = ( qstrcmp( qAppName(), "kdesu" ) == 0 ? defKeep : false ); ++ if (m_Keep && cfg->readBoolEntry("Keep", def)) + ++m_Keep; + + m_pMain = new QWidget(this); diff --git a/opensuse/core/tdelibs.old/kdeversion.diff b/opensuse/core/tdelibs.old/kdeversion.diff new file mode 100644 index 000000000..f9b4cc1c2 --- /dev/null +++ b/opensuse/core/tdelibs.old/kdeversion.diff @@ -0,0 +1,13 @@ +Index: kdecore/kdeversion.h +=================================================================== +--- kdecore/kdeversion.h.orig ++++ kdecore/kdeversion.h +@@ -33,6 +33,8 @@ + + #define KDE_IS_VERSION(a,b,c) ( KDE_VERSION >= KDE_MAKE_VERSION(a,b,c) ) + ++#define KDELIBS_SUSE ++ + /** + * Namespace for general KDE functions. + */ diff --git a/opensuse/core/tdelibs.old/kfile-beagle.diff b/opensuse/core/tdelibs.old/kfile-beagle.diff new file mode 100644 index 000000000..467e68ed4 --- /dev/null +++ b/opensuse/core/tdelibs.old/kfile-beagle.diff @@ -0,0 +1,42 @@ +Index: kio/kfile/kurlbar.cpp +=================================================================== +--- kio/kfile/kurlbar.cpp.orig ++++ kio/kfile/kurlbar.cpp +@@ -605,8 +605,19 @@ void KURLBar::readItem( int i, KConfig * + if ( !url.isValid() || !KProtocolInfo::isKnownProtocol( url )) + return; // nothing we could do. + ++ QString description = config->readEntry( QString("Description_") + number ); ++ ++ if (description.isEmpty() && url.protocol()=="beagle") { ++ KIO::UDSEntry uds; ++ const KURL kurl("beagle:?beagled-status"); ++ if (!KIO::NetAccess::stat(kurl, uds)) ++ return; ++ ++ description = i18n("Desktop Search"); ++ } ++ + insertItem( url, +- config->readEntry( QString("Description_") + number ), ++ description, + applicationLocal, + config->readEntry( QString("Icon_") + number ), + static_cast( +Index: kio/kfile/kfiledialog.cpp +=================================================================== +--- kio/kfile/kfiledialog.cpp.orig ++++ kio/kfile/kfiledialog.cpp +@@ -1165,6 +1165,12 @@ void KFileDialog::urlEntered(const KURL& + d->pathCombo->setURL( url ); + } + ++ if (url.protocol()=="beagle" && url.path()=="/") { ++ d->pathCombo->setEditText("beagle:/<"+i18n("search term")+">"); ++ d->pathCombo->lineEdit()->setSelection(8,255); ++ d->pathCombo->setFocus(); ++ } ++ + locationEdit->blockSignals( true ); + locationEdit->setCurrentItem( 0 ); + if ( d->keepLocation ) diff --git a/opensuse/core/tdelibs.old/kickoff-drop-shadow.diff b/opensuse/core/tdelibs.old/kickoff-drop-shadow.diff new file mode 100644 index 000000000..e4c7befc2 --- /dev/null +++ b/opensuse/core/tdelibs.old/kickoff-drop-shadow.diff @@ -0,0 +1,177 @@ +Index: kdefx/kstyle.cpp +=================================================================== +--- kdefx/kstyle.cpp.orig ++++ kdefx/kstyle.cpp +@@ -31,6 +31,7 @@ + + #include + #include ++#include + #include + #include + #include +@@ -79,7 +80,7 @@ namespace + QWidget* w1; + QWidget* w2; + }; +- typedef QMap ShadowMap; ++ typedef QMap ShadowMap; + static ShadowMap *_shadowMap = 0; + QSingleCleanupHandler cleanupShadowMap; + ShadowMap &shadowMap() { +@@ -113,8 +114,13 @@ namespace + + const double shadow_strip[4] = + { 0.565, 0.675, 0.835, 0.945 }; +-} + ++ static bool useDropShadow(QWidget* w) ++ { ++ return w && w->metaObject() && ++ w->metaObject()->findProperty("KStyleMenuDropShadow") != -1; ++ } ++} + + namespace + { +@@ -128,12 +134,12 @@ class TransparencyHandler : public QObje + + protected: + void blendToColor(const QColor &col); +- void blendToPixmap(const QColorGroup &cg, const QPopupMenu* p); ++ void blendToPixmap(const QColorGroup &cg, const QWidget* p); + #ifdef HAVE_XRENDER +- void XRenderBlendToPixmap(const QPopupMenu* p); ++ void XRenderBlendToPixmap(const QWidget* p); + #endif +- void createShadowWindows(const QPopupMenu* p); +- void removeShadowWindows(const QPopupMenu* p); ++ void createShadowWindows(const QWidget* p); ++ void removeShadowWindows(const QWidget* p); + void rightShadow(QImage& dst); + void bottomShadow(QImage& dst); + private: +@@ -256,8 +262,16 @@ void KStyle::polish( QWidget* widget ) + widget->installEventFilter(this); + } + } +-} ++ if (widget->isTopLevel()) ++ { ++ if (!d->menuHandler && useDropShadow(widget)) ++ d->menuHandler = new TransparencyHandler(this, Disabled, 1.0, false); + ++ if (d->menuHandler && useDropShadow(widget)) ++ widget->installEventFilter(d->menuHandler); ++ } ++} ++ + + void KStyle::unPolish( QWidget* widget ) + { +@@ -267,8 +281,10 @@ void KStyle::unPolish( QWidget* widget ) + QFrame::Shape shape = frame->frameShape(); + if (shape == QFrame::ToolBarPanel || shape == QFrame::MenuBarPanel) + widget->removeEventFilter(this); +- } ++ } + } ++ if (widget->isTopLevel() && d->menuHandler && useDropShadow(widget)) ++ widget->removeEventFilter(d->menuHandler); + } + + +@@ -1997,7 +2013,7 @@ void TransparencyHandler::bottomShadow(Q + } + + // Create a shadow of thickness 4. +-void TransparencyHandler::createShadowWindows(const QPopupMenu* p) ++void TransparencyHandler::createShadowWindows(const QWidget* p) + { + #ifdef Q_WS_X11 + int x2 = p->x()+p->width(); +@@ -2044,7 +2060,7 @@ void TransparencyHandler::createShadowWi + #endif + } + +-void TransparencyHandler::removeShadowWindows(const QPopupMenu* p) ++void TransparencyHandler::removeShadowWindows(const QWidget* p) + { + #ifdef Q_WS_X11 + ShadowMap::iterator it = shadowMap().find(p); +@@ -2070,7 +2086,7 @@ bool TransparencyHandler::eventFilter( Q + // Copyright (C) 2000 Daniel M. Duley + + // Added 'fake' menu shadows <04-Jul-2002> -- Karol +- QPopupMenu* p = (QPopupMenu*)object; ++ QWidget* p = (QWidget*)object; + QEvent::Type et = event->type(); + + if (et == QEvent::Show) +@@ -2109,13 +2125,23 @@ bool TransparencyHandler::eventFilter( Q + // * shadows after duplicate show events. + // * TODO : determine real cause for duplicate events + // * till 20021005 +- if (dropShadow && p->width() > 16 && p->height() > 16 && !shadowMap().contains( p )) ++ if ((dropShadow || useDropShadow(p)) ++ && p->width() > 16 && p->height() > 16 && !shadowMap().contains( p )) + createShadowWindows(p); + } ++ else if (et == QEvent::Resize && p->isShown() && p->isTopLevel()) ++ { ++ // Handle drop shadow ++ if (dropShadow || useDropShadow(p)) ++ { ++ removeShadowWindows(p); ++ createShadowWindows(p); ++ } ++ } + else if (et == QEvent::Hide) + { + // Handle drop shadow +- if (dropShadow) ++ if (dropShadow || useDropShadow(p)) + removeShadowWindows(p); + + // Handle translucency +@@ -2140,7 +2166,7 @@ void TransparencyHandler::blendToColor(c + } + + +-void TransparencyHandler::blendToPixmap(const QColorGroup &cg, const QPopupMenu* p) ++void TransparencyHandler::blendToPixmap(const QColorGroup &cg, const QWidget* p) + { + if (opacity < 0.0 || opacity > 1.0) + return; +@@ -2153,7 +2179,10 @@ void TransparencyHandler::blendToPixmap( + return; + + // Allow styles to define the blend pixmap - allows for some interesting effects. +- kstyle->renderMenuBlendPixmap( blendPix, cg, p ); ++ if (::qt_cast(p)) ++ kstyle->renderMenuBlendPixmap( blendPix, cg, ::qt_cast(p) ); ++ else ++ blendPix.fill(cg.button()); // Just tint as the default behavior + + QImage blendImg = blendPix.convertToImage(); + QImage backImg = pix.convertToImage(); +@@ -2166,13 +2195,17 @@ void TransparencyHandler::blendToPixmap( + // Here we go, use XRender in all its glory. + // NOTE: This is actually a bit slower than the above routines + // on non-accelerated displays. -- Karol. +-void TransparencyHandler::XRenderBlendToPixmap(const QPopupMenu* p) ++void TransparencyHandler::XRenderBlendToPixmap(const QWidget* p) + { + KPixmap renderPix; + renderPix.resize( pix.width(), pix.height() ); + + // Allow styles to define the blend pixmap - allows for some interesting effects. +- kstyle->renderMenuBlendPixmap( renderPix, p->colorGroup(), p ); ++ if (::qt_cast(p)) ++ kstyle->renderMenuBlendPixmap( renderPix, p->colorGroup(), ++ ::qt_cast(p) ); ++ else ++ renderPix.fill(p->colorGroup().button()); // Just tint as the default behavior + + Display* dpy = qt_xdisplay(); + Pixmap alphaPixmap; diff --git a/opensuse/core/tdelibs.old/kimproxy-warning.diff b/opensuse/core/tdelibs.old/kimproxy-warning.diff new file mode 100644 index 000000000..0731ebf4b --- /dev/null +++ b/opensuse/core/tdelibs.old/kimproxy-warning.diff @@ -0,0 +1,13 @@ +Index: interfaces/kimproxy/library/kimproxy.cpp +=================================================================== +--- interfaces/kimproxy/library/kimproxy.cpp.orig ++++ interfaces/kimproxy/library/kimproxy.cpp +@@ -204,7 +204,7 @@ KIMProxy::KIMProxy( DCOPClient* dc ) : D + + // FIXME: make this work when the sender object id is set to KIMIFace + if ( !connectDCOPSignal( 0, 0, method, method, false ) ) +- KMessageBox::information( 0, QString( "Couldn't connect DCOP signal.\nWon't receive any status notifications!" ) ); ++ kdWarning() << "Couldn't connect DCOP signal. Won't receive any status notifications!" << endl; + } + + KIMProxy::~KIMProxy( ) diff --git a/opensuse/core/tdelibs.old/kmimelist.diff b/opensuse/core/tdelibs.old/kmimelist.diff new file mode 100644 index 000000000..484523f25 --- /dev/null +++ b/opensuse/core/tdelibs.old/kmimelist.diff @@ -0,0 +1,81 @@ +Index: kded/Makefile.am +=================================================================== +--- kded/Makefile.am.orig ++++ kded/Makefile.am +@@ -36,12 +36,16 @@ kbuildsycoca_la_SOURCES = kbuildsycoca.c + kctimefactory.cpp \ + vfolder_menu.cpp + +-bin_PROGRAMS = kdontchangethehostname kde-menu ++bin_PROGRAMS = kdontchangethehostname kde-menu kmimelist + + kdontchangethehostname_LDFLAGS = $(all_libraries) $(KDE_RPATH) + kdontchangethehostname_LDADD = $(LIB_KDECORE) + kdontchangethehostname_SOURCES = khostname.cpp + ++kmimelist_LDFLAGS = $(all_libraries) $(KDE_RPATH) ++kmimelist_LDADD = ../kio/libkio.la ++kmimelist_SOURCES = kmimelist.cpp ++ + kde_menu_LDFLAGS = $(all_libraries) $(KDE_RPATH) + kde_menu_LDADD = $(LIB_KIO) + kde_menu_SOURCES = kde-menu.cpp +Index: kded/kmimelist.cpp +=================================================================== +--- /dev/null ++++ kded/kmimelist.cpp +@@ -0,0 +1,54 @@ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++ ++#include ++ ++int main(int argc, char *argv[]) ++{ ++ KApplication k(argc,argv,"blurb",false); ++ ++ KMimeType::List mtl = KMimeType::allMimeTypes( ); ++ assert( mtl.count() ); ++ qDebug( "Found %d mime types.", mtl.count() ); ++ QValueListIterator it(mtl.begin()); ++ KServiceTypeProfile::OfferList ol; ++ ++ for (; it != mtl.end(); ++it) ++ { ++ { ++ // Application ++ printf( "APP:%s:", (*it)->name().latin1() ); ++ ol = KServiceTypeProfile::offers((*it)->name(), "Application"); ++ QValueListIterator it2(ol.begin()); ++ for (; it2 != ol.end(); ++it2) { ++ if ((*it2).allowAsDefault()) ++ printf( " %s", (*it2).service()->desktopEntryPath().ascii() ); ++ ++ } ++ printf( "\n" ); ++ } ++ ++ { ++ // Embedded ++ printf( "PART:%s:", (*it)->name().latin1() ); ++ ol = KServiceTypeProfile::offers((*it)->name(), "KParts/ReadOnlyPart"); ++ QValueListIterator it2(ol.begin()); ++ for (; it2 != ol.end(); ++it2) { ++ if ((*it2).allowAsDefault()) ++ printf( " %s", (*it2).service()->desktopEntryPath().ascii() ); ++ ++ } ++ printf( "\n" ); ++ } ++ } ++} ++ diff --git a/opensuse/core/tdelibs.old/kremoteencoding-utf8.diff b/opensuse/core/tdelibs.old/kremoteencoding-utf8.diff new file mode 100644 index 000000000..74600a0f4 --- /dev/null +++ b/opensuse/core/tdelibs.old/kremoteencoding-utf8.diff @@ -0,0 +1,28 @@ +Index: kio/kio/kremoteencoding.cpp +=================================================================== +--- kio/kio/kremoteencoding.cpp.orig ++++ kio/kio/kremoteencoding.cpp +@@ -53,7 +53,7 @@ QCString KRemoteEncoding::encode(const Q + QCString result = codec->fromUnicode(name); + if (codec->toUnicode(result) != name) + return name.latin1(); +- ++ + return result; + } + +@@ -80,11 +80,13 @@ void KRemoteEncoding::setEncoding(const + + if (name) + codec = QTextCodec::codecForName(name); ++ else ++ codec = QTextCodec::codecForMib( 106 ); // fallback to UTF-8 + + if (codec == 0L) + codec = QTextCodec::codecForMib(1); + +- kdDebug() << k_funcinfo << "setting encoding " << codec->name() ++ kdDebug() << k_funcinfo << "setting encoding " << codec->name() + << " for name=" << name << endl; + } + diff --git a/opensuse/core/tdelibs.old/ktip-icon-hack.diff b/opensuse/core/tdelibs.old/ktip-icon-hack.diff new file mode 100644 index 000000000..4812646d1 --- /dev/null +++ b/opensuse/core/tdelibs.old/ktip-icon-hack.diff @@ -0,0 +1,56 @@ +Index: kdeui/ktip.cpp +=================================================================== +--- kdeui/ktip.cpp.orig ++++ kdeui/ktip.cpp +@@ -367,24 +367,47 @@ void KTipDialog::showMultiTip(QWidget *p + mInstance->raise(); + } + ++static QString fixTip(QString tip) ++{ ++ QRegExp iconRegExp(""); ++ iconRegExp.setMinimal(true); ++ if (iconRegExp.search(tip)>-1) { ++ QString iconName = iconRegExp.cap(1); ++ if (!iconName.isEmpty()) ++ if (KGlobal::dirs()->findResource("icon", iconName).isEmpty()) ++ tip.replace("crystalsvg","hicolor"); ++ } ++ ++ return tip; ++} ++ + void KTipDialog::prevTip() + { + mDatabase->prevTip(); +- mTipText->setText(QString::fromLatin1( ++ QString currentTip = QString::fromLatin1( + "%3") + .arg(mTextColor.name()) + .arg(mBaseColor.name()) +- .arg(i18n(mDatabase->tip().utf8()))); ++ .arg(i18n(mDatabase->tip().utf8())); ++ ++ ++ currentTip = fixTip(currentTip); ++ mTipText->setText(currentTip); + mTipText->setContentsPos(0, 0); + } + + void KTipDialog::nextTip() + { + mDatabase->nextTip(); +- mTipText->setText(QString::fromLatin1("%3") ++ QString currentTip = QString::fromLatin1( ++ "%3") + .arg(mTextColor.name()) + .arg(mBaseColor.name()) +- .arg(i18n(mDatabase->tip().utf8()))); ++ .arg(i18n(mDatabase->tip().utf8())); ++ ++ ++ currentTip = fixTip(currentTip); ++ mTipText->setText(currentTip); + mTipText->setContentsPos(0, 0); + } + diff --git a/opensuse/core/tdelibs.old/kwalletd-try-open.diff b/opensuse/core/tdelibs.old/kwalletd-try-open.diff new file mode 100644 index 000000000..547f8192d --- /dev/null +++ b/opensuse/core/tdelibs.old/kwalletd-try-open.diff @@ -0,0 +1,81 @@ +Index: kio/misc/kwalletd/kwalletd.cpp +=================================================================== +--- kio/misc/kwalletd/kwalletd.cpp.orig ++++ kio/misc/kwalletd/kwalletd.cpp +@@ -355,6 +355,44 @@ int KWalletD::doTransactionOpen(const QC + return rc; + } + ++int KWalletD::tryOpen(const QString& wallet, const QCString& password) ++{ ++ if (isOpen(wallet)) ++ return 0; ++ ++ if (_tryOpenBlocked.isActive()) { ++ kdDebug() << "tryOpen is active.." << endl; ++ return -1; ++ } ++ ++ if (!KWallet::Backend::exists(wallet)) ++ return -2; ++ ++ KWallet::Backend *b = new KWallet::Backend(wallet, false /*isPath*/); ++ int rc = b->open(QByteArray().duplicate(password, strlen(password))); ++ if (rc == 0) { ++ _wallets.insert(rc = generateHandle(), b); ++ _passwords[wallet] = password; ++ b->ref(); ++ _tryOpenBlocked.stop(); ++ QByteArray data; ++ QDataStream ds(data, IO_WriteOnly); ++ ds << wallet; ++ emitDCOPSignal("walletOpened(QString)", data); ++ } ++ else { ++ delete b; ++ // make sure that we're not bombed with a dictionary attack ++ _tryOpenBlocked.start (30 * 1000, true /*single shot*/); ++ if (++_failed > 5) { ++ _failed = 0; ++ QTimer::singleShot(0, this, SLOT(notifyFailures())); ++ } ++ ++ rc = -1; ++ } ++ return rc; ++} + + int KWalletD::internalOpen(const QCString& appid, const QString& wallet, bool isPath, WId w, bool modal) { + int rc = -1; +Index: kio/misc/kwalletd/kwalletd.h +=================================================================== +--- kio/misc/kwalletd/kwalletd.h.orig ++++ kio/misc/kwalletd/kwalletd.h +@@ -26,6 +26,7 @@ + #include + #include + #include ++#include + #include + #include "kwalletbackend.h" + +@@ -51,8 +52,10 @@ class KWalletD : public KDEDModule { + + // Open and unlock the wallet + virtual int open(const QString& wallet, uint wId); +- ++ // Open and unlock the wallet ++ virtual int tryOpen(const QString& wallet, const QCString& passwd); + // Open and unlock the wallet with this path ++ + virtual int openPath(const QString& path, uint wId); + + // Asynchronous open - must give the object to return the handle +@@ -186,6 +189,7 @@ class KWalletD : public KDEDModule { + int _idleTime; + QMap _implicitAllowMap, _implicitDenyMap; + KTimeout *_timeouts; ++ QTimer _tryOpenBlocked; + + QPtrList _transactions; + QGuardedPtr< QWidget > activeDialog; diff --git a/opensuse/core/tdelibs.old/light_v_2_scrollbar_patch.patch b/opensuse/core/tdelibs.old/light_v_2_scrollbar_patch.patch new file mode 100644 index 000000000..e4ad1dd81 --- /dev/null +++ b/opensuse/core/tdelibs.old/light_v_2_scrollbar_patch.patch @@ -0,0 +1,34 @@ +diff -ur kdelibs-3.5.10.orig/kstyles/light/lightstyle-v2.cpp kdelibs-3.5.10/kstyles/light/lightstyle-v2.cpp +--- kdelibs-3.5.10.orig/kstyles/light/lightstyle-v2.cpp 2006-03-17 13:19:10.000000000 +0300 ++++ kdelibs-3.5.10/kstyles/light/lightstyle-v2.cpp 2011-05-07 23:30:18.000000000 +0400 +@@ -501,12 +501,14 @@ + p->drawLine(r.topLeft(), r.topRight()); + p->setPen(cg.background()); + p->drawLine(r.left(), r.top() + 1, r.right(), r.top() + 1); +- fr.addCoords(0, 2, 0, 0); ++ p->drawLine(r.left(), r.bottom(), r.right(), r.bottom()); ++ fr.addCoords(0, 2, 0, -1); + } else { + p->drawLine(r.topLeft(), r.bottomLeft()); + p->setPen(cg.background()); + p->drawLine(r.left() + 1, r.top(), r.left() + 1, r.bottom()); +- fr.addCoords(2, 0, 0, 0); ++ p->drawLine(r.right(), r.top(), r.right(), r.bottom()); ++ fr.addCoords(2, 0, -1, 0); + } + + p->fillRect(fr, cg.brush((flags & Style_Down) ? +@@ -523,11 +525,13 @@ + if (flags & Style_Horizontal) { + p->drawLine(r.topLeft(), r.topRight()); + p->setPen(cg.background()); ++ p->drawLine(r.left(), r.bottom(), r.right(), r.bottom()); + p->drawLine(r.left(), r.top() + 1, r.right(), r.top() + 1); + fr.addCoords(0, 2, 0, -1); + } else { + p->drawLine(r.topLeft(), r.bottomLeft()); + p->setPen(cg.background()); ++ p->drawLine(r.right(), r.top(), r.right(), r.bottom()); + p->drawLine(r.left() + 1, r.top(), r.left() + 1, r.bottom()); + fr.addCoords(2, 0, -1, 0); + } diff --git a/opensuse/core/tdelibs.old/limit-max-image-size.diff b/opensuse/core/tdelibs.old/limit-max-image-size.diff new file mode 100644 index 000000000..6a01bf063 --- /dev/null +++ b/opensuse/core/tdelibs.old/limit-max-image-size.diff @@ -0,0 +1,28 @@ +Index: kapplication.cpp +=================================================================== +RCS file: /home/kde/kdelibs/kdecore/kapplication.cpp,v +retrieving revision 1.670 +diff -u -p -r1.670 kapplication.cpp +--- kdecore/kapplication.cpp 22 Jul 2004 16:50:04 -0000 1.670 ++++ kdecore/kapplication.cpp 16 Aug 2004 20:31:02 -0000 +@@ -43,6 +43,7 @@ + #include + #include + #include ++#include + #ifndef QT_NO_SQL + #include + #endif +@@ -1975,6 +1976,12 @@ void KApplication::propagateSettings(Set + KConfigBase* config = KGlobal::config(); + KConfigGroupSaver saver( config, "KDE" ); + ++#ifdef QT_HAVE_MAX_IMAGE_SIZE ++ QSize maxImageSize(4096, 4096); ++ maxImageSize = config->readSizeEntry("MaxImageSize", &maxImageSize); ++ QImage::setMaxImageSize(maxImageSize); ++#endif ++ + int num = config->readNumEntry("CursorBlinkRate", QApplication::cursorFlashTime()); + if ((num != 0) && (num < 200)) + num = 200; diff --git a/opensuse/core/tdelibs.old/lpoptions-cups-1.2.diff b/opensuse/core/tdelibs.old/lpoptions-cups-1.2.diff new file mode 100644 index 000000000..aa3f5d5b6 --- /dev/null +++ b/opensuse/core/tdelibs.old/lpoptions-cups-1.2.diff @@ -0,0 +1,28 @@ +Index: kdeprint/kmvirtualmanager.cpp +=================================================================== +--- kdeprint/kmvirtualmanager.cpp.orig ++++ kdeprint/kmvirtualmanager.cpp +@@ -179,7 +179,7 @@ void KMVirtualManager::setAsDefault(KMPr + + void KMVirtualManager::refresh() + { +- QFileInfo fi(QDir::homeDirPath() + QFile::decodeName("/.lpoptions")); ++ QFileInfo fi(QDir::homeDirPath() + QFile::decodeName("/.cups/lpoptions")); + QFileInfo fi2(QFile::decodeName("/etc/cups/lpoptions")); + + // if root, then only use global file: trick -> use twice the same file +@@ -301,7 +301,13 @@ void KMVirtualManager::triggerSave() + filename = QFile::decodeName("/etc/cups/lpoptions"); + } + else +- filename = QDir::homeDirPath() + QFile::decodeName("/.lpoptions"); ++ { ++ QDir cupsDir(QDir::home().absPath()+"/.cups"); ++ if (!cupsDir.exists()) ++ cupsDir.mkdir(QDir::home().absPath()+"/.cups"); ++ filename = QDir::homeDirPath() + QFile::decodeName("/.cups/lpoptions"); ++ } ++ + if (!filename.isEmpty()) + { + saveFile(filename); diff --git a/opensuse/core/tdelibs.old/mimetype-changes.diff b/opensuse/core/tdelibs.old/mimetype-changes.diff new file mode 100644 index 000000000..ea47629b8 --- /dev/null +++ b/opensuse/core/tdelibs.old/mimetype-changes.diff @@ -0,0 +1,36 @@ +Index: mimetypes/application/x-rpm.desktop +=================================================================== +--- mimetypes/application/x-rpm.desktop.orig ++++ mimetypes/application/x-rpm.desktop +@@ -1,4 +1,5 @@ + [Desktop Entry] ++X-KDE-AutoEmbed=true + Type=MimeType + MimeType=application/x-rpm + Icon=rpm +Index: mimetypes/application/x-ogg.desktop +=================================================================== +--- mimetypes/application/x-ogg.desktop.orig ++++ mimetypes/application/x-ogg.desktop +@@ -4,7 +4,7 @@ + # application/ogg "inherits" from it, so that apps associated with x-ogg can open ogg files. + Type=MimeType + MimeType=application/x-ogg +-Icon=multimedia ++Icon=sound + Comment=Ogg Multimedia + Comment[ar]=وسائط Ogg متعددة + Comment[az]=Ogg Multimediya +Index: mimetypes/application/ogg.desktop +=================================================================== +--- mimetypes/application/ogg.desktop.orig ++++ mimetypes/application/ogg.desktop +@@ -1,7 +1,7 @@ + [Desktop Entry] + Type=MimeType + MimeType=application/ogg +-Icon=multimedia ++Icon=sound + Patterns=*.ogg;*.OGG; + # Previous name of this mimetype + X-KDE-IsAlso=application/x-ogg diff --git a/opensuse/core/tdelibs.old/mozilla-sliders.patch b/opensuse/core/tdelibs.old/mozilla-sliders.patch new file mode 100644 index 000000000..004b0fd36 --- /dev/null +++ b/opensuse/core/tdelibs.old/mozilla-sliders.patch @@ -0,0 +1,19 @@ +Index: kdefx/kstyle.cpp +=================================================================== +--- kdefx/kstyle.cpp.orig ++++ kdefx/kstyle.cpp +@@ -2210,6 +2210,14 @@ void TransparencyHandler::XRenderBlendTo + void KStyle::virtual_hook( int, void* ) + { /*BASE::virtual_hook( id, data );*/ } + ++// HACK for gtk-qt-engine ++ ++KDE_EXPORT extern "C" ++void kde_kstyle_set_scrollbar_type_windows( void* style ) ++{ ++ ((KStyle*)style)->setScrollBarType( KStyle::WindowsStyleScrollBar ); ++} ++ + // vim: set noet ts=4 sw=4: + // kate: indent-width 4; replace-tabs off; tab-width 4; space-indent off; + diff --git a/opensuse/core/tdelibs.old/networkstatus.diff b/opensuse/core/tdelibs.old/networkstatus.diff new file mode 100644 index 000000000..d7b4e8c89 --- /dev/null +++ b/opensuse/core/tdelibs.old/networkstatus.diff @@ -0,0 +1,6006 @@ +Index: networkstatus/connectionmanager.cpp +=================================================================== +--- /dev/null ++++ networkstatus/connectionmanager.cpp +@@ -0,0 +1,171 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include ++#include ++#include ++ ++#include "connectionmanager.h" ++#include "connectionmanager_p.h" ++ ++// Connection manager itself ++ConnectionManager::ConnectionManager( QObject * parent, const char * name ) : DCOPObject( "ConnectionManager" ), QObject( parent, name ), d( new ConnectionManagerPrivate( this ) ) ++{ ++ d->service = new NetworkStatusIface_stub( kapp->dcopClient(), "kded", "networkstatus" ); ++ ++ connectDCOPSignal( "kded", "networkstatus", "statusChange(int)", "slotStatusChanged(int)", false ); ++ ++ initialise(); ++} ++ ++ConnectionManager::~ConnectionManager() ++{ ++ delete d; ++} ++ ++ConnectionManager *ConnectionManager::s_self = 0L; ++ ++ConnectionManager *ConnectionManager::self() ++{ ++ static KStaticDeleter deleter; ++ if(!s_self) ++ deleter.setObject( s_self, new ConnectionManager( 0, "connection_manager" ) ); ++ return s_self; ++} ++ ++void ConnectionManager::initialise() ++{ ++ // determine initial state and set the state object accordingly. ++ d->status = ( NetworkStatus::Status )d->service->status(); ++} ++ ++NetworkStatus::Status ConnectionManager::status() ++{ ++ return d->status; ++} ++ ++void ConnectionManager::slotStatusChanged( int status ) ++{ ++ d->status = ( NetworkStatus::Status )status; ++ switch ( status ) { ++ case NetworkStatus::NoNetworks: ++ break; ++ case NetworkStatus::Unreachable: ++ break; ++ case NetworkStatus::OfflineDisconnected: ++ case NetworkStatus::OfflineFailed: ++ case NetworkStatus::ShuttingDown: ++ case NetworkStatus::Offline: ++ case NetworkStatus::Establishing: ++ if ( d->disconnectPolicy == Managed ) { ++ emit d->disconnected(); ++ } else if ( d->disconnectPolicy == OnNextChange ) { ++ setDisconnectPolicy( Manual ); ++ emit d->disconnected(); ++ } ++ break; ++ case NetworkStatus::Online: ++ if ( d->disconnectPolicy == Managed ) { ++ emit d->connected(); ++ } else if ( d->disconnectPolicy == OnNextChange ) { ++ setConnectPolicy( Manual ); ++ emit d->connected(); ++ } ++ break; ++ default: ++ kdDebug() << k_funcinfo << "Unrecognised status code!" << endl; ++ } ++ emit statusChanged( d->status ); ++} ++ ++ConnectionManager::ConnectionPolicy ConnectionManager::connectPolicy() const ++{ ++ return d->connectPolicy; ++} ++ ++void ConnectionManager::setConnectPolicy( ConnectionManager::ConnectionPolicy policy ) ++{ ++ d->connectPolicy = policy; ++} ++ ++ConnectionManager::ConnectionPolicy ConnectionManager::disconnectPolicy() const ++{ ++ return d->disconnectPolicy; ++} ++ ++void ConnectionManager::setDisconnectPolicy( ConnectionManager::ConnectionPolicy policy ) ++{ ++ d->disconnectPolicy = policy; ++} ++ ++void ConnectionManager::setManualConnectionPolicies() ++{ ++ d->connectPolicy = ConnectionManager::Manual; ++ d->disconnectPolicy = ConnectionManager::Manual; ++} ++ ++void ConnectionManager::setManagedConnectionPolicies() ++{ ++ d->connectPolicy = ConnectionManager::Managed; ++ d->disconnectPolicy = ConnectionManager::Managed; ++} ++ ++void ConnectionManager::registerConnectSlot( QObject * receiver, const char * member ) ++{ ++ d->connectReceiver = receiver; ++ d->connectSlot = member; ++ connect( d, SIGNAL( connected() ), receiver, member ); ++} ++ ++void ConnectionManager::forgetConnectSlot() ++{ ++ disconnect( d, SIGNAL( connected() ), d->connectReceiver, d->connectSlot ); ++ d->connectReceiver = 0; ++ d->connectSlot = 0; ++} ++ ++bool ConnectionManager::isConnectSlotRegistered() const ++{ ++ return ( d->connectSlot != 0 ); ++} ++ ++void ConnectionManager::registerDisconnectSlot( QObject * receiver, const char * member ) ++{ ++ d->disconnectReceiver = receiver; ++ d->disconnectSlot = member; ++ connect( d, SIGNAL( disconnected() ), receiver, member ); ++} ++ ++void ConnectionManager::forgetDisconnectSlot() ++{ ++ disconnect( d, SIGNAL( disconnected() ), d->disconnectReceiver, d->disconnectSlot ); ++ d->disconnectReceiver = 0; ++ d->disconnectSlot = 0; ++} ++ ++bool ConnectionManager::isDisconnectSlotRegistered() const ++{ ++ return ( d->disconnectSlot != 0 ); ++} ++ ++#include "connectionmanager.moc" ++ +Index: networkstatus/connectionmanager.h +=================================================================== +--- /dev/null ++++ networkstatus/connectionmanager.h +@@ -0,0 +1,167 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef KDE_CONNECTION_MANAGER_H ++#define KDE_CONNECTION_MANAGER_H ++ ++#include ++#include ++ ++#include ++ ++class ConnectionManagerPrivate; ++ ++class KDE_EXPORT ConnectionManager : public QObject, virtual public DCOPObject ++{ ++Q_OBJECT ++K_DCOP ++k_dcop: ++ void slotStatusChanged( int status ); ++public: ++ /** ++ * This defines application policy in response to networking connect/disconnect events ++ * Manual - the app only disconnects when the user does so ++ * OnNextChange - the app should connect or disconnect the next time the network changes state, thereafter ++ * Manual ++ * Managed - the app should disconnect when the ConnectionManager thinks the system is ++ * offline ++ */ ++ enum ConnectionPolicy { Manual, OnNextChange, Managed }; ++ /** ++ * Set a policy to manage the application's connect behaviour ++ */ ++ void setConnectPolicy( ConnectionPolicy ); ++ /** ++ * Retrieve a policy managing the application's connect behaviour ++ */ ++ ConnectionPolicy connectPolicy() const; ++ ++ /** ++ * Set a policy to manage the application's disconnect behaviour ++ */ ++ void setDisconnectPolicy( ConnectionPolicy ); ++ ++ /** ++ * Retrieve a policy managing the application's disconnect behaviour ++ */ ++ ConnectionPolicy disconnectPolicy() const; ++ ++ /* ++ * We'll get logic of the form ++ * onStatusChange() { ++ * if ( ConnectionManager::self()->policy( ConnectionManager::ConnectBehaviour ) == ConnectionManager::OnNextChange || ++ * ConnectionManager::self()->policy( ConnectionManager::ConnectBehaviour ) == ConnectionManager::Managed ) ++ * { ++ * // do connect ++ * ++ * // reset the policy ++ * if ( ConnectionManager::self()->policy( ConnectionManager::ConnectBehaviour ) == ConnectionManager::OnNextChange ) ++ * ConnectionManager::self()->setPolicy( ConnectionManager::ConnectionManager, ++ * ConnectionManager::Manual ); ++ * } ++ * ++ * Do we just use the CM for policy storage, or do we try to factor the logic to implement the ++ * policy into the CM too? ++ * ++ * could signal doConnect(), then reset the policy ++ * or could register a connect slot ++ * registerConnectMethod( QObject * receiver, const char * member ); ++ * unregisterConnectMethod(); ++ * etc. ++ * ++ * The problem with automatically controlled behaviour, where policy may change as a result of a ++ * connect, is that if it is also manually altered, the CM needs to be updated. But the CM needs to ++ * be updated in any case. ++ * CM need ++ */ ++ /** ++ * Lazy-method to set Manual on both policies ++ */ ++ void setManualConnectionPolicies(); ++ /** ++ * Lazy-method to set Managed on both policies ++ */ ++ void setManagedConnectionPolicies(); ++ ++ /** ++ * Record a slot to call on a given receiving QObject when ++ * 1) the network connection is online, ++ * 2) the policy mandates that the app connect ++ * ++ * Only one slot may be registered at any one time. If a second slot is ++ * registered, the first slot is forgotten ++ * @param receiver the QObject where the slot is located ++ * @param member the slot to call. Set up member using the SLOT() macro. ++ */ ++ void registerConnectSlot( QObject * receiver, const char * member ); ++ ++ /** ++ * Forget any connect slot previously registered ++ */ ++ void forgetConnectSlot(); ++ ++ /** ++ * Has any slot been registered to be called on connect? ++ */ ++ bool isConnectSlotRegistered() const; ++ ++ /** ++ * Record a slot to call on a given receiving QObject when ++ * 1) the network connection goes offline (in any way ), ++ * 2) the policy mandates that the app disconnect ++ * ++ * Only one slot may be registered at any one time. If a second slot is ++ * registered, the first slot is forgotten ++ * @param receiver the QObject where the slot is located ++ * @param member the slot to call. Set up member using the SLOT() macro. ++ */ ++ void registerDisconnectSlot( QObject * receiver, const char * member ); ++ ++ /** ++ * Forget any disconnect slot previously registered ++ */ ++ void forgetDisconnectSlot(); ++ ++ /** ++ * Has any slot been registered to be called on disconnect? ++ */ ++ bool isDisconnectSlotRegistered() const; ++ ++ /// existing API ++ ++ static ConnectionManager* self(); ++ virtual ~ConnectionManager(); ++ NetworkStatus::Status status(); ++signals: ++ // signal that the network for a hostname is up/down ++ void statusChanged( NetworkStatus::Status status ); ++private: ++ // sets up internal state ++ void initialise(); ++ // reread the desktop status from the daemon and update internal state ++ ConnectionManager( QObject *parent, const char * name ); ++ ConnectionManagerPrivate * d; ++ static ConnectionManager * s_self; ++}; ++ ++#endif ++ +Index: networkstatus/connectionmanager_p.cpp +=================================================================== +--- /dev/null ++++ networkstatus/connectionmanager_p.cpp +@@ -0,0 +1,13 @@ ++#include "connectionmanager_p.h" ++ ++ConnectionManagerPrivate::ConnectionManagerPrivate(QObject * parent, const char * name ) : QObject( parent, name ), service( 0 ), connectPolicy( ConnectionManager::Managed ), ++ disconnectPolicy( ConnectionManager::Managed ), connectReceiver( 0 ), connectSlot( 0 ), ++ disconnectReceiver( 0 ), disconnectSlot( 0 ) ++{ ++} ++ ++ConnectionManagerPrivate::~ConnectionManagerPrivate() ++{ ++} ++ ++#include "connectionmanager_p.moc" +Index: networkstatus/connectionmanager_p.h +=================================================================== +--- /dev/null ++++ networkstatus/connectionmanager_p.h +@@ -0,0 +1,55 @@ ++/* This file is part of the KDE project ++ Copyright (C) 2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef CONNECTIONMANAGERPRIVATE_H ++#define CONNECTIONMANAGERPRIVATE_H ++ ++#include ++ ++#include "connectionmanager.h" ++#include "networkstatuscommon.h" ++#include "networkstatusiface_stub.h" ++ ++ ++// ConnectionManager's private parts ++class ConnectionManagerPrivate : public QObject ++{ ++Q_OBJECT ++ friend class ConnectionManager; ++public: ++ ConnectionManagerPrivate( QObject * parent = 0, const char * name = 0); ++ ~ConnectionManagerPrivate(); ++ // this holds the currently active state ++ NetworkStatus::Status status; ++ NetworkStatusIface_stub * service; ++ ConnectionManager::ConnectionPolicy connectPolicy; ++ ConnectionManager::ConnectionPolicy disconnectPolicy; ++ QObject * connectReceiver; ++ const char * connectSlot; ++ QObject * disconnectReceiver; ++ const char * disconnectSlot; ++signals: ++ void connected(); ++ void disconnected(); ++}; ++ ++#endif +Index: networkstatus/Makefile.am +=================================================================== +--- /dev/null ++++ networkstatus/Makefile.am +@@ -0,0 +1,45 @@ ++#SUBDIRS = networkstatustray ++ ++METASOURCES = AUTO ++ ++INCLUDES = -I$(top_srcdir)/kded -I$(top_srcdir) $(all_includes) ++ ++kde_module_LTLIBRARIES = kded_networkstatus.la ++ ++kded_networkstatus_la_SOURCES = networkstatus.cpp networkstatus.skel \ ++ network.cpp ++kded_networkstatus_la_LIBADD = $(LIB_KDECORE) $(LIB_KIO) ./libnetworkstatus.la ++kded_networkstatus_la_LDFLAGS = $(all_libraries) -module -avoid-version ++ ++servicesdir = $(kde_servicesdir)/kded ++ ++services_DATA = networkstatus.desktop ++ ++lib_LTLIBRARIES = libnetworkstatus.la libconnectionmanager.la ++ ++libnetworkstatus_la_LIBADD = $(LIB_KDECORE) ++libnetworkstatus_la_LDFLAGS = $(all_libraries) ++libnetworkstatus_la_SOURCES = networkstatuscommon.cpp ++ ++libconnectionmanager_la_LIBADD = $(LIB_KDECORE) libnetworkstatus.la ++libconnectionmanager_la_LDFLAGS = $(all_libraries) ++libconnectionmanager_la_SOURCES = connectionmanager.cpp connectionmanager_p.cpp networkstatusindicator.cpp connectionmanager.skel networkstatusiface.stub ++ ++noinst_PROGRAMS = networkstatustestservice networkstatustestclient managedconnectiontestclient ++ ++networkstatustestservice_LDFLAGS = $(all_libraries) ++networkstatustestservice_LDADD = $(LIB_KFILE) libnetworkstatus.la ++networkstatustestservice_SOURCES = testservice.cpp testserviceview.ui networkstatusiface.stub ++ ++networkstatustestclient_LDFLAGS = $(all_libraries) ++networkstatustestclient_LDADD = $(LIB_KFILE) libnetworkstatus.la libconnectionmanager.la ++networkstatustestclient_SOURCES = testclient.cpp testclientview.ui ++ ++managedconnectiontestclient_LDFLAGS = $(all_libraries) ++managedconnectiontestclient_LDADD = $(LIB_KFILE) libnetworkstatus.la libconnectionmanager.la ++managedconnectiontestclient_SOURCES = testclient2.cpp testclientview.ui ++ ++noinst_HEADERS = network.h testservice.h testclient.h ++ ++include_HEADERS = networkstatuscommon.h connectionmanager.h networkstatusindicator.h \ ++ networkstatusiface.h +Index: networkstatus/network.cpp +=================================================================== +--- /dev/null ++++ networkstatus/network.cpp +@@ -0,0 +1,62 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include ++ ++#include "network.h" ++ ++Network::Network( NetworkStatus::Properties properties ) ++ : m_name( properties.name ), m_status( properties.status ), m_service( properties.service ) ++{ ++} ++ ++void Network::setStatus( NetworkStatus::Status status ) ++{ ++ m_status = status; ++} ++ ++NetworkStatus::Status Network::status() ++{ ++ return m_status; ++} ++ ++void Network::setName( const QString& name ) ++{ ++ m_name = name; ++} ++ ++QString Network::name() ++{ ++ return m_name; ++} ++ ++QString Network::service() ++{ ++ return m_service; ++} ++ ++void Network::setService( const QString& service ) ++{ ++ m_service = service; ++} ++ ++// vim: sw=4 ts=4 +Index: networkstatus/network.h +=================================================================== +--- /dev/null ++++ networkstatus/network.h +@@ -0,0 +1,60 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef NETWORKSTATUS_NETWORK_H ++#define NETWORKSTATUS_NETWORK_H ++ ++#include "networkstatuscommon.h" ++ ++class Network ++{ ++public: ++ Network( const QString name ); ++ Network( NetworkStatus::Properties properties ); ++ /** ++ * Update the status of this network ++ */ ++ void setStatus( NetworkStatus::Status status ); ++ /** ++ * The connection status of this network ++ */ ++ NetworkStatus::Status status(); ++ /** ++ * The name of this network ++ */ ++ QString name(); ++ void setName( const QString& name ); ++ /** ++ * Returns the service owning this network ++ */ ++ QString service(); ++ void setService( const QString& service ); ++ ++private: ++ Network( const Network & ); ++ QString m_name; ++ NetworkStatus::Status m_status; ++ QString m_service; ++}; ++ ++#endif ++// vim: sw=4 ts=4 +Index: networkstatus/networkstatuscommon.cpp +=================================================================== +--- /dev/null ++++ networkstatus/networkstatuscommon.cpp +@@ -0,0 +1,76 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include "networkstatuscommon.h" ++ ++QDataStream & operator<< ( QDataStream & s, const NetworkStatus::Properties p ) ++{ ++ s << p.name; ++ s << (int)p.status; ++ s << p.service; ++ return s; ++} ++ ++QDataStream & operator>> ( QDataStream & s, NetworkStatus::Properties &p ) ++{ ++ int status; ++ s >> p.name; ++ s >> status; ++ p.status = (NetworkStatus::Status)status; ++ s >> p.service; ++ return s; ++} ++ ++namespace NetworkStatus ++{ ++ QString toString( NetworkStatus::Status st ) ++ { ++ QString str; ++ switch ( st ) { ++ case NetworkStatus::NoNetworks: ++ str = "NoNetworks"; ++ break; ++ case NetworkStatus::Unreachable: ++ str = "Unreachable"; ++ break; ++ case NetworkStatus::OfflineDisconnected: ++ str = "OfflineDisconnected"; ++ break; ++ case NetworkStatus::OfflineFailed: ++ str = "OfflineFailed"; ++ break; ++ case NetworkStatus::ShuttingDown: ++ str = "ShuttingDown"; ++ break; ++ case NetworkStatus::Offline: ++ str = "Offline"; ++ break; ++ case NetworkStatus::Establishing: ++ str = "Establishing"; ++ break; ++ case NetworkStatus::Online: ++ str = "Online"; ++ break; ++ } ++ return str; ++ } ++} // namespace NetworkStatus +Index: networkstatus/networkstatuscommon.h +=================================================================== +--- /dev/null ++++ networkstatus/networkstatuscommon.h +@@ -0,0 +1,52 @@ ++/* This file is part of kdepim ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef NETWORKSTATUS_COMMON_H ++#define NETWORKSTATUS_COMMON_H ++ ++#include ++ ++namespace NetworkStatus ++{ ++ enum Status { NoNetworks = 1, Unreachable, OfflineDisconnected, OfflineFailed, ShuttingDown, Offline, Establishing, Online }; ++ enum RequestResult { RequestAccepted = 1, Connected, UserRefused, Unavailable }; ++ enum UnusedDemandPolicy { All, User, None, Permanent }; ++ ++ // BINARY COMPATIBILITY ALERT BEGIN !!!! ++ struct Properties ++ { ++ QString name; ++ Status status; ++ UnusedDemandPolicy unused1; ++ QCString service; ++ bool unused3; ++ QStringList unused4; ++ }; ++ // BINARY COMPATIBILITY ALERT END !!!! ++ ++ QString toString( Status st ); ++} ++ ++QDataStream & operator>> ( QDataStream & s, NetworkStatus::Properties &p ); ++QDataStream & operator<< ( QDataStream & s, const NetworkStatus::Properties p ); ++ ++#endif +Index: networkstatus/networkstatus.cpp +=================================================================== +--- /dev/null ++++ networkstatus/networkstatus.cpp +@@ -0,0 +1,163 @@ ++/* This file is part of kdepim ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include "networkstatus.h" ++ ++#include ++ ++#include ++#include ++#include ++ ++#include "network.h" ++#include ++ ++extern "C" { ++ KDE_EXPORT KDEDModule* create_networkstatus( const QCString& obj ) ++ { ++ return new NetworkStatusModule( obj ); ++ } ++} ++ ++// INTERNALLY USED STRUCTS AND TYPEDEFS ++ ++typedef QMap< QString, Network * > NetworkMap; ++ ++class NetworkStatusModule::Private ++{ ++public: ++ NetworkMap networks; ++ NetworkStatus::Status status; ++}; ++ ++// CTORS/DTORS ++ ++NetworkStatusModule::NetworkStatusModule( const QCString & obj ) : KDEDModule( obj ), d( new Private ) ++{ ++ d->status = NetworkStatus::NoNetworks; ++ connect( kapp->dcopClient(), SIGNAL( applicationRemoved( const QCString& ) ) , this, SLOT( unregisteredFromDCOP( const QCString& ) ) ); ++ // connect( kapp->dcopClient(), SIGNAL( applicationRegistered( const QCString& ) ) , this, SLOT( registeredToDCOP( const QCString& ) ) ); ++} ++ ++NetworkStatusModule::~NetworkStatusModule() ++{ ++ NetworkMap::ConstIterator it; ++ const NetworkMap::ConstIterator end = d->networks.end(); ++ ++ for ( it = d->networks.begin(); it != end; ++it ) { ++ delete ( *it ); ++ } ++ ++ delete d; ++} ++ ++// CLIENT INTERFACE ++ ++QStringList NetworkStatusModule::networks() ++{ ++ kdDebug() << k_funcinfo << " contains " << d->networks.count() << " networks" << endl; ++ return d->networks.keys(); ++} ++ ++int NetworkStatusModule::status() ++{ ++ kdDebug() << k_funcinfo << " status: " << (int)d->status << endl; ++ return (int)d->status; ++} ++ ++//protected: ++ ++void NetworkStatusModule::updateStatus() ++{ ++ NetworkStatus::Status bestStatus = NetworkStatus::NoNetworks; ++ const NetworkStatus::Status oldStatus = d->status; ++ ++ NetworkMap::ConstIterator it; ++ const NetworkMap::ConstIterator end = d->networks.end(); ++ for ( it = d->networks.begin(); it != end; ++it ) { ++ if ( ( *it )->status() > bestStatus ) ++ bestStatus = ( *it )->status(); ++ } ++ d->status = bestStatus; ++ ++ if ( oldStatus != d->status ) { ++ statusChange( (int)d->status ); ++ } ++} ++ ++void NetworkStatusModule::unregisteredFromDCOP( const QCString & appId ) ++{ ++ // unregister and delete any networks owned by a service that has just unregistered ++ NetworkMap::Iterator it = d->networks.begin(); ++ const NetworkMap::Iterator end = d->networks.end(); ++ while (it != d->networks.end()) ++ { ++ if ( ( *it )->service() == QString( appId ) ) ++ { ++ NetworkMap::Iterator toRemove = it++; ++ delete *toRemove; ++ d->networks.remove( toRemove ); ++ updateStatus(); ++ continue; ++ } ++ ++it; ++ } ++} ++ ++// SERVICE INTERFACE // ++void NetworkStatusModule::setNetworkStatus( const QString & networkName, int st ) ++{ ++ kdDebug() << k_funcinfo << networkName << ", " << st << endl; ++ NetworkStatus::Status changedStatus = (NetworkStatus::Status)st; ++ Network * net = 0; ++ NetworkMap::Iterator it = d->networks.find( networkName ); ++ if ( it != d->networks.end() ) { ++ net = (*it); ++ net->setStatus( changedStatus ); ++ updateStatus(); ++ } ++ else ++ kdDebug() << " No network named '" << networkName << "' found." << endl; ++} ++ ++void NetworkStatusModule::registerNetwork( const NetworkStatus::Properties properties ) ++{ ++ kdDebug() << k_funcinfo << properties.name << ", with status " << properties.status << endl; ++ ++ d->networks.insert( properties.name, new Network( properties ) ); ++ updateStatus(); ++} ++ ++void NetworkStatusModule::unregisterNetwork( const QString & networkName ) ++{ ++ kdDebug() << k_funcinfo << networkName << endl; ++ ++ NetworkMap::Iterator it = d->networks.find( networkName ); ++ if ( it != d->networks.end() ) { ++ delete *it; ++ d->networks.remove( it ); ++ } ++ updateStatus(); ++} ++ ++#include "networkstatus.moc" ++// vim: set noet sw=4 ts=4: +Index: networkstatus/networkstatus.desktop +=================================================================== +--- /dev/null ++++ networkstatus/networkstatus.desktop +@@ -0,0 +1,98 @@ ++[Desktop Entry] ++Encoding=UTF-8 ++Name=Network Status Daemon ++Name[af]=Netwerk status bediener ++Name[ar]=مراقب القرص و التنفيذ لحالة الشبكة ++Name[bg]=Демон за състояние на мрежата ++Name[ca]=Dimoni de l'estat de la xarxa ++Name[cs]=Démon stavu sítě ++Name[da]=Netværkstatusdæmon ++Name[de]=Überwachung des Netzwerkstatus ++Name[el]=Δαίμονας κατάστασης δικτύου ++Name[es]=Daemon de estado de la red ++Name[et]=Võrguoleku deemon ++Name[eu]=Sarearen egoera deabrua ++Name[fa]=شبح وضعیت شبکه ++Name[fi]=Verkkotilan tarkkailija ++Name[fr]=Suivi de l'état du réseau ++Name[fy]=Netwurktastândaemon ++Name[gl]=Daemon do Estado da Rede ++Name[hu]=Hálózati állapotjelző szolgáltatás ++Name[is]=Netstöðupúki ++Name[it]=Demone dello stato della rete ++Name[ja]=ネットワークステータスデーモン ++Name[kk]=Желі күйінің қызметі ++Name[km]=ដេមិន​ស្ថានភាព​បណ្ដាញ ++Name[lt]=Tinklo statuso tarnyba ++Name[mk]=Даемон за мрежен статус ++Name[ms]=Daemon Berstatus Rangkaian ++Name[nb]=Statusnisse for nettverket ++Name[nds]=Nettwarkstatus-Dämoon ++Name[ne]=सञ्जाल स्थिति डेइमन ++Name[nl]=Netwerkstatusdaemon ++Name[nn]=Statusnisse for nettverket ++Name[pl]=Usługa stanu sieci ++Name[pt]=Servidor de Estado de Rede ++Name[pt_BR]=Daemon de Status da Rede ++Name[ru]=Служба состояния сети ++Name[sk]=Daemon stavu siete ++Name[sl]=Demon za omrežno stanje ++Name[sr]=Демон за статус мреже ++Name[sr@Latn]=Demon za status mreže ++Name[sv]=Nätverksstatusdemon ++Name[ta]=வலைப்பின்னல் நிலை டெமான் ++Name[tr]=Ağ Durum İzleyici ++Name[uk]=Демон стану мережі ++Name[zh_CN]=网络状态守护程序 ++Name[zh_TW]=網路狀態守護程式 ++Comment=Tracks status of network interfaces and provides notification to applications using the network. ++Comment[af]=Hou tred van die status van netwerk intervlakke en verskaf kennisgewings na programme wat die netwerk gebruik. ++Comment[bg]=Следене на състоянието на мрежата и предаване на информацията на програмите, които имат нужда ++Comment[ca]=Controla l'estat de les interfícies de xarxa i proporciona notificacions a les aplicacions que usen la xarxa. ++Comment[cs]=Zjiš'tuje stav síťových rozhraní a upozorňuje v případě přístupu aplikací k síti. ++Comment[da]=Sporer status af netværksgrænseflade og sørger for meddelelser til programmer der bruger netværket. ++Comment[de]=Überprüft den Netzwerk-Status und benachrichtigt anfragende Anwendungen ++Comment[el]=Παρακολουθεί την κατάσταση του δικτύου και παρέχει ειδοποιήσεις σε εφαρμογές που χρησιμοποιούν το δίκτυο. ++Comment[es]=Sigue la pista de las interfaces de red y proporciona notificaciones a las aplicaciones que están usando la red. ++Comment[et]=Jälgib võrguliideste olekut ja annab sellest võrgu vahendusel rakendustele teada. ++Comment[eu]=Sare interfazeen egoera jarraitzen du eta sarea darabilten aplikazioei jakinarazten die. ++Comment[fa]=وضعیت واسطهای شبکه را شیار داده و با استفاده از شبکه، برای کاربردها اخطار فراهم می‌کند. ++Comment[fi]=Tarkkailee verkkoliitäntöjen tilaa ja varoittaa verkkoa käyttäviä sovelluksia. ++Comment[fr]=Surveille l'état des interfaces réseaux et fournit des notifications aux applications qui utilisent le réseau ++Comment[fy]=Hâldt de tastân by fan de Netwurkynterfaces en hâldt dêr de tapassings fan op de hichte. ++Comment[gl]=Monitoriza o estado das interfaces de rede e fornece notificacións ás aplicacións que usen a rede. ++Comment[hu]=Figyeli a hálózati csatolók állapotát és értesítési lehetőséget biztosít hálózati alkalmazások számára. ++Comment[is]=Fylgist með stöðu netkorta og sendir tilkynningar til forrita sem nota netið. ++Comment[it]=Controlla lo stato delle interfacce di rete e fornisce notifiche alle applicazioni che usano al rete. ++Comment[ja]=ネットワークインターフェースの状態を追跡し、ネットワークを用いるアプリケーションに通知します ++Comment[kk]=Желі интерфейстерінің күйін бақылап, желіні қолданатын бағдарламаларын құлақтандыру қызметі. ++Comment[km]=តាមដាន​ស្ថានភាព​របស់​ចំណុច​ប្រទាក់​បណ្ដាញ ព្រម​ទាំង​ផ្ដល់​នូវ​ការ​ជូនដំណឹង​ទៅ​កម្មវិធី ដែល​ប្រើ​បណ្ដាញ ។ ++Comment[lt]=Seka tinklo sąsajų būseną ir informuoja apie jas programas, naudojančias tinklą ++Comment[mk]=Го следи статусот на мрежните интерфејси и дава известувања на апликациите што ја користат мрежата. ++Comment[ms]=Menjejak status antara muka rangkaian dan memberitahu aplikasi yang menggunakan rangkaian tersebut. ++Comment[nb]=Overvåker status for nettverksgrensesnitt og varsler programmer som bruker nettverket. ++Comment[nds]=Överwacht den Tostand vun Nettwark-Koppelsteden un sendt Narichten na Programmen, de dat Nettwark bruukt. ++Comment[ne]=सञ्जाल इन्टरफेसको स्थिति ट्र्याक गर्दछ र सञ्जाल प्रयोग गरेर अनुप्रयोगमा जानकारी उपलब्ध गराउछ । ++Comment[nl]=Houdt de status bij van de netwerkinterfaces en houdt daar de toepassingen van op de hoogte. ++Comment[nn]=Overvakar status for nettverksgrensesnitt og varslar program som brukar nettverket. ++Comment[pl]=Śledzi stan interfejsów sieciowych i powiadamia programy używające sieci. ++Comment[pt]=Vigia o estado das interfaces de rede e avisa as aplicações que utilizam a rede. ++Comment[pt_BR]=Controla o status das interfaces de rede e fornece notificações para aplicativos utilizando a rede. ++Comment[ru]=Служба отслеживания состояния сетевых интерфейсов и обращения приложений к сети. ++Comment[sk]=Sleduje stav sieťových rozhraní a poskytuje upozornenia aplikáciám používajúcim sieť. ++Comment[sl]=Sledi stanju omrežnim vmesnikom in omogoča obvestila programom, ki uporabljajo omrežje ++Comment[sr]=Прати статус мрежних интерфејса и пружа обавештења програмима који користе мрежу. ++Comment[sr@Latn]=Prati status mrežnih interfejsa i pruža obaveštenja programima koji koriste mrežu. ++Comment[sv]=Bevakar status för nätverksgränssnitt och tillhandahåller underrättelser till program som använder nätverket. ++Comment[ta]=வலைப்பின்னலைப் பயன்படுத்தி வலைப்பின்னல் இடைமுகங்களின் நிலையை கண்காணிக்கிறது மற்றும் பயன்பாடுகளுக்கு அறிவிப்பை வழங்குகிறது. ++Comment[uk]=Слідкує за станом інтерфейсів мережі і сповіщає програми, які користуються мережею. ++Comment[zh_CN]=跟踪网卡的状态并为应用程序提供使用网络的通知。 ++Comment[zh_TW]=追蹤網路介面的狀態,並提供使用網路的應用程式的通知。 ++Type=Service ++ServiceTypes=KDEDModule ++X-KDE-ModuleType=Library ++X-KDE-Library=networkstatus ++X-KDE-FactoryName=networkstatus ++X-KDE-Kded-autoload=true ++X-KDE-Kded-load-on-demand=true ++ +Index: networkstatus/networkstatus.h +=================================================================== +--- /dev/null ++++ networkstatus/networkstatus.h +@@ -0,0 +1,66 @@ ++/* This file is part of kdepim ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef KDED_NETWORKSTATUS_H ++#define KDED_NETWORKSTATUS_H ++ ++#include ++ ++#include "networkstatuscommon.h" ++#include "network.h" ++ ++class NetworkStatusModule : virtual public KDEDModule ++{ ++Q_OBJECT ++K_DCOP ++public: ++ NetworkStatusModule( const QCString& obj ); ++ ~NetworkStatusModule(); ++k_dcop: ++ // Client interface ++ QStringList networks(); ++ int status(); ++ // Service interface ++ void setNetworkStatus( const QString & networkName, int status ); ++ void registerNetwork( NetworkStatus::Properties properties ); ++ void unregisterNetwork( const QString & networkName ); ++k_dcop_signals: ++ /** ++ * A status change occurred affecting the overall connectivity ++ * @param status The new status ++ */ ++ void statusChange( int status ); ++protected slots: ++ //void registeredToDCOP( const QCString& appId ); ++ void unregisteredFromDCOP( const QCString& appId ); ++ ++protected: ++ // recalculate cached status ++ void updateStatus(); ++ ++private: ++ class Private; ++ Private *d; ++}; ++ ++#endif ++// vim: sw=4 ts=4 +Index: networkstatus/networkstatusiface.h +=================================================================== +--- /dev/null ++++ networkstatus/networkstatusiface.h +@@ -0,0 +1,50 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef KDED_NETWORKSTATUSIFACE_H ++#define KDED_NETWORKSTATUSIFACE_H ++ ++#include ++#include ++ ++#include "networkstatuscommon.h" ++ ++class NetworkStatusIface : virtual public DCOPObject ++{ ++K_DCOP ++k_dcop: ++ // Client interface ++ virtual QStringList networks() = 0; ++ virtual int status() = 0; ++ // Service interface ++ virtual void setNetworkStatus( const QString & networkName, int status ) = 0; ++ virtual void registerNetwork( NetworkStatus::Properties properties ) = 0; ++ virtual void unregisterNetwork( const QString & networkName ) = 0 ; ++k_dcop_signals: ++ /** ++ * A status change occurred affecting the overall connectivity ++ * @param status The new status ++ */ ++ virtual void statusChange( int status ) = 0; ++}; ++#endif ++// vim: sw=4 ts=4 +Index: networkstatus/networkstatusindicator.cpp +=================================================================== +--- /dev/null ++++ networkstatus/networkstatusindicator.cpp +@@ -0,0 +1,64 @@ ++/* This file is part of the KDE project ++ Copyright (C) 2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include ++#include ++#include ++#include ++ ++#include "connectionmanager.h" ++ ++#include "networkstatusindicator.h" ++ ++StatusBarNetworkStatusIndicator::StatusBarNetworkStatusIndicator( ++ QWidget * parent, const char * name ) : QHBox( parent, name )/*, d( new StatusBarNetworkStatusIndicatorPrivate )*/ ++{ ++ setMargin( 2 ); ++ setSpacing( 1 ); ++ QLabel * label = new QLabel( this, "offlinemodelabel" ); ++ label->setPixmap( SmallIcon("connect_no") ); ++ QToolTip::add( label, i18n( "The desktop is offline" ) ); ++ ++ connect( ConnectionManager::self(), SIGNAL( statusChanged( NetworkStatus::Status ) ), ++ SLOT( networkStatusChanged( NetworkStatus::Status) ) ); ++ ++} ++ ++void StatusBarNetworkStatusIndicator::init() ++{ ++ networkStatusChanged( ConnectionManager::self()->status()); ++} ++ ++StatusBarNetworkStatusIndicator::~StatusBarNetworkStatusIndicator() ++{ ++} ++ ++void StatusBarNetworkStatusIndicator::networkStatusChanged( NetworkStatus::Status status ) ++{ ++ if ( status == NetworkStatus::Online || status == NetworkStatus::NoNetworks ) { ++ hide(); ++ } else { ++ show(); ++ } ++} ++ ++#include "networkstatusindicator.moc" +Index: networkstatus/networkstatusindicator.h +=================================================================== +--- /dev/null ++++ networkstatus/networkstatusindicator.h +@@ -0,0 +1,42 @@ ++/* This file is part of the KDE project ++ Copyright (C) 2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef KDE_NETWORKSTATUS_INDICATOR_H ++#define KDE_NETWORKSTATUS_INDICATOR_H ++ ++#include ++#include ++#include ++ ++class StatusBarNetworkStatusIndicator : public QHBox ++{ ++Q_OBJECT ++public: ++ StatusBarNetworkStatusIndicator( QWidget * parent, const char * name ); ++ virtual ~StatusBarNetworkStatusIndicator(); ++ void init(); ++protected slots: ++ void networkStatusChanged( NetworkStatus::Status status ); ++}; ++ ++#endif ++ +Index: networkstatus/networkstatus.kdevelop +=================================================================== +--- /dev/null ++++ networkstatus/networkstatus.kdevelop +@@ -0,0 +1,108 @@ ++ ++ ++ ++ Will Stephenson ++ wstephenson@suse.de ++ $VERSION$ ++ KDevKDEAutoProject ++ C++ ++ ++ Qt ++ KDE ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ false ++ false ++ ++ ++ *.o,*.lo,CVS ++ false ++ ++ ++ ++ ++ ada ++ ada_bugs_gcc ++ bash ++ bash_bugs ++ clanlib ++ fortran_bugs_gcc ++ gnome1 ++ gnustep ++ gtk ++ gtk_bugs ++ haskell ++ haskell_bugs_ghc ++ java_bugs_gcc ++ java_bugs_sun ++ opengl ++ pascal_bugs_fp ++ php ++ php_bugs ++ perl ++ perl_bugs ++ python ++ python_bugs ++ ruby ++ ruby_bugs ++ sdl ++ stl ++ sw ++ w3c-dom-level2-html ++ w3c-svg ++ w3c-uaag10 ++ wxwidgets_bugs ++ ++ ++ qmake User Guide ++ ++ ++ ++ ++ libtool ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ executable ++ ++ ++ kded_networkstatus.la ++ ++ ++ ++ ++ ++ true ++ true ++ true ++ false ++ true ++ true ++ true ++ 250 ++ 400 ++ 250 ++ ++ ++ +Index: networkstatus/README.statetransition +=================================================================== +--- /dev/null ++++ networkstatus/README.statetransition +@@ -0,0 +1,29 @@ ++This table defines the actions to be taken on state transition. ++ ++TODO: potentially add extra states OnlineReading and OnlineWriting ++ ++ NEW ++ |Offline | Online | ++---+---+----------------+---------------+ ++ | | |N|set online | ++ | | |L|reload | ++ | O | |C|resources | ++ | F | +---------------+ ++ | F | |L|set online | ++O | | |C|reload res. | ++L | | | |write res. | ++D +---+----------------+---------------+ ++ | |N|set offline | | ++ | |C| | | ++ | | | | | ++ | O +---------------+| | ++ | N |U|set offline | | ++ | |W|write locally | | ++ | |C|(subject to | | ++ | | | save policy)| | ++---+---+----------------+---------------+ ++LC = Local changes exist ++NLC = No local changes exist ++UWC = Unsaved changes exist ++NC = no changes exist ++ +Index: networkstatus/.svn/dir-prop-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/dir-prop-base +@@ -0,0 +1,11 @@ ++K 10 ++svn:ignore ++V 83 ++Makefile ++Makefile.in ++Makefile.calls.in ++Makefile.rules.in ++*_skel.cpp ++*.kidl ++Doxyfile ++END +Index: networkstatus/.svn/entries +=================================================================== +--- /dev/null ++++ networkstatus/.svn/entries +@@ -0,0 +1,342 @@ ++8 ++ ++dir ++712059 ++svn+ssh://mueller@svn.kde.org/home/kde/branches/work/~wstephens/kdelibs/networkstatus ++svn+ssh://mueller@svn.kde.org/home/kde ++ ++ ++ ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++has-props ++ ++svn:special svn:externals svn:needs-lock ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++283d02a7-25f6-0310-bc7c-ecb5cbfe19da ++ ++network.h ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++034300313451d5b6a95bff1022861227 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++has-props ++ ++networkstatusindicator.h ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++bbc7c6ea3b8da983d477d53556e39dd0 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++ ++connectionmanager.h ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++7992e623b84fd99f9ff17c613a7269a3 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++has-props ++ ++testservice.cpp ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++527dc95a7ae39d565bd29d5fe59de31a ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++has-props ++ ++testclient2.cpp ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++c426585cf5d9e3f4b06adcaff0a3ef32 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++ ++networkstatus.h ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++8ca1d871b31d5840e2e3d24da4693f1d ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++has-props ++ ++testclientview.ui ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++8f63eb3db978c53143417ad33d45076b ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++ ++testservice.h ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++2b5693b2e174ebf96e460a52cfcf9739 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++has-props ++ ++testclient2.h ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++3b9f645e56a92014b7a6547c5bc88527 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++ ++README.statetransition ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++0091b6bdce4abe1e1260bf2a4cce984f ++2005-02-11T15:15:30.000000Z ++388364 ++wstephens ++has-props ++ ++networkstatuscommon.cpp ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++1516e99224ce850fb6d134346fd9d074 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++has-props ++ ++connectionmanager_p.cpp ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++07e9643c6cdb39d28abc9c8992bcab23 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++ ++networkstatuscommon.h ++file ++712062 ++ ++ ++ ++2007-09-13T13:10:21.000000Z ++a4f22eecd7d0a0fdcc78c9c31d5f14fd ++2007-09-13T13:12:05.866586Z ++712062 ++mueller ++has-props ++ ++testclient.cpp ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++d932143bab5c7985bc48e64e2bf0c227 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++ ++connectionmanager_p.h ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++34ed7e34d50ae4b36342a6cc250ad386 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++ ++testclient.h ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++67d3671e5fbeb51a333550f52ec34294 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++ ++networkstatus.kdevelop ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++64e6cd906f82dad6a3c70a8dd7e69c3c ++2005-01-24T08:48:57.000000Z ++381869 ++wstephens ++has-props ++ ++networkstatus.desktop ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++1bc32c39d8c6ed9c63e6fdc1b3d34aba ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++has-props ++ ++testserviceview.ui ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++f8883c2425f16054c8cfd99a6c288000 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++ ++Makefile.am ++file ++712061 ++ ++ ++ ++2007-09-13T13:10:11.000000Z ++70d1b224f8edc970fbdf2f4af63282f0 ++2007-09-13T13:11:26.289844Z ++712061 ++mueller ++has-props ++ ++network.cpp ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++1f481f54f0161b8a65d00753d6397904 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++has-props ++ ++networkstatusindicator.cpp ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++243176eca79394c0e2a763b1e56a0690 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++ ++networkstatusiface.h ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++285a14008068eb0cd26e3af2bb8fbb92 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++ ++connectionmanager.cpp ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++922d360b2e43b6b35f56c0d97ab1afa9 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++has-props ++ ++networkstatus.cpp ++file ++ ++ ++ ++ ++2007-09-13T13:09:10.000000Z ++433313b5f03259de305b6d722c0251e5 ++2007-08-06T09:06:39.201606Z ++696919 ++wstephens ++has-props ++ +Index: networkstatus/.svn/format +=================================================================== +--- /dev/null ++++ networkstatus/.svn/format +@@ -0,0 +1 @@ ++8 +Index: networkstatus/.svn/prop-base/connectionmanager.cpp.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/prop-base/connectionmanager.cpp.svn-base +@@ -0,0 +1,13 @@ ++K 13 ++svn:eol-style ++V 6 ++native ++K 12 ++svn:keywords ++V 23 ++Author Date Id Revision ++K 13 ++svn:mime-type ++V 13 ++text/x-c++src ++END +Index: networkstatus/.svn/prop-base/connectionmanager.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/prop-base/connectionmanager.h.svn-base +@@ -0,0 +1,13 @@ ++K 13 ++svn:eol-style ++V 6 ++native ++K 12 ++svn:keywords ++V 23 ++Author Date Id Revision ++K 13 ++svn:mime-type ++V 11 ++text/x-chdr ++END +Index: networkstatus/.svn/prop-base/Makefile.am.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/prop-base/Makefile.am.svn-base +@@ -0,0 +1,13 @@ ++K 13 ++svn:eol-style ++V 6 ++native ++K 12 ++svn:keywords ++V 23 ++Author Date Id Revision ++K 13 ++svn:mime-type ++V 9 ++text/x-am ++END +Index: networkstatus/.svn/prop-base/network.cpp.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/prop-base/network.cpp.svn-base +@@ -0,0 +1,13 @@ ++K 13 ++svn:eol-style ++V 6 ++native ++K 12 ++svn:keywords ++V 23 ++Author Date Id Revision ++K 13 ++svn:mime-type ++V 13 ++text/x-c++src ++END +Index: networkstatus/.svn/prop-base/network.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/prop-base/network.h.svn-base +@@ -0,0 +1,13 @@ ++K 13 ++svn:eol-style ++V 6 ++native ++K 12 ++svn:keywords ++V 23 ++Author Date Id Revision ++K 13 ++svn:mime-type ++V 11 ++text/x-chdr ++END +Index: networkstatus/.svn/prop-base/networkstatuscommon.cpp.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/prop-base/networkstatuscommon.cpp.svn-base +@@ -0,0 +1,13 @@ ++K 13 ++svn:eol-style ++V 6 ++native ++K 12 ++svn:keywords ++V 23 ++Author Date Id Revision ++K 13 ++svn:mime-type ++V 13 ++text/x-c++src ++END +Index: networkstatus/.svn/prop-base/networkstatuscommon.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/prop-base/networkstatuscommon.h.svn-base +@@ -0,0 +1,13 @@ ++K 13 ++svn:eol-style ++V 6 ++native ++K 12 ++svn:keywords ++V 23 ++Author Date Id Revision ++K 13 ++svn:mime-type ++V 11 ++text/x-chdr ++END +Index: networkstatus/.svn/prop-base/networkstatus.cpp.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/prop-base/networkstatus.cpp.svn-base +@@ -0,0 +1,13 @@ ++K 13 ++svn:eol-style ++V 6 ++native ++K 12 ++svn:keywords ++V 23 ++Author Date Id Revision ++K 13 ++svn:mime-type ++V 13 ++text/x-c++src ++END +Index: networkstatus/.svn/prop-base/networkstatus.desktop.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/prop-base/networkstatus.desktop.svn-base +@@ -0,0 +1,13 @@ ++K 13 ++svn:eol-style ++V 6 ++native ++K 12 ++svn:keywords ++V 23 ++Author Date Id Revision ++K 13 ++svn:mime-type ++V 14 ++text/x-desktop ++END +Index: networkstatus/.svn/prop-base/networkstatus.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/prop-base/networkstatus.h.svn-base +@@ -0,0 +1,13 @@ ++K 13 ++svn:eol-style ++V 6 ++native ++K 12 ++svn:keywords ++V 23 ++Author Date Id Revision ++K 13 ++svn:mime-type ++V 11 ++text/x-chdr ++END +Index: networkstatus/.svn/prop-base/networkstatus.kdevelop.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/prop-base/networkstatus.kdevelop.svn-base +@@ -0,0 +1,5 @@ ++K 12 ++svn:keywords ++V 23 ++Author Date Id Revision ++END +Index: networkstatus/.svn/prop-base/README.statetransition.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/prop-base/README.statetransition.svn-base +@@ -0,0 +1,5 @@ ++K 12 ++svn:keywords ++V 23 ++Author Date Id Revision ++END +Index: networkstatus/.svn/prop-base/testservice.cpp.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/prop-base/testservice.cpp.svn-base +@@ -0,0 +1,13 @@ ++K 13 ++svn:eol-style ++V 6 ++native ++K 12 ++svn:keywords ++V 23 ++Author Date Id Revision ++K 13 ++svn:mime-type ++V 13 ++text/x-c++src ++END +Index: networkstatus/.svn/prop-base/testservice.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/prop-base/testservice.h.svn-base +@@ -0,0 +1,13 @@ ++K 13 ++svn:eol-style ++V 6 ++native ++K 12 ++svn:keywords ++V 23 ++Author Date Id Revision ++K 13 ++svn:mime-type ++V 11 ++text/x-chdr ++END +Index: networkstatus/.svn/text-base/connectionmanager.cpp.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/connectionmanager.cpp.svn-base +@@ -0,0 +1,171 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include ++#include ++#include ++ ++#include "connectionmanager.h" ++#include "connectionmanager_p.h" ++ ++// Connection manager itself ++ConnectionManager::ConnectionManager( QObject * parent, const char * name ) : DCOPObject( "ConnectionManager" ), QObject( parent, name ), d( new ConnectionManagerPrivate( this ) ) ++{ ++ d->service = new NetworkStatusIface_stub( kapp->dcopClient(), "kded", "networkstatus" ); ++ ++ connectDCOPSignal( "kded", "networkstatus", "statusChange(int)", "slotStatusChanged(int)", false ); ++ ++ initialise(); ++} ++ ++ConnectionManager::~ConnectionManager() ++{ ++ delete d; ++} ++ ++ConnectionManager *ConnectionManager::s_self = 0L; ++ ++ConnectionManager *ConnectionManager::self() ++{ ++ static KStaticDeleter deleter; ++ if(!s_self) ++ deleter.setObject( s_self, new ConnectionManager( 0, "connection_manager" ) ); ++ return s_self; ++} ++ ++void ConnectionManager::initialise() ++{ ++ // determine initial state and set the state object accordingly. ++ d->status = ( NetworkStatus::Status )d->service->status(); ++} ++ ++NetworkStatus::Status ConnectionManager::status() ++{ ++ return d->status; ++} ++ ++void ConnectionManager::slotStatusChanged( int status ) ++{ ++ d->status = ( NetworkStatus::Status )status; ++ switch ( status ) { ++ case NetworkStatus::NoNetworks: ++ break; ++ case NetworkStatus::Unreachable: ++ break; ++ case NetworkStatus::OfflineDisconnected: ++ case NetworkStatus::OfflineFailed: ++ case NetworkStatus::ShuttingDown: ++ case NetworkStatus::Offline: ++ case NetworkStatus::Establishing: ++ if ( d->disconnectPolicy == Managed ) { ++ emit d->disconnected(); ++ } else if ( d->disconnectPolicy == OnNextChange ) { ++ setDisconnectPolicy( Manual ); ++ emit d->disconnected(); ++ } ++ break; ++ case NetworkStatus::Online: ++ if ( d->disconnectPolicy == Managed ) { ++ emit d->connected(); ++ } else if ( d->disconnectPolicy == OnNextChange ) { ++ setConnectPolicy( Manual ); ++ emit d->connected(); ++ } ++ break; ++ default: ++ kdDebug() << k_funcinfo << "Unrecognised status code!" << endl; ++ } ++ emit statusChanged( d->status ); ++} ++ ++ConnectionManager::ConnectionPolicy ConnectionManager::connectPolicy() const ++{ ++ return d->connectPolicy; ++} ++ ++void ConnectionManager::setConnectPolicy( ConnectionManager::ConnectionPolicy policy ) ++{ ++ d->connectPolicy = policy; ++} ++ ++ConnectionManager::ConnectionPolicy ConnectionManager::disconnectPolicy() const ++{ ++ return d->disconnectPolicy; ++} ++ ++void ConnectionManager::setDisconnectPolicy( ConnectionManager::ConnectionPolicy policy ) ++{ ++ d->disconnectPolicy = policy; ++} ++ ++void ConnectionManager::setManualConnectionPolicies() ++{ ++ d->connectPolicy = ConnectionManager::Manual; ++ d->disconnectPolicy = ConnectionManager::Manual; ++} ++ ++void ConnectionManager::setManagedConnectionPolicies() ++{ ++ d->connectPolicy = ConnectionManager::Managed; ++ d->disconnectPolicy = ConnectionManager::Managed; ++} ++ ++void ConnectionManager::registerConnectSlot( QObject * receiver, const char * member ) ++{ ++ d->connectReceiver = receiver; ++ d->connectSlot = member; ++ connect( d, SIGNAL( connected() ), receiver, member ); ++} ++ ++void ConnectionManager::forgetConnectSlot() ++{ ++ disconnect( d, SIGNAL( connected() ), d->connectReceiver, d->connectSlot ); ++ d->connectReceiver = 0; ++ d->connectSlot = 0; ++} ++ ++bool ConnectionManager::isConnectSlotRegistered() const ++{ ++ return ( d->connectSlot != 0 ); ++} ++ ++void ConnectionManager::registerDisconnectSlot( QObject * receiver, const char * member ) ++{ ++ d->disconnectReceiver = receiver; ++ d->disconnectSlot = member; ++ connect( d, SIGNAL( disconnected() ), receiver, member ); ++} ++ ++void ConnectionManager::forgetDisconnectSlot() ++{ ++ disconnect( d, SIGNAL( disconnected() ), d->disconnectReceiver, d->disconnectSlot ); ++ d->disconnectReceiver = 0; ++ d->disconnectSlot = 0; ++} ++ ++bool ConnectionManager::isDisconnectSlotRegistered() const ++{ ++ return ( d->disconnectSlot != 0 ); ++} ++ ++#include "connectionmanager.moc" ++ +Index: networkstatus/.svn/text-base/connectionmanager.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/connectionmanager.h.svn-base +@@ -0,0 +1,167 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef KDE_CONNECTION_MANAGER_H ++#define KDE_CONNECTION_MANAGER_H ++ ++#include ++#include ++ ++#include ++ ++class ConnectionManagerPrivate; ++ ++class KDE_EXPORT ConnectionManager : public QObject, virtual public DCOPObject ++{ ++Q_OBJECT ++K_DCOP ++k_dcop: ++ void slotStatusChanged( int status ); ++public: ++ /** ++ * This defines application policy in response to networking connect/disconnect events ++ * Manual - the app only disconnects when the user does so ++ * OnNextChange - the app should connect or disconnect the next time the network changes state, thereafter ++ * Manual ++ * Managed - the app should disconnect when the ConnectionManager thinks the system is ++ * offline ++ */ ++ enum ConnectionPolicy { Manual, OnNextChange, Managed }; ++ /** ++ * Set a policy to manage the application's connect behaviour ++ */ ++ void setConnectPolicy( ConnectionPolicy ); ++ /** ++ * Retrieve a policy managing the application's connect behaviour ++ */ ++ ConnectionPolicy connectPolicy() const; ++ ++ /** ++ * Set a policy to manage the application's disconnect behaviour ++ */ ++ void setDisconnectPolicy( ConnectionPolicy ); ++ ++ /** ++ * Retrieve a policy managing the application's disconnect behaviour ++ */ ++ ConnectionPolicy disconnectPolicy() const; ++ ++ /* ++ * We'll get logic of the form ++ * onStatusChange() { ++ * if ( ConnectionManager::self()->policy( ConnectionManager::ConnectBehaviour ) == ConnectionManager::OnNextChange || ++ * ConnectionManager::self()->policy( ConnectionManager::ConnectBehaviour ) == ConnectionManager::Managed ) ++ * { ++ * // do connect ++ * ++ * // reset the policy ++ * if ( ConnectionManager::self()->policy( ConnectionManager::ConnectBehaviour ) == ConnectionManager::OnNextChange ) ++ * ConnectionManager::self()->setPolicy( ConnectionManager::ConnectionManager, ++ * ConnectionManager::Manual ); ++ * } ++ * ++ * Do we just use the CM for policy storage, or do we try to factor the logic to implement the ++ * policy into the CM too? ++ * ++ * could signal doConnect(), then reset the policy ++ * or could register a connect slot ++ * registerConnectMethod( QObject * receiver, const char * member ); ++ * unregisterConnectMethod(); ++ * etc. ++ * ++ * The problem with automatically controlled behaviour, where policy may change as a result of a ++ * connect, is that if it is also manually altered, the CM needs to be updated. But the CM needs to ++ * be updated in any case. ++ * CM need ++ */ ++ /** ++ * Lazy-method to set Manual on both policies ++ */ ++ void setManualConnectionPolicies(); ++ /** ++ * Lazy-method to set Managed on both policies ++ */ ++ void setManagedConnectionPolicies(); ++ ++ /** ++ * Record a slot to call on a given receiving QObject when ++ * 1) the network connection is online, ++ * 2) the policy mandates that the app connect ++ * ++ * Only one slot may be registered at any one time. If a second slot is ++ * registered, the first slot is forgotten ++ * @param receiver the QObject where the slot is located ++ * @param member the slot to call. Set up member using the SLOT() macro. ++ */ ++ void registerConnectSlot( QObject * receiver, const char * member ); ++ ++ /** ++ * Forget any connect slot previously registered ++ */ ++ void forgetConnectSlot(); ++ ++ /** ++ * Has any slot been registered to be called on connect? ++ */ ++ bool isConnectSlotRegistered() const; ++ ++ /** ++ * Record a slot to call on a given receiving QObject when ++ * 1) the network connection goes offline (in any way ), ++ * 2) the policy mandates that the app disconnect ++ * ++ * Only one slot may be registered at any one time. If a second slot is ++ * registered, the first slot is forgotten ++ * @param receiver the QObject where the slot is located ++ * @param member the slot to call. Set up member using the SLOT() macro. ++ */ ++ void registerDisconnectSlot( QObject * receiver, const char * member ); ++ ++ /** ++ * Forget any disconnect slot previously registered ++ */ ++ void forgetDisconnectSlot(); ++ ++ /** ++ * Has any slot been registered to be called on disconnect? ++ */ ++ bool isDisconnectSlotRegistered() const; ++ ++ /// existing API ++ ++ static ConnectionManager* self(); ++ virtual ~ConnectionManager(); ++ NetworkStatus::Status status(); ++signals: ++ // signal that the network for a hostname is up/down ++ void statusChanged( NetworkStatus::Status status ); ++private: ++ // sets up internal state ++ void initialise(); ++ // reread the desktop status from the daemon and update internal state ++ ConnectionManager( QObject *parent, const char * name ); ++ ConnectionManagerPrivate * d; ++ static ConnectionManager * s_self; ++}; ++ ++#endif ++ +Index: networkstatus/.svn/text-base/connectionmanager_p.cpp.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/connectionmanager_p.cpp.svn-base +@@ -0,0 +1,13 @@ ++#include "connectionmanager_p.h" ++ ++ConnectionManagerPrivate::ConnectionManagerPrivate(QObject * parent, const char * name ) : QObject( parent, name ), service( 0 ), connectPolicy( ConnectionManager::Managed ), ++ disconnectPolicy( ConnectionManager::Managed ), connectReceiver( 0 ), connectSlot( 0 ), ++ disconnectReceiver( 0 ), disconnectSlot( 0 ) ++{ ++} ++ ++ConnectionManagerPrivate::~ConnectionManagerPrivate() ++{ ++} ++ ++#include "connectionmanager_p.moc" +Index: networkstatus/.svn/text-base/connectionmanager_p.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/connectionmanager_p.h.svn-base +@@ -0,0 +1,55 @@ ++/* This file is part of the KDE project ++ Copyright (C) 2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef CONNECTIONMANAGERPRIVATE_H ++#define CONNECTIONMANAGERPRIVATE_H ++ ++#include ++ ++#include "connectionmanager.h" ++#include "networkstatuscommon.h" ++#include "networkstatusiface_stub.h" ++ ++ ++// ConnectionManager's private parts ++class ConnectionManagerPrivate : public QObject ++{ ++Q_OBJECT ++ friend class ConnectionManager; ++public: ++ ConnectionManagerPrivate( QObject * parent = 0, const char * name = 0); ++ ~ConnectionManagerPrivate(); ++ // this holds the currently active state ++ NetworkStatus::Status status; ++ NetworkStatusIface_stub * service; ++ ConnectionManager::ConnectionPolicy connectPolicy; ++ ConnectionManager::ConnectionPolicy disconnectPolicy; ++ QObject * connectReceiver; ++ const char * connectSlot; ++ QObject * disconnectReceiver; ++ const char * disconnectSlot; ++signals: ++ void connected(); ++ void disconnected(); ++}; ++ ++#endif +Index: networkstatus/.svn/text-base/Makefile.am.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/Makefile.am.svn-base +@@ -0,0 +1,45 @@ ++#SUBDIRS = networkstatustray ++ ++METASOURCES = AUTO ++ ++INCLUDES = -I$(top_srcdir)/kded -I$(top_srcdir) $(all_includes) ++ ++kde_module_LTLIBRARIES = kded_networkstatus.la ++ ++kded_networkstatus_la_SOURCES = networkstatus.cpp networkstatus.skel \ ++ network.cpp ++kded_networkstatus_la_LIBADD = $(LIB_KDECORE) $(LIB_KIO) ./libnetworkstatus.la ++kded_networkstatus_la_LDFLAGS = $(all_libraries) -module -avoid-version ++ ++servicesdir = $(kde_servicesdir)/kded ++ ++services_DATA = networkstatus.desktop ++ ++lib_LTLIBRARIES = libnetworkstatus.la libconnectionmanager.la ++ ++libnetworkstatus_la_LIBADD = $(LIB_KDECORE) ++libnetworkstatus_la_LDFLAGS = $(all_libraries) ++libnetworkstatus_la_SOURCES = networkstatuscommon.cpp ++ ++libconnectionmanager_la_LIBADD = $(LIB_KDECORE) libnetworkstatus.la ++libconnectionmanager_la_LDFLAGS = $(all_libraries) ++libconnectionmanager_la_SOURCES = connectionmanager.cpp connectionmanager_p.cpp networkstatusindicator.cpp connectionmanager.skel networkstatusiface.stub ++ ++noinst_PROGRAMS = networkstatustestservice networkstatustestclient managedconnectiontestclient ++ ++networkstatustestservice_LDFLAGS = $(all_libraries) ++networkstatustestservice_LDADD = $(LIB_KFILE) libnetworkstatus.la ++networkstatustestservice_SOURCES = testservice.cpp testserviceview.ui networkstatusiface.stub ++ ++networkstatustestclient_LDFLAGS = $(all_libraries) ++networkstatustestclient_LDADD = $(LIB_KFILE) libnetworkstatus.la libconnectionmanager.la ++networkstatustestclient_SOURCES = testclient.cpp testclientview.ui ++ ++managedconnectiontestclient_LDFLAGS = $(all_libraries) ++managedconnectiontestclient_LDADD = $(LIB_KFILE) libnetworkstatus.la libconnectionmanager.la ++managedconnectiontestclient_SOURCES = testclient2.cpp testclientview.ui ++ ++noinst_HEADERS = network.h testservice.h testclient.h ++ ++include_HEADERS = networkstatuscommon.h connectionmanager.h networkstatusindicator.h \ ++ networkstatusiface.h +Index: networkstatus/.svn/text-base/network.cpp.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/network.cpp.svn-base +@@ -0,0 +1,62 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include ++ ++#include "network.h" ++ ++Network::Network( NetworkStatus::Properties properties ) ++ : m_name( properties.name ), m_status( properties.status ), m_service( properties.service ) ++{ ++} ++ ++void Network::setStatus( NetworkStatus::Status status ) ++{ ++ m_status = status; ++} ++ ++NetworkStatus::Status Network::status() ++{ ++ return m_status; ++} ++ ++void Network::setName( const QString& name ) ++{ ++ m_name = name; ++} ++ ++QString Network::name() ++{ ++ return m_name; ++} ++ ++QString Network::service() ++{ ++ return m_service; ++} ++ ++void Network::setService( const QString& service ) ++{ ++ m_service = service; ++} ++ ++// vim: sw=4 ts=4 +Index: networkstatus/.svn/text-base/network.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/network.h.svn-base +@@ -0,0 +1,60 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef NETWORKSTATUS_NETWORK_H ++#define NETWORKSTATUS_NETWORK_H ++ ++#include "networkstatuscommon.h" ++ ++class Network ++{ ++public: ++ Network( const QString name ); ++ Network( NetworkStatus::Properties properties ); ++ /** ++ * Update the status of this network ++ */ ++ void setStatus( NetworkStatus::Status status ); ++ /** ++ * The connection status of this network ++ */ ++ NetworkStatus::Status status(); ++ /** ++ * The name of this network ++ */ ++ QString name(); ++ void setName( const QString& name ); ++ /** ++ * Returns the service owning this network ++ */ ++ QString service(); ++ void setService( const QString& service ); ++ ++private: ++ Network( const Network & ); ++ QString m_name; ++ NetworkStatus::Status m_status; ++ QString m_service; ++}; ++ ++#endif ++// vim: sw=4 ts=4 +Index: networkstatus/.svn/text-base/networkstatuscommon.cpp.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/networkstatuscommon.cpp.svn-base +@@ -0,0 +1,76 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include "networkstatuscommon.h" ++ ++QDataStream & operator<< ( QDataStream & s, const NetworkStatus::Properties p ) ++{ ++ s << p.name; ++ s << (int)p.status; ++ s << p.service; ++ return s; ++} ++ ++QDataStream & operator>> ( QDataStream & s, NetworkStatus::Properties &p ) ++{ ++ int status; ++ s >> p.name; ++ s >> status; ++ p.status = (NetworkStatus::Status)status; ++ s >> p.service; ++ return s; ++} ++ ++namespace NetworkStatus ++{ ++ QString toString( NetworkStatus::Status st ) ++ { ++ QString str; ++ switch ( st ) { ++ case NetworkStatus::NoNetworks: ++ str = "NoNetworks"; ++ break; ++ case NetworkStatus::Unreachable: ++ str = "Unreachable"; ++ break; ++ case NetworkStatus::OfflineDisconnected: ++ str = "OfflineDisconnected"; ++ break; ++ case NetworkStatus::OfflineFailed: ++ str = "OfflineFailed"; ++ break; ++ case NetworkStatus::ShuttingDown: ++ str = "ShuttingDown"; ++ break; ++ case NetworkStatus::Offline: ++ str = "Offline"; ++ break; ++ case NetworkStatus::Establishing: ++ str = "Establishing"; ++ break; ++ case NetworkStatus::Online: ++ str = "Online"; ++ break; ++ } ++ return str; ++ } ++} // namespace NetworkStatus +Index: networkstatus/.svn/text-base/networkstatuscommon.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/networkstatuscommon.h.svn-base +@@ -0,0 +1,52 @@ ++/* This file is part of kdepim ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef NETWORKSTATUS_COMMON_H ++#define NETWORKSTATUS_COMMON_H ++ ++#include ++ ++namespace NetworkStatus ++{ ++ enum Status { NoNetworks = 1, Unreachable, OfflineDisconnected, OfflineFailed, ShuttingDown, Offline, Establishing, Online }; ++ enum RequestResult { RequestAccepted = 1, Connected, UserRefused, Unavailable }; ++ enum UnusedDemandPolicy { All, User, None, Permanent }; ++ ++ // BINARY COMPATIBILITY ALERT BEGIN !!!! ++ struct Properties ++ { ++ QString name; ++ Status status; ++ UnusedDemandPolicy unused1; ++ QCString service; ++ bool unused3; ++ QStringList unused4; ++ }; ++ // BINARY COMPATIBILITY ALERT END !!!! ++ ++ QString toString( Status st ); ++} ++ ++QDataStream & operator>> ( QDataStream & s, NetworkStatus::Properties &p ); ++QDataStream & operator<< ( QDataStream & s, const NetworkStatus::Properties p ); ++ ++#endif +Index: networkstatus/.svn/text-base/networkstatus.cpp.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/networkstatus.cpp.svn-base +@@ -0,0 +1,162 @@ ++/* This file is part of kdepim ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include "networkstatus.h" ++ ++#include ++ ++#include ++#include ++#include ++ ++#include "network.h" ++#include ++ ++extern "C" { ++ KDE_EXPORT KDEDModule* create_networkstatus( const QCString& obj ) ++ { ++ return new NetworkStatusModule( obj ); ++ } ++} ++ ++// INTERNALLY USED STRUCTS AND TYPEDEFS ++ ++typedef QMap< QString, Network * > NetworkMap; ++ ++class NetworkStatusModule::Private ++{ ++public: ++ NetworkMap networks; ++ NetworkStatus::Status status; ++}; ++ ++// CTORS/DTORS ++ ++NetworkStatusModule::NetworkStatusModule( const QCString & obj ) : KDEDModule( obj ), d( new Private ) ++{ ++ d->status = NetworkStatus::NoNetworks; ++ connect( kapp->dcopClient(), SIGNAL( applicationRemoved( const QCString& ) ) , this, SLOT( unregisteredFromDCOP( const QCString& ) ) ); ++ // connect( kapp->dcopClient(), SIGNAL( applicationRegistered( const QCString& ) ) , this, SLOT( registeredToDCOP( const QCString& ) ) ); ++} ++ ++NetworkStatusModule::~NetworkStatusModule() ++{ ++ NetworkMap::ConstIterator it; ++ const NetworkMap::ConstIterator end = d->networks.end(); ++ ++ for ( it = d->networks.begin(); it != end; ++it ) { ++ delete ( *it ); ++ } ++ ++ delete d; ++} ++ ++// CLIENT INTERFACE ++ ++QStringList NetworkStatusModule::networks() ++{ ++ kdDebug() << k_funcinfo << " contains " << d->networks.count() << " networks" << endl; ++ return d->networks.keys(); ++} ++ ++int NetworkStatusModule::status() ++{ ++ kdDebug() << k_funcinfo << " status: " << (int)d->status << endl; ++ return (int)d->status; ++} ++ ++//protected: ++ ++void NetworkStatusModule::updateStatus() ++{ ++ NetworkStatus::Status bestStatus = NetworkStatus::NoNetworks; ++ const NetworkStatus::Status oldStatus = d->status; ++ ++ NetworkMap::ConstIterator it; ++ const NetworkMap::ConstIterator end = d->networks.end(); ++ for ( it = d->networks.begin(); it != end; ++it ) { ++ if ( ( *it )->status() > bestStatus ) ++ bestStatus = ( *it )->status(); ++ } ++ d->status = bestStatus; ++ ++ if ( oldStatus != d->status ) { ++ statusChange( (int)d->status ); ++ } ++} ++ ++void NetworkStatusModule::unregisteredFromDCOP( const QCString & appId ) ++{ ++ // unregister and delete any networks owned by a service that has just unregistered ++ NetworkMap::Iterator it; ++ const NetworkMap::Iterator end = d->networks.end(); ++ for ( it = d->networks.begin(); it != end; ++it ) ++ { ++ if ( ( *it )->service() == QString( appId ) ) ++ { ++ NetworkMap::Iterator toRemove = it; ++ Network * removedNet = *toRemove; ++ d->networks.remove( toRemove ); ++ updateStatus(); ++ delete removedNet; ++ } ++ } ++} ++ ++// SERVICE INTERFACE // ++void NetworkStatusModule::setNetworkStatus( const QString & networkName, int st ) ++{ ++ kdDebug() << k_funcinfo << networkName << ", " << st << endl; ++ NetworkStatus::Status changedStatus = (NetworkStatus::Status)st; ++ Network * net = 0; ++ NetworkMap::Iterator it = d->networks.find( networkName ); ++ if ( it != d->networks.end() ) { ++ net = (*it); ++ net->setStatus( changedStatus ); ++ updateStatus(); ++ } ++ else ++ kdDebug() << " No network named '" << networkName << "' found." << endl; ++} ++ ++void NetworkStatusModule::registerNetwork( const NetworkStatus::Properties properties ) ++{ ++ kdDebug() << k_funcinfo << properties.name << ", with status " << properties.status << endl; ++ ++ d->networks.insert( properties.name, new Network( properties ) ); ++ updateStatus(); ++} ++ ++void NetworkStatusModule::unregisterNetwork( const QString & networkName ) ++{ ++ kdDebug() << k_funcinfo << networkName << endl; ++ ++ NetworkMap::Iterator it = d->networks.find( networkName ); ++ if ( it != d->networks.end() ) { ++ delete *it; ++ d->networks.remove( it ); ++ } ++ updateStatus(); ++} ++ ++#include "networkstatus.moc" ++// vim: set noet sw=4 ts=4: +Index: networkstatus/.svn/text-base/networkstatus.desktop.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/networkstatus.desktop.svn-base +@@ -0,0 +1,98 @@ ++[Desktop Entry] ++Encoding=UTF-8 ++Name=Network Status Daemon ++Name[af]=Netwerk status bediener ++Name[ar]=مراقب القرص و التنفيذ لحالة الشبكة ++Name[bg]=Демон за състояние на мрежата ++Name[ca]=Dimoni de l'estat de la xarxa ++Name[cs]=Démon stavu sítě ++Name[da]=Netværkstatusdæmon ++Name[de]=Überwachung des Netzwerkstatus ++Name[el]=Δαίμονας κατάστασης δικτύου ++Name[es]=Daemon de estado de la red ++Name[et]=Võrguoleku deemon ++Name[eu]=Sarearen egoera deabrua ++Name[fa]=شبح وضعیت شبکه ++Name[fi]=Verkkotilan tarkkailija ++Name[fr]=Suivi de l'état du réseau ++Name[fy]=Netwurktastândaemon ++Name[gl]=Daemon do Estado da Rede ++Name[hu]=Hálózati állapotjelző szolgáltatás ++Name[is]=Netstöðupúki ++Name[it]=Demone dello stato della rete ++Name[ja]=ネットワークステータスデーモン ++Name[kk]=Желі күйінің қызметі ++Name[km]=ដេមិន​ស្ថានភាព​បណ្ដាញ ++Name[lt]=Tinklo statuso tarnyba ++Name[mk]=Даемон за мрежен статус ++Name[ms]=Daemon Berstatus Rangkaian ++Name[nb]=Statusnisse for nettverket ++Name[nds]=Nettwarkstatus-Dämoon ++Name[ne]=सञ्जाल स्थिति डेइमन ++Name[nl]=Netwerkstatusdaemon ++Name[nn]=Statusnisse for nettverket ++Name[pl]=Usługa stanu sieci ++Name[pt]=Servidor de Estado de Rede ++Name[pt_BR]=Daemon de Status da Rede ++Name[ru]=Служба состояния сети ++Name[sk]=Daemon stavu siete ++Name[sl]=Demon za omrežno stanje ++Name[sr]=Демон за статус мреже ++Name[sr@Latn]=Demon za status mreže ++Name[sv]=Nätverksstatusdemon ++Name[ta]=வலைப்பின்னல் நிலை டெமான் ++Name[tr]=Ağ Durum İzleyici ++Name[uk]=Демон стану мережі ++Name[zh_CN]=网络状态守护程序 ++Name[zh_TW]=網路狀態守護程式 ++Comment=Tracks status of network interfaces and provides notification to applications using the network. ++Comment[af]=Hou tred van die status van netwerk intervlakke en verskaf kennisgewings na programme wat die netwerk gebruik. ++Comment[bg]=Следене на състоянието на мрежата и предаване на информацията на програмите, които имат нужда ++Comment[ca]=Controla l'estat de les interfícies de xarxa i proporciona notificacions a les aplicacions que usen la xarxa. ++Comment[cs]=Zjiš'tuje stav síťových rozhraní a upozorňuje v případě přístupu aplikací k síti. ++Comment[da]=Sporer status af netværksgrænseflade og sørger for meddelelser til programmer der bruger netværket. ++Comment[de]=Überprüft den Netzwerk-Status und benachrichtigt anfragende Anwendungen ++Comment[el]=Παρακολουθεί την κατάσταση του δικτύου και παρέχει ειδοποιήσεις σε εφαρμογές που χρησιμοποιούν το δίκτυο. ++Comment[es]=Sigue la pista de las interfaces de red y proporciona notificaciones a las aplicaciones que están usando la red. ++Comment[et]=Jälgib võrguliideste olekut ja annab sellest võrgu vahendusel rakendustele teada. ++Comment[eu]=Sare interfazeen egoera jarraitzen du eta sarea darabilten aplikazioei jakinarazten die. ++Comment[fa]=وضعیت واسطهای شبکه را شیار داده و با استفاده از شبکه، برای کاربردها اخطار فراهم می‌کند. ++Comment[fi]=Tarkkailee verkkoliitäntöjen tilaa ja varoittaa verkkoa käyttäviä sovelluksia. ++Comment[fr]=Surveille l'état des interfaces réseaux et fournit des notifications aux applications qui utilisent le réseau ++Comment[fy]=Hâldt de tastân by fan de Netwurkynterfaces en hâldt dêr de tapassings fan op de hichte. ++Comment[gl]=Monitoriza o estado das interfaces de rede e fornece notificacións ás aplicacións que usen a rede. ++Comment[hu]=Figyeli a hálózati csatolók állapotát és értesítési lehetőséget biztosít hálózati alkalmazások számára. ++Comment[is]=Fylgist með stöðu netkorta og sendir tilkynningar til forrita sem nota netið. ++Comment[it]=Controlla lo stato delle interfacce di rete e fornisce notifiche alle applicazioni che usano al rete. ++Comment[ja]=ネットワークインターフェースの状態を追跡し、ネットワークを用いるアプリケーションに通知します ++Comment[kk]=Желі интерфейстерінің күйін бақылап, желіні қолданатын бағдарламаларын құлақтандыру қызметі. ++Comment[km]=តាមដាន​ស្ថានភាព​របស់​ចំណុច​ប្រទាក់​បណ្ដាញ ព្រម​ទាំង​ផ្ដល់​នូវ​ការ​ជូនដំណឹង​ទៅ​កម្មវិធី ដែល​ប្រើ​បណ្ដាញ ។ ++Comment[lt]=Seka tinklo sąsajų būseną ir informuoja apie jas programas, naudojančias tinklą ++Comment[mk]=Го следи статусот на мрежните интерфејси и дава известувања на апликациите што ја користат мрежата. ++Comment[ms]=Menjejak status antara muka rangkaian dan memberitahu aplikasi yang menggunakan rangkaian tersebut. ++Comment[nb]=Overvåker status for nettverksgrensesnitt og varsler programmer som bruker nettverket. ++Comment[nds]=Överwacht den Tostand vun Nettwark-Koppelsteden un sendt Narichten na Programmen, de dat Nettwark bruukt. ++Comment[ne]=सञ्जाल इन्टरफेसको स्थिति ट्र्याक गर्दछ र सञ्जाल प्रयोग गरेर अनुप्रयोगमा जानकारी उपलब्ध गराउछ । ++Comment[nl]=Houdt de status bij van de netwerkinterfaces en houdt daar de toepassingen van op de hoogte. ++Comment[nn]=Overvakar status for nettverksgrensesnitt og varslar program som brukar nettverket. ++Comment[pl]=Śledzi stan interfejsów sieciowych i powiadamia programy używające sieci. ++Comment[pt]=Vigia o estado das interfaces de rede e avisa as aplicações que utilizam a rede. ++Comment[pt_BR]=Controla o status das interfaces de rede e fornece notificações para aplicativos utilizando a rede. ++Comment[ru]=Служба отслеживания состояния сетевых интерфейсов и обращения приложений к сети. ++Comment[sk]=Sleduje stav sieťových rozhraní a poskytuje upozornenia aplikáciám používajúcim sieť. ++Comment[sl]=Sledi stanju omrežnim vmesnikom in omogoča obvestila programom, ki uporabljajo omrežje ++Comment[sr]=Прати статус мрежних интерфејса и пружа обавештења програмима који користе мрежу. ++Comment[sr@Latn]=Prati status mrežnih interfejsa i pruža obaveštenja programima koji koriste mrežu. ++Comment[sv]=Bevakar status för nätverksgränssnitt och tillhandahåller underrättelser till program som använder nätverket. ++Comment[ta]=வலைப்பின்னலைப் பயன்படுத்தி வலைப்பின்னல் இடைமுகங்களின் நிலையை கண்காணிக்கிறது மற்றும் பயன்பாடுகளுக்கு அறிவிப்பை வழங்குகிறது. ++Comment[uk]=Слідкує за станом інтерфейсів мережі і сповіщає програми, які користуються мережею. ++Comment[zh_CN]=跟踪网卡的状态并为应用程序提供使用网络的通知。 ++Comment[zh_TW]=追蹤網路介面的狀態,並提供使用網路的應用程式的通知。 ++Type=Service ++ServiceTypes=KDEDModule ++X-KDE-ModuleType=Library ++X-KDE-Library=networkstatus ++X-KDE-FactoryName=networkstatus ++X-KDE-Kded-autoload=true ++X-KDE-Kded-load-on-demand=true ++ +Index: networkstatus/.svn/text-base/networkstatus.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/networkstatus.h.svn-base +@@ -0,0 +1,66 @@ ++/* This file is part of kdepim ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef KDED_NETWORKSTATUS_H ++#define KDED_NETWORKSTATUS_H ++ ++#include ++ ++#include "networkstatuscommon.h" ++#include "network.h" ++ ++class NetworkStatusModule : virtual public KDEDModule ++{ ++Q_OBJECT ++K_DCOP ++public: ++ NetworkStatusModule( const QCString& obj ); ++ ~NetworkStatusModule(); ++k_dcop: ++ // Client interface ++ QStringList networks(); ++ int status(); ++ // Service interface ++ void setNetworkStatus( const QString & networkName, int status ); ++ void registerNetwork( NetworkStatus::Properties properties ); ++ void unregisterNetwork( const QString & networkName ); ++k_dcop_signals: ++ /** ++ * A status change occurred affecting the overall connectivity ++ * @param status The new status ++ */ ++ void statusChange( int status ); ++protected slots: ++ //void registeredToDCOP( const QCString& appId ); ++ void unregisteredFromDCOP( const QCString& appId ); ++ ++protected: ++ // recalculate cached status ++ void updateStatus(); ++ ++private: ++ class Private; ++ Private *d; ++}; ++ ++#endif ++// vim: sw=4 ts=4 +Index: networkstatus/.svn/text-base/networkstatusiface.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/networkstatusiface.h.svn-base +@@ -0,0 +1,50 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef KDED_NETWORKSTATUSIFACE_H ++#define KDED_NETWORKSTATUSIFACE_H ++ ++#include ++#include ++ ++#include "networkstatuscommon.h" ++ ++class NetworkStatusIface : virtual public DCOPObject ++{ ++K_DCOP ++k_dcop: ++ // Client interface ++ virtual QStringList networks() = 0; ++ virtual int status() = 0; ++ // Service interface ++ virtual void setNetworkStatus( const QString & networkName, int status ) = 0; ++ virtual void registerNetwork( NetworkStatus::Properties properties ) = 0; ++ virtual void unregisterNetwork( const QString & networkName ) = 0 ; ++k_dcop_signals: ++ /** ++ * A status change occurred affecting the overall connectivity ++ * @param status The new status ++ */ ++ virtual void statusChange( int status ) = 0; ++}; ++#endif ++// vim: sw=4 ts=4 +Index: networkstatus/.svn/text-base/networkstatusindicator.cpp.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/networkstatusindicator.cpp.svn-base +@@ -0,0 +1,64 @@ ++/* This file is part of the KDE project ++ Copyright (C) 2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include ++#include ++#include ++#include ++ ++#include "connectionmanager.h" ++ ++#include "networkstatusindicator.h" ++ ++StatusBarNetworkStatusIndicator::StatusBarNetworkStatusIndicator( ++ QWidget * parent, const char * name ) : QHBox( parent, name )/*, d( new StatusBarNetworkStatusIndicatorPrivate )*/ ++{ ++ setMargin( 2 ); ++ setSpacing( 1 ); ++ QLabel * label = new QLabel( this, "offlinemodelabel" ); ++ label->setPixmap( SmallIcon("connect_no") ); ++ QToolTip::add( label, i18n( "The desktop is offline" ) ); ++ ++ connect( ConnectionManager::self(), SIGNAL( statusChanged( NetworkStatus::Status ) ), ++ SLOT( networkStatusChanged( NetworkStatus::Status) ) ); ++ ++} ++ ++void StatusBarNetworkStatusIndicator::init() ++{ ++ networkStatusChanged( ConnectionManager::self()->status()); ++} ++ ++StatusBarNetworkStatusIndicator::~StatusBarNetworkStatusIndicator() ++{ ++} ++ ++void StatusBarNetworkStatusIndicator::networkStatusChanged( NetworkStatus::Status status ) ++{ ++ if ( status == NetworkStatus::Online || status == NetworkStatus::NoNetworks ) { ++ hide(); ++ } else { ++ show(); ++ } ++} ++ ++#include "networkstatusindicator.moc" +Index: networkstatus/.svn/text-base/networkstatusindicator.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/networkstatusindicator.h.svn-base +@@ -0,0 +1,42 @@ ++/* This file is part of the KDE project ++ Copyright (C) 2007 Will Stephenson ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Library General Public ++ License version 2 as published by the Free Software Foundation. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public License ++ along with this library. If not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this library ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef KDE_NETWORKSTATUS_INDICATOR_H ++#define KDE_NETWORKSTATUS_INDICATOR_H ++ ++#include ++#include ++#include ++ ++class StatusBarNetworkStatusIndicator : public QHBox ++{ ++Q_OBJECT ++public: ++ StatusBarNetworkStatusIndicator( QWidget * parent, const char * name ); ++ virtual ~StatusBarNetworkStatusIndicator(); ++ void init(); ++protected slots: ++ void networkStatusChanged( NetworkStatus::Status status ); ++}; ++ ++#endif ++ +Index: networkstatus/.svn/text-base/networkstatus.kdevelop.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/networkstatus.kdevelop.svn-base +@@ -0,0 +1,108 @@ ++ ++ ++ ++ Will Stephenson ++ wstephenson@suse.de ++ $VERSION$ ++ KDevKDEAutoProject ++ C++ ++ ++ Qt ++ KDE ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ false ++ false ++ ++ ++ *.o,*.lo,CVS ++ false ++ ++ ++ ++ ++ ada ++ ada_bugs_gcc ++ bash ++ bash_bugs ++ clanlib ++ fortran_bugs_gcc ++ gnome1 ++ gnustep ++ gtk ++ gtk_bugs ++ haskell ++ haskell_bugs_ghc ++ java_bugs_gcc ++ java_bugs_sun ++ opengl ++ pascal_bugs_fp ++ php ++ php_bugs ++ perl ++ perl_bugs ++ python ++ python_bugs ++ ruby ++ ruby_bugs ++ sdl ++ stl ++ sw ++ w3c-dom-level2-html ++ w3c-svg ++ w3c-uaag10 ++ wxwidgets_bugs ++ ++ ++ qmake User Guide ++ ++ ++ ++ ++ libtool ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ executable ++ ++ ++ kded_networkstatus.la ++ ++ ++ ++ ++ ++ true ++ true ++ true ++ false ++ true ++ true ++ true ++ 250 ++ 400 ++ 250 ++ ++ ++ +Index: networkstatus/.svn/text-base/README.statetransition.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/README.statetransition.svn-base +@@ -0,0 +1,29 @@ ++This table defines the actions to be taken on state transition. ++ ++TODO: potentially add extra states OnlineReading and OnlineWriting ++ ++ NEW ++ |Offline | Online | ++---+---+----------------+---------------+ ++ | | |N|set online | ++ | | |L|reload | ++ | O | |C|resources | ++ | F | +---------------+ ++ | F | |L|set online | ++O | | |C|reload res. | ++L | | | |write res. | ++D +---+----------------+---------------+ ++ | |N|set offline | | ++ | |C| | | ++ | | | | | ++ | O +---------------+| | ++ | N |U|set offline | | ++ | |W|write locally | | ++ | |C|(subject to | | ++ | | | save policy)| | ++---+---+----------------+---------------+ ++LC = Local changes exist ++NLC = No local changes exist ++UWC = Unsaved changes exist ++NC = no changes exist ++ +Index: networkstatus/.svn/text-base/testclient2.cpp.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/testclient2.cpp.svn-base +@@ -0,0 +1,222 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2007 Will Stephenson ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License version 2 ++ as published by the Free Software Foundation. ++ ++ This program 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 General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this program ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include ++#include ++#include ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++#include ++ ++#include "testclientview.h" ++#include "testclient2.h" ++ ++TestClient::TestClient() ++ : KMainWindow( 0, "ktestnetworkstatus" ), ++ m_layout( new QVBox( 0, "layout" ) ), ++ m_status( AppDisconnected ) ++{ ++ m_view = new TestClientView( this ); ++ new StatusBarNetworkStatusIndicator( m_view, "statusindicator" ); ++ // tell the KMainWindow that this is indeed the main widget ++ setCentralWidget(m_view); ++ ++ networkStatusChanged( ConnectionManager::self()->status() ); ++ appDisconnected(); ++ ++ connect( ConnectionManager::self(), SIGNAL( statusChanged( NetworkStatus::Status ) ), SLOT( networkStatusChanged( NetworkStatus::Status ) ) ); ++ ConnectionManager::self()->registerConnectSlot( this, SLOT( doConnect() ) ); ++ ConnectionManager::self()->registerDisconnectSlot( this, SLOT( doDisconnect() ) ); ++ ++ connect( m_view->connectButton, SIGNAL( clicked() ), SLOT( connectButtonClicked() ) ); ++} ++ ++TestClient::~TestClient() ++{ ++} ++ ++void TestClient::networkStatusChanged( NetworkStatus::Status status ) ++{ ++ kdDebug() << k_funcinfo << endl; ++ kdDebug() << "Networking is now: " << NetworkStatus::toString( status ) << " (" << status << ")" << endl; ++ m_view->netStatusLabel->setText( NetworkStatus::toString( status ) ); ++ m_view->netStatusLabel->setPaletteBackgroundColor( toQColor( status ) ); ++} ++ ++void TestClient::doConnect() ++{ ++ Q_ASSERT( ConnectionManager::self()->status() == NetworkStatus::Online ); ++ if ( m_status != AppConnected ) { ++ appIsConnected(); ++ } ++} ++ ++void TestClient::doDisconnect() ++{ ++ Q_ASSERT( ConnectionManager::self()->status() != NetworkStatus::Online ); ++ if ( m_status == AppConnected ) { ++ appDisconnected(); ++ } ++} ++ ++void TestClient::connectButtonClicked() ++{ ++ kdDebug() << k_funcinfo << endl; ++ if ( m_status == AppDisconnected ) { ++ switch ( ConnectionManager::self()->status() ) ++ { ++ case NetworkStatus::NoNetworks: ++ case NetworkStatus::Online: ++ appIsConnected(); ++ break; ++ default: ++ appWaiting(); ++ break; ++ } ++ } ++ else if ( m_status == AppConnected || m_status == AppWaitingForConnect ) { ++ appDisconnected(); ++ } ++} ++ ++void TestClient::appWaiting() ++{ ++ kdDebug() << k_funcinfo << endl; ++ //m_status = AppWaitingForConnect; ++ m_view->appStatusLabel->setText( "Waiting" ); ++} ++ ++void TestClient::appIsConnected() ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->connectButton->setEnabled( true ); ++ m_view->connectButton->setText( "Disconnect" ); ++ m_view->appStatusLabel->setText( "Connected" ); ++ m_status = AppConnected; ++} ++ ++void TestClient::appEstablishing() ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->netStatusLabel->setText( "Establishing" ); ++ m_view->connectButton->setEnabled( false ); ++} ++ ++void TestClient::appDisestablishing( ) ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->connectButton->setEnabled( false ); ++ m_view->appStatusLabel->setText( "Disconnected" ); ++} ++ ++void TestClient::appDisconnected( ) ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->connectButton->setEnabled( true ); ++ m_view->connectButton->setText( "Start Connect" ); ++ m_view->appStatusLabel->setText( "Disconnected" ); ++ m_status = AppDisconnected; ++} ++ ++QColor TestClient::toQColor( NetworkStatus::Status st ) ++{ ++ QColor col; ++ switch ( st ) { ++ case NetworkStatus::NoNetworks: ++ col = Qt::darkGray; ++ break; ++ case NetworkStatus::Unreachable: ++ col = Qt::darkMagenta; ++ break; ++ case NetworkStatus::OfflineDisconnected: ++ col = Qt::blue; ++ break; ++ case NetworkStatus::OfflineFailed: ++ col = Qt::darkRed; ++ break; ++ case NetworkStatus::ShuttingDown: ++ col = Qt::darkYellow; ++ break; ++ case NetworkStatus::Offline: ++ col = Qt::blue; ++ break; ++ case NetworkStatus::Establishing: ++ col = Qt::yellow; ++ break; ++ case NetworkStatus::Online: ++ col = Qt::green; ++ break; ++ } ++ return col; ++} ++//main ++static const char description[] = ++ I18N_NOOP("Test Client for Network Status kded module"); ++ ++static const char version[] = "v0.1"; ++ ++static KCmdLineOptions options[] = ++{ ++ KCmdLineLastOption ++}; ++ ++int main(int argc, char **argv) ++{ ++ KAboutData about("KNetworkStatusTestClient", I18N_NOOP("knetworkstatustestclient"), version, description, KAboutData::License_GPL, "(C) 2007 Will Stephenson", 0, 0, "wstephenson@kde.org"); ++ about.addAuthor( "Will Stephenson", 0, "wstephenson@kde.org" ); ++ KCmdLineArgs::init(argc, argv, &about); ++ KCmdLineArgs::addCmdLineOptions(options); ++ KApplication app; ++ ++ // register ourselves as a dcop client ++ app.dcopClient()->registerAs(app.name(), false); ++ ++ KCmdLineArgs *args = KCmdLineArgs::parsedArgs(); ++ if (args->count() == 0) ++ { ++ TestClient *widget = new TestClient; ++ widget->show(); ++ } ++ else ++ { ++ int i = 0; ++ for (; i < args->count(); i++) ++ { ++ TestClient *widget = new TestClient; ++ widget->show(); ++ } ++ } ++ args->clear(); ++ ++ return app.exec(); ++} ++ ++#include "testclient2.moc" ++ +Index: networkstatus/.svn/text-base/testclient2.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/testclient2.h.svn-base +@@ -0,0 +1,82 @@ ++/* This file is part of kdepim. ++ ++ Copyright (C) 2007 Will Stephenson ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 2 of the License, or ++ (at your option) any later version. ++ ++ This program 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 General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this program ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef KTESTNETWORKSTATUS_H ++#define KTESTNETWORKSTATUS_H ++ ++#ifdef HAVE_CONFIG_H ++#include ++#endif ++ ++#include ++#include ++#include ++#include ++ ++#include "networkstatusiface_stub.h" ++ ++class TestClientView; ++ ++/** ++ * Test client that uses a ConnectionManager to change its state ++ * ++ * @short Main window class ++ * @author Will Stephenson ++ * @version 0.1 ++ */ ++class TestClient : public KMainWindow ++{ ++Q_OBJECT ++public: ++ enum AppStatus{ AppDisconnected, AppWaitingForConnect, AppConnected }; ++ /** ++ * Default Constructor ++ */ ++ TestClient(); ++ ++ /** ++ * Default Destructor ++ */ ++ virtual ~TestClient(); ++ ++private slots: ++ void networkStatusChanged( NetworkStatus::Status status ); ++ void connectButtonClicked(); ++ void doConnect(); ++ void doDisconnect(); ++private: ++ void appWaiting(); ++ void appEstablishing(); ++ void appIsConnected(); ++ void appDisestablishing(); ++ void appDisconnected(); ++ static QColor toQColor( NetworkStatus::Status ); ++private: ++ QHBox * m_layout; ++ NetworkStatusIface_stub *m_service; ++ TestClientView *m_view; ++ AppStatus m_status; // this represents the app's status not the network's status ++}; ++ ++#endif // KTESTNETWORKSTATUS_H ++ +Index: networkstatus/.svn/text-base/testclient.cpp.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/testclient.cpp.svn-base +@@ -0,0 +1,234 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2007 Will Stephenson ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License version 2 ++ as published by the Free Software Foundation. ++ ++ This program 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 General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this program ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include ++#include ++ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include "connectionmanager.h" ++#include "testclientview.h" ++#include "testclient.h" ++ ++TestClient::TestClient() ++ : KMainWindow( 0, "ktestnetworkstatus" ), ++ m_view(new TestClientView(this)), ++ m_status( AppDisconnected ) ++{ ++ // tell the KMainWindow that this is indeed the main widget ++ setCentralWidget(m_view); ++ ++ networkStatusChanged( ConnectionManager::self()->status() ); ++ appDisconnected(); ++ ++ connect( ConnectionManager::self(), SIGNAL( statusChanged( NetworkStatus::Status ) ), SLOT( networkStatusChanged( NetworkStatus::Status ) ) ); ++ ++ connect( m_view->connectButton, SIGNAL( toggled( bool ) ), SLOT( connectButtonToggled( bool ) ) ); ++} ++ ++TestClient::~TestClient() ++{ ++} ++ ++void TestClient::networkStatusChanged( NetworkStatus::Status status ) ++{ ++ kdDebug() << k_funcinfo << endl; ++//enum EnumStatus { NoNetworks = 1, Unreachable, OfflineDisconnected, OfflineFailed, ShuttingDown ++// , Offline, Establishing, Online }; ++ kdDebug() << "Networking is now: " << NetworkStatus::toString( status ) << " (" << status << ")" << endl; ++ m_view->netStatusLabel->setText( NetworkStatus::toString( status ) ); ++ m_view->netStatusLabel->setPaletteBackgroundColor( toQColor( status ) ); ++ switch ( status ) { ++ case NetworkStatus::NoNetworks: ++ break; ++ case NetworkStatus::Unreachable: ++ break; ++ case NetworkStatus::OfflineDisconnected: ++ break; ++ case NetworkStatus::OfflineFailed: ++ break; ++ case NetworkStatus::ShuttingDown: ++ if ( m_status == AppConnected ) { ++ appDisestablishing(); ++ } ++ break; ++ case NetworkStatus::Offline: ++ if ( m_status == AppConnected ) { ++ appDisconnected(); ++ } ++ break; ++ case NetworkStatus::Establishing: ++ if ( m_status == AppWaitingForConnect ) ++ appEstablishing(); ++ else if ( m_status == AppConnected ) ++ appDisconnected(); ++ break; ++ case NetworkStatus::Online: ++ if ( m_status == AppWaitingForConnect ) ++ appIsConnected(); ++ break; ++ default: ++ m_view->netStatusLabel->setText( "Unrecognised status code!" ); ++ } ++} ++ ++void TestClient::connectButtonToggled( bool on ) ++{ ++ kdDebug() << k_funcinfo << endl; ++ if ( on && m_status == AppDisconnected ) { ++ switch ( ConnectionManager::self()->status() ) ++ { ++ case NetworkStatus::NoNetworks: ++ case NetworkStatus::Online: ++ appIsConnected(); ++ break; ++ default: ++ appWaiting(); ++ break; ++ } ++ } ++ else if ( !on && m_status == AppConnected ) { ++ appDisconnected(); ++ } ++} ++ ++void TestClient::appWaiting() ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_status = AppWaitingForConnect; ++ m_view->appStatusLabel->setText( "Waiting" ); ++} ++ ++void TestClient::appIsConnected() ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->connectButton->setEnabled( true ); ++ m_view->connectButton->setText( "Disconnect" ); ++ m_view->appStatusLabel->setText( "Connected" ); ++ m_status = AppConnected; ++} ++ ++void TestClient::appEstablishing() ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->netStatusLabel->setText( "Establishing" ); ++ m_view->connectButton->setEnabled( false ); ++} ++ ++void TestClient::appDisestablishing( ) ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->connectButton->setEnabled( false ); ++ m_view->appStatusLabel->setText( "Disconnected" ); ++} ++ ++void TestClient::appDisconnected( ) ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->connectButton->setEnabled( true ); ++ m_view->connectButton->setText( "Start Connect" ); ++ m_view->appStatusLabel->setText( "Disconnected" ); ++ m_status = AppDisconnected; ++} ++ ++QColor TestClient::toQColor( NetworkStatus::Status st ) ++{ ++ QColor col; ++ switch ( st ) { ++ case NetworkStatus::NoNetworks: ++ col = Qt::darkGray; ++ break; ++ case NetworkStatus::Unreachable: ++ col = Qt::darkMagenta; ++ break; ++ case NetworkStatus::OfflineDisconnected: ++ col = Qt::blue; ++ break; ++ case NetworkStatus::OfflineFailed: ++ col = Qt::darkRed; ++ break; ++ case NetworkStatus::ShuttingDown: ++ col = Qt::darkYellow; ++ break; ++ case NetworkStatus::Offline: ++ col = Qt::blue; ++ break; ++ case NetworkStatus::Establishing: ++ col = Qt::yellow; ++ break; ++ case NetworkStatus::Online: ++ col = Qt::green; ++ break; ++ } ++ return col; ++} ++//main ++static const char description[] = ++ I18N_NOOP("Test Client for Network Status kded module"); ++ ++static const char version[] = "v0.1"; ++ ++static KCmdLineOptions options[] = ++{ ++ KCmdLineLastOption ++}; ++ ++int main(int argc, char **argv) ++{ ++ KAboutData about("KNetworkStatusTestClient", I18N_NOOP("knetworkstatustestclient"), version, description, KAboutData::License_GPL, "(C) 2007 Will Stephenson", 0, 0, "wstephenson@kde.org"); ++ about.addAuthor( "Will Stephenson", 0, "wstephenson@kde.org" ); ++ KCmdLineArgs::init(argc, argv, &about); ++ KCmdLineArgs::addCmdLineOptions(options); ++ KApplication app; ++ ++ // register ourselves as a dcop client ++ app.dcopClient()->registerAs(app.name(), false); ++ ++ KCmdLineArgs *args = KCmdLineArgs::parsedArgs(); ++ if (args->count() == 0) ++ { ++ TestClient *widget = new TestClient; ++ widget->show(); ++ } ++ else ++ { ++ int i = 0; ++ for (; i < args->count(); i++) ++ { ++ TestClient *widget = new TestClient; ++ widget->show(); ++ } ++ } ++ args->clear(); ++ ++ return app.exec(); ++} ++ ++#include "testclient.moc" ++ +Index: networkstatus/.svn/text-base/testclient.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/testclient.h.svn-base +@@ -0,0 +1,80 @@ ++/* This file is part of kdepim. ++ ++ Copyright (C) 2007 Will Stephenson ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 2 of the License, or ++ (at your option) any later version. ++ ++ This program 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 General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this program ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef KTESTNETWORKSTATUS_H ++#define KTESTNETWORKSTATUS_H ++ ++#ifdef HAVE_CONFIG_H ++#include ++#endif ++ ++#include ++#include ++#include ++#include ++ ++#include "networkstatusiface_stub.h" ++ ++class TestClientView; ++ ++/** ++ * This class serves as the main window for ktestnetworkstatus. It handles the ++ * menus, toolbars, and status bars. ++ * ++ * @short Main window class ++ * @author Will Stephenson ++ * @version 0.1 ++ */ ++class TestClient : public KMainWindow ++{ ++Q_OBJECT ++public: ++ enum AppStatus{ AppDisconnected, AppWaitingForConnect, AppConnected }; ++ /** ++ * Default Constructor ++ */ ++ TestClient(); ++ ++ /** ++ * Default Destructor ++ */ ++ virtual ~TestClient(); ++ ++private slots: ++ void networkStatusChanged( NetworkStatus::Status status ); ++ void connectButtonToggled( bool on ); ++private: ++ void appWaiting(); ++ void appEstablishing(); ++ void appIsConnected(); ++ void appDisestablishing(); ++ void appDisconnected(); ++ static QColor toQColor( NetworkStatus::Status ); ++private: ++ NetworkStatusIface_stub *m_service; ++ TestClientView *m_view; ++ AppStatus m_status; // this represents the app's status not the network's status ++}; ++ ++#endif // KTESTNETWORKSTATUS_H ++ +Index: networkstatus/.svn/text-base/testclientview.ui.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/testclientview.ui.svn-base +@@ -0,0 +1,177 @@ ++ ++TestClientView ++ ++ ++ TestClientView ++ ++ ++ ++ 0 ++ 0 ++ 356 ++ 127 ++ ++ ++ ++ Form1 ++ ++ ++ ++ unnamed ++ ++ ++ ++ textLabel4 ++ ++ ++ ++ 5 ++ 5 ++ 0 ++ 0 ++ ++ ++ ++ <font size="+2"><b>Client for KDE 3 Offline Mode</b></font> ++ ++ ++ AlignVCenter ++ ++ ++ ++ ++ layout1 ++ ++ ++ ++ unnamed ++ ++ ++ ++ textLabel1 ++ ++ ++ Network status: ++ ++ ++ ++ ++ netStatusLabel ++ ++ ++ ++ 0 ++ 255 ++ 0 ++ ++ ++ ++ Panel ++ ++ ++ STATUS ++ ++ ++ AlignCenter ++ ++ ++ ++ ++ ++ ++ layout1_2 ++ ++ ++ ++ unnamed ++ ++ ++ ++ textLabel1_2 ++ ++ ++ App status: ++ ++ ++ ++ ++ appStatusLabel ++ ++ ++ ++ 0 ++ 255 ++ 0 ++ ++ ++ ++ Panel ++ ++ ++ STATUS ++ ++ ++ AlignCenter ++ ++ ++ ++ ++ ++ ++ layout2 ++ ++ ++ ++ unnamed ++ ++ ++ ++ spacer1 ++ ++ ++ Horizontal ++ ++ ++ Expanding ++ ++ ++ ++ 31 ++ 20 ++ ++ ++ ++ ++ ++ connectButton ++ ++ ++ Start Connect ++ ++ ++ false ++ ++ ++ ++ ++ spacer2 ++ ++ ++ Horizontal ++ ++ ++ Expanding ++ ++ ++ ++ 61 ++ 20 ++ ++ ++ ++ ++ ++ ++ ++ ++ +Index: networkstatus/.svn/text-base/testservice.cpp.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/testservice.cpp.svn-base +@@ -0,0 +1,219 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License version 2 ++ as published by the Free Software Foundation. ++ ++ This program 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 General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this program ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include ++#include ++#include ++#include ++ ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include "testservice.h" ++#include "testserviceview.h" ++#include "networkstatusiface_stub.h" ++ ++TestService::TestService() : KMainWindow( 0, "testservice" ), ++ m_service( new NetworkStatusIface_stub( "kded", "networkstatus" ) ), ++ m_status ( NetworkStatus::Offline ), ++ m_nextStatus( NetworkStatus::OfflineDisconnected ), ++ m_view( new TestServiceView( this ) ) ++{ ++ setCentralWidget( m_view ); ++ kapp->dcopClient()->registerAs("testservice" ); ++ ++ connect( m_view->changeCombo, SIGNAL( activated( int ) ), SLOT( changeComboActivated( int ) ) ); ++ connect( m_view->changeButton, SIGNAL( clicked() ), SLOT( changeButtonClicked() ) ); ++ ++ connect( kapp->dcopClient(), SIGNAL( applicationRegistered( const QCString& ) ), this, SLOT( registeredToDCOP( const QCString& ) ) ); ++ kapp->dcopClient()->setNotifications( true ); ++ ++ m_view->statusLabel->setText( NetworkStatus::toString( m_status ) ); ++ m_view->statusLabel->setPaletteBackgroundColor( toQColor( m_status ) ); ++ setCaption( NetworkStatus::toString( m_status ) ); ++ ++ registerService(); ++} ++ ++TestService::~TestService() ++{ ++ delete m_service; ++ delete m_view; ++} ++ ++void TestService::registerService() ++{ ++ NetworkStatus::Properties nsp; ++ nsp.name = "test_net"; ++ nsp.service = kapp->dcopClient()->appId(); ++ nsp.status = m_status; ++ m_service->registerNetwork( nsp ); ++} ++ ++void TestService::registeredToDCOP( const QCString & appId ) ++{ ++ if ( appId == "kded" ) ++ registerService(); ++} ++ ++int TestService::status( const QString & network ) ++{ ++ Q_UNUSED( network ); ++ return (int)m_status; ++} ++ ++void TestService::changeComboActivated( int index ) ++{ ++ switch ( index ) { ++ case 0 /*NetworkStatus::OfflineDisconnected*/: ++ m_nextStatus = NetworkStatus::OfflineDisconnected; ++ break; ++ case 1 /*NetworkStatus::OfflineFailed*/: ++ m_nextStatus = NetworkStatus::OfflineFailed; ++ break; ++ case 2 /*NetworkStatus::ShuttingDown*/: ++ m_nextStatus = NetworkStatus::ShuttingDown; ++ break; ++ case 3 /*NetworkStatus::Offline*/: ++ m_nextStatus = NetworkStatus::Offline; ++ break; ++ case 4 /*NetworkStatus::Establishing*/: ++ m_nextStatus = NetworkStatus::Establishing; ++ break; ++ case 5 /*NetworkStatus::Online*/: ++ m_nextStatus = NetworkStatus::Online; ++ break; ++ default: ++ kdDebug() << "Unrecognised status!" << endl; ++ Q_ASSERT( false ); ++ } ++ m_view->changeButton->setEnabled( true ); ++} ++ ++void TestService::changeButtonClicked() ++{ ++ m_view->changeButton->setEnabled( false ); ++ m_status = m_nextStatus; ++ m_service->setNetworkStatus( "test_net", ( int )m_status ); ++ m_view->statusLabel->setText( NetworkStatus::toString( m_status ) ); ++ m_view->statusLabel->setPaletteBackgroundColor( toQColor( m_status ) ); ++ setCaption( NetworkStatus::toString( m_status ) ); ++} ++ ++int TestService::establish( const QString & network ) ++{ ++ Q_UNUSED( network ); ++ m_status = NetworkStatus::Establishing; ++ m_service->setNetworkStatus( "test_net", (int)m_status ); ++ m_nextStatus = NetworkStatus::Online; ++ QTimer::singleShot( 5000, this, SLOT( slotStatusChange() ) ); ++ return (int)NetworkStatus::RequestAccepted; ++} ++ ++int TestService::shutdown( const QString & network ) ++{ ++ Q_UNUSED( network ); ++ m_status = NetworkStatus::ShuttingDown; ++ m_service->setNetworkStatus( "test_net", (int)m_status ); ++ m_nextStatus = NetworkStatus::Offline; ++ QTimer::singleShot( 5000, this, SLOT( slotStatusChange() ) ); ++ return (int)NetworkStatus::RequestAccepted; ++} ++ ++void TestService::simulateFailure() ++{ ++ m_status = NetworkStatus::OfflineFailed; ++ m_service->setNetworkStatus( "test_net", (int)m_status ); ++} ++ ++void TestService::simulateDisconnect() ++{ ++ m_status = NetworkStatus::OfflineDisconnected; ++ m_service->setNetworkStatus( "test_net", (int)m_status ); ++} ++ ++void TestService::slotStatusChange() ++{ ++ m_status = m_nextStatus; ++ m_service->setNetworkStatus( "test_net", (int)m_status ); ++} ++ ++QColor TestService::toQColor( NetworkStatus::Status st ) ++{ ++ QColor col; ++ switch ( st ) { ++ case NetworkStatus::NoNetworks: ++ col = Qt::darkGray; ++ break; ++ case NetworkStatus::Unreachable: ++ col = Qt::darkMagenta; ++ break; ++ case NetworkStatus::OfflineDisconnected: ++ col = Qt::blue; ++ break; ++ case NetworkStatus::OfflineFailed: ++ col = Qt::darkRed; ++ break; ++ case NetworkStatus::ShuttingDown: ++ col = Qt::darkYellow; ++ break; ++ case NetworkStatus::Offline: ++ col = Qt::blue; ++ break; ++ case NetworkStatus::Establishing: ++ col = Qt::yellow; ++ break; ++ case NetworkStatus::Online: ++ col = Qt::green; ++ break; ++ } ++ return col; ++} ++ ++static const char description[] = ++ I18N_NOOP("Test Service for Network Status kded module"); ++ ++static const char version[] = "v0.1"; ++ ++static KCmdLineOptions options[] = ++{ ++ KCmdLineLastOption ++}; ++ ++int main( int argc, char** argv ) ++{ ++ KAboutData about("KNetworkStatusTestService", I18N_NOOP("knetworkstatustestservice"), version, description, KAboutData::License_GPL, "(C) 2007 Will Stephenson", 0, 0, "wstephenson@kde.org"); ++ about.addAuthor( "Will Stephenson", 0, "wstephenson@kde.org" ); ++ KCmdLineArgs::init(argc, argv, &about); ++ KCmdLineArgs::addCmdLineOptions(options); ++ KApplication app; ++ ++ TestService * test = new TestService; ++ test->show(); ++ return app.exec(); ++} ++ ++#include "testservice.moc" +Index: networkstatus/.svn/text-base/testservice.h.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/testservice.h.svn-base +@@ -0,0 +1,60 @@ ++/* This file is part of kdepim. ++ ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 2 of the License, or ++ (at your option) any later version. ++ ++ This program 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 General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this program ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef _TEST_NETWORKSTATUS_SERVICE_H ++#define _TEST_NETWORKSTATUS_SERVICE_H ++ ++#include ++ ++#include "networkstatuscommon.h" ++ ++class NetworkStatusIface_stub; ++class TestServiceView; ++ ++class TestService : public KMainWindow { ++Q_OBJECT ++public: ++ TestService(); ++ virtual ~TestService(); ++ int status( const QString & network ); ++ int establish( const QString & network ); ++ int shutdown( const QString & network ); ++ void simulateFailure(); ++ void simulateDisconnect(); ++protected slots: ++ void changeComboActivated( int index ); ++ void registeredToDCOP( const QCString& appId ); ++ ++ void changeButtonClicked(); ++ ++ void slotStatusChange(); ++private: ++ void registerService(); ++ static QColor toQColor( NetworkStatus::Status ); ++ NetworkStatusIface_stub * m_service; ++ NetworkStatus::Status m_status; ++ NetworkStatus::Status m_nextStatus; ++ TestServiceView * m_view; ++}; ++ ++#endif +Index: networkstatus/.svn/text-base/testserviceview.ui.svn-base +=================================================================== +--- /dev/null ++++ networkstatus/.svn/text-base/testserviceview.ui.svn-base +@@ -0,0 +1,181 @@ ++ ++TestServiceView ++ ++ ++ TestServiceView ++ ++ ++ ++ 0 ++ 0 ++ 367 ++ 132 ++ ++ ++ ++ Form1 ++ ++ ++ ++ unnamed ++ ++ ++ ++ textLabel4 ++ ++ ++ <font size="+2"><b>Service for KDE 3 Offline Mode</b></font> ++ ++ ++ AlignVCenter ++ ++ ++ ++ ++ layout2 ++ ++ ++ ++ unnamed ++ ++ ++ ++ textLabel1 ++ ++ ++ Status: ++ ++ ++ ++ ++ statusLabel ++ ++ ++ ++ 0 ++ 255 ++ 0 ++ ++ ++ ++ StyledPanel ++ ++ ++ STATUS ++ ++ ++ AlignCenter ++ ++ ++ ++ ++ ++ ++ layout3 ++ ++ ++ ++ unnamed ++ ++ ++ ++ textLabel3 ++ ++ ++ Change to: ++ ++ ++ ++ ++ ++ Offline Disconnected ++ ++ ++ ++ ++ Offline Failed ++ ++ ++ ++ ++ Shutting Down ++ ++ ++ ++ ++ Offline ++ ++ ++ ++ ++ Establishing ++ ++ ++ ++ ++ Online ++ ++ ++ ++ changeCombo ++ ++ ++ ++ ++ ++ ++ layout1 ++ ++ ++ ++ unnamed ++ ++ ++ ++ spacer1 ++ ++ ++ Horizontal ++ ++ ++ Expanding ++ ++ ++ ++ 51 ++ 20 ++ ++ ++ ++ ++ ++ changeButton ++ ++ ++ Do change ++ ++ ++ ++ ++ spacer2 ++ ++ ++ Horizontal ++ ++ ++ Expanding ++ ++ ++ ++ 41 ++ 20 ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +Index: networkstatus/testclient2.cpp +=================================================================== +--- /dev/null ++++ networkstatus/testclient2.cpp +@@ -0,0 +1,222 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2007 Will Stephenson ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License version 2 ++ as published by the Free Software Foundation. ++ ++ This program 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 General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this program ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include ++#include ++#include ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++#include ++ ++#include "testclientview.h" ++#include "testclient2.h" ++ ++TestClient::TestClient() ++ : KMainWindow( 0, "ktestnetworkstatus" ), ++ m_layout( new QVBox( 0, "layout" ) ), ++ m_status( AppDisconnected ) ++{ ++ m_view = new TestClientView( this ); ++ new StatusBarNetworkStatusIndicator( m_view, "statusindicator" ); ++ // tell the KMainWindow that this is indeed the main widget ++ setCentralWidget(m_view); ++ ++ networkStatusChanged( ConnectionManager::self()->status() ); ++ appDisconnected(); ++ ++ connect( ConnectionManager::self(), SIGNAL( statusChanged( NetworkStatus::Status ) ), SLOT( networkStatusChanged( NetworkStatus::Status ) ) ); ++ ConnectionManager::self()->registerConnectSlot( this, SLOT( doConnect() ) ); ++ ConnectionManager::self()->registerDisconnectSlot( this, SLOT( doDisconnect() ) ); ++ ++ connect( m_view->connectButton, SIGNAL( clicked() ), SLOT( connectButtonClicked() ) ); ++} ++ ++TestClient::~TestClient() ++{ ++} ++ ++void TestClient::networkStatusChanged( NetworkStatus::Status status ) ++{ ++ kdDebug() << k_funcinfo << endl; ++ kdDebug() << "Networking is now: " << NetworkStatus::toString( status ) << " (" << status << ")" << endl; ++ m_view->netStatusLabel->setText( NetworkStatus::toString( status ) ); ++ m_view->netStatusLabel->setPaletteBackgroundColor( toQColor( status ) ); ++} ++ ++void TestClient::doConnect() ++{ ++ Q_ASSERT( ConnectionManager::self()->status() == NetworkStatus::Online ); ++ if ( m_status != AppConnected ) { ++ appIsConnected(); ++ } ++} ++ ++void TestClient::doDisconnect() ++{ ++ Q_ASSERT( ConnectionManager::self()->status() != NetworkStatus::Online ); ++ if ( m_status == AppConnected ) { ++ appDisconnected(); ++ } ++} ++ ++void TestClient::connectButtonClicked() ++{ ++ kdDebug() << k_funcinfo << endl; ++ if ( m_status == AppDisconnected ) { ++ switch ( ConnectionManager::self()->status() ) ++ { ++ case NetworkStatus::NoNetworks: ++ case NetworkStatus::Online: ++ appIsConnected(); ++ break; ++ default: ++ appWaiting(); ++ break; ++ } ++ } ++ else if ( m_status == AppConnected || m_status == AppWaitingForConnect ) { ++ appDisconnected(); ++ } ++} ++ ++void TestClient::appWaiting() ++{ ++ kdDebug() << k_funcinfo << endl; ++ //m_status = AppWaitingForConnect; ++ m_view->appStatusLabel->setText( "Waiting" ); ++} ++ ++void TestClient::appIsConnected() ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->connectButton->setEnabled( true ); ++ m_view->connectButton->setText( "Disconnect" ); ++ m_view->appStatusLabel->setText( "Connected" ); ++ m_status = AppConnected; ++} ++ ++void TestClient::appEstablishing() ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->netStatusLabel->setText( "Establishing" ); ++ m_view->connectButton->setEnabled( false ); ++} ++ ++void TestClient::appDisestablishing( ) ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->connectButton->setEnabled( false ); ++ m_view->appStatusLabel->setText( "Disconnected" ); ++} ++ ++void TestClient::appDisconnected( ) ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->connectButton->setEnabled( true ); ++ m_view->connectButton->setText( "Start Connect" ); ++ m_view->appStatusLabel->setText( "Disconnected" ); ++ m_status = AppDisconnected; ++} ++ ++QColor TestClient::toQColor( NetworkStatus::Status st ) ++{ ++ QColor col; ++ switch ( st ) { ++ case NetworkStatus::NoNetworks: ++ col = Qt::darkGray; ++ break; ++ case NetworkStatus::Unreachable: ++ col = Qt::darkMagenta; ++ break; ++ case NetworkStatus::OfflineDisconnected: ++ col = Qt::blue; ++ break; ++ case NetworkStatus::OfflineFailed: ++ col = Qt::darkRed; ++ break; ++ case NetworkStatus::ShuttingDown: ++ col = Qt::darkYellow; ++ break; ++ case NetworkStatus::Offline: ++ col = Qt::blue; ++ break; ++ case NetworkStatus::Establishing: ++ col = Qt::yellow; ++ break; ++ case NetworkStatus::Online: ++ col = Qt::green; ++ break; ++ } ++ return col; ++} ++//main ++static const char description[] = ++ I18N_NOOP("Test Client for Network Status kded module"); ++ ++static const char version[] = "v0.1"; ++ ++static KCmdLineOptions options[] = ++{ ++ KCmdLineLastOption ++}; ++ ++int main(int argc, char **argv) ++{ ++ KAboutData about("KNetworkStatusTestClient", I18N_NOOP("knetworkstatustestclient"), version, description, KAboutData::License_GPL, "(C) 2007 Will Stephenson", 0, 0, "wstephenson@kde.org"); ++ about.addAuthor( "Will Stephenson", 0, "wstephenson@kde.org" ); ++ KCmdLineArgs::init(argc, argv, &about); ++ KCmdLineArgs::addCmdLineOptions(options); ++ KApplication app; ++ ++ // register ourselves as a dcop client ++ app.dcopClient()->registerAs(app.name(), false); ++ ++ KCmdLineArgs *args = KCmdLineArgs::parsedArgs(); ++ if (args->count() == 0) ++ { ++ TestClient *widget = new TestClient; ++ widget->show(); ++ } ++ else ++ { ++ int i = 0; ++ for (; i < args->count(); i++) ++ { ++ TestClient *widget = new TestClient; ++ widget->show(); ++ } ++ } ++ args->clear(); ++ ++ return app.exec(); ++} ++ ++#include "testclient2.moc" ++ +Index: networkstatus/testclient2.h +=================================================================== +--- /dev/null ++++ networkstatus/testclient2.h +@@ -0,0 +1,82 @@ ++/* This file is part of kdepim. ++ ++ Copyright (C) 2007 Will Stephenson ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 2 of the License, or ++ (at your option) any later version. ++ ++ This program 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 General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this program ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef KTESTNETWORKSTATUS_H ++#define KTESTNETWORKSTATUS_H ++ ++#ifdef HAVE_CONFIG_H ++#include ++#endif ++ ++#include ++#include ++#include ++#include ++ ++#include "networkstatusiface_stub.h" ++ ++class TestClientView; ++ ++/** ++ * Test client that uses a ConnectionManager to change its state ++ * ++ * @short Main window class ++ * @author Will Stephenson ++ * @version 0.1 ++ */ ++class TestClient : public KMainWindow ++{ ++Q_OBJECT ++public: ++ enum AppStatus{ AppDisconnected, AppWaitingForConnect, AppConnected }; ++ /** ++ * Default Constructor ++ */ ++ TestClient(); ++ ++ /** ++ * Default Destructor ++ */ ++ virtual ~TestClient(); ++ ++private slots: ++ void networkStatusChanged( NetworkStatus::Status status ); ++ void connectButtonClicked(); ++ void doConnect(); ++ void doDisconnect(); ++private: ++ void appWaiting(); ++ void appEstablishing(); ++ void appIsConnected(); ++ void appDisestablishing(); ++ void appDisconnected(); ++ static QColor toQColor( NetworkStatus::Status ); ++private: ++ QHBox * m_layout; ++ NetworkStatusIface_stub *m_service; ++ TestClientView *m_view; ++ AppStatus m_status; // this represents the app's status not the network's status ++}; ++ ++#endif // KTESTNETWORKSTATUS_H ++ +Index: networkstatus/testclient.cpp +=================================================================== +--- /dev/null ++++ networkstatus/testclient.cpp +@@ -0,0 +1,234 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2007 Will Stephenson ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License version 2 ++ as published by the Free Software Foundation. ++ ++ This program 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 General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this program ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include ++#include ++ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include "connectionmanager.h" ++#include "testclientview.h" ++#include "testclient.h" ++ ++TestClient::TestClient() ++ : KMainWindow( 0, "ktestnetworkstatus" ), ++ m_view(new TestClientView(this)), ++ m_status( AppDisconnected ) ++{ ++ // tell the KMainWindow that this is indeed the main widget ++ setCentralWidget(m_view); ++ ++ networkStatusChanged( ConnectionManager::self()->status() ); ++ appDisconnected(); ++ ++ connect( ConnectionManager::self(), SIGNAL( statusChanged( NetworkStatus::Status ) ), SLOT( networkStatusChanged( NetworkStatus::Status ) ) ); ++ ++ connect( m_view->connectButton, SIGNAL( toggled( bool ) ), SLOT( connectButtonToggled( bool ) ) ); ++} ++ ++TestClient::~TestClient() ++{ ++} ++ ++void TestClient::networkStatusChanged( NetworkStatus::Status status ) ++{ ++ kdDebug() << k_funcinfo << endl; ++//enum EnumStatus { NoNetworks = 1, Unreachable, OfflineDisconnected, OfflineFailed, ShuttingDown ++// , Offline, Establishing, Online }; ++ kdDebug() << "Networking is now: " << NetworkStatus::toString( status ) << " (" << status << ")" << endl; ++ m_view->netStatusLabel->setText( NetworkStatus::toString( status ) ); ++ m_view->netStatusLabel->setPaletteBackgroundColor( toQColor( status ) ); ++ switch ( status ) { ++ case NetworkStatus::NoNetworks: ++ break; ++ case NetworkStatus::Unreachable: ++ break; ++ case NetworkStatus::OfflineDisconnected: ++ break; ++ case NetworkStatus::OfflineFailed: ++ break; ++ case NetworkStatus::ShuttingDown: ++ if ( m_status == AppConnected ) { ++ appDisestablishing(); ++ } ++ break; ++ case NetworkStatus::Offline: ++ if ( m_status == AppConnected ) { ++ appDisconnected(); ++ } ++ break; ++ case NetworkStatus::Establishing: ++ if ( m_status == AppWaitingForConnect ) ++ appEstablishing(); ++ else if ( m_status == AppConnected ) ++ appDisconnected(); ++ break; ++ case NetworkStatus::Online: ++ if ( m_status == AppWaitingForConnect ) ++ appIsConnected(); ++ break; ++ default: ++ m_view->netStatusLabel->setText( "Unrecognised status code!" ); ++ } ++} ++ ++void TestClient::connectButtonToggled( bool on ) ++{ ++ kdDebug() << k_funcinfo << endl; ++ if ( on && m_status == AppDisconnected ) { ++ switch ( ConnectionManager::self()->status() ) ++ { ++ case NetworkStatus::NoNetworks: ++ case NetworkStatus::Online: ++ appIsConnected(); ++ break; ++ default: ++ appWaiting(); ++ break; ++ } ++ } ++ else if ( !on && m_status == AppConnected ) { ++ appDisconnected(); ++ } ++} ++ ++void TestClient::appWaiting() ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_status = AppWaitingForConnect; ++ m_view->appStatusLabel->setText( "Waiting" ); ++} ++ ++void TestClient::appIsConnected() ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->connectButton->setEnabled( true ); ++ m_view->connectButton->setText( "Disconnect" ); ++ m_view->appStatusLabel->setText( "Connected" ); ++ m_status = AppConnected; ++} ++ ++void TestClient::appEstablishing() ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->netStatusLabel->setText( "Establishing" ); ++ m_view->connectButton->setEnabled( false ); ++} ++ ++void TestClient::appDisestablishing( ) ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->connectButton->setEnabled( false ); ++ m_view->appStatusLabel->setText( "Disconnected" ); ++} ++ ++void TestClient::appDisconnected( ) ++{ ++ kdDebug() << k_funcinfo << endl; ++ m_view->connectButton->setEnabled( true ); ++ m_view->connectButton->setText( "Start Connect" ); ++ m_view->appStatusLabel->setText( "Disconnected" ); ++ m_status = AppDisconnected; ++} ++ ++QColor TestClient::toQColor( NetworkStatus::Status st ) ++{ ++ QColor col; ++ switch ( st ) { ++ case NetworkStatus::NoNetworks: ++ col = Qt::darkGray; ++ break; ++ case NetworkStatus::Unreachable: ++ col = Qt::darkMagenta; ++ break; ++ case NetworkStatus::OfflineDisconnected: ++ col = Qt::blue; ++ break; ++ case NetworkStatus::OfflineFailed: ++ col = Qt::darkRed; ++ break; ++ case NetworkStatus::ShuttingDown: ++ col = Qt::darkYellow; ++ break; ++ case NetworkStatus::Offline: ++ col = Qt::blue; ++ break; ++ case NetworkStatus::Establishing: ++ col = Qt::yellow; ++ break; ++ case NetworkStatus::Online: ++ col = Qt::green; ++ break; ++ } ++ return col; ++} ++//main ++static const char description[] = ++ I18N_NOOP("Test Client for Network Status kded module"); ++ ++static const char version[] = "v0.1"; ++ ++static KCmdLineOptions options[] = ++{ ++ KCmdLineLastOption ++}; ++ ++int main(int argc, char **argv) ++{ ++ KAboutData about("KNetworkStatusTestClient", I18N_NOOP("knetworkstatustestclient"), version, description, KAboutData::License_GPL, "(C) 2007 Will Stephenson", 0, 0, "wstephenson@kde.org"); ++ about.addAuthor( "Will Stephenson", 0, "wstephenson@kde.org" ); ++ KCmdLineArgs::init(argc, argv, &about); ++ KCmdLineArgs::addCmdLineOptions(options); ++ KApplication app; ++ ++ // register ourselves as a dcop client ++ app.dcopClient()->registerAs(app.name(), false); ++ ++ KCmdLineArgs *args = KCmdLineArgs::parsedArgs(); ++ if (args->count() == 0) ++ { ++ TestClient *widget = new TestClient; ++ widget->show(); ++ } ++ else ++ { ++ int i = 0; ++ for (; i < args->count(); i++) ++ { ++ TestClient *widget = new TestClient; ++ widget->show(); ++ } ++ } ++ args->clear(); ++ ++ return app.exec(); ++} ++ ++#include "testclient.moc" ++ +Index: networkstatus/testclient.h +=================================================================== +--- /dev/null ++++ networkstatus/testclient.h +@@ -0,0 +1,80 @@ ++/* This file is part of kdepim. ++ ++ Copyright (C) 2007 Will Stephenson ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 2 of the License, or ++ (at your option) any later version. ++ ++ This program 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 General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this program ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef KTESTNETWORKSTATUS_H ++#define KTESTNETWORKSTATUS_H ++ ++#ifdef HAVE_CONFIG_H ++#include ++#endif ++ ++#include ++#include ++#include ++#include ++ ++#include "networkstatusiface_stub.h" ++ ++class TestClientView; ++ ++/** ++ * This class serves as the main window for ktestnetworkstatus. It handles the ++ * menus, toolbars, and status bars. ++ * ++ * @short Main window class ++ * @author Will Stephenson ++ * @version 0.1 ++ */ ++class TestClient : public KMainWindow ++{ ++Q_OBJECT ++public: ++ enum AppStatus{ AppDisconnected, AppWaitingForConnect, AppConnected }; ++ /** ++ * Default Constructor ++ */ ++ TestClient(); ++ ++ /** ++ * Default Destructor ++ */ ++ virtual ~TestClient(); ++ ++private slots: ++ void networkStatusChanged( NetworkStatus::Status status ); ++ void connectButtonToggled( bool on ); ++private: ++ void appWaiting(); ++ void appEstablishing(); ++ void appIsConnected(); ++ void appDisestablishing(); ++ void appDisconnected(); ++ static QColor toQColor( NetworkStatus::Status ); ++private: ++ NetworkStatusIface_stub *m_service; ++ TestClientView *m_view; ++ AppStatus m_status; // this represents the app's status not the network's status ++}; ++ ++#endif // KTESTNETWORKSTATUS_H ++ +Index: networkstatus/testclientview.ui +=================================================================== +--- /dev/null ++++ networkstatus/testclientview.ui +@@ -0,0 +1,177 @@ ++ ++TestClientView ++ ++ ++ TestClientView ++ ++ ++ ++ 0 ++ 0 ++ 356 ++ 127 ++ ++ ++ ++ Form1 ++ ++ ++ ++ unnamed ++ ++ ++ ++ textLabel4 ++ ++ ++ ++ 5 ++ 5 ++ 0 ++ 0 ++ ++ ++ ++ <font size="+2"><b>Client for KDE 3 Offline Mode</b></font> ++ ++ ++ AlignVCenter ++ ++ ++ ++ ++ layout1 ++ ++ ++ ++ unnamed ++ ++ ++ ++ textLabel1 ++ ++ ++ Network status: ++ ++ ++ ++ ++ netStatusLabel ++ ++ ++ ++ 0 ++ 255 ++ 0 ++ ++ ++ ++ Panel ++ ++ ++ STATUS ++ ++ ++ AlignCenter ++ ++ ++ ++ ++ ++ ++ layout1_2 ++ ++ ++ ++ unnamed ++ ++ ++ ++ textLabel1_2 ++ ++ ++ App status: ++ ++ ++ ++ ++ appStatusLabel ++ ++ ++ ++ 0 ++ 255 ++ 0 ++ ++ ++ ++ Panel ++ ++ ++ STATUS ++ ++ ++ AlignCenter ++ ++ ++ ++ ++ ++ ++ layout2 ++ ++ ++ ++ unnamed ++ ++ ++ ++ spacer1 ++ ++ ++ Horizontal ++ ++ ++ Expanding ++ ++ ++ ++ 31 ++ 20 ++ ++ ++ ++ ++ ++ connectButton ++ ++ ++ Start Connect ++ ++ ++ false ++ ++ ++ ++ ++ spacer2 ++ ++ ++ Horizontal ++ ++ ++ Expanding ++ ++ ++ ++ 61 ++ 20 ++ ++ ++ ++ ++ ++ ++ ++ ++ +Index: networkstatus/testservice.cpp +=================================================================== +--- /dev/null ++++ networkstatus/testservice.cpp +@@ -0,0 +1,219 @@ ++/* This file is part of kdepim. ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License version 2 ++ as published by the Free Software Foundation. ++ ++ This program 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 General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, ++ Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this program ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#include ++#include ++#include ++#include ++ ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include "testservice.h" ++#include "testserviceview.h" ++#include "networkstatusiface_stub.h" ++ ++TestService::TestService() : KMainWindow( 0, "testservice" ), ++ m_service( new NetworkStatusIface_stub( "kded", "networkstatus" ) ), ++ m_status ( NetworkStatus::Offline ), ++ m_nextStatus( NetworkStatus::OfflineDisconnected ), ++ m_view( new TestServiceView( this ) ) ++{ ++ setCentralWidget( m_view ); ++ kapp->dcopClient()->registerAs("testservice" ); ++ ++ connect( m_view->changeCombo, SIGNAL( activated( int ) ), SLOT( changeComboActivated( int ) ) ); ++ connect( m_view->changeButton, SIGNAL( clicked() ), SLOT( changeButtonClicked() ) ); ++ ++ connect( kapp->dcopClient(), SIGNAL( applicationRegistered( const QCString& ) ), this, SLOT( registeredToDCOP( const QCString& ) ) ); ++ kapp->dcopClient()->setNotifications( true ); ++ ++ m_view->statusLabel->setText( NetworkStatus::toString( m_status ) ); ++ m_view->statusLabel->setPaletteBackgroundColor( toQColor( m_status ) ); ++ setCaption( NetworkStatus::toString( m_status ) ); ++ ++ registerService(); ++} ++ ++TestService::~TestService() ++{ ++ delete m_service; ++ delete m_view; ++} ++ ++void TestService::registerService() ++{ ++ NetworkStatus::Properties nsp; ++ nsp.name = "test_net"; ++ nsp.service = kapp->dcopClient()->appId(); ++ nsp.status = m_status; ++ m_service->registerNetwork( nsp ); ++} ++ ++void TestService::registeredToDCOP( const QCString & appId ) ++{ ++ if ( appId == "kded" ) ++ registerService(); ++} ++ ++int TestService::status( const QString & network ) ++{ ++ Q_UNUSED( network ); ++ return (int)m_status; ++} ++ ++void TestService::changeComboActivated( int index ) ++{ ++ switch ( index ) { ++ case 0 /*NetworkStatus::OfflineDisconnected*/: ++ m_nextStatus = NetworkStatus::OfflineDisconnected; ++ break; ++ case 1 /*NetworkStatus::OfflineFailed*/: ++ m_nextStatus = NetworkStatus::OfflineFailed; ++ break; ++ case 2 /*NetworkStatus::ShuttingDown*/: ++ m_nextStatus = NetworkStatus::ShuttingDown; ++ break; ++ case 3 /*NetworkStatus::Offline*/: ++ m_nextStatus = NetworkStatus::Offline; ++ break; ++ case 4 /*NetworkStatus::Establishing*/: ++ m_nextStatus = NetworkStatus::Establishing; ++ break; ++ case 5 /*NetworkStatus::Online*/: ++ m_nextStatus = NetworkStatus::Online; ++ break; ++ default: ++ kdDebug() << "Unrecognised status!" << endl; ++ Q_ASSERT( false ); ++ } ++ m_view->changeButton->setEnabled( true ); ++} ++ ++void TestService::changeButtonClicked() ++{ ++ m_view->changeButton->setEnabled( false ); ++ m_status = m_nextStatus; ++ m_service->setNetworkStatus( "test_net", ( int )m_status ); ++ m_view->statusLabel->setText( NetworkStatus::toString( m_status ) ); ++ m_view->statusLabel->setPaletteBackgroundColor( toQColor( m_status ) ); ++ setCaption( NetworkStatus::toString( m_status ) ); ++} ++ ++int TestService::establish( const QString & network ) ++{ ++ Q_UNUSED( network ); ++ m_status = NetworkStatus::Establishing; ++ m_service->setNetworkStatus( "test_net", (int)m_status ); ++ m_nextStatus = NetworkStatus::Online; ++ QTimer::singleShot( 5000, this, SLOT( slotStatusChange() ) ); ++ return (int)NetworkStatus::RequestAccepted; ++} ++ ++int TestService::shutdown( const QString & network ) ++{ ++ Q_UNUSED( network ); ++ m_status = NetworkStatus::ShuttingDown; ++ m_service->setNetworkStatus( "test_net", (int)m_status ); ++ m_nextStatus = NetworkStatus::Offline; ++ QTimer::singleShot( 5000, this, SLOT( slotStatusChange() ) ); ++ return (int)NetworkStatus::RequestAccepted; ++} ++ ++void TestService::simulateFailure() ++{ ++ m_status = NetworkStatus::OfflineFailed; ++ m_service->setNetworkStatus( "test_net", (int)m_status ); ++} ++ ++void TestService::simulateDisconnect() ++{ ++ m_status = NetworkStatus::OfflineDisconnected; ++ m_service->setNetworkStatus( "test_net", (int)m_status ); ++} ++ ++void TestService::slotStatusChange() ++{ ++ m_status = m_nextStatus; ++ m_service->setNetworkStatus( "test_net", (int)m_status ); ++} ++ ++QColor TestService::toQColor( NetworkStatus::Status st ) ++{ ++ QColor col; ++ switch ( st ) { ++ case NetworkStatus::NoNetworks: ++ col = Qt::darkGray; ++ break; ++ case NetworkStatus::Unreachable: ++ col = Qt::darkMagenta; ++ break; ++ case NetworkStatus::OfflineDisconnected: ++ col = Qt::blue; ++ break; ++ case NetworkStatus::OfflineFailed: ++ col = Qt::darkRed; ++ break; ++ case NetworkStatus::ShuttingDown: ++ col = Qt::darkYellow; ++ break; ++ case NetworkStatus::Offline: ++ col = Qt::blue; ++ break; ++ case NetworkStatus::Establishing: ++ col = Qt::yellow; ++ break; ++ case NetworkStatus::Online: ++ col = Qt::green; ++ break; ++ } ++ return col; ++} ++ ++static const char description[] = ++ I18N_NOOP("Test Service for Network Status kded module"); ++ ++static const char version[] = "v0.1"; ++ ++static KCmdLineOptions options[] = ++{ ++ KCmdLineLastOption ++}; ++ ++int main( int argc, char** argv ) ++{ ++ KAboutData about("KNetworkStatusTestService", I18N_NOOP("knetworkstatustestservice"), version, description, KAboutData::License_GPL, "(C) 2007 Will Stephenson", 0, 0, "wstephenson@kde.org"); ++ about.addAuthor( "Will Stephenson", 0, "wstephenson@kde.org" ); ++ KCmdLineArgs::init(argc, argv, &about); ++ KCmdLineArgs::addCmdLineOptions(options); ++ KApplication app; ++ ++ TestService * test = new TestService; ++ test->show(); ++ return app.exec(); ++} ++ ++#include "testservice.moc" +Index: networkstatus/testservice.h +=================================================================== +--- /dev/null ++++ networkstatus/testservice.h +@@ -0,0 +1,60 @@ ++/* This file is part of kdepim. ++ ++ Copyright (C) 2005,2007 Will Stephenson ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 2 of the License, or ++ (at your option) any later version. ++ ++ This program 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 General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ++ ++ As a special exception, permission is given to link this program ++ with any edition of Qt, and distribute the resulting executable, ++ without including the source code for Qt in the source distribution. ++*/ ++ ++#ifndef _TEST_NETWORKSTATUS_SERVICE_H ++#define _TEST_NETWORKSTATUS_SERVICE_H ++ ++#include ++ ++#include "networkstatuscommon.h" ++ ++class NetworkStatusIface_stub; ++class TestServiceView; ++ ++class TestService : public KMainWindow { ++Q_OBJECT ++public: ++ TestService(); ++ virtual ~TestService(); ++ int status( const QString & network ); ++ int establish( const QString & network ); ++ int shutdown( const QString & network ); ++ void simulateFailure(); ++ void simulateDisconnect(); ++protected slots: ++ void changeComboActivated( int index ); ++ void registeredToDCOP( const QCString& appId ); ++ ++ void changeButtonClicked(); ++ ++ void slotStatusChange(); ++private: ++ void registerService(); ++ static QColor toQColor( NetworkStatus::Status ); ++ NetworkStatusIface_stub * m_service; ++ NetworkStatus::Status m_status; ++ NetworkStatus::Status m_nextStatus; ++ TestServiceView * m_view; ++}; ++ ++#endif +Index: networkstatus/testserviceview.ui +=================================================================== +--- /dev/null ++++ networkstatus/testserviceview.ui +@@ -0,0 +1,181 @@ ++ ++TestServiceView ++ ++ ++ TestServiceView ++ ++ ++ ++ 0 ++ 0 ++ 367 ++ 132 ++ ++ ++ ++ Form1 ++ ++ ++ ++ unnamed ++ ++ ++ ++ textLabel4 ++ ++ ++ <font size="+2"><b>Service for KDE 3 Offline Mode</b></font> ++ ++ ++ AlignVCenter ++ ++ ++ ++ ++ layout2 ++ ++ ++ ++ unnamed ++ ++ ++ ++ textLabel1 ++ ++ ++ Status: ++ ++ ++ ++ ++ statusLabel ++ ++ ++ ++ 0 ++ 255 ++ 0 ++ ++ ++ ++ StyledPanel ++ ++ ++ STATUS ++ ++ ++ AlignCenter ++ ++ ++ ++ ++ ++ ++ layout3 ++ ++ ++ ++ unnamed ++ ++ ++ ++ textLabel3 ++ ++ ++ Change to: ++ ++ ++ ++ ++ ++ Offline Disconnected ++ ++ ++ ++ ++ Offline Failed ++ ++ ++ ++ ++ Shutting Down ++ ++ ++ ++ ++ Offline ++ ++ ++ ++ ++ Establishing ++ ++ ++ ++ ++ Online ++ ++ ++ ++ changeCombo ++ ++ ++ ++ ++ ++ ++ layout1 ++ ++ ++ ++ unnamed ++ ++ ++ ++ spacer1 ++ ++ ++ Horizontal ++ ++ ++ Expanding ++ ++ ++ ++ 51 ++ 20 ++ ++ ++ ++ ++ ++ changeButton ++ ++ ++ Do change ++ ++ ++ ++ ++ spacer2 ++ ++ ++ Horizontal ++ ++ ++ Expanding ++ ++ ++ ++ 41 ++ 20 ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ diff --git a/opensuse/core/tdelibs.old/no-debug-by-default.diff b/opensuse/core/tdelibs.old/no-debug-by-default.diff new file mode 100644 index 000000000..5b1440970 --- /dev/null +++ b/opensuse/core/tdelibs.old/no-debug-by-default.diff @@ -0,0 +1,158 @@ +Index: kdecore/kdebug.cpp +=================================================================== +--- kdecore/kdebug.cpp.orig ++++ kdecore/kdebug.cpp +@@ -170,7 +170,7 @@ static KStaticDeleter pcd + static KStaticDeleter dcopsd; + static KDebugDCOPIface* kDebugDCOPIface = 0; + +-static void kDebugBackend( unsigned short nLevel, unsigned int nArea, const char *data) ++static void kDebugInitBackend(unsigned int nArea) + { + if ( !kDebug_data ) + { +@@ -205,40 +205,46 @@ static void kDebugBackend( unsigned shor + if ( KGlobal::_instance ) + kDebug_data->aAreaName = KGlobal::instance()->instanceName(); + } ++} + +- int nPriority = 0; +- QString aCaption; +- +- /* Determine output */ ++static short kDebugAreaOutput(unsigned short nLevel, unsigned int nArea) ++{ ++ kDebugInitBackend (nArea); + ++ /* Determine output */ + QString key; + switch( nLevel ) + { + case KDEBUG_INFO: + key = "InfoOutput"; +- aCaption = "Info"; +- nPriority = LOG_INFO; + break; + case KDEBUG_WARN: + key = "WarnOutput"; +- aCaption = "Warning"; +- nPriority = LOG_WARNING; + break; + case KDEBUG_FATAL: + key = "FatalOutput"; +- aCaption = "Fatal Error"; +- nPriority = LOG_CRIT; + break; + case KDEBUG_ERROR: + default: + /* Programmer error, use "Error" as default */ + key = "ErrorOutput"; +- aCaption = "Error"; +- nPriority = LOG_ERR; + break; + } + +- short nOutput = kDebug_data->config ? kDebug_data->config->readNumEntry(key, 2) : 2; ++ return kDebug_data->config ? kDebug_data->config->readNumEntry(key, 4) : 4; ++} ++ ++ ++bool kDebugAreaEnabled(unsigned short nLevel, unsigned int nArea) ++{ ++ return kDebugAreaOutput(nLevel, nArea) != 4; ++} ++ ++static void kDebugBackend( unsigned short nLevel, unsigned int nArea, const char *data) ++{ ++ kDebugInitBackend (nArea); ++ ++ short nOutput = kDebugAreaOutput(nLevel, nArea); + + // If the application doesn't have a QApplication object it can't use + // a messagebox. +@@ -247,6 +253,32 @@ static void kDebugBackend( unsigned shor + else if ( nOutput == 4 && nLevel != KDEBUG_FATAL ) + return; + ++ int nPriority = 0; ++ QString aCaption; ++ switch( nLevel ) ++ { ++ case KDEBUG_INFO: ++ aCaption = "Info"; ++ nPriority = LOG_INFO; ++ break; ++ case KDEBUG_WARN: ++ aCaption = "Warning"; ++ nPriority = LOG_WARNING; ++ break; ++ case KDEBUG_FATAL: ++ aCaption = "Fatal Error"; ++ nPriority = LOG_CRIT; ++ break; ++ case KDEBUG_ERROR: ++ default: ++ /* Programmer error, use "Error" as default */ ++ aCaption = "Error"; ++ nPriority = LOG_ERR; ++ break; ++ } ++ ++ ++ + const int BUFSIZE = 4096; + char buf[BUFSIZE]; + if ( !kDebug_data->aAreaName.isEmpty() ) { +@@ -314,13 +346,25 @@ static void kDebugBackend( unsigned shor + } + + kdbgstream &perror( kdbgstream &s) { return s << QString::fromLocal8Bit(strerror(errno)); } +-kdbgstream kdDebug(int area) { return kdbgstream(area, KDEBUG_INFO); } +-kdbgstream kdDebug(bool cond, int area) { if (cond) return kdbgstream(area, KDEBUG_INFO); else return kdbgstream(0, 0, false); } ++kdbgstream kdDebug(int area) { return kdbgstream(area, KDEBUG_INFO, kDebugAreaEnabled(KDEBUG_INFO, area)); } ++kdbgstream kdDebug(bool cond, int area) { if (cond) return kdbgstream(area, KDEBUG_INFO, kDebugAreaEnabled(KDEBUG_INFO, area)); else return kdbgstream(0, 0, false); } + + kdbgstream kdError(int area) { return kdbgstream("ERROR: ", area, KDEBUG_ERROR); } + kdbgstream kdError(bool cond, int area) { if (cond) return kdbgstream("ERROR: ", area, KDEBUG_ERROR); else return kdbgstream(0,0,false); } +-kdbgstream kdWarning(int area) { return kdbgstream("WARNING: ", area, KDEBUG_WARN); } +-kdbgstream kdWarning(bool cond, int area) { if (cond) return kdbgstream("WARNING: ", area, KDEBUG_WARN); else return kdbgstream(0,0,false); } ++ ++kdbgstream kdWarning(int area) ++{ ++ return kdbgstream("WARNING: ", area, KDEBUG_WARN, kDebugAreaEnabled(KDEBUG_WARN, area)); ++} ++ ++kdbgstream kdWarning(bool cond, int area) ++{ ++ if (cond) ++ return kdbgstream("WARNING: ", area, KDEBUG_WARN, kDebugAreaEnabled(KDEBUG_WARN, area)); ++ else ++ return kdbgstream(0,0,false); ++} ++ + kdbgstream kdFatal(int area) { return kdbgstream("FATAL: ", area, KDEBUG_FATAL); } + kdbgstream kdFatal(bool cond, int area) { if (cond) return kdbgstream("FATAL: ", area, KDEBUG_FATAL); else return kdbgstream(0,0,false); } + +@@ -331,9 +375,10 @@ kdbgstream::kdbgstream(kdbgstream &str) + } + + void kdbgstream::flush() { +- if (output.isEmpty() || !print) ++ if (output.isEmpty()) + return; +- kDebugBackend( level, area, output.local8Bit().data() ); ++ if (print) ++ kDebugBackend( level, area, output.local8Bit().data() ); + output = QString::null; + } + +@@ -349,7 +394,7 @@ kdbgstream &kdbgstream::form(const char + } + + kdbgstream::~kdbgstream() { +- if (!output.isEmpty()) { ++ if (print && !output.isEmpty()) { + fprintf(stderr, "ASSERT: debug output not ended with \\n\n"); + fprintf(stderr, "%s", kdBacktrace().latin1()); + *this << "\n"; diff --git a/opensuse/core/tdelibs.old/no-progress-for-beagle-status-query.diff b/opensuse/core/tdelibs.old/no-progress-for-beagle-status-query.diff new file mode 100644 index 000000000..4d9ae1a84 --- /dev/null +++ b/opensuse/core/tdelibs.old/no-progress-for-beagle-status-query.diff @@ -0,0 +1,13 @@ +Index: kio/kio/netaccess.cpp +=================================================================== +--- kio/kio/netaccess.cpp.orig ++++ kio/kio/netaccess.cpp +@@ -337,7 +337,7 @@ bool NetAccess::statInternal( const KURL + QWidget* window ) + { + bJobOK = true; // success unless further error occurs +- KIO::StatJob * job = KIO::stat( url, !url.isLocalFile() ); ++ KIO::StatJob * job = KIO::stat( url, !url.isLocalFile() && !url.url().startsWith("beagle:?") ); + job->setWindow (window); + job->setDetails( details ); + job->setSide( source ); diff --git a/opensuse/core/tdelibs.old/noauto-package.diff b/opensuse/core/tdelibs.old/noauto-package.diff new file mode 100644 index 000000000..9eec14ab3 --- /dev/null +++ b/opensuse/core/tdelibs.old/noauto-package.diff @@ -0,0 +1,13 @@ +Index: configure.in.in +=================================================================== +--- configure.in.in.orig ++++ configure.in.in +@@ -17,7 +17,7 @@ AC_CANONICAL_SYSTEM + AC_ARG_PROGRAM + + dnl Automake doc recommends to do this only here. (Janos) +-AM_INIT_AUTOMAKE(@MODULENAME@, @VERSION@) dnl searches for some needed programs ++AM_INIT_AUTOMAKE("kdelibs", @VERSION@) dnl searches for some needed programs + + AC_PROG_INSTALL + diff --git a/opensuse/core/tdelibs.old/oom_score_adj.patch b/opensuse/core/tdelibs.old/oom_score_adj.patch new file mode 100644 index 000000000..f7a929f3f --- /dev/null +++ b/opensuse/core/tdelibs.old/oom_score_adj.patch @@ -0,0 +1,36 @@ +Index: kdelibs-3.5.10/kinit/start_kdeinit.c +=================================================================== +--- kdelibs-3.5.10.orig/kinit/start_kdeinit.c ++++ kdelibs-3.5.10/kinit/start_kdeinit.c +@@ -44,11 +44,30 @@ static int set_protection( pid_t pid, in + { + char buf[ 1024 ]; + int procfile; ++ struct stat st; ++ ++ /* Newer kernels (noticed in 2.6.36) */ ++ sprintf( buf, "/proc/%d/oom_score_adj", pid ); ++ if ( lstat (buf, &st) == 0) { ++ if( !enable ) { ++ /* Be paranoid and check that the pid we got from the pipe ++ belongs to this user. */ ++ if( st.st_uid != getuid()) ++ return 0; ++ } ++ procfile = open(buf, O_WRONLY); ++ if( enable ) ++ write( procfile, "-300", sizeof( "-300" )); ++ else ++ write( procfile, "0", sizeof( "0" )); ++ close( procfile ); ++ return 1; ++ } ++ + sprintf( buf, "/proc/%d/stat", pid ); + if( !enable ) { + /* Be paranoid and check that the pid we got from the pipe + belongs to this user. */ +- struct stat st; + if( lstat( buf, &st ) < 0 || st.st_uid != getuid()) + return 0; + } diff --git a/opensuse/core/tdelibs.old/patch-mimetype-iconnames.diff b/opensuse/core/tdelibs.old/patch-mimetype-iconnames.diff new file mode 100644 index 000000000..6874162ae --- /dev/null +++ b/opensuse/core/tdelibs.old/patch-mimetype-iconnames.diff @@ -0,0 +1,39 @@ +Index: mimetypes/application/vnd.oasis.opendocument.formula.desktop +=================================================================== +--- mimetypes/application/vnd.oasis.opendocument.formula.desktop.orig ++++ mimetypes/application/vnd.oasis.opendocument.formula.desktop +@@ -2,7 +2,7 @@ + Type=MimeType + MimeType=application/vnd.oasis.opendocument.formula + Patterns=*.odf;*.ODF +-Icon=formula ++Icon=kformula_kfo + Comment=OASIS OpenDocument Formula + Comment[af]=OASIS Oop Dokument formule + Comment[be]=Формула OASIS OpenDocument +Index: mimetypes/application/vnd.sun.xml.base.desktop +=================================================================== +--- mimetypes/application/vnd.sun.xml.base.desktop.orig ++++ mimetypes/application/vnd.sun.xml.base.desktop +@@ -67,7 +67,7 @@ Comment[vi]=Cơ sở dữ liệu OpenOff + Comment[zh_CN]=OpenOffice.org 数据库 + Comment[zh_HK]=OpenOffice.org 資料庫 + Comment[zh_TW]=OpenOffice.org 資料庫 +-Icon=spreadsheet ++Icon=database + Type=MimeType + Patterns=*.odb;*.ODB; + MimeType=application/vnd.sun.xml.base +Index: mimetypes/text/rtf.desktop +=================================================================== +--- mimetypes/text/rtf.desktop.orig ++++ mimetypes/text/rtf.desktop +@@ -77,7 +77,7 @@ Comment[wa]=Documint RTF + Comment[zh_CN]=RTF 文档 + Comment[zh_HK]=RTF 文件 + Comment[zh_TW]=RTF 文件 +-Icon=wordprocessing ++Icon=rtf + Type=MimeType + Patterns=*.rtf;*.RTF; + [Property::X-KDE-text] diff --git a/opensuse/core/tdelibs.old/prefer_distribution_settings.dif b/opensuse/core/tdelibs.old/prefer_distribution_settings.dif new file mode 100644 index 000000000..655788807 --- /dev/null +++ b/opensuse/core/tdelibs.old/prefer_distribution_settings.dif @@ -0,0 +1,13 @@ +Index: kdecore/kstandarddirs.cpp +=================================================================== +--- kdecore/kstandarddirs.cpp.orig ++++ kdecore/kstandarddirs.cpp +@@ -1290,6 +1290,8 @@ void KStandardDirs::addKDEDefaults() + } + } + ++ kdedirList.append("/etc/opt/kde3"); ++ + #ifndef Q_OS_WIN //no default KDEDIR on win32 defined + kdedirList.append(KDEDIR); + #endif diff --git a/opensuse/core/tdelibs.old/printpreview.patch b/opensuse/core/tdelibs.old/printpreview.patch new file mode 100644 index 000000000..ef3de21a4 --- /dev/null +++ b/opensuse/core/tdelibs.old/printpreview.patch @@ -0,0 +1,14 @@ +Index: kdeprint/kprintpreview.cpp +=================================================================== +--- kdeprint/kprintpreview.cpp.orig ++++ kdeprint/kprintpreview.cpp +@@ -108,6 +108,9 @@ static KLibFactory* componentFactory() + { + kdDebug(500) << "kdeprint: querying trader for 'application/postscript' service" << endl; + KLibFactory *factory(0); ++ factory = KLibLoader::self()->factory("libkghostviewpart"); ++ if( factory ) ++ return factory; + KTrader::OfferList offers = KTrader::self()->query(QString::fromLatin1("application/postscript"), QString::fromLatin1("KParts/ReadOnlyPart"), QString::null, QString::null); + for (KTrader::OfferList::ConstIterator it = offers.begin(); it != offers.end(); ++it) + { diff --git a/opensuse/core/tdelibs.old/r874968-ebay-crash.diff b/opensuse/core/tdelibs.old/r874968-ebay-crash.diff new file mode 100644 index 000000000..44dfb6eb4 --- /dev/null +++ b/opensuse/core/tdelibs.old/r874968-ebay-crash.diff @@ -0,0 +1,24 @@ +Index: khtml/rendering/table_layout.cpp +=================================================================== +--- khtml/rendering/table_layout.cpp.orig ++++ khtml/rendering/table_layout.cpp +@@ -297,7 +297,8 @@ void FixedTableLayout::layout() + #endif + for ( int i = 0; available > 0 && i < nEffCols; i++ ) { + if ( width[i].isPercent() ) { +- int w = base * width[i].value() / totalPercent; ++ // totalPercent may be 0 below if all %-width specifed are 0%. (#172557) ++ int w = totalPercent ? base * width[i].value() / totalPercent : 0; + available -= w; + calcWidth[i] = w; + } +@@ -313,7 +314,8 @@ void FixedTableLayout::layout() + + for ( int i = 0; available > 0 && i < nEffCols; i++ ) { + if ( width[i].isVariable() ) { +- int w = available / totalVariable; ++ // totalVariable may be 0 below if all the variable widths specified are 0. ++ int w = totalVariable ? available / totalVariable : 0; + available -= w; + calcWidth[i] = w; + totalVariable--; diff --git a/opensuse/core/tdelibs.old/rubberband-selection.diff b/opensuse/core/tdelibs.old/rubberband-selection.diff new file mode 100644 index 000000000..d2b75f17c --- /dev/null +++ b/opensuse/core/tdelibs.old/rubberband-selection.diff @@ -0,0 +1,380 @@ +Index: kdefx/kstyle.cpp +=================================================================== +--- kdefx/kstyle.cpp.orig ++++ kdefx/kstyle.cpp +@@ -154,6 +154,7 @@ struct KStylePrivate + bool menuAltKeyNavigation : 1; + bool menuDropShadow : 1; + bool sloppySubMenus : 1; ++ bool semiTransparentRubberband : 1; + int popupMenuDelay; + float menuOpacity; + +@@ -187,6 +188,7 @@ KStyle::KStyle( KStyleFlags flags, KStyl + d->menuAltKeyNavigation = settings.readBoolEntry("/KStyle/Settings/MenuAltKeyNavigation", true); + d->scrollablePopupmenus = settings.readBoolEntry("/KStyle/Settings/ScrollablePopupMenus", false); + d->menuDropShadow = settings.readBoolEntry("/KStyle/Settings/MenuDropShadow", false); ++ d->semiTransparentRubberband = settings.readBoolEntry("/KStyle/Settings/SemiTransparentRubberband", false); + d->menuHandler = NULL; + + if (useMenuTransparency) { +@@ -553,7 +555,57 @@ void KStyle::drawPrimitive( PrimitiveEle + else + // General handle, probably a kicker applet handle. + drawKStylePrimitive( KPE_GeneralHandle, p, widget, r, cg, flags, opt ); +- ++#if QT_VERSION >= 0x030300 ++#ifdef HAVE_XRENDER ++ } else if ( d->semiTransparentRubberband && pe == QStyle::PE_RubberBand ) { ++ QRect rect = r.normalize(); ++ QPoint point; ++ point = p->xForm( point ); ++ ++ static XRenderColor clr = { 0, 0, 0, 0 }; ++ static unsigned long fillColor = 0; ++ if ( fillColor != cg.highlight().rgb() ) { ++ fillColor = cg.highlight().rgb(); ++ ++ unsigned long color = fillColor << 8 | 0x40; ++ ++ int red = (color >> 24) & 0xff; ++ int green = (color >> 16) & 0xff; ++ int blue = (color >> 8) & 0xff; ++ int alpha = (color >> 0) & 0xff; ++ ++ red = red * alpha / 255; ++ green = green * alpha / 255; ++ blue = blue * alpha / 255; ++ ++ clr.red = (red << 8) + red; ++ clr.green = (green << 8) + green; ++ clr.blue = (blue << 8) + blue; ++ clr.alpha = (alpha << 8) + alpha; ++ } ++ ++ XRenderFillRectangle( ++ p->device()->x11Display(), ++ PictOpOver, ++ p->device()->x11RenderHandle(), ++ &clr, ++ rect.x() + point.x(), ++ rect.y() + point.y(), ++ rect.width(), ++ rect.height() ); ++ ++ p->save(); ++ p->setRasterOp( Qt::CopyROP ); ++ p->setPen( QPen( cg.highlight().dark( 160 ), 1 ) ); ++ p->setBrush( NoBrush ); ++ p->drawRect( ++ rect.x() + point.x(), ++ rect.y() + point.y(), ++ rect.width(), ++ rect.height() ); ++ p->restore(); ++#endif ++#endif + } else + QCommonStyle::drawPrimitive( pe, p, r, cg, flags, opt ); + } +Index: kdeui/kiconview.cpp +=================================================================== +--- kdeui/kiconview.cpp.orig ++++ kdeui/kiconview.cpp +@@ -548,7 +548,7 @@ void KIconViewItem::calcRect( const QStr + r = m_wordWrap->boundingRect(); + + int realWidth = QMAX( QMIN( r.width() + 4, tw ), fm->width( "X" ) ); +- itemTextRect.setWidth( realWidth ); ++ itemTextRect.setWidth( realWidth + 4 ); + itemTextRect.setHeight( r.height() ); + + int w = 0; int h = 0; int y = 0; +@@ -699,11 +699,13 @@ void KIconViewItem::paintPixmap( QPainte + + void KIconViewItem::paintText( QPainter *p, const QColorGroup &cg ) + { +- int textX = textRect( false ).x() + 2; ++ int textX = textRect( false ).x() + 4; + int textY = textRect( false ).y(); + + if ( isSelected() ) { +- p->fillRect( textRect( false ), cg.highlight() ); ++ p->setBrush(QBrush(cg.highlight())); ++ p->setPen(QPen(cg.highlight())); ++ p->drawRoundRect( textRect( false ) ,1000/textRect(false).width(),1000/textRect(false).height() ); + p->setPen( QPen( cg.highlightedText() ) ); + } else { + if ( iconView()->itemTextBackground() != NoBrush ) +Index: kdeui/kjanuswidget.cpp +=================================================================== +--- kdeui/kjanuswidget.cpp.orig ++++ kdeui/kjanuswidget.cpp +@@ -49,16 +49,19 @@ class KJanusWidget::IconListItem : publi + { + public: + IconListItem( QListBox *listbox, const QPixmap &pixmap, +- const QString &text ); ++ const QString &text ); + virtual int height( const QListBox *lb ) const; + virtual int width( const QListBox *lb ) const; + int expandMinimumWidth( int width ); ++ void highlight( bool erase ); + + protected: + const QPixmap &defaultPixmap(); + void paint( QPainter *painter ); +- ++ + private: ++ void paintContents( QPainter *painter ); ++ + QPixmap mPixmap; + int mMinimumWidth; + }; +@@ -141,6 +144,8 @@ KJanusWidget::KJanusWidget( QWidget *par + + mIconList->verticalScrollBar()->installEventFilter( this ); + connect( mIconList, SIGNAL(selectionChanged()), SLOT(slotShowPage())); ++ connect( mIconList, SIGNAL(onItem(QListBoxItem *)), SLOT(slotOnItem(QListBoxItem *))); ++ + hbox->addSpacing( KDialog::marginHint() ); + page = new QFrame( this ); + hbox->addWidget( page, 10 ); +@@ -259,7 +264,7 @@ void KJanusWidget::slotReopen( QListView + } + + QFrame *KJanusWidget::addPage( const QString &itemName, const QString &header, +- const QPixmap &pixmap ) ++ const QPixmap &pixmap ) + { + QStringList items; + items << itemName; +@@ -269,8 +274,8 @@ QFrame *KJanusWidget::addPage( const QSt + + + QVBox *KJanusWidget::addVBoxPage( const QStringList &items, +- const QString &header, +- const QPixmap &pixmap ) ++ const QString &header, ++ const QPixmap &pixmap ) + { + if( !mValid ) + { +@@ -721,6 +726,12 @@ void KJanusWidget::slotItemClicked(QList + it->setOpen(!it->isOpen()); + } + ++// hack because qt does not support Q_OBJECT in nested classes ++void KJanusWidget::slotOnItem(QListBoxItem *qitem) ++{ ++ mIconList->slotOnItem( qitem ); ++} ++ + void KJanusWidget::setFocus() + { + if( !mValid ) { return; } +@@ -929,11 +940,11 @@ bool KJanusWidget::eventFilter( QObject + KJanusWidget::IconListBox::IconListBox( QWidget *parent, const char *name, + WFlags f ) + :KListBox( parent, name, f ), mShowAll(false), mHeightValid(false), +- mWidthValid(false) ++ mWidthValid(false), ++ mOldItem(0) + { + } + +- + void KJanusWidget::IconListBox::updateMinimumHeight() + { + if( mShowAll && !mHeightValid ) +@@ -995,6 +1006,45 @@ void KJanusWidget::IconListBox::setShowA + } + + ++void KJanusWidget::IconListBox::leaveEvent( QEvent *ev ) ++{ ++ KListBox::leaveEvent( ev ); ++ ++ if ( mOldItem && !mOldItem->isSelected() ) ++ { ++ ((KJanusWidget::IconListItem *) mOldItem)->highlight( true ); ++ mOldItem = 0; ++ } ++} ++ ++// hack because qt does not support Q_OBJECT in nested classes ++void KJanusWidget::IconListBox::slotOnItem(QListBoxItem *qitem) ++{ ++ KListBox::slotOnItem( qitem ); ++ ++ if ( qitem == mOldItem ) ++ { ++ return; ++ } ++ ++ if ( mOldItem && !mOldItem->isSelected() ) ++ { ++ ((KJanusWidget::IconListItem *) mOldItem)->highlight( true ); ++ } ++ ++ KJanusWidget::IconListItem *item = dynamic_cast< KJanusWidget::IconListItem * >( qitem ); ++ if ( item && !item->isSelected() ) ++ { ++ item->highlight( false ); ++ mOldItem = item; ++ } ++ else ++ { ++ mOldItem = 0; ++ } ++} ++ ++ + + KJanusWidget::IconListItem::IconListItem( QListBox *listbox, const QPixmap &pixmap, + const QString &text ) +@@ -1006,6 +1056,7 @@ KJanusWidget::IconListItem::IconListItem + mPixmap = defaultPixmap(); + } + setText( text ); ++ setCustomHighlighting( true ); + mMinimumWidth = 0; + } + +@@ -1017,6 +1068,36 @@ int KJanusWidget::IconListItem::expandMi + } + + ++void KJanusWidget::IconListItem::highlight( bool erase ) ++{ ++ QRect r = listBox()->itemRect( this ); ++ r.addCoords( 1, 1, -1, -1 ); ++ ++ QPainter p( listBox()->viewport() ); ++ p.setClipRegion( r ); ++ ++ const QColorGroup &cg = listBox()->colorGroup(); ++ if ( erase ) ++ { ++ p.setPen( cg.base() ); ++ p.setBrush( cg.base() ); ++ p.drawRect( r ); ++ } ++ else ++ { ++ p.setBrush( cg.highlight().light( 120 ) ); ++ p.drawRect( r ); ++ ++ p.setPen( cg.highlight().dark( 140 ) ); ++ p.drawRect( r ); ++ } ++ ++ p.setPen( cg.foreground() ); ++ p.translate( r.x() - 1, r.y() - 1 ); ++ paintContents( &p ); ++} ++ ++ + const QPixmap &KJanusWidget::IconListItem::defaultPixmap() + { + static QPixmap *pix=0; +@@ -1044,15 +1125,34 @@ const QPixmap &KJanusWidget::IconListIte + + void KJanusWidget::IconListItem::paint( QPainter *painter ) + { ++ QRect itemPaintRegion( listBox()->itemRect( this ) ); ++ QRect r( 1, 1, itemPaintRegion.width() - 2, itemPaintRegion.height() - 2); ++ ++ if ( isSelected() ) ++ { ++ painter->eraseRect( r ); ++ ++ painter->save(); ++ painter->setPen( listBox()->colorGroup().highlight().dark( 160 ) ); ++ painter->drawRect( r ); ++ painter->restore(); ++ } ++ ++ paintContents( painter ); ++} ++ ++ ++void KJanusWidget::IconListItem::paintContents( QPainter *painter ) ++{ + QFontMetrics fm = painter->fontMetrics(); + int ht = fm.boundingRect( 0, 0, 0, 0, Qt::AlignCenter, text() ).height(); + int wp = mPixmap.width(); + int hp = mPixmap.height(); ++ painter->drawPixmap( (mMinimumWidth - wp) / 2, 5, mPixmap ); + +- painter->drawPixmap( (mMinimumWidth-wp)/2, 5, mPixmap ); + if( !text().isEmpty() ) + { +- painter->drawText( 0, hp+7, mMinimumWidth, ht, Qt::AlignCenter, text() ); ++ painter->drawText( 1, hp + 7, mMinimumWidth - 2, ht, Qt::AlignCenter, text() ); + } + } + +@@ -1082,6 +1182,7 @@ int KJanusWidget::IconListItem::width( c + void KJanusWidget::virtual_hook( int, void* ) + { /*BASE::virtual_hook( id, data );*/ } + ++ + // TODO: In TreeList, if the last child of a node is removed, and there is no corrsponding widget for that node, allow the caller to + // delete the node. + void KJanusWidget::removePage( QWidget *page ) +@@ -1129,6 +1230,7 @@ void KJanusWidget::removePage( QWidget * + } + } + ++ + QString KJanusWidget::pageTitle(int index) const + { + if (!d || !d->mIntToTitle.contains(index)) +@@ -1137,6 +1239,7 @@ QString KJanusWidget::pageTitle(int inde + return d->mIntToTitle[index]; + } + ++ + QWidget *KJanusWidget::pageWidget(int index) const + { + if (!d || !d->mIntToPage.contains(index)) +Index: kdeui/kjanuswidget.h +=================================================================== +--- kdeui/kjanuswidget.h.orig ++++ kdeui/kjanuswidget.h +@@ -71,6 +71,8 @@ class KDEUI_EXPORT KJanusWidget : public + private: + class IconListBox : public KListBox + { ++ friend class KJanusWidget; ++ + public: + IconListBox( QWidget *parent=0, const char *name=0, WFlags f=0 ); + void updateMinimumHeight(); +@@ -79,10 +81,15 @@ class KDEUI_EXPORT KJanusWidget : public + void invalidateWidth(); + void setShowAll( bool showAll ); + ++ protected: ++ void slotOnItem( QListBoxItem *item ); ++ virtual void leaveEvent( QEvent * ); ++ + private: + bool mShowAll; + bool mHeightValid; + bool mWidthValid; ++ QListBoxItem *mOldItem; + }; + + public: +@@ -558,6 +565,8 @@ class KDEUI_EXPORT KJanusWidget : public + private slots: + bool slotShowPage(); + void slotFontChanged(); ++ ++ void slotOnItem(QListBoxItem *item); + void slotItemClicked(QListViewItem *it); + void pageGone(QObject *obj); // signal from the added page's "destroyed" signal + void slotReopen(QListViewItem *item); diff --git a/opensuse/core/tdelibs.old/show-distribution.diff b/opensuse/core/tdelibs.old/show-distribution.diff new file mode 100644 index 000000000..6906ed0a4 --- /dev/null +++ b/opensuse/core/tdelibs.old/show-distribution.diff @@ -0,0 +1,21 @@ +Index: kdeui/kaboutdialog.cpp +=================================================================== +--- kdeui/kaboutdialog.cpp.orig ++++ kdeui/kaboutdialog.cpp +@@ -40,6 +40,7 @@ + #include + #include + #include ++#include + + //MOC_SKIP_BEGIN + template class QPtrList; +@@ -702,7 +703,7 @@ void KAboutContainerBase::setProduct( co + kdDebug(291) << "no kapp" << endl; + + const QString msg1 = i18n("%1 %2 (Using KDE %3)").arg(appName).arg(version). +- arg(QString::fromLatin1(KDE_VERSION_STRING)); ++ arg(QString::fromLatin1(KDE_VERSION_STRING) + " " + QString::fromLatin1(KDE_DISTRIBUTION_TEXT)); + const QString msg2 = !year.isEmpty() ? i18n("%1 %2, %3").arg('').arg(year). + arg(author) : QString::fromLatin1(""); + diff --git a/opensuse/core/tdelibs.old/silence.diff b/opensuse/core/tdelibs.old/silence.diff new file mode 100644 index 000000000..7dbbbb997 --- /dev/null +++ b/opensuse/core/tdelibs.old/silence.diff @@ -0,0 +1,13 @@ +Index: kded/kbuildservicefactory.cpp +=================================================================== +--- kded/kbuildservicefactory.cpp.orig ++++ kded/kbuildservicefactory.cpp +@@ -158,7 +158,7 @@ KBuildServiceFactory::saveOfferList(QDat + KServiceType::Ptr serviceType = KServiceType::serviceType(*it); + if (!serviceType) + { +- kdWarning() << "'"<< service->desktopEntryPath() << "' specifies undefined mimetype/servicetype '"<< (*it) << "'" << endl; ++ kdDebug() << "'"<< service->desktopEntryPath() << "' specifies undefined mimetype/servicetype '"<< (*it) << "'" << endl; + continue; + } + serviceTypes.append(serviceType); diff --git a/opensuse/core/tdelibs.old/smooth-scrolling.diff b/opensuse/core/tdelibs.old/smooth-scrolling.diff new file mode 100644 index 000000000..b369a6146 --- /dev/null +++ b/opensuse/core/tdelibs.old/smooth-scrolling.diff @@ -0,0 +1,267 @@ +Index: khtml/khtmlview.cpp +=================================================================== +--- khtml/khtmlview.cpp.orig ++++ khtml/khtmlview.cpp +@@ -151,6 +151,9 @@ public: + + KHTMLViewPrivate() + : underMouse( 0 ), underMouseNonShared( 0 ), visibleWidgets( 107 ) ++#ifndef NO_SMOOTH_SCROLL_HACK ++ , dx(0), dy(0), ddx(0), ddy(0), rdx(0), rdy(0), scrolling(false) ++#endif + { + #ifndef KHTML_NO_CARET + m_caretViewContext = 0; +@@ -396,6 +399,17 @@ public: + short m_mouseScroll_byY; + QTimer *m_mouseScrollTimer; + QWidget *m_mouseScrollIndicator; ++#ifndef NO_SMOOTH_SCROLL_HACK ++ QTimer timer2; ++ int dx; ++ int dy; ++ // Step size * 16 and residual to avoid huge difference between 1px/step and 2px/step ++ int ddx; ++ int ddy; ++ int rdx; ++ int rdy; ++ bool scrolling; ++#endif + }; + + #ifndef QT_NO_TOOLTIP +@@ -504,6 +518,11 @@ KHTMLView::KHTMLView( KHTMLPart *part, Q + init(); + + viewport()->show(); ++#ifndef NO_SMOOTH_SCROLL_HACK ++#define timer timer2 ++ connect(&d->timer, SIGNAL(timeout()), this, SLOT(scrollTick())); ++#undef timer ++#endif + } + + KHTMLView::~KHTMLView() +@@ -1544,7 +1563,7 @@ void KHTMLView::keyPressEvent( QKeyEvent + case Key_Down: + case Key_J: + if (!d->scrollTimerId || d->scrollSuspended) +- scrollBy( 0, 10 ); ++ scrollBy( 0, 10 * _ke->count() ); + if (d->scrollTimerId) + d->newScrollTimer(this, 0); + break; +@@ -1559,7 +1578,7 @@ void KHTMLView::keyPressEvent( QKeyEvent + case Key_Up: + case Key_K: + if (!d->scrollTimerId || d->scrollSuspended) +- scrollBy( 0, -10 ); ++ scrollBy( 0, -10 * _ke->count()); + if (d->scrollTimerId) + d->newScrollTimer(this, 0); + break; +@@ -1572,14 +1591,14 @@ void KHTMLView::keyPressEvent( QKeyEvent + case Key_Right: + case Key_L: + if (!d->scrollTimerId || d->scrollSuspended) +- scrollBy( 10, 0 ); ++ scrollBy( 10 * _ke->count(), 0 ); + if (d->scrollTimerId) + d->newScrollTimer(this, 0); + break; + case Key_Left: + case Key_H: + if (!d->scrollTimerId || d->scrollSuspended) +- scrollBy( -10, 0 ); ++ scrollBy( -10 * _ke->count(), 0 ); + if (d->scrollTimerId) + d->newScrollTimer(this, 0); + break; +@@ -1712,8 +1731,16 @@ void KHTMLView::keyReleaseEvent(QKeyEven + d->scrollSuspendPreActivate = false; + if( _ke->key() == Key_Shift && d->scrollSuspendPreActivate && _ke->state() == Qt::ShiftButton + && !(KApplication::keyboardMouseState() & Qt::ShiftButton)) ++ { + if (d->scrollTimerId) +- d->scrollSuspended = !d->scrollSuspended; ++ { ++ d->scrollSuspended = !d->scrollSuspended; ++#ifndef NO_SMOOTH_SCROLL_HACK ++ if( d->scrollSuspended ) ++ stopScrolling(); ++#endif ++ } ++ } + + if (d->accessKeysEnabled) + { +@@ -3259,7 +3286,11 @@ void KHTMLView::viewportWheelEvent(QWhee + else + { + d->scrollBarMoved = true; ++#ifndef NO_SMOOTH_SCROLL_HACK ++ scrollViewWheelEvent( e ); ++#else + QScrollView::viewportWheelEvent( e ); ++#endif + + QMouseEvent *tempEvent = new QMouseEvent( QEvent::MouseMove, QPoint(-1,-1), QPoint(-1,-1), Qt::NoButton, e->state() ); + emit viewportMouseMoveEvent ( tempEvent ); +@@ -4462,4 +4493,117 @@ void KHTMLView::moveCaretToLineEnd() + + #endif // KHTML_NO_CARET + ++#ifndef NO_SMOOTH_SCROLL_HACK ++#define timer timer2 ++ ++// All scrolls must be completed within 240ms of last keypress ++static const int SCROLL_TIME = 240; ++// Each step is 20 ms == 50 frames/second ++static const int SCROLL_TICK = 20; ++ ++void KHTMLView::scrollBy(int dx, int dy) ++{ ++ KConfigGroup cfg( KGlobal::config(), "KDE" ); ++ if( !cfg.readBoolEntry( "SmoothScrolling", true )) { ++ QScrollView::scrollBy( dx, dy ); ++ return; ++ } ++ // scrolling destination ++ int full_dx = d->dx + dx; ++ int full_dy = d->dy + dy; ++ ++ // scrolling speed ++ int ddx = 0; ++ int ddy = 0; ++ ++ int steps = SCROLL_TIME/SCROLL_TICK; ++ ++ ddx = (full_dx*16)/steps; ++ ddy = (full_dy*16)/steps; ++ ++ // don't go under 1px/step ++ if (ddx > 0 && ddx < 16) ddx = 16; ++ if (ddy > 0 && ddy < 16) ddy = 16; ++ if (ddx < 0 && ddx > -16) ddx = -16; ++ if (ddy < 0 && ddy > -16) ddy = -16; ++ ++ d->dx = full_dx; ++ d->dy = full_dy; ++ d->ddx = ddx; ++ d->ddy = ddy; ++ ++ if (!d->scrolling) { ++ scrollTick(); ++ startScrolling(); ++ } ++} ++ ++void KHTMLView::scrollTick() { ++ if (d->dx == 0 && d->dy == 0) { ++ stopScrolling(); ++ return; ++ } ++ ++ int tddx = d->ddx + d->rdx; ++ int tddy = d->ddy + d->rdy; ++ ++ int ddx = tddx / 16; ++ int ddy = tddy / 16; ++ d->rdx = tddx % 16; ++ d->rdy = tddy % 16; ++ ++ if (d->dx > 0 && ddx > d->dx) ddx = d->dx; ++ else ++ if (d->dx < 0 && ddx < d->dx) ddx = d->dx; ++ ++ if (d->dy > 0 && ddy > d->dy) ddy = d->dy; ++ else ++ if (d->dy < 0 && ddy < d->dy) ddy = d->dy; ++ ++ d->dx -= ddx; ++ d->dy -= ddy; ++ ++// QScrollView::setContentsPos( contentsX() + ddx, contentsY() + ddy); ++ kapp->syncX(); ++ QScrollView::scrollBy(ddx, ddy); ++// Unaccelerated X can get seriously overloaded by scrolling and for some reason ++// will send KeyPress events only infrequently. This should help to reduce ++// the load. ++ kapp->syncX(); ++} ++ ++void KHTMLView::startScrolling() ++{ ++ d->scrolling = true; ++ d->timer.start(SCROLL_TICK, false); ++} ++ ++void KHTMLView::stopScrolling() ++{ ++ d->timer.stop(); ++ d->dx = d->dy = 0; ++ d->scrolling = false; ++} ++ ++// Overloaded from QScrollView and QScrollBar ++void KHTMLView::scrollViewWheelEvent( QWheelEvent *e ) ++{ ++ int pageStep = verticalScrollBar()->pageStep(); ++ int lineStep = verticalScrollBar()->lineStep(); ++ int step = QMIN( QApplication::wheelScrollLines()*lineStep, pageStep ); ++ if ( ( e->state() & ControlButton ) || ( e->state() & ShiftButton ) ) ++ step = pageStep; ++ ++ if(e->orientation() == Horizontal) ++ scrollBy(-((e->delta()*step)/120), 0); ++ else if(e->orientation() == Vertical) ++ scrollBy(0,-((e->delta()*step)/120)); ++ ++ e->accept(); ++} ++ ++#undef timer ++ ++#endif // NO_SMOOTH_SCROLL_HACK ++ + #undef DEBUG_CARETMODE +Index: khtml/khtmlview.h +=================================================================== +--- khtml/khtmlview.h.orig ++++ khtml/khtmlview.h +@@ -181,6 +181,11 @@ signals: + void hideAccessKeys(); + void repaintAccessKeys(); + void findAheadActive( bool ); ++//#define NO_SMOOTH_SCROLL_HACK ++#ifndef NO_SMOOTH_SCROLL_HACK ++public slots: ++ void scrollBy(int dx, int dy); ++#endif + + protected: + void clear(); +@@ -211,9 +216,23 @@ protected: + void contentsContextMenuEvent ( QContextMenuEvent *_ce ); + void doAutoScroll(); + void timerEvent ( QTimerEvent * ); ++ ++#ifndef NO_SMOOTH_SCROLL_HACK ++ void startScrolling(); ++ void stopScrolling(); ++#ifndef QT_NO_WHEELEVENT ++ void scrollViewWheelEvent( QWheelEvent* e ); ++#endif ++#endif ++ + protected slots: + void slotPaletteChanged(); + void slotScrollBarMoved(); ++#ifndef NO_SMOOTH_SCROLL_HACK ++ void scrollTick(); ++#else ++ void scrollTick() {}; // moc cannot handle #if ++#endif + + private slots: + void tripleClickTimeout(); diff --git a/opensuse/core/tdelibs.old/spellcheck-default-utf8.diff b/opensuse/core/tdelibs.old/spellcheck-default-utf8.diff new file mode 100644 index 000000000..e663bdc69 --- /dev/null +++ b/opensuse/core/tdelibs.old/spellcheck-default-utf8.diff @@ -0,0 +1,26 @@ +Index: kdeui/ksconfig.cpp +=================================================================== +--- kdeui/ksconfig.cpp.orig ++++ kdeui/ksconfig.cpp +@@ -187,7 +187,7 @@ KSpellConfig::readGlobalSettings() + setRunTogether ( kc->readNumEntry("KSpell_RunTogether", 0) ); + setDictionary ( kc->readEntry("KSpell_Dictionary") ); + setDictFromList ( kc->readNumEntry("KSpell_DictFromList", false) ); +- setEncoding ( kc->readNumEntry ("KSpell_Encoding", KS_E_ASCII) ); ++ setEncoding ( kc->readNumEntry ("KSpell_Encoding", KS_E_UTF8) ); + setClient ( kc->readNumEntry ("KSpell_Client", KS_CLIENT_ISPELL) ); + + return true; +Index: kdeui/ksyntaxhighlighter.cpp +=================================================================== +--- kdeui/ksyntaxhighlighter.cpp.orig ++++ kdeui/ksyntaxhighlighter.cpp +@@ -551,7 +551,7 @@ QString KDictSpellingHighlighter::spellK + key += '/'; + key += QString::number( config->readNumEntry( "KSpell_DictFromList", false )); + key += '/'; +- key += QString::number( config->readNumEntry( "KSpell_Encoding", KS_E_ASCII )); ++ key += QString::number( config->readNumEntry( "KSpell_Encoding", KS_E_UTF8 )); + key += '/'; + key += QString::number( config->readNumEntry( "KSpell_Client", KS_CLIENT_ISPELL )); + return key; diff --git a/opensuse/core/tdelibs.old/stat-on-media.diff b/opensuse/core/tdelibs.old/stat-on-media.diff new file mode 100644 index 000000000..c8f25a9c8 --- /dev/null +++ b/opensuse/core/tdelibs.old/stat-on-media.diff @@ -0,0 +1,14 @@ +Index: kio/kio/kdirwatch.cpp +=================================================================== +--- kio/kio/kdirwatch.cpp.orig ++++ kio/kio/kdirwatch.cpp +@@ -743,7 +743,8 @@ bool KDirWatchPrivate::useINotify( Entry + + bool KDirWatchPrivate::useStat(Entry* e) + { +- if (KIO::probably_slow_mounted(e->path)) ++ if ( e->path.startsWith("/media/") || (e->path == "/media") ++ || (KIO::probably_slow_mounted(e->path)) ) + useFreq(e, m_nfsPollInterval); + else + useFreq(e, m_PollInterval); diff --git a/opensuse/core/tdelibs.old/tdelibs-devel-doc.changes b/opensuse/core/tdelibs.old/tdelibs-devel-doc.changes new file mode 100644 index 000000000..91e32f703 --- /dev/null +++ b/opensuse/core/tdelibs.old/tdelibs-devel-doc.changes @@ -0,0 +1,2956 @@ +------------------------------------------------------------------- +Wed Aug 20 18:43:12 CEST 2008 - coolo@suse.de + +- update to KDE 3.5.10 + * translation updates + * bugfixes + * desktop files validate + +------------------------------------------------------------------- +Mon Nov 5 14:46:16 CET 2007 - dmueller@suse.de + +- remove nosource tag + +------------------------------------------------------------------- +Tue Oct 9 10:53:20 CEST 2007 - stbinner@suse.de + +- update to KDE 3.5.8 + +------------------------------------------------------------------- +Wed May 23 13:54:36 CEST 2007 - stbinner@suse.de + +- use %fdupes + +------------------------------------------------------------------- +Mon May 14 22:13:16 CEST 2007 - stbinner@suse.de + +- update to KDE 3.5.7 + +------------------------------------------------------------------- +Tue Oct 3 10:23:35 CEST 2006 - stbinner@suse.de + +- update to KDE 3.5.5 + +------------------------------------------------------------------- +Sun Jul 23 21:32:19 CEST 2006 - coolo@suse.de + +- update to KDE 3.5.4 + +------------------------------------------------------------------- +Mon May 29 09:39:14 CEST 2006 - stbinner@suse.de + +- fix build of kdelibs3-devel-doc + +------------------------------------------------------------------- +Wed May 24 09:53:23 CEST 2006 - stbinner@suse.de + +- update to KDE 3.5.3 + +------------------------------------------------------------------- +Mon Mar 20 13:31:55 CET 2006 - stbinner@suse.de + +- update to KDE 3.5.2 + +------------------------------------------------------------------- +Tue Mar 7 12:21:56 CET 2006 - coolo@suse.de + +- require qt3-devel-doc + +------------------------------------------------------------------- +Wed Mar 1 09:52:03 CET 2006 - coolo@suse.de + +- point apidox.sh to the right Qt location (#135850) + +------------------------------------------------------------------- +Fri Jan 27 01:55:42 CET 2006 - mls@suse.de + +- converted neededforbuild to BuildRequires + +------------------------------------------------------------------- +Sat Jan 21 20:23:19 CET 2006 - coolo@suse.de + +- update to KDE 3.5.1 + +------------------------------------------------------------------- +Wed Dec 21 14:57:44 CET 2005 - dmueller@suse.de + +- merge with kdelibs3 source dir + +------------------------------------------------------------------- +Mon Dec 19 16:49:10 CET 2005 - dmueller@suse.de + +- fix file list + +------------------------------------------------------------------- +Mon Nov 28 14:18:52 CET 2005 - dmueller@suse.de + +- update to 3.5.0 + +------------------------------------------------------------------- +Mon Nov 21 15:14:45 CET 2005 - stbinner@suse.de + +- update to 3.5 RC 2 + +------------------------------------------------------------------- +Tue Nov 15 11:17:33 CET 2005 - dmueller@suse.de + +- hack to avoid a kdelibs3 update today + +------------------------------------------------------------------- +Mon Nov 14 11:23:56 CET 2005 - dmueller@suse.de + +- update to 3.5.0 + +------------------------------------------------------------------- +Fri Oct 14 18:59:10 CEST 2005 - dmueller@suse.de + +- update to 3.4.92 + +------------------------------------------------------------------- +Thu Sep 29 16:54:50 CEST 2005 - coolo@suse.de + +- simplifying build a lot + +------------------------------------------------------------------- +Wed Sep 28 13:36:53 CEST 2005 - dmueller@suse.de + +- fix build + +------------------------------------------------------------------- +Tue Sep 27 15:20:28 CEST 2005 - dmueller@suse.de + +- fix build on 64 bit platforms + +------------------------------------------------------------------- +Tue Sep 27 13:42:22 CEST 2005 - dmueller@suse.de + +- and again.. + +------------------------------------------------------------------- +Tue Sep 27 02:49:09 CEST 2005 - ro@suse.de + +- fix build again + +------------------------------------------------------------------- +Sat Sep 24 12:31:03 CEST 2005 - dmueller@suse.de + +- build.. + +------------------------------------------------------------------- +Fri Sep 23 19:27:46 CEST 2005 - dmuelle@suse.de + +- fixed typo in specfile + +------------------------------------------------------------------- +Fri Sep 23 15:17:49 CEST 2005 - dmueller@suse.de + +- update to 3.4.91 + +------------------------------------------------------------------- +Mon Sep 12 13:24:55 CEST 2005 - dmueller@suse.de + +- Fix /opt/kde3/share/doc/HTML/en/common/* conflicts + +------------------------------------------------------------------- +Sat Sep 10 18:25:34 CEST 2005 - aj@suse.de + +- Remove wrong requires/provides/obsoletes. + +------------------------------------------------------------------- +Sat Sep 10 10:52:48 CEST 2005 - aj@suse.de + +- Fix package build. + +------------------------------------------------------------------- +Fri Sep 9 16:45:30 CEST 2005 - dmueller@suse.de + +- split kdelibs3 into a noarch subpackage devel-docs + +------------------------------------------------------------------- +Thu Sep 8 13:05:04 CEST 2005 - bg@suse.de + +- disable --as-needed for hppa (does not build with that option) + +------------------------------------------------------------------- +Thu Sep 8 08:04:42 CEST 2005 - coolo@suse.de + +- let the icon loader find the suse specials independent on the theme + (#115139 and others) + +------------------------------------------------------------------- +Wed Sep 7 21:37:08 CEST 2005 - dmueller@suse.de + +- fix kwallet wizard being 3000px in size (#114954) + +------------------------------------------------------------------- +Wed Sep 7 19:52:20 CEST 2005 - dmueller@suse.de + +- fix kpdf embedding crashes (#114724) +- add forgotten patch for mozilla/dragonegg integration + +------------------------------------------------------------------- +Wed Sep 7 16:05:58 CEST 2005 - dmueller@suse.de + +- improve TIFF detection (#114319) + +------------------------------------------------------------------- +Tue Sep 6 19:53:03 CEST 2005 - dmueller@suse.de + +- fix JPEG2000 support in KImgio (#115324) + +------------------------------------------------------------------- +Tue Aug 23 15:35:24 CEST 2005 - coolo@suse.de + +- add mimetype for OOo base (#72285) + +------------------------------------------------------------------- +Tue Aug 23 13:26:36 CEST 2005 - coolo@suse.de + +- don't play around with xauth when the host name changes + (#98627) + +------------------------------------------------------------------- +Tue Aug 23 03:54:04 CEST 2005 - dmueller@suse.de + +- fix novell.com language selector (#106008) + +------------------------------------------------------------------- +Mon Aug 22 14:20:42 CEST 2005 - coolo@suse.de + +- don't put libkdeinit_*.so in -devel + +------------------------------------------------------------------- +Sun Aug 21 11:42:34 CEST 2005 - coolo@suse.de + +- update from 3.4 branch to fix endless kio_http loop +- fix DPMS check in admin (broke with --enable-new-ldflags) + +------------------------------------------------------------------- +Sat Aug 20 16:06:01 CEST 2005 - coolo@suse.de + +- update from 3.4 branch +- pleasing the libtool check + +------------------------------------------------------------------- +Fri Aug 19 14:12:41 CEST 2005 - adrian@suse.de + +- fix endless loop, if no KDEMM backend can get found (#105772) + +------------------------------------------------------------------- +Fri Aug 19 10:22:14 CEST 2005 - llunak@suse.cz + +- Fix QXEmbed to have focus working properly in yast+kcontrol + (#46495). + +------------------------------------------------------------------- +Thu Aug 18 17:15:40 CEST 2005 - adrian@suse.de + +- do not use KLIRRRRR sound on popular request ... + +------------------------------------------------------------------- +Thu Aug 18 10:18:54 CEST 2005 - coolo@suse.de + +- extend kde_post_install of common_options + +------------------------------------------------------------------- +Wed Aug 17 16:20:44 CEST 2005 - adrian@suse.de + +- move arts dependency to -arts package +- clean up really all SimplePlayers in knotify, might cause a crash + which needs to be debugged + +------------------------------------------------------------------- +Mon Aug 15 04:25:38 CEST 2005 - dmueller@suse.de + +- fix horizontal scrolling in KHTML broken by the smooth scrolling + patch (#76565). + +------------------------------------------------------------------- +Sat Aug 13 16:03:17 CEST 2005 - adrian@suse.de + +- fix memory/handle leak in knotify while playing sound via kdemm + knotify can still hang, if all alsa channels are used. (#97588) +- install icons for BitTorrent MimeType + +------------------------------------------------------------------- +Thu Aug 11 15:58:43 CEST 2005 - coolo@suse.de + +- removing all of the extraicons patch, it doesn't work at all anymore + so we need a new solution (also #85839 I guess) +- updated 3.4 branch to get a fix for a crashing dcopserver and + hanging mounts (#102564) + +------------------------------------------------------------------- +Thu Aug 4 13:33:12 CEST 2005 - sbrabec@suse.cz + +- Removed share/pixmaps links from crystalsvg (#85839). + +------------------------------------------------------------------- +Mon Aug 1 18:37:53 CEST 2005 - coolo@suse.de + +- 3.4 update replacing custom patches + +------------------------------------------------------------------- +Fri Jul 29 17:31:21 CEST 2005 - dmueller@suse.de + +- Update admin tarball to include -Wno-non-virtual-dtor flag +- Fix PIE detection (#98889) +- Fix visibility support + +------------------------------------------------------------------- +Tue Jul 26 11:45:19 CEST 2005 - llunak@suse.cz + +- Fix #96594 (knotify logout timeout) + +------------------------------------------------------------------- +Fri Jul 22 10:51:28 CEST 2005 - coolo@suse.de + +- update to version 3.4.2 + +------------------------------------------------------------------- +Mon May 30 16:19:20 CEST 2005 - adrian@suse.de + +- fix build for released distributions + +------------------------------------------------------------------- +Tue May 24 11:54:02 CEST 2005 - adrian@suse.de + +- update to version 3.4.1 +- set level back to "a" + +------------------------------------------------------------------- +Fri May 13 21:49:46 CEST 2005 - coolo@suse.de + +- init variable + +------------------------------------------------------------------- +Tue Apr 19 10:21:55 CEST 2005 - coolo@suse.de + +- update admin for gcc4 + +------------------------------------------------------------------- +Thu Apr 14 17:17:06 CEST 2005 - sbrabec@suse.cz + +- Added audiofile-devel to neededforbuild. + +------------------------------------------------------------------- +Thu Apr 14 12:07:18 CEST 2005 - adrian@suse.de + +- update to current 3_4_BRANCH + * parallel build order fix +- do not export kdemm video player api, it will not get any + implementation in this way + +------------------------------------------------------------------- +Wed Apr 13 11:34:45 CEST 2005 - adrian@suse.de + +- update to current 3_4_BRANCH +- increase patch Level to "c" +- export kdemm mixer interface + +------------------------------------------------------------------- +Fri Apr 8 11:46:38 CEST 2005 - adrian@suse.de + +- port kfilepreview to kdemm +- extra arts subpackages, aRts is optional now ! +- add DNS resolver fix from 3_4_BRANCH + +------------------------------------------------------------------- +Mon Apr 4 14:42:49 CEST 2005 - adrian@suse.de + +- add missing #include to fix compile of kdemm players + +------------------------------------------------------------------- +Mon Apr 4 11:01:08 CEST 2005 - coolo@suse.de + +- enable features for new ld + +------------------------------------------------------------------- +Fri Apr 1 11:54:56 CEST 2005 - adrian@suse.de + +- fix build with gcc 4, exporting kdemm classes + +------------------------------------------------------------------- +Thu Mar 31 13:46:09 CEST 2005 - adrian@suse.de + +- first steps to make arts optional: + * add experimental kdemm support for post 9.3 + * use kdemm instead of arts in knotify + * TODO: port kfileaudiopreview to kdemm +- do not overrule CFLAGS from spec files + +------------------------------------------------------------------- +Wed Mar 30 16:10:39 CEST 2005 - coolo@suse.de + +- disable visibility when compiled with debug (for testkhtml) + +------------------------------------------------------------------- +Mon Mar 28 18:46:22 CEST 2005 - schwab@suse.de + +- common_options: also set CFLAGS. + +------------------------------------------------------------------- +Sat Mar 19 14:54:24 CET 2005 - aj@suse.de + +- Integrate patch from Waldo Bastian for #71888 to fix + accessing of Netscape bookmarks in konqueror. + +------------------------------------------------------------------- +Fri Mar 18 13:40:41 CET 2005 - adrian@suse.de + +- fix aspell support +- fixes from 3_4_BRANCH + * toolbar configuration fix (#73662) + * IPv6 blacklist io-slave fix + * a khtml crash fix with innerweb + * redirection fix to uppercase written top level domains + +------------------------------------------------------------------- +Tue Mar 15 13:30:48 CET 2005 - adrian@suse.de + +- fix kspell recursion, visible in kbabel (#72773 by Waldo) + +------------------------------------------------------------------- +Mon Mar 14 15:32:48 CET 2005 - coolo@suse.de + +- take susetranslations.mo into account for translations + +------------------------------------------------------------------- +Mon Mar 14 14:01:15 CET 2005 - coolo@suse.de + +- fix smoothscrolling patch (Lubos) +- adding some more kate fixes from branch + +------------------------------------------------------------------- +Fri Mar 11 14:55:14 CET 2005 - coolo@suse.de + +- some more fixes from 3_4_BRANCH + +------------------------------------------------------------------- +Tue Mar 8 13:47:31 CET 2005 - adrian@suse.de + +- various updates from cvs + * missing kate initialising (Lubos) + * kcmmodule crash fixed (Waldo) + * khtml fixes + +------------------------------------------------------------------- +Mon Mar 7 16:55:17 CET 2005 - adrian@suse.de + +- fix progress bar (from KDE cvs) + +------------------------------------------------------------------- +Mon Mar 7 14:32:27 CET 2005 - coolo@suse.de + +- add fix for broken webdav URLs (#59203) + +------------------------------------------------------------------- +Sat Mar 5 10:19:48 CET 2005 - adrian@suse.de + +- fixes from KDE cvs: + * support Netware based ftp servers in kio_ftp + * fix proxy socks support + +------------------------------------------------------------------- +Sat Mar 5 09:22:49 CET 2005 - adrian@suse.de + +- update to version 3.4 final (not final try) + +------------------------------------------------------------------- +Wed Mar 2 10:01:46 CET 2005 - adrian@suse.de + +- update scrollview patch to BC version +- move Requires: kdelibs3_doc to kdebase3 + +------------------------------------------------------------------- +Sat Feb 26 10:34:21 CET 2005 - adrian@suse.de + +- update to 3.4.0 RC1 + +------------------------------------------------------------------- +Thu Feb 24 13:16:10 CET 2005 - adrian@suse.de + +- update to version 3.4.0 RC1 try 1 + +------------------------------------------------------------------- +Tue Feb 22 16:51:01 CET 2005 - adrian@suse.de + +- update to current CVS +- add soft scrolling patch from Allan Sandfeld + +------------------------------------------------------------------- +Tue Feb 22 10:47:34 CET 2005 - adrian@suse.de + +- remove secure ICE patch again, it is part of CVS now + +------------------------------------------------------------------- +Mon Feb 21 11:26:34 CET 2005 - adrian@suse.de + +- update to current CVS + +------------------------------------------------------------------- +Fri Feb 18 11:18:03 CET 2005 - adrian@suse.de + +- update to current CVS + +------------------------------------------------------------------- +Wed Feb 16 17:53:31 CET 2005 - adrian@suse.de + +- remove floppy:/ from file dialog again, media:/ is enough + +------------------------------------------------------------------- +Mon Feb 14 14:41:13 CET 2005 - adrian@suse.de + +- update from CVS +- add rubberband patch from Andre Moreira Magalhaes, disabled by + default + +------------------------------------------------------------------- +Mon Feb 14 11:49:33 CET 2005 - adrian@suse.de + +- make it possible to disable IDN support via KDE_NO_IDN enviroment + variable + +------------------------------------------------------------------- +Sun Feb 13 10:26:22 CET 2005 - coolo@suse.de + +- fix do_make -j15 + +------------------------------------------------------------------- +Fri Feb 11 10:29:44 CET 2005 - adrian@suse.de + +- update from CVS + +------------------------------------------------------------------- +Wed Feb 9 15:57:01 CET 2005 - adrian@suse.de + +- apply patch from Waldo to set ICE sockets to 0700 permissions + +------------------------------------------------------------------- +Mon Feb 7 11:28:36 CET 2005 - adrian@suse.de + +- update to beta 2 + +------------------------------------------------------------------- +Sat Jan 29 10:59:09 CET 2005 - coolo@suse.de + +- fix --no-unsermake + +------------------------------------------------------------------- +Fri Jan 28 16:53:21 CET 2005 - meissner@suse.de + +- removed setuid root binary kgrantpty which is not needed + since 8.1... + +------------------------------------------------------------------- +Fri Jan 28 15:11:47 CET 2005 - adrian@suse.de + +- update to current snapshot +- use external unsermake now + +------------------------------------------------------------------- +Tue Jan 25 15:41:07 CET 2005 - adrian@suse.de + +- adapt file dialog for media slave and remove floppy icon + +------------------------------------------------------------------- +Mon Jan 24 21:05:47 CET 2005 - coolo@suse.de + +- update to current snapshot (for testkhtml) + +------------------------------------------------------------------- +Thu Jan 20 16:53:31 CET 2005 - adrian@suse.de + +- update to current snapshot + +------------------------------------------------------------------- +Sat Jan 15 21:05:52 CET 2005 - schwab@suse.de + +- Use : in permissions file. + +------------------------------------------------------------------- +Fri Jan 14 14:58:39 CET 2005 - adrian@suse.de + +- update to current HEAD +- disable limit-image-size patch, since it got also disabled in qt + +------------------------------------------------------------------- +Thu Jan 13 15:05:49 CET 2005 - coolo@suse.de + +- update to HEAD to get kdebase HEAD compiled + +------------------------------------------------------------------- +Mon Jan 10 11:56:08 CET 2005 - adrian@suse.de + +- fix kprinter.h header, this fixes the build of kdebindings + +------------------------------------------------------------------- +Mon Jan 10 09:37:17 CET 2005 - coolo@suse.de + +- fix permissions of do_make + +------------------------------------------------------------------- +Sun Jan 9 10:01:53 CET 2005 - adrian@suse.de + +- final 3.4 beta 1 + +------------------------------------------------------------------- +Tue Jan 4 11:49:56 CET 2005 - coolo@suse.de + +- update to 3.4 beta 1 (first snapshot) + +------------------------------------------------------------------- +Fri Dec 17 09:24:58 CET 2004 - coolo@suse.de + +- let -Wl, pass in $LDFLAGS +- fix quoting in make wrapper + +------------------------------------------------------------------- +Thu Dec 16 21:32:19 CET 2004 - hvogel@suse.de + +- change icon to about_kde. go comes from another package and + we dont want kdelibs require kdebase + +------------------------------------------------------------------- +Wed Dec 15 12:44:48 CET 2004 - coolo@suse.de + +- make the unsermake/automake switch more clever + +------------------------------------------------------------------- +Tue Dec 14 11:11:05 CET 2004 - coolo@suse.de + +- fix unsermake $PATH for packages that build several sources + +------------------------------------------------------------------- +Mon Dec 13 14:56:19 CET 2004 - coolo@suse.de + +- remove debug flag from configure +- replaced unsermake with latest greatest + +------------------------------------------------------------------- +Wed Dec 8 13:25:36 CET 2004 - adrian@suse.de + +- update to official 3.4 alpha 1 + +------------------------------------------------------------------- +Mon Dec 6 15:17:54 CET 2004 - adrian@suse.de + +- update to KDE head snapshot + +------------------------------------------------------------------- +Fri Dec 3 15:19:22 CET 2004 - adrian@suse.de + +- update to the final tar bal of 3.3.2 + +------------------------------------------------------------------- +Mon Nov 29 20:29:55 CET 2004 - adrian@suse.de + +- update to version 3.3.2 + +------------------------------------------------------------------- +Fri Nov 26 15:57:47 CET 2004 - adrian@suse.de + +- extend KDE_VERSION_STRING with extra Level information to tell + information about applied patches +- extend distribution string with distribution version +- show distribution version in about dialog + +------------------------------------------------------------------- +Thu Nov 25 11:44:39 CET 2004 - adrian@suse.de + +- correct gnome icon path to hicolor + +------------------------------------------------------------------- +Wed Nov 24 13:49:09 CET 2004 - adrian@suse.de + +- accept also Python 2.4 in configure checks + +------------------------------------------------------------------- +Thu Nov 18 15:38:38 CET 2004 - ro@suse.de + +- use kerberos-devel-packages + +------------------------------------------------------------------- +Mon Nov 15 15:37:37 CET 2004 - adrian@suse.de + +- include /opt/kde3/share/icons/crystalsvg/22x22/apps path + +------------------------------------------------------------------- +Wed Nov 10 12:52:20 CET 2004 - ro@suse.de + +- permission handling fixes + +------------------------------------------------------------------- +Wed Nov 10 11:14:50 CET 2004 - coolo@suse.de + +- moving khtml 3.3 diff in a seperate diff (now that the 3.3 branch + contains a lot of updates for it) + +------------------------------------------------------------------- +Mon Nov 8 16:33:07 CET 2004 - coolo@suse.de + +- renable patch to limit image size (#43841) + +------------------------------------------------------------------- +Wed Nov 3 15:19:43 CET 2004 - coolo@suse.de + +- updated khtml again to fix compilation problem with gcc 4 + +------------------------------------------------------------------- +Wed Nov 3 11:12:57 CET 2004 - coolo@suse.de + +- use HTML rendering engine from CVS head (preparing backport for + 3.3.2) + +------------------------------------------------------------------- +Tue Oct 12 11:25:02 CEST 2004 - adrian@suse.de + +- update to version 3.3.1 + +------------------------------------------------------------------- +Wed Oct 6 14:30:24 CEST 2004 - adrian@suse.de + +- fix crash in libkabc, when importing an ldif file (#46882) + +------------------------------------------------------------------- +Tue Oct 5 10:17:05 CEST 2004 - adrian@suse.de + +- do also find gnome pages when using "en_*" locale, instead of + "C" or "en" (#45480) + +------------------------------------------------------------------- +Sat Oct 2 08:40:00 CEST 2004 - adrian@suse.de + +- try to avoid klauncher registration with a wrong dcop name. + this can happen, if two KDE application gets started at the + same time, without having running kdeinit before. + patch by Waldo and solves problems in Gnome hopefully (#46355) +- khtml rendering fix for nvidia.com + +------------------------------------------------------------------- +Fri Oct 1 16:58:11 CEST 2004 - adrian@suse.de + +- fix html frame parent problem, fixes www.map24.de (#44156) + +------------------------------------------------------------------- +Thu Sep 30 09:09:07 CEST 2004 - adrian@suse.de + +- fix nasty error startup messages +- fix two minor javascript bugs +- fix Netscape bookmarks wrapping (by Waldo, #45917) + +------------------------------------------------------------------- +Sun Sep 26 18:04:31 CEST 2004 - adrian@suse.de + +- update to current 3_3_BRANCH + * translation updates + * kpart handling fixes + +------------------------------------------------------------------- +Mon Sep 20 10:07:28 CEST 2004 - adrian@suse.de + +- update to current 3_3_BRANCH +- add fix for KDE file dialog on 64bit + (crash when called by 32bit application, by Waldo #44995) + +------------------------------------------------------------------- +Thu Sep 16 17:11:22 CEST 2004 - adrian@suse.de + +- use kwallet fix from Arvin + (update external hash keys immediatly #43973) + +------------------------------------------------------------------- +Wed Sep 15 17:18:45 CEST 2004 - adrian@suse.de + +- disable kwallet fix, it is known to create a memory leak + +------------------------------------------------------------------- +Tue Sep 14 15:23:11 CEST 2004 - adrian@suse.de + +- update to current branch + * khtml fixes + +------------------------------------------------------------------- +Fri Sep 10 13:47:48 CEST 2004 - adrian@suse.de + +- update to current branch +- apply fix for kwallet from HEAD, needed for kinternet + +------------------------------------------------------------------- +Tue Sep 7 11:28:30 CEST 2004 - adrian@suse.de + +- update to current BRANCH +- more silence during kbuildsycoca run +- disable default unsermake in beta +- remove mad from nfb + +------------------------------------------------------------------- +Fri Sep 3 17:29:22 CEST 2004 - coolo@suse.de + +- fixing the fix ;( + +------------------------------------------------------------------- +Fri Sep 3 14:20:15 CEST 2004 - coolo@suse.de + +- unsermake: do not remove the .deps file before regenerating it to + avoid make races + +------------------------------------------------------------------- +Mon Aug 30 08:36:57 CEST 2004 - adrian@suse.de + +- compile with explicit --disable-debug to get rid off asserts + +------------------------------------------------------------------- +Sat Aug 28 08:22:23 CEST 2004 - adrian@suse.de + +- update to current BRANCH +- add gnome help page support for khelpcenter(by clahey, #44061) + +------------------------------------------------------------------- +Mon Aug 23 16:31:13 CEST 2004 - adrian@suse.de + +- disable patch to limit image sizes in khtml, it causes crashes + atm + +------------------------------------------------------------------- +Fri Aug 20 13:02:26 CEST 2004 - adrian@suse.de + +- update to current 3_3_BRANCH +- add patch from clahey to support gnome help pages better in khelpcenter + +------------------------------------------------------------------- +Wed Aug 18 12:15:58 CEST 2004 - adrian@suse.de + +- move debug mode switch to common_options + +------------------------------------------------------------------- +Tue Aug 17 08:12:49 CEST 2004 - adrian@suse.de + +- add patch from Waldo to make it possible to limit the max image + size within QImage. (#43841) + +------------------------------------------------------------------- +Mon Aug 16 15:32:44 CEST 2004 - adrian@suse.de + +- update to version 3.3.0 final + +------------------------------------------------------------------- +Mon Aug 16 15:32:44 CEST 2004 - adrian@suse.de + +- update to version 3.3.0 final +- use "make compile" + +------------------------------------------------------------------- +Fri Aug 13 10:37:43 CEST 2004 - coolo@suse.de + +- removed 3_2_BRANCH.diff +- build with unsermake + +------------------------------------------------------------------- +Tue Aug 10 08:58:24 CEST 2004 - adrian@suse.de + +- update to version 3.3.0 RC2 +- split doc tools into subpackage to make it possible to use + a different theming for special products + +------------------------------------------------------------------- +Mon Aug 2 09:21:16 CEST 2004 - adrian@suse.de + +- accept automake 1.9 + +------------------------------------------------------------------- +Mon Jul 19 10:35:33 CEST 2004 - adrian@suse.de + +- update to version 3.2.92 (KDE 3.3 beta 2) + +------------------------------------------------------------------- +Tue Jun 29 12:01:28 CEST 2004 - adrian@suse.de + +- do not remove .cpp/.h files, if they are not really generated + by uic + +------------------------------------------------------------------- +Mon Jun 28 22:32:49 CEST 2004 - adrian@suse.de + +- enable OpenEXR support + +------------------------------------------------------------------- +Mon Jun 28 09:30:57 CEST 2004 - adrian@suse.de + +- update to version 3.3 beta 1 + * usual patch cleanup + +------------------------------------------------------------------- +Mon May 31 20:29:40 CEST 2004 - adrian@suse.de + +- update to version 3.2.3 + * remove obsolete patches + +------------------------------------------------------------------- +Wed May 12 09:21:00 CEST 2004 - adrian@suse.de + +- update user_profile patch +- add 3.3 button layout patch + +------------------------------------------------------------------- +Thu Apr 29 08:59:13 CEST 2004 - coolo@suse.de + +- let unsermake rewrite install rules with $DESTDIR +- use unsermake for kdelibs and parallel build + +------------------------------------------------------------------- +Sat Apr 24 18:17:07 CEST 2004 - sndirsch@suse.de + +- use xorg-x11 packages + +------------------------------------------------------------------- +Tue Apr 20 14:12:35 CEST 2004 - adrian@suse.de + +- use admin tar ball from HEAD +- extend kde-config to export library suffix and check for it in + configure +- add user profiles patch from Waldo + +------------------------------------------------------------------- +Sun Apr 18 14:56:17 CEST 2004 - coolo@suse.de + +- updated unsermake + +------------------------------------------------------------------- +Wed Apr 14 11:16:33 CEST 2004 - adrian@suse.de + +- update to version 3.2.2 + +------------------------------------------------------------------- +Tue Apr 13 17:16:34 CEST 2004 - adrian@suse.de + +- adding utempter to neededforbuild. (#38833) + (this does not lead into a new runtime requirement) + +------------------------------------------------------------------- +Sun Apr 4 21:08:43 CEST 2004 - adrian@suse.de + +- do only show important items in file dialog (#38269) + +------------------------------------------------------------------- +Thu Apr 1 10:39:59 CEST 2004 - coolo@suse.de + +- replacing brute force shut up with a real log file in kconf_update + (Waldo) + +------------------------------------------------------------------- +Wed Mar 31 16:40:14 CEST 2004 - adrian@suse.de + +- fix 3_2_BRANCH patch + +------------------------------------------------------------------- +Tue Mar 30 17:43:16 CEST 2004 - adrian@suse.de + +- enable incremental sycoca creation again + +------------------------------------------------------------------- +Tue Mar 30 10:45:07 CEST 2004 - coolo@suse.de + +- fix desktop icon renaming (Waldo) +- fixing kconf_update for kwin (Waldo,#36682) + +------------------------------------------------------------------- +Mon Mar 29 10:19:55 CEST 2004 - coolo@suse.de + +- handle cups printers that insist on being different (#37011) + +------------------------------------------------------------------- +Sat Mar 27 09:53:52 CET 2004 - adrian@suse.de + +- fix regression in khtml parser with latest update (by coolo) + +------------------------------------------------------------------- +Fri Mar 26 16:47:48 CET 2004 - adrian@suse.de + +- more silence (Waldo, Dirk and Adrian) +- apply fix for possible hanging library unloading (Lubos) +- fix regression in khtml parser with latest update (coolo) +- fix for hidden cookie windows below main windows (Lubos) +- fix icons in kcontrol + +------------------------------------------------------------------- +Tue Mar 23 08:06:52 CET 2004 - adrian@suse.de + +- update to current 3_2_BRANCH + * khtml fixes + o recursion protection + o official patch for kio urls + o crash fix (happened with Quanta) + o urls with trailing / are handled as directories + o fix for some flash enabled sites (#36656) +- fix fileshare.diff, make us compatible to KDE again +- call %run_permissions +- apply fix for utf8 localisation problem in kdehelp (coolo, #36681) +- adjust yast icon path to the new location +- fix missing include in fontconfig-reverse-lookup patch +- remove special settings for s390 and alpha + (leaded into new problems like implicit declarations of functions) + +------------------------------------------------------------------- +Mon Mar 22 13:22:57 CET 2004 - adrian@suse.de + +- update to current 3_2_BRANCH + * fixes security leak in kdeprint (#36663) +- add patch from Waldo to disallow kio urls in khtml + +------------------------------------------------------------------- +Sun Mar 21 21:32:47 CET 2004 - adrian@suse.de + +- do not trigger mount with konq view of /media/ (by Lubos) + +------------------------------------------------------------------- +Sun Mar 21 11:08:11 CET 2004 - adrian@suse.de + +- update to current 3_2_BRANCH + * fixed linebreak patch +- fix deactivated patches and remove obsolete ones +- suppress sycoca warnings about missing mimetypes + +------------------------------------------------------------------- +Mon Mar 15 16:46:24 CET 2004 - coolo@suse.de + +- another update to 3_2_BRANCH (kdeprint layout fixes and kate repaint problems) + +------------------------------------------------------------------- +Sat Mar 13 12:50:59 CET 2004 - coolo@suse.de + +- adding patch to force line breaks in translation of desktop files + (Arbeits-\nplatz) + +------------------------------------------------------------------- +Wed Mar 10 23:28:21 CET 2004 - coolo@suse.de + +- kill dcopserver explicitly + +------------------------------------------------------------------- +Wed Mar 10 10:39:42 CET 2004 - coolo@suse.de + +- use current 3_2_BRANCH (#35070) + +------------------------------------------------------------------- +Mon Mar 8 11:20:24 CET 2004 - adrian@suse.de + +- use current 3_2_BRANCH +- disable debug mode +- find YaST icons + +------------------------------------------------------------------- +Sun Mar 7 13:06:48 CET 2004 - coolo@suse.de + +- fixing pnome -> gnome typo +- adding libidn-devel as requirement for devel subpackage + +------------------------------------------------------------------- +Sat Mar 6 12:46:33 CET 2004 - coolo@suse.de + +- older distributions have different layouts for gnome. Avoid + dangling symlinks + +------------------------------------------------------------------- +Fri Mar 5 16:35:39 CET 2004 - coolo@suse.de + +- fixing build + +------------------------------------------------------------------- +Fri Mar 5 14:53:16 CET 2004 - coolo@suse.de + +- restart cups through rcscripts instead of kill magic (#32787) +- final update for 3.2.1 + +------------------------------------------------------------------- +Thu Mar 4 14:45:52 CET 2004 - coolo@suse.de + +- require libidn hard to avoid problems e.g. on lib64 + +------------------------------------------------------------------- +Wed Mar 3 18:26:46 CET 2004 - adrian@suse.de + +- removed gnome packages from neededforbuild + +------------------------------------------------------------------- +Tue Mar 2 10:25:48 CET 2004 - coolo@suse.de + +- update tarball again for khtml regression fixes + +------------------------------------------------------------------- +Tue Mar 2 10:23:33 CET 2004 - coolo@suse.de + +- fix build + +------------------------------------------------------------------- +Mon Mar 1 10:34:30 CET 2004 - coolo@suse.de + +- update to version 3.2.1 + +------------------------------------------------------------------- +Mon Mar 1 10:34:30 CET 2004 - coolo@suse.de + +- update to version 3.2.1 +- reworked build process + +------------------------------------------------------------------- +Wed Feb 25 22:01:46 CET 2004 - adrian@suse.de + +- update to current 3_2_BRANCH +- add -g as compiler option for beta test + +------------------------------------------------------------------- +Wed Feb 25 20:42:15 CET 2004 - adrian@suse.de + +- do not build on slow architectures + +------------------------------------------------------------------- +Mon Feb 23 15:40:21 CET 2004 - adrian@suse.de + +- do not use DNotify or FAM on /media +- long poll intervall for /media +- include GnomeCrystal icons and general pixmaps path + +------------------------------------------------------------------- +Mon Feb 23 08:05:47 CET 2004 - coolo@suse.de + +- initial package + +------------------------------------------------------------------- +Mon Feb 23 08:05:26 CET 2004 - coolo@suse.de + +- update 3_2_BRANCH +- update HEAD khtml +- adding testkhtml.spec + +------------------------------------------------------------------- +Sat Feb 21 18:35:28 CET 2004 - adrian@suse.de + +- add gnome and default icon pathes +- fix ssh.protcol installation +- fix syntax error in common_options + +------------------------------------------------------------------- +Fri Feb 20 09:29:56 CET 2004 - coolo@suse.de + +- use khtml from HEAD (to be backported) +- update admin tar ball +- take out testing khtml from the main page + +------------------------------------------------------------------- +Wed Feb 18 17:40:33 CET 2004 - adrian@suse.de + +- update to current 3_2_BRANCH + * ssh support to ktelnetservice +- remove pcsc-lite from neededforbuild +- disable test_regression for now + +------------------------------------------------------------------- +Wed Feb 11 08:50:03 CET 2004 - coolo@suse.de + +- fixing build on s390 + +------------------------------------------------------------------- +Wed Feb 11 08:06:07 CET 2004 - adrian@suse.de + +- update to current 3_2_BRANCH + +------------------------------------------------------------------- +Thu Jan 29 14:06:43 CET 2004 - adrian@suse.de + +- apply fix for printing with QT 3.3 + +------------------------------------------------------------------- +Mon Jan 26 23:25:56 CET 2004 - adrian@suse.de + +- update to version 3.2.0 final + +------------------------------------------------------------------- +Fri Jan 23 18:44:08 CET 2004 - adrian@suse.de + +- update to current 3_2_BRANCH + +------------------------------------------------------------------- +Wed Jan 21 17:28:14 CET 2004 - adrian@suse.de + +- disable sse and mmx usage on 9.0 (compiler bug) +- remove autom4te.cache during update_admin + (automake 2.8 can run into error with <2.8 cache data) + +------------------------------------------------------------------- +Wed Jan 21 12:14:49 CET 2004 - adrian@suse.de + +- update to current BRANCH to get various khtml fixes + +------------------------------------------------------------------- +Sun Jan 18 21:43:52 CET 2004 - adrian@suse.de + +- update to version 3.1.95 ( KDE 3.2 RC1 ) + +------------------------------------------------------------------- +Fri Jan 16 17:10:30 CET 2004 - adrian@suse.de + +- implement short menus again + +------------------------------------------------------------------- +Tue Jan 13 13:32:16 CET 2004 - adrian@suse.de + +- update to snapshot 2004011309 +- disable debug + +------------------------------------------------------------------- +Tue Jan 6 19:20:55 CET 2004 - adrian@suse.de + +- update to snapshot 2004010618 +- add kde_post_install function to common_options +- remove pregenerated files from uic during update_admin + +------------------------------------------------------------------- +Thu Dec 18 14:12:16 CET 2003 - adrian@suse.de + +- update to snapshot 2003121718 + +------------------------------------------------------------------- +Mon Dec 15 14:18:36 CET 2003 - adrian@suse.de + +- update to snapshot 2003121511 +- accept automake 1.8 + +------------------------------------------------------------------- +Wed Dec 10 14:30:45 CET 2003 - adrian@suse.de + +- update to snapshot 2003121013 + +------------------------------------------------------------------- +Tue Dec 9 13:40:37 CET 2003 - adrian@suse.de + +- package test_regression for testing in khtmltest package + +------------------------------------------------------------------- +Tue Dec 2 11:10:27 CET 2003 - adrian@suse.de + +- use beta2, take two tar ball + +------------------------------------------------------------------- +Mon Dec 1 22:00:31 CET 2003 - adrian@suse.de + +- update to 3.1.94 ( KDE 3.2 beta 2 ) + +------------------------------------------------------------------- +Sun Nov 23 20:44:24 CET 2003 - adrian@suse.de + +- update to snapshot 2003112315 + * build again with alsa 1.0 + +------------------------------------------------------------------- +Thu Nov 13 23:14:30 CET 2003 - adrian@suse.de + +- update to new snapshot from 2003102409 +- add jasper (JPEG2000) support + +------------------------------------------------------------------- +Wed Oct 29 09:59:01 CET 2003 - adrian@suse.de + +- update to KDE 3.2 beta1 + +------------------------------------------------------------------- +Tue Oct 21 09:34:51 CEST 2003 - adrian@suse.de + +- update to snapshot 2003102008 + +------------------------------------------------------------------- +Sun Oct 5 14:31:09 CEST 2003 - adrian@suse.de + +- update to snapshot 2003100510 + +------------------------------------------------------------------- +Wed Oct 1 09:59:21 CEST 2003 - adrian@suse.de + +- update to snapshot 3.1.92_2003093021 + * should fix building of KDE 2.2 documents in other packages + +------------------------------------------------------------------- +Mon Sep 29 15:59:09 CEST 2003 - adrian@suse.de + +- update to version 1.1.92 (KDE 3.2 alpha 2) + +------------------------------------------------------------------- +Tue Sep 23 09:42:45 CEST 2003 - adrian@suse.de + +- apply crash fix (happens in kdesktop) from Marcus Meissner + happened with a (most likely broken) Windows Driver CD (#31568) + +------------------------------------------------------------------- +Tue Sep 16 11:40:25 CEST 2003 - adrian@suse.de + +- fix application/x-ogg icon + +------------------------------------------------------------------- +Sat Sep 13 10:37:36 CEST 2003 - adrian@suse.de + +- fix Unimportant routines really finaly +- Require pcre-devel only for > 8.2 +- make menu sorting a routine which can be called from kicker +- hide Documents folder entry in kfiledialog for > 8.2 + +------------------------------------------------------------------- +Fri Sep 12 13:51:12 CEST 2003 - coolo@suse.de + +- add requirement on pcre-devel as libkhtml.la contains a reference + to /usr/lib/libpcreposix.la + +------------------------------------------------------------------- +Thu Sep 11 15:50:09 CEST 2003 - coolo@suse.de + +- give a more correct error message (as good as we can get it out + of cups) for forbidden actions (#29225) + +------------------------------------------------------------------- +Thu Sep 11 09:20:07 CEST 2003 - adrian@suse.de + +- use updated 3.1.4 tar ball + * certifcate dialog will reappear after typing wrong password +- add BRANCH patch to fix kdesktop icon name renaming and a crash fix +- honor caching in KServiceGroup::SuSEchildCount() + +------------------------------------------------------------------- +Tue Sep 9 02:59:23 CEST 2003 - adrian@suse.de + +- add YaST icon path + +------------------------------------------------------------------- +Tue Sep 9 00:14:46 CEST 2003 - adrian@suse.de + +- update to version 3.1.4 + +------------------------------------------------------------------- +Mon Sep 8 15:27:08 CEST 2003 - adrian@suse.de + +- implement KServiceGroup::SuSEchildCount() to ignore + X-SuSE-Unimportant entries + +------------------------------------------------------------------- +Fri Sep 5 12:10:12 CEST 2003 - adrian@suse.de + +- add check for SuSE-Unimportant also in kservicegroup class +- add support for X-SuSE-GeneralDescription and ShortMenu +- update 3_1_BRANCH +- add kmimelist application for debugging +- add optioninal X-KDE-InitialPreference Tag, if we want + different settings in Gnome + +------------------------------------------------------------------- +Wed Sep 3 17:44:28 CEST 2003 - adrian@suse.de + +- update xdg patch from Waldo to get compatible with 3.2 again +- update 3_1_BRANCH to get klistview fixes + +------------------------------------------------------------------- +Tue Sep 2 12:52:02 CEST 2003 - adrian@suse.de + +- include default pixmaps path +- drop broken styles, which will also disappear in KDE 3.2 +- add shut up patch from coolo + +------------------------------------------------------------------- +Mon Sep 1 14:38:52 CEST 2003 - adrian@suse.de + +- update to current 3_1_BRANCH +- implement X-SuSE-Unimportant support + +------------------------------------------------------------------- +Fri Aug 29 17:24:16 CEST 2003 - adrian@suse.de + +- update to current 3_1_BRANCH for qt 3.2.1 fixes + +------------------------------------------------------------------- +Tue Aug 26 08:16:04 CEST 2003 - adrian@suse.de + +- apply fix from Lubos for maximised windows of GTK apps + +------------------------------------------------------------------- +Sun Aug 24 23:06:19 CEST 2003 - adrian@suse.de + +- redo last fix in a more often working way. + but maybe we try to fix support for broken svg's atm ... + +------------------------------------------------------------------- +Sun Aug 24 12:14:29 CEST 2003 - adrian@suse.de + +- fix svgicon engine to render karbon svg's. +- install ksvgiconengine with header(internal) to get used by + svg thumbnail generator + +------------------------------------------------------------------- +Sat Aug 23 22:34:40 CEST 2003 - adrian@suse.de + +- update to 3_1_BRANCH + +------------------------------------------------------------------- +Wed Aug 20 17:19:57 CEST 2003 - schwab@suse.de + +- Fix weird character in common_options script. + +------------------------------------------------------------------- +Wed Aug 20 15:56:59 CEST 2003 - adrian@suse.de + +- small bugfix from Waldo for XDG + +------------------------------------------------------------------- +Tue Aug 19 12:15:18 CEST 2003 - adrian@suse.de + +- fix compile with gcc 3.3.1 + +------------------------------------------------------------------- +Wed Aug 13 11:34:11 CEST 2003 - adrian@suse.de + +- fix lib64 plugin support +- use current 3_1_BRANCH +- clean up spec file +- package /opt/kde3/include in main package + +------------------------------------------------------------------- +Tue Aug 12 13:25:32 CEST 2003 - adrian@suse.de + +- update XDG patch (yep, popup's are still disabled ;) + +------------------------------------------------------------------- +Fri Aug 8 21:58:06 CEST 2003 - adrian@suse.de + +- disable popup in kbuildsycoca run again + +------------------------------------------------------------------- +Thu Aug 7 15:25:02 CEST 2003 - adrian@suse.de + +- new XDG code from Waldo to support kmenuedit + +------------------------------------------------------------------- +Tue Aug 5 08:25:26 CEST 2003 - adrian@suse.de + +- disable popup in kbuildsycoca run + +------------------------------------------------------------------- +Fri Aug 1 16:54:16 CEST 2003 - adrian@suse.de + +- disable shadow patch at all again +- update 3_1_BRANCH diff + * first fixes for Qt 3.2 +- update kdelibs-menus stuff + * Waldo: Less buggy, with prefix support and with a working + + +------------------------------------------------------------------- +Wed Jul 30 17:52:37 CEST 2003 - adrian@suse.de + +- update kdelibs-menus-kded tar ball to new version from Waldo, + to get the kbuildsycoca --menutest function +- merge kdelibs3-cups back to kdelibs3 + +------------------------------------------------------------------- +Mon Jul 28 15:11:15 CEST 2003 - adrian@suse.de + +- update to current 3_1_BRANCH + +------------------------------------------------------------------- +Wed Jul 23 08:55:42 CEST 2003 - adrian@suse.de + +- use another new 3.1.3 tar ball with further security fix + (cookie handling) +- add needed files for XDG support + +------------------------------------------------------------------- +Tue Jul 22 13:12:02 CEST 2003 - coolo@suse.de + +- remove CVS conflict files from admin +- make common_options a %config (for consistency) + +------------------------------------------------------------------- +Mon Jul 21 12:00:42 CEST 2003 - adrian@suse.de + +- fix build for 7.x distributions + +------------------------------------------------------------------- +Fri Jul 18 17:02:43 CEST 2003 - adrian@suse.de + +- third version of 3.1.3 tar ball + (security fix for cookie handling) +- add backported patch from 3.2 for shadow text on icons. + (written by Laur Ivan ) +- accept Qt 3.2 also, when "#MIN_CONFIG(3)" is used +- fix build for lib64 + +------------------------------------------------------------------- +Fri Jul 18 10:01:44 CEST 2003 - adrian@suse.de + +- fix owner ship of files +- add XDG support from Waldo from KDE 3.2 + +------------------------------------------------------------------- +Wed Jul 16 12:14:55 CEST 2003 - adrian@suse.de + +- use new 3.1.3 tar ball + +------------------------------------------------------------------- +Wed Jul 16 01:11:51 CEST 2003 - adrian@suse.de + +- update to 3.1.3 + +------------------------------------------------------------------- +Tue Jun 24 10:52:19 CEST 2003 - coolo@suse.de + +- update 3.1 branch (heading 3.1.3) + +------------------------------------------------------------------- +Wed Jun 11 11:54:55 CEST 2003 - kukuk@suse.de + +- Add missing directories to filelist + +------------------------------------------------------------------- +Sat Jun 7 22:10:12 CEST 2003 - coolo@suse.de + +- remove libtool update code completly +- don't create stale symlinks for < 820 +- create the gnome icons symlink only for < 829 + (moved to gnome packages, where they can't dangle) + +------------------------------------------------------------------- +Fri May 30 14:55:49 CEST 2003 - adrian@suse.de + +- fix file conflict and disable libtool update again + +------------------------------------------------------------------- +Thu May 29 10:51:54 CEST 2003 - adrian@suse.de + +- tune some minor bits of coolo's changes + (a minor side effect is that we are able to build KDE packages again) + +------------------------------------------------------------------- +Wed May 28 15:05:30 CEST 2003 - coolo@suse.de + +- put the configure work around in update_admin too + +------------------------------------------------------------------- +Tue May 27 14:08:45 CEST 2003 - coolo@suse.de + +- updating 3_1_BRANCH.diff (to get it working without --enable-final) +- build --enable-final in beta too +- update libtool files from system (experimental) + +------------------------------------------------------------------- +Mon May 26 15:03:34 CEST 2003 - adrian@suse.de + +- define and use $INSTALL_TARGET in common_options +- set to "install" (not "install-strip") for now + +------------------------------------------------------------------- +Mon May 19 09:41:44 CEST 2003 - adrian@suse.de + +- apply 3_1_BRANCH.diff (fix build for Qt 3.2b1) + +------------------------------------------------------------------- +Fri May 16 13:34:52 CEST 2003 - coolo@suse.de + +- remove the right CVS subdir + +------------------------------------------------------------------- +Fri May 16 07:54:36 CEST 2003 - coolo@suse.de + +- remove CVS subdir + +------------------------------------------------------------------- +Thu May 8 09:05:49 CEST 2003 - adrian@suse.de + +- new 3.1.2 tar ball (try2) + +------------------------------------------------------------------- +Wed May 7 08:58:28 CEST 2003 - adrian@suse.de + +- update to version 3.1.2 +- cleanup/drop patches +- update admin tar ball and apply changes via a patch +- require correct arts version (1.1 at least) + +------------------------------------------------------------------- +Fri Apr 18 15:02:41 CEST 2003 - adrian@suse.de + +- merge 8.2 changes with 8.3 +- remove libaps from neededforbuild + +------------------------------------------------------------------- +Mon Apr 7 15:49:35 CEST 2003 - adrian@suse.de + +- security fix from 3.0.5b + * run ghostscript in safe mode +- add patch from Uwe Gansert to support the new fileshare tool +- add crash fix from 3_1_BRANCH for khtml on www.w3.org/QA/ +- do reverse font lookup in kfontcombobox and kaction for + fontconfig based distributions (#25725) + +------------------------------------------------------------------- +Thu Apr 3 18:26:13 CEST 2003 - adrian@suse.de + +- fix possible crash in kprinter on cups server misbehaviour +- add gnome help pages support for khelpcenter. + +------------------------------------------------------------------- +Fri Mar 21 12:56:36 CET 2003 - adrian@suse.de + +- apply fix https over proxy + +------------------------------------------------------------------- +Sat Mar 15 21:40:57 CET 2003 - adrian@suse.de + +- fix kmid crash in libkmid (#24820) +- .exe files have a correct icon now +- remove unused mimelnk tar ball + +------------------------------------------------------------------- +Wed Mar 12 09:49:01 CET 2003 - adrian@suse.de + +- disable kbuildsycoca speed up patch from last check-in again + +------------------------------------------------------------------- +Tue Mar 11 11:47:19 CET 2003 - adrian@suse.de + +- update to 3.1.1 tar ball, second try + * memory leak in dcopclient + * kate crash and syntax highlighting fixes + * do not let two running kbuildsycoca conflict + * keramik pixmapCache conflict fix + * some session management fixes +- add patch from Lubos to fix further session management problems + with preloaded konq +- fix api documentation +- remove SuSEconfig.susewm-kbuildsycoca again + (initial created by susewm now) + +------------------------------------------------------------------- +Thu Mar 6 10:34:33 CET 2003 - coolo@suse.de + +- updating the admin tar ball to 3.1.1 too + +------------------------------------------------------------------- +Mon Mar 3 11:36:11 CET 2003 - adrian@suse.de + +- update to version 3.1.1 + * fixed alphablended background images in khtml + * crash fix after destructed documents + * additional syntax highlight descriptions for kate +- xrandr fixes from Lubos to initialize the display correct on login + +------------------------------------------------------------------- +Thu Feb 27 23:50:42 CET 2003 - adrian@suse.de + +- update 3_1_BRANCH +- remove wrong Obsoletes again +- drop preload.desktop in autostart and use improved patch from + Lubos instead +- comment out some noise in .xsession-errors + +------------------------------------------------------------------- +Wed Feb 26 21:49:06 CET 2003 - adrian@suse.de + +- fixing kded startup with DNOTIFY enabled and lots of files + +------------------------------------------------------------------- +Wed Feb 26 10:35:49 CET 2003 - adrian@suse.de + +- update 3_1_BRANCH +- add ksycoca-global patch from Waldo +- add SuSEconfig.susewm-kbuildsycoca +- add Obsolete and Conflict tags with kde2 packages + +------------------------------------------------------------------- +Mon Feb 24 18:42:15 CET 2003 - adrian@suse.de + +- update 3_1_BRANCH +- enable-dnotify + +------------------------------------------------------------------- +Mon Feb 24 09:10:42 CET 2003 - coolo@suse.de + +- fixing kups (#24084) + +------------------------------------------------------------------- +Fri Feb 14 12:04:25 CET 2003 - adrian@suse.de + +- update 3_1_BRANCH +- allow setgid for man +- add gnome icon path + +------------------------------------------------------------------- +Wed Feb 12 22:46:37 CET 2003 - adrian@suse.de + +- update 3_1_BRANCH +- add preloaded konq patches from Lubos +- move kde-config back to main package + +------------------------------------------------------------------- +Wed Feb 5 02:26:15 CET 2003 - adrian@suse.de + +- update 3_1_BRANCH again for more aliasing fixes from Dirk +- remove fallback patch and implement a real media detection instead + of that + +------------------------------------------------------------------- +Tue Feb 4 10:06:14 CET 2003 - coolo@suse.de + +- updating to newer 3_1_BRANCH that is gcc 3.3 compliant + +------------------------------------------------------------------- +Mon Feb 3 16:57:38 CET 2003 - adrian@suse.de + +- add -fno-cse-follow-jumps -fno-cse-skip-blocks to work around + compiler bug + +------------------------------------------------------------------- +Mon Feb 3 11:52:53 CET 2003 - adrian@suse.de + +- update 3_1_BRANCH patch +- use --enable-final again + +------------------------------------------------------------------- +Sat Feb 1 16:38:48 CET 2003 - adrian@suse.de + +- remove ppc64 special compile options + +------------------------------------------------------------------- +Tue Jan 28 17:46:03 CET 2003 - adrian@suse.de + +- follow changed QDesktopWidget::resized API + +------------------------------------------------------------------- +Tue Jan 28 00:31:12 CET 2003 - adrian@suse.de + +- add BRANCH patches +- add libart_lgpl-devel to Requires from -devel package + +------------------------------------------------------------------- +Fri Jan 24 12:16:47 CET 2003 - adrian@suse.de + +- apply fix for resized desktop for menubar from Seli + +------------------------------------------------------------------- +Thu Jan 23 09:58:07 CET 2003 - adrian@suse.de + +- ha ! RC7-try5, security relevant again + +------------------------------------------------------------------- +Wed Jan 22 07:17:29 CET 2003 - adrian@suse.de + +- RC7-try4. last one ? + +------------------------------------------------------------------- +Tue Jan 21 12:59:35 CET 2003 - adrian@suse.de + +- RC7-try3. last one. + +------------------------------------------------------------------- +Fri Jan 17 14:36:40 CET 2003 - adrian@suse.de + +- use RC7-try2 tar balls + +------------------------------------------------------------------- +Wed Jan 15 16:10:17 CET 2003 - adrian@suse.de + +- use cyrus-sasl2 + +------------------------------------------------------------------- +Tue Jan 14 17:26:02 CET 2003 - adrian@suse.de + +- update to version RC7. +- kdelibs3-devel requires now fam-devel on > 8.1 + +------------------------------------------------------------------- +Wed Jan 8 12:50:01 CET 2003 - adrian@suse.de + +- add fam-devel to neededforbuild + +------------------------------------------------------------------- +Wed Jan 8 11:12:50 CET 2003 - adrian@suse.de + +- fix build with new alsa. works hopefully also with old versions + +------------------------------------------------------------------- +Tue Jan 7 15:08:32 CET 2003 - adrian@suse.de + +- update to RC6 (newer than the last 3.1 final try ;) + +------------------------------------------------------------------- +Wed Dec 18 11:39:30 CET 2002 - coolo@suse.de + +- updating the admin tar ball to find out about possible problems + +------------------------------------------------------------------- +Mon Dec 16 14:28:39 CET 2002 - coolo@suse.de + +- updating to latest branch. + +------------------------------------------------------------------- +Tue Dec 10 14:55:41 CET 2002 - coolo@suse.de + +- adding a check to kdeinit that checks for KDE_IS_PRELINKED and + is not using dlopen then + +------------------------------------------------------------------- +Tue Dec 3 09:57:31 CET 2002 - coolo@suse.de + +- trying to fix SSL check for lib64 + +------------------------------------------------------------------- +Sat Nov 30 21:48:04 CET 2002 - adrian@suse.de + +- next try of RC5 tar ball. BRANCH fixes are again disabled + +------------------------------------------------------------------- +Thu Nov 28 13:01:54 CET 2002 - adrian@suse.de + +- apply 3_1_BRANCH fixes +- fix build for lib64 + +------------------------------------------------------------------- +Mon Nov 25 10:46:04 CET 2002 - adrian@suse.de + +- update to RC5. +- do not use --enable-final on beta (gcc 3.3) + +------------------------------------------------------------------- +Mon Nov 25 01:03:39 CET 2002 - ro@suse.de + +- added openldap2-client to neededforbuild + +------------------------------------------------------------------- +Sat Nov 23 16:24:50 CET 2002 - adrian@suse.de + +- enable openldap support +- clean up #neededforbuild + +------------------------------------------------------------------- +Wed Nov 20 15:02:54 CET 2002 - coolo@suse.de + +- adding fix for admin dir which should unbreak packages having problems + with autoconf 2.56 + +------------------------------------------------------------------- +Wed Nov 20 13:00:30 CET 2002 - adrian@suse.de + +- disable hotfix again (it is inside the new tar ball) + +------------------------------------------------------------------- +Wed Nov 20 11:13:49 CET 2002 - adrian@suse.de + +- update to version 3.1-RC4 (final ?) + +------------------------------------------------------------------- +Tue Nov 12 17:00:38 CET 2002 - coolo@suse.de + +- another snapshot with even more last minute fixes ;( + +------------------------------------------------------------------- +Tue Nov 12 09:14:09 CET 2002 - coolo@suse.de + +- apply the lib64 patch correctly (in updating to a source without + the patch pre-applied) + +------------------------------------------------------------------- +Mon Nov 11 16:14:44 CET 2002 - coolo@suse.de + +- update to newer snapshot and sort out patches + +------------------------------------------------------------------- +Wed Nov 6 17:35:47 CET 2002 - adrian@suse.de + +- update to snapshot 3.0.8.20021106 (fix file conflicts) + +------------------------------------------------------------------- +Sun Nov 3 13:16:21 CET 2002 - adrian@suse.de + +- update to version 1.1.0.20021030 ~= RC1 + +------------------------------------------------------------------- +Tue Oct 8 21:19:44 CEST 2002 - adrian@suse.de + +- update to version 3.0.4 +- disable topMenu patch again + +------------------------------------------------------------------- +Tue Sep 24 09:05:13 CEST 2002 - froh@suse.de + +- %-ifarch'ed Requires: alsa-devel for all but s390 and s390x (#18647) + +------------------------------------------------------------------- +Sun Sep 8 19:48:06 CEST 2002 - adrian@suse.de + +- cross side scripting check fix from Dirk Mueller + +------------------------------------------------------------------- +Sun Sep 8 15:53:37 CEST 2002 - adrian@suse.de + +- .exe files are handled now as files for wine and not direct executable + +------------------------------------------------------------------- +Thu Sep 5 14:11:22 CEST 2002 - adrian@suse.de + +- add fix from mana for libkmid, to get alsa sequenzer working again + +------------------------------------------------------------------- +Wed Sep 4 13:16:24 MEST 2002 - coolo@suse.de + +- fix the PNM mimetypes, so that digital cameras work + +------------------------------------------------------------------- +Sat Aug 31 23:49:25 CEST 2002 - adrian@suse.de + +- default to lib64 pathes in admin/* on lib64 systems. + (fix link error, when lib32 enviroment is installed) + +------------------------------------------------------------------- +Fri Aug 30 12:07:35 CEST 2002 - adrian@suse.de + +- use most current 3_0_BRANCH patches + * fix for crash in khtml with enabled java from Seli + * layout fix in kcombobox from gis + * kcombobox fix from dfaure for oversized box in koffice + * kjs date fixes from dfaure + * ksycoca, illegal object fix from Waldo + * kcompletion box fix for Xinerama setup, reviewed by gis + * do not loop on unexpected EOF in kio_khtml from Waldo + * newline handling fix in khtml from dirk + * disable tiff write support, since it is not implemented (coolo) + * translations + +------------------------------------------------------------------- +Mon Aug 26 14:55:32 CEST 2002 - adrian@suse.de + +- install plugins on lib64 into /opt/kde3/lib. so we do not need + different plugin path definitions +- add missing dependencies to -devel packages +- add some selected fix from 3_0_BRANCH + +------------------------------------------------------------------- +Tue Aug 20 10:28:25 CEST 2002 - adrian@suse.de + +- fix build for lib64 really :( + +------------------------------------------------------------------- +Tue Aug 20 08:51:21 CEST 2002 - adrian@suse.de + +- fix build for lib64 +- move designer plugins into -devel package + +------------------------------------------------------------------- +Tue Aug 20 00:41:40 CEST 2002 - adrian@suse.de + +- follow change qt plugin path patch (using implicit subdir on lib64) + +------------------------------------------------------------------- +Fri Aug 16 12:12:54 CEST 2002 - adrian@suse.de + +- update to current 3_0_BRANCH + * include dirk's khtml glitch fix + +------------------------------------------------------------------- +Wed Aug 14 16:08:17 CEST 2002 - coolo@suse.de + +- don't strip on debug-i386 +- fixing lib64 path for plugins + +------------------------------------------------------------------- +Tue Aug 13 15:29:12 CEST 2002 - coolo@suse.de + +- prefer settings in /etc/opt/kde3 over /opt/kde, so that UL + settings can overwrite standard KDE settings + +------------------------------------------------------------------- +Tue Aug 13 12:42:46 CEST 2002 - adrian@suse.de + +- update to 3.0.3 tar ball, second try + (includes security fix for KSSL) + +------------------------------------------------------------------- +Tue Aug 13 10:30:30 CEST 2002 - coolo@suse.de + +- alsadev -> alsa-devel + +------------------------------------------------------------------- +Mon Aug 12 17:08:37 CEST 2002 - coolo@suse.de + +- the x86_64 bug is fixed now + +------------------------------------------------------------------- +Sun Aug 11 12:54:06 CEST 2002 - coolo@suse.de + +- changing admin.tar.bz2 to work around automake crap not beeing + able to get kdemultimedia compiled +- update 3.0 branch patch again + +------------------------------------------------------------------- +Thu Aug 8 00:44:30 CEST 2002 - adrian@suse.de + +- update to 3.0.3 +- add 3_0_BRANCH fix for ksycoca recreation by Waldo + +------------------------------------------------------------------- +Mon Aug 5 10:43:16 CEST 2002 - adrian@suse.de + +- update 3_0_BRANCH.dif +- add some mimetypes +- apply patch to support a fallback on mounting devices +- fix PreRequires +- update admin.tar + +------------------------------------------------------------------- +Sun Aug 4 22:35:24 CEST 2002 - adrian@suse.de + +- finaly fix build for hammer + (yes, even tested this time) + +------------------------------------------------------------------- +Sun Aug 4 11:33:29 CEST 2002 - adrian@suse.de + +- fix the second typo in one line :( + +------------------------------------------------------------------- +Fri Aug 2 15:56:03 CEST 2002 - coolo@suse.de + +- adding a patch that hopefully fixes the very large tip of the konsole + window + +------------------------------------------------------------------- +Thu Aug 1 15:58:11 CEST 2002 - adrian@suse.de + +- and fix the typo in last patch + +------------------------------------------------------------------- +Thu Aug 1 15:47:00 CEST 2002 - adrian@suse.de + +- add workaround for x86_64 compiler bug + +------------------------------------------------------------------- +Thu Aug 1 09:24:45 CEST 2002 - coolo@suse.de + +- updating the branch patch for a possible fix to kukuk's + bugzilla crash :) + +------------------------------------------------------------------- +Wed Jul 31 15:58:12 CEST 2002 - adrian@suse.de + +- add missing directorys applnk/* + +------------------------------------------------------------------- +Tue Jul 30 12:00:25 CEST 2002 - coolo@suse.de + +- don't use SuSEconfig for the KDE api, but a dedicated script + in %post +- don't install a susehelp config file anymore, but let susehelp + handle it itself +- handle the new location for api docu + +------------------------------------------------------------------- +Fri Jul 26 20:37:03 CEST 2002 - adrian@suse.de + +- fix neededforbuild + +------------------------------------------------------------------- +Fri Jul 26 19:44:39 CEST 2002 - adrian@suse.de + +- disable fast-malloc, since it is in qt now + +------------------------------------------------------------------- +Tue Jul 23 16:02:01 CEST 2002 - coolo@suse.de + +- also install the qt.tag file +- remove configure option removed long ago + +------------------------------------------------------------------- +Tue Jul 23 09:05:40 CEST 2002 - coolo@suse.de + +- don't let the Makefile guess the package name. it will guess the + wrong thing + +------------------------------------------------------------------- +Fri Jul 19 10:57:12 CEST 2002 - adrian@suse.de + +- use the kpart for rpm mimetype (if installed) + +------------------------------------------------------------------- +Thu Jul 18 16:53:37 CEST 2002 - coolo@suse.de + +- use doxygen for docu +- backport admin fixes from HEAD branch +- removed neededforbuilds that look like stuff not needed for build + (since KDE 2.1) +- moved API docu (back) into /opt/kde3 +- updated 3.0 branch diff + +------------------------------------------------------------------- +Fri Jul 12 17:12:27 CEST 2002 - adrian@suse.de + +- add topMenu definition + +------------------------------------------------------------------- +Fri Jul 12 14:21:11 CEST 2002 - adrian@suse.de + +- use current 3_0_BRANCH + * includes the fix for the famous CSS/JS segfault in konqueror + +------------------------------------------------------------------- +Thu Jul 11 13:10:17 CEST 2002 - adrian@suse.de + +- fix build for lib64 +- use patch from coolo to disable g3 file support (libtiff is broken) + +------------------------------------------------------------------- +Mon Jul 8 13:04:10 CEST 2002 - adrian@suse.de + +- fix file list + +------------------------------------------------------------------- +Fri Jul 5 14:00:14 CEST 2002 - adrian@suse.de + +- add missing icon directorys +- split cups support into own package for 8.1 +- s,i386,%ix86, + +------------------------------------------------------------------- +Thu Jun 27 21:57:40 CEST 2002 - adrian@suse.de + +- add %run_ldconfig in %post +- use --disable-final on ppc64 +- disable more debug messages + +------------------------------------------------------------------- +Wed Jun 26 10:55:26 CEST 2002 - adrian@suse.de + +- update to the second try of 3.0.2 tar ball + +------------------------------------------------------------------- +Mon Jun 24 22:29:07 CEST 2002 - adrian@suse.de + +- udpate to version 3.0.2 + +------------------------------------------------------------------- +Wed Jun 19 18:12:46 CEST 2002 - uli@suse.de + +- disable-final on ARM + +------------------------------------------------------------------- +Wed Jun 12 10:44:09 CEST 2002 - adrian@suse.de + +- update to current 3_0_BRANCH (large kjs updates) +- clean #neededforbuild +- do only warn on missing admin directory in update_admin +- remove old common_compile_options file + +------------------------------------------------------------------- +Fri Jun 7 13:55:25 CEST 2002 - adrian@suse.de + +- using fixed libtool for -m32/-m64 in admin (fixed by matz) +- replace admin with the content from admin.tar.bz2 + +------------------------------------------------------------------- +Thu Jun 6 15:45:24 CEST 2002 - adrian@suse.de + +- export kde_styledir and kde_widgetdir to follow the plugins* + directory name from Qt. + +------------------------------------------------------------------- +Wed Jun 5 15:59:29 CEST 2002 - adrian@suse.de + +- go back to 1.316 for am_edit + (no unsermake support, but generates moc files with --enable-final) + +------------------------------------------------------------------- +Tue Jun 4 10:39:02 CEST 2002 - coolo@suse.de + +- adding /sbin:/usr/sbin to the PATH if kdesu is used to become root. + Work around for flaws in setup tools (#11362) + +------------------------------------------------------------------- +Mon Jun 3 15:03:11 CEST 2002 - coolo@suse.de + +- removing test programs that cause problems with automake 1.6.1 + +------------------------------------------------------------------- +Mon Jun 3 12:34:41 CEST 2002 - adrian@suse.de + +- update to inofficial version 3.0.1a + * include bug/security fix for file uploads +- fix for broken png's in khtml in some cases + +------------------------------------------------------------------- +Mon May 27 12:02:26 CEST 2002 - adrian@suse.de + +- fix for 7.0 distribution + +------------------------------------------------------------------- +Thu May 23 18:35:17 CEST 2002 - ro@suse.de + +- fix admin extraction + +------------------------------------------------------------------- +Thu May 23 16:43:13 CEST 2002 - adrian@suse.de + +- Obsolete/provide kups and add start script + +------------------------------------------------------------------- +Thu May 23 14:48:35 CEST 2002 - coolo@suse.de + +- adding a update_admin snippet here too, so we can fix kde 3 + apps the same way as kde 2 apps + +------------------------------------------------------------------- +Wed May 22 01:18:18 CEST 2002 - adrian@suse.de + +- use coolo's famous common_options config file format + old common_compile_options file is not disabled for now +- use explicit --enable-debug=full if RPM_OPT_FLAGS~=-g + +------------------------------------------------------------------- +Tue May 21 16:28:23 CEST 2002 - adrian@suse.de + +- use Dirk's official post-3.0.1 patch and disable our former ones + * includes a security fix for khtml, known as "Opera exploit" + * fix "arts not starting realtime" problem (typo in reading config +variable). + * fix crashing kbuildsycoca when it hits an unreadable directory + * fix a text selection problem for KMail. + * fix a problem where (i)frame's accidently were not resized correctly. + * fix mime-detection of koffice post v1.1 documents + * urgent fixes in kfiledialog + +------------------------------------------------------------------- +Fri May 17 15:09:31 CEST 2002 - adrian@suse.de + +- fix dieing kio slave on https connections + +------------------------------------------------------------------- +Fri May 17 14:09:44 CEST 2002 - adrian@suse.de + +- reduce noise on stdout from khtml (extend shut_up.dif) + +------------------------------------------------------------------- +Tue May 14 11:42:25 CEST 2002 - adrian@suse.de + +- use updated 3.0.1 tar ball include crash fixes (esp. for kmail) + +------------------------------------------------------------------- +Mon May 13 14:46:46 CEST 2002 - adrian@suse.de + +- set requirement back to qt-3.0.3 version + +------------------------------------------------------------------- +Fri May 10 16:11:58 CEST 2002 - adrian@suse.de + +- workaround rpm parse bug for old distributions + +------------------------------------------------------------------- +Fri May 10 13:29:58 CEST 2002 - adrian@suse.de + +- update to version 3.0.1 and remove obsolete patches + +------------------------------------------------------------------- +Tue May 7 12:49:37 CEST 2002 - meissner@suse.de + +- %_lib fixes inside the .cpp files (should now find SSL libraries) + +------------------------------------------------------------------- +Mon May 6 16:33:47 CEST 2002 - meissner@suse.de + +- %_lib fixes + +------------------------------------------------------------------- +Tue Apr 16 14:58:17 CEST 2002 - adrian@suse.de + +- Require spell (either ispell or aspell) > 8.0 only +- use --disable-final and -O0 on mips + +------------------------------------------------------------------- +Fri Apr 12 15:53:49 MEST 2002 - adrian@suse.de + +- set --enable-mt. Not needed for kdelibs3, but it should be + in the common compiler flags for some other applications with + older admin folder + +------------------------------------------------------------------- +Tue Apr 9 14:12:43 CEST 2002 - adrian@suse.de + +- fix kde api generation for 7.1, 7.2 and 7.3 based distributions + +------------------------------------------------------------------- +Tue Mar 26 00:14:11 CET 2002 - adrian@suse.de + +- update to new 3.0 final version. the last one. sure. +- comment out last harmless warning message from kdelibs + +------------------------------------------------------------------- +Mon Mar 25 20:31:47 CET 2002 - adrian@suse.de + +- update 3.0 final tar ball +- 2 urgent fixes ( kdirlister ) + +------------------------------------------------------------------- +Mon Mar 25 10:45:55 CET 2002 - adrian@suse.de + +- update to 3.0 final (everything is wonderfull version) +- switch from /etc/X11/kde3 to /etc/opt/kde3 to be FHS compliant +- add /etc/kde3rc with prefix, so we do not need $KDEDIRS anymore + +------------------------------------------------------------------- +Thu Mar 21 19:05:29 CET 2002 - adrian@suse.de + +- use kdoc to generate api-documentation again + (makes the class browser of kdevelop happy) + +------------------------------------------------------------------- +Thu Mar 21 16:55:43 CET 2002 - adrian@suse.de + +- update to 3.0rc3 + +------------------------------------------------------------------- +Sun Mar 10 17:03:38 CET 2002 - adrian@suse.de + +- update to 3.0rc2 + +------------------------------------------------------------------- +Mon Mar 4 17:31:55 CET 2002 - adrian@suse.de + +- update to 3.0rc1 + +------------------------------------------------------------------- +Mon Feb 25 19:09:57 CET 2002 - adrian@suse.de + +- update to snapshot 2.92.2002022512 + +------------------------------------------------------------------- +Mon Feb 18 20:55:08 CET 2002 - adrian@suse.de + +- update to snapshot 2.92.2002021810 + +------------------------------------------------------------------- +Thu Feb 14 23:26:36 CET 2002 - adrian@suse.de + +- update to snapshot 2.92.2002021421 +- split kdelibs3-artsd package into arts and arts-devel +- add Doug Lea's fast threaded malloc function from glibc 2.3 + * prepared by Lubos Lunak + * integrated into libkdecore + * add dummy library to make it configurable via libKmalloc.so link + * disabled by default + +------------------------------------------------------------------- +Mon Feb 11 15:07:20 CET 2002 - adrian@suse.de + +- update to snapshot 2.92.2002021111 + +------------------------------------------------------------------- +Mon Feb 4 23:51:35 CET 2002 - adrian@suse.de + +- update to 2.92 (KDE 3.0 beta 2) +- create common_compile_flags file + +------------------------------------------------------------------- +Fri Feb 1 00:26:05 CET 2002 - ro@suse.de + +- changed neededforbuild to + +------------------------------------------------------------------- +Mon Jan 28 14:49:00 CET 2002 - adrian@suse.de + +- update to snapshot from 2.91.2002012811 + +------------------------------------------------------------------- +Wed Jan 23 01:50:51 CET 2002 - adrian@suse.de + +- add missing header files + +------------------------------------------------------------------- +Wed Jan 23 00:31:21 CET 2002 - adrian@suse.de + +- update to snapshot 2.91.2002012221 + +------------------------------------------------------------------- +Tue Jan 15 18:24:51 CET 2002 - adrian@suse.de + +- update to snapshot 2.91.2002011511 + +------------------------------------------------------------------- +Sat Jan 5 18:28:06 CET 2002 - adrian@suse.de + +- update to recent/todays snapshot +- disable rpath for SuSE > 7.3 + (/opt/kde3/lib is in ld.so.conf) +- add Requires: line for at least Qt 3.0.1 + +------------------------------------------------------------------- +Mon Dec 17 15:58:49 CET 2001 - adrian@suse.de + +- fix compile on s390 +- add fix for khtml seg fault +- do not build documentation for <7.3 distributions until kdoc + is fixed + +------------------------------------------------------------------- +Wed Dec 12 17:02:34 CET 2001 - adrian@suse.de + +- update to KDE 3.0 Beta 1 + +------------------------------------------------------------------- +Tue Dec 4 20:13:20 CET 2001 - adrian@suse.de + +- use current CVS snapshot + +------------------------------------------------------------------- +Fri Nov 2 12:30:45 CET 2001 - adrian@suse.de + +- using cvs snapshot from 01 Nov 2001 + +------------------------------------------------------------------- +Sat Oct 20 17:57:21 CEST 2001 - adrian@suse.de + +- using newer cvs-snapshot + (compiles again with qt 3 final) + +------------------------------------------------------------------- +Tue Oct 9 11:55:41 CEST 2001 - adrian@suse.de + +- branch to first kdelibs 3 (alpha 1) + +------------------------------------------------------------------- +Mon Sep 24 01:40:05 CEST 2001 - adrian@suse.de + +- add security fix for peer-ssl from Dirk +- add fix to make it possible to allow JS from local pages + +------------------------------------------------------------------- +Fri Sep 21 22:51:53 CEST 2001 - adrian@suse.de + +- add fix for kbuildsycoca --incremental from Waldo + (changed files (due to updated packages or a SuSEconfig run for + example) do not lead anymore to an incorrect ksycoca database. + +------------------------------------------------------------------- +Tue Sep 18 08:55:26 CEST 2001 - adrian@suse.de + +- add symbolic link to /opt/kde2/doc/HTML/en/kdeapi +- #neededforbuild cups -> cups-libs + +------------------------------------------------------------------- +Sat Sep 15 19:13:06 CEST 2001 - adrian@suse.de + +- add klineedit fix +- add warning that kdDebug function is disabled (except for ppc) +- fix kdelibs-2.2.1.dif (do not apply patch for ppc-only global) + +------------------------------------------------------------------- +Thu Sep 13 09:36:06 CEST 2001 - adrian@suse.de + +- add fix for kjs (octal parsing) +- add fix icondialog (custom icon directorys) +- fix ia64 patch + +------------------------------------------------------------------- +Tue Sep 11 10:54:21 CEST 2001 - adrian@suse.de + +- add security fixes for kssl (do not save keys on disk) +- add Qt API to the API index page + +------------------------------------------------------------------- +Mon Sep 10 14:41:23 CEST 2001 - adrian@suse.de + +- update to to second try of kdelibs 2.2.1 tar ball + * JavaScript fixes +- fix ia64 workarounds to build on older distris + +------------------------------------------------------------------- +Sun Sep 9 17:57:01 CEST 2001 - schwab@suse.de + +- Fix specfile for ia64 workarounds. + +------------------------------------------------------------------- +Sat Sep 8 20:40:27 CEST 2001 - adrian@suse.de + +- updating to final 2.2.1 tar ball + +------------------------------------------------------------------- +Sun Sep 2 09:59:21 CEST 2001 - adrian@suse.de + +- update to KDE_2_2_BRANCH from 02.09.2001 + * compile fixes + * KFile crash fix + * KDockWidget crash fix, caused crash in quanta + * fix login with chars in password >127 + * load charsets file on demand + * kxmlgui fixed to read really the complete xml file. +- drop -cups package, the cups libs are now splitted from the cups + package. +- add kmimetype hack to get a fallback application for device icons +- make KDE quiet by default (kdDebug default value is 4 now) + +------------------------------------------------------------------- +Tue Aug 28 15:53:23 CEST 2001 - adrian@suse.de + +- update to KDE_2_2_BRANCH from 28.08.2001 + * fix kspell for iso 13 languages + * fix $PATH for kdesu + * check the preview action in setPreviewWidget() + * check for aborted save + * official patch for kbuildsycoca + * kfile fixes + * crash fixes in userstylesheets + * large file system support fix + * crash fix in kbugreport +- removed patches for kbuildsycoca and large file support + +------------------------------------------------------------------- +Sat Aug 25 09:49:21 CEST 2001 - adrian@suse.de + +- update to KDE_2_2_BRANCH from 25.08.2001 + * khtml supports + * kded updates + * translation updates +- kbuildsycoca speed optimisation + (original patch from Lubos Lunak, reworked to be BC) + +------------------------------------------------------------------- +Tue Aug 21 12:25:49 CEST 2001 - adrian@suse.de + +- using KDE_2_2_BRANCH from 21.08.2001 + * html parser fixes + * artsd fixes + * ... +- disable FAM by default, it can be enabled with + export USE_FAM=1 +- disable and obsolete -i686 package, until the number of problems + are solved + +------------------------------------------------------------------- +Mon Aug 6 23:55:17 CEST 2001 - adrian@suse.de + +- add assert into khtml/misc/loader.cpp as recomended by Dirk +- switch on SSE support in i386 architecture + (arts has a runtime checking) +- clean up file list +- ia64 workarounds + +------------------------------------------------------------------- +Mon Aug 6 10:59:49 CEST 2001 - adrian@suse.de + +- update to final 2.2 + +------------------------------------------------------------------- +Wed Aug 1 15:57:30 CEST 2001 - adrian@suse.de + +- update to 2.2rc1 + +------------------------------------------------------------------- +Fri Jul 6 11:53:42 CEST 2001 - adrian@suse.de + +- generate API documentation + (no need to install kdevelop for api docu anymore) + +------------------------------------------------------------------- +Fri Jun 29 15:39:12 CEST 2001 - adrian@suse.de + +- 2.2beta1 + +------------------------------------------------------------------- +Mon May 28 10:39:18 CEST 2001 - adrian@suse.de + +- 2.2alpha2 + +------------------------------------------------------------------- +Mon Apr 16 22:02:33 CEST 2001 - adrian@suse.de + +- 2.2alpha1 + +------------------------------------------------------------------- +Fri Apr 13 12:54:18 CEST 2001 - adrian@suse.de + +- add currency symbol to KFontDialog preview for testing purposes + +------------------------------------------------------------------- +Tue Apr 10 20:49:07 CEST 2001 - adrian@suse.de + +- revert also kdeinit changes (compile fix) +- add fixes for javascript from CVS +- add fixes for font name mapping from CVS +- add kdeinit_shutdown patch from Waldo + +------------------------------------------------------------------- +Tue Apr 10 01:01:16 MEST 2001 - adrian@suse.de + +- minor fix, but hopefully fix linker problems on all P-II systems + +------------------------------------------------------------------- +Mon Apr 9 11:24:07 CEST 2001 - adrian@suse.de + +- disable alsa for 7.0-ppc + +------------------------------------------------------------------- +Fri Apr 6 11:01:59 CEST 2001 - adrian@suse.de + +- drop the -nostdlib flag during linking. this causes problems + (since not all need libs are used) on some architectures +- -O2 for axp + +------------------------------------------------------------------- +Thu Apr 5 08:56:33 CEST 2001 - adrian@suse.de + +- update to 2_1_BRANCH. + this fixes the proxy server authentication problem + +------------------------------------------------------------------- +Wed Mar 28 18:28:29 CEST 2001 - adrian@suse.de + +- disable ssl support for 7.0-ppc + (problems with the compiler and linker, which can not be fixed + without to loss the BC) + +------------------------------------------------------------------- +Tue Mar 27 12:08:53 CEST 2001 - ro@suse.de + +- changed neededforbuild to + +------------------------------------------------------------------- +Tue Mar 20 21:58:31 CET 2001 - adrian@suse.de + +- enable -O2 for ppc + using inline gcc bug workaround for ia64 + +------------------------------------------------------------------- +Tue Mar 20 18:53:42 CET 2001 - adrian@suse.de + +- update to 2.1.1 (official tar ball) + +------------------------------------------------------------------- +Mon Mar 19 22:03:49 CET 2001 - adrian@suse.de + +- update to current 2_1_BRANCH + we have kde-config as executable binary back + (lots of configure scripts test this) + +------------------------------------------------------------------- +Mon Mar 19 15:39:26 CET 2001 - adrian@suse.de + +- add cyrus-sassl to #neededforbuild + +------------------------------------------------------------------- +Sat Mar 17 21:38:50 CET 2001 - adrian@suse.de + +- added missing packages in #neededforbuild + +------------------------------------------------------------------- +Sat Mar 17 13:32:29 CET 2001 - adrian@suse.de + +- fix CATALOG for distributions <7.2 + update to current 2_1_0_TAG + +------------------------------------------------------------------- +Tue Mar 13 14:29:16 CET 2001 - ro@suse.de + +- added CATALOG for docbook_3 + +------------------------------------------------------------------- +Tue Mar 13 01:12:30 CET 2001 - ro@suse.de + +- changed neededforbuild to + +------------------------------------------------------------------- +Thu Feb 22 19:22:17 CET 2001 - adrian@suse.de + +- the final final 2.1.0 tar ball ... + +------------------------------------------------------------------- +Wed Feb 21 22:42:47 CET 2001 - adrian@suse.de + +- use the right KDE BRANCH (not my fault ;-) + +------------------------------------------------------------------- +Wed Feb 21 17:16:51 CET 2001 - adrian@suse.de + +- update to final 2.1.0 + +------------------------------------------------------------------- +Wed Feb 14 17:04:08 CET 2001 - adrian@suse.de + +- update to 2.1 post beta 2 + +------------------------------------------------------------------- +Mon Jan 22 14:44:41 CET 2001 - stepan@suse.de + +- alpha axp compile fixes for gcc 2.95.2 + +------------------------------------------------------------------- +Tue Jan 16 12:05:26 CET 2001 - adrian@suse.de + +- add a check of return value in kprocess. + Hopefully no crashes anymore. + +------------------------------------------------------------------- +Mon Jan 15 22:13:16 CET 2001 - adrian@suse.de + +- disable --enable-final until the glibc/compiler problem in + kprocess is fixed + +------------------------------------------------------------------- +Mon Jan 15 14:01:38 CET 2001 - adrian@suse.de + +- fix index.desktop for distris <7.1 + +------------------------------------------------------------------- +Sat Jan 13 18:49:40 CET 2001 - adrian@suse.de + +- fix local support in kicker. native language again in menus + this fix does not work for chinese people + fix index.desktop in highcolor, 22x22 actions icons can be loaded + again + +------------------------------------------------------------------- +Fri Jan 12 00:02:33 CET 2001 - adrian@suse.de + +- create some links to see the konqueror gear again + fix hicolor index file + +------------------------------------------------------------------- +Tue Jan 9 22:07:19 CET 2001 - adrian@suse.de + +- added security fix for kdesu from Waldo + +------------------------------------------------------------------- +Mon Jan 8 15:43:09 CET 2001 - adrian@suse.de + +- fix SuSE icon description + +------------------------------------------------------------------- +Sun Jan 7 15:56:58 CET 2001 - adrian@suse.de + +- use additional pathes, to not conflict with older pathes + +------------------------------------------------------------------- +Sun Jan 7 14:24:01 CET 2001 - adrian@suse.de + +- new icon handling. much more clean now and the + dependencie to icons is not needed anymore + +------------------------------------------------------------------- +Sat Jan 6 17:15:51 CET 2001 - adrian@suse.de + +- fix locale support. + LANG=de_DE or LANG=de_DE.utf-8 is working now. + +------------------------------------------------------------------- +Tue Jan 2 21:51:19 CET 2001 - adrian@suse.de + +- added a fix for font handling, if antialising is used + (Thanks Kurt) + +------------------------------------------------------------------- +Mon Jan 1 22:16:48 CET 2001 - adrian@suse.de + +- remove charset for german. this confuses the font handling + added fix for stalled, but broken connections; thanks waldo + +------------------------------------------------------------------- +Sat Dec 30 21:22:21 CET 2000 - adrian@suse.de + +- extend rpm mimelnk for *.spm files + disabled threading + +------------------------------------------------------------------- +Wed Dec 27 18:33:15 CET 2000 - adrian@suse.de + +- drop message in kdeinit, which produce a lot of invalid bugzilla entrys + +------------------------------------------------------------------- +Wed Dec 20 10:38:25 CET 2000 - adrian@suse.de + +- added openssl-devel for #neededforbuild + +------------------------------------------------------------------- +Sun Dec 17 15:55:15 CET 2000 - adrian@suse.de + +- moved icon links back to kdelibs :-( + +------------------------------------------------------------------- +Sun Dec 17 12:54:19 CET 2000 - adrian@suse.de + +- moved icon links from this package to kdebase + +------------------------------------------------------------------- +Fri Dec 15 14:35:38 CET 2000 - adrian@suse.de + +- brown paper bag fix ... I spend Rudi a beer ... + +------------------------------------------------------------------- +Fri Dec 15 12:02:02 CET 2000 - adrian@suse.de + +- added icon packages to #neededforbuild + +------------------------------------------------------------------- +Thu Dec 14 12:38:23 CET 2000 - adrian@suse.de + +- fixed specfile + +------------------------------------------------------------------- +Wed Dec 13 19:22:39 CET 2000 - adrian@suse.de + +- fixed icon links + +------------------------------------------------------------------- +Wed Dec 13 16:52:23 CET 2000 - adrian@suse.de + +- update to current 2_0_BRANCH + +------------------------------------------------------------------- +Wed Nov 29 14:25:31 CET 2000 - adrian@suse.de + +- update to 2.0.1 + +------------------------------------------------------------------- +Wed Nov 22 02:01:26 CET 2000 - ro@suse.de + +- remove penguin.png (in kdebase) + +------------------------------------------------------------------- +Tue Nov 21 15:07:15 CET 2000 - adrian@suse.de + +- fixed /etc/kderc + +------------------------------------------------------------------- +Tue Nov 21 00:08:08 CET 2000 - adrian@suse.de + +- added icon support for non kde icons + added /etc/kderc + ~/Desktop -> ~/KDesktop + +------------------------------------------------------------------- +Thu Nov 16 15:46:49 CET 2000 - adrian@suse.de + +- update to newer snapshot from KDE_2_0_BRANCH + fixed sgml catalog file for our sgml enviroment + +------------------------------------------------------------------- +Fri Nov 3 08:45:45 CET 2000 - adrian@suse.de + +- fixed needed for build + +------------------------------------------------------------------- +Thu Nov 2 20:35:30 CET 2000 - adrian@suse.de + +- fixed file list + +------------------------------------------------------------------- +Tue Oct 17 04:52:05 CEST 2000 - adrian@suse.de + +- update to 2.0.0 +- changed default for ~/.kde to ~/.kde2 +- dropped klibs2i and klibs2cr again +- splitted package in + * kdelibs + * kdelibs-devel + +------------------------------------------------------------------- +Wed Sep 20 11:29:35 CEST 2000 - adrian@suse.de + +- the last fix :-( + +------------------------------------------------------------------- +Sun Sep 17 00:27:08 CEST 2000 - adrian@suse.de + +- splited klibs2 into klibs2, klibs2i (international version + without crypt support) and klibs2cr (crypt version) + +------------------------------------------------------------------- +Sat Sep 16 15:17:06 CEST 2000 - adrian@suse.de + +- removed ssl/ssh support + added big endian fix in KPixmap + +------------------------------------------------------------------- +Tue Sep 12 11:49:35 MEST 2000 - adrian@suse.de + +- changed to -O0 for ppc and alpha + +------------------------------------------------------------------- +Tue Sep 12 08:56:11 CEST 2000 - adrian@suse.de + +- update to RC 1 + +------------------------------------------------------------------- +Mon Aug 21 14:04:31 CEST 2000 - adrian@suse.de + +- update to beta 4 + +------------------------------------------------------------------- +Mon Jul 24 17:46:04 CEST 2000 - adrian@suse.de + +- update to second version of beta 3 + +------------------------------------------------------------------- +Fri Jul 21 22:39:53 CEST 2000 - adrian@suse.de + +- update to beta 3 + +------------------------------------------------------------------- +Mon Jul 17 19:24:01 CEST 2000 - adrian@suse.de + +- update to snapshot from 17.07.2000 + +------------------------------------------------------------------- +Thu Jul 6 19:48:47 CEST 2000 - adrian@suse.de + +- Spec file created from kdelibs-1.91.20000706.tar.gz by autospec + + +------------------------------------------------------------------- +Fri Jun 9 17:15:52 CEST 2000 - adrian@suse.de + +- correct neededforbuild and updated khtml + +------------------------------------------------------------------- +Fri Jun 9 02:35:16 CEST 2000 - adrian@suse.de + +- update to 1.91; beta 2 + +------------------------------------------------------------------- +Tue Jun 6 01:29:47 CEST 2000 - adrian@suse.de + +- snapshot from 06.06.2000 + +------------------------------------------------------------------- +Sun May 28 09:22:23 CEST 2000 - adrian@suse.de + +- snapshot from 28.05.2000 + new type of spec file + +------------------------------------------------------------------- +Fri May 12 13:29:41 CEST 2000 - adrian@suse.de + +- update to KDE 1.90 + +------------------------------------------------------------------- +Thu Apr 27 17:45:45 CEST 2000 - adrian@suse.de + +- snapshot from 25.04.2000 + +------------------------------------------------------------------- +Thu Apr 20 14:27:28 CEST 2000 - adrian@suse.de + +- fixed file list + +------------------------------------------------------------------- +Wed Apr 19 17:17:42 CEST 2000 - adrian@suse.de + +- snapshot from 17.04.2000 + +------------------------------------------------------------------- +Thu Apr 6 19:21:15 CEST 2000 - adrian@suse.de + +- snapshot from 06.04.2000 + +------------------------------------------------------------------- +Thu Mar 30 18:44:11 CEST 2000 - adrian@suse.de + +- first KDE libs 2 package. PRE 1.90 Version + diff --git a/opensuse/core/tdelibs.old/tdelibs-devel-doc.spec b/opensuse/core/tdelibs.old/tdelibs-devel-doc.spec new file mode 100644 index 000000000..f92476488 --- /dev/null +++ b/opensuse/core/tdelibs.old/tdelibs-devel-doc.spec @@ -0,0 +1,115 @@ +# +# spec file for package tdelibs-devel-doc +# +# Copyright (c) 2011 the Trinity Project (opensuse). +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.trinitydesktop.org/ +# + +# norootforbuild + + +Name: tdelibs-devel-doc +BuildRequires: OpenEXR-devel aspell-devel cups-devel db-devel doxygen graphviz tdelibs-devel krb5-devel libjasper libsndfile openldap2-devel qt3-devel-doc libtqt4-devel tde-filesystem utempter xorg-x11-fonts-100dpi xorg-x11-fonts-75dpi xorg-x11-fonts-scalable +BuildRequires: avahi-compat-mDNSResponder-devel fdupes +URL: http://www.trinitydesktop.org +License: GPLv2+ +Group: Documentation/HTML +BuildRoot: %{_tmppath}/%{name}-%{version}-build +Summary: Additional Package Documentation +Version: R13.99 +Release: 1 +%define tdelibs_patch_level b +BuildArch: noarch +Requires: tdelibs qt3-devel-doc +Source0: tdelibs-%{version}.tar.bz2 +Source1: create-kdeapi +Source4: api_docu_description + +%description +This package contains a generated API documentation for all library +classes provided by tdelibs. The index page for all TDE API functions +is: + +file:/usr/share/doc/TDE-API/index.html + + + +Authors: +-------- + The KDE Team + +%prep + echo %suse_version +%setup -q -n tdelibs-%{version} + +%build +%if %is_plus + # supplementary package + DISTRI="openSUSE $BUILD_DISTRIBUTION_VERSION UNSUPPORTED" +%else + # official build on released and maintained products + DISTRI="openSUSE $BUILD_DISTRIBUTION_VERSION" +%endif +export QTDOCDIR=/usr/share/doc/packages/qt3/html +%cmake_tde -d build -- -DKDE_DISTRIBUTION="$DISTRI" +%make_tde -d build -- apidox + +%install + list=`find . -name Makefile.am | xargs grep Doxy | sed -e "s,/Makefile.am.*,," | sort -u ` + for i in $list; do %makeinstall_tde -d build -- -C $i DESTDIR=$RPM_BUILD_ROOT install-apidox || true; done + # The modern way, with kdevelop-incompatible api documentation :/ + mkdir -p $RPM_BUILD_ROOT/usr/share/doc/TDE-API/ + # *** everytime you edit the following line, you made a mistake. Update macros.tde + # *** version instead + KDEDOCDIR=%{_tde_htmldir}/en/kdelibs-apidocs + # this is forgotten, but kdevelop needs it + mkdir -p $RPM_BUILD_ROOT/$KDEDOCDIR + if test -d apidocs/qt; then + cp -a apidocs/qt $RPM_BUILD_ROOT/$KDEDOCDIR + fi + set +x + exitc=0 + for i in `ls -1 $RPM_BUILD_ROOT/$KDEDOCDIR/*/html/index.html`; do + lib=`echo $i | sed -e 's,/html/index.html,,; s,.*/\([^/]*\)$,\1,'` + if ! egrep "^$lib:" %SOURCE4 ; then + echo "ERROR: no description for library $lib" + exitc=1 + fi + sed -n -e 's@'"${lib}"':\(.*\)@\1@p' %SOURCE4 > ${RPM_BUILD_ROOT}/${KDEDOCDIR}/${lib}/description.SuSE + echo "kdelibs" > ${RPM_BUILD_ROOT}/${KDEDOCDIR}/${lib}/package.SuSE + done + if test "$exitc" != 0; then + exit $exitc + fi + ln -s $KDEDOCDIR/index.html $RPM_BUILD_ROOT/usr/share/doc/TDE-API/index.html + rm -rf ${RPM_BUILD_ROOT}/%{_tde_datadir} + mkdir -p $RPM_BUILD_ROOT/%{_tde_datadir}/tdelibs + install -m 0755 %SOURCE1 $RPM_BUILD_ROOT/%{_tde_datadir}/tdelibs/ + %fdupes -s $RPM_BUILD_ROOT + +%post +%{_tde_datadir}/tdelibs/create-kdeapi + +%clean + rm -rf ${RPM_BUILD_ROOT} + +%files +%defattr(-,root,root) +%dir %{_tde_sharedir} +%dir %{_tde_datadir} +%dir %{_tde_datadir}/tdelibs +%{_datadir}/doc/TDE-API +%{_tde_datadir}/tdelibs/create-kdeapi +%{_tde_docdir} + +%changelog diff --git a/opensuse/core/tdelibs.old/tdelibs.changes b/opensuse/core/tdelibs.old/tdelibs.changes new file mode 100644 index 000000000..ac5164f07 --- /dev/null +++ b/opensuse/core/tdelibs.old/tdelibs.changes @@ -0,0 +1,4301 @@ +------------------------------------------------------------------- +Sat Aug 13 21:19:53 UTC 2011 - rxu@lincomlinux.org + +- initial conversion to Trinity + +------------------------------------------------------------------- +Fri Jun 17 09:55:54 UTC 2011 - aj@suse.de + +- Add /etc/ld.so.conf.d/kdelibs3.conf (bnc#671725). + +------------------------------------------------------------------- +Sat May 7 19:49:45 UTC 2011 - anixx@opensuse.org + +- added patch for scrollbars in light style v2 to prevent appearance of garbage + +------------------------------------------------------------------- +Mon Feb 21 10:37:20 UTC 2011 - aj@suse.de + +- Use /proc//oom_score_adj if available as new interface. + +------------------------------------------------------------------- +Mon Apr 19 18:49:44 UTC 2010 - tittiatcoke@gmail.com + +- apply patch to enable build with openssl 1.0 + +------------------------------------------------------------------- +Sun Feb 21 09:50:18 UTC 2010 - coolo@novell.com + +- apply patch from fedora to support autoconf >= 2.64 + +------------------------------------------------------------------- +Wed Jan 13 16:04:24 CET 2010 - dmueller@suse.de + +- fix build against gcc 4.5 + +------------------------------------------------------------------- +Sun Jan 10 14:50:34 CET 2010 - ro@suse.de + +- include cstring in fakes.c to fix build + +------------------------------------------------------------------- +Thu Dec 24 12:58:07 UTC 2009 - aj@suse.de + +- Only remove file from catalog if it disappeared. + +- Do not use release numbers for catalog, they're not needed anymore. + +------------------------------------------------------------------- +Fri Dec 18 22:59:57 CET 2009 - jengelh@medozas.de + +- add baselibs.conf as a source + +------------------------------------------------------------------- +Fri Dec 11 15:32:20 UTC 2009 - llunak@novell.com + +- fix XMLHttpRequest vulnerability (bnc#550618) + +------------------------------------------------------------------- +Mon Nov 23 15:51:20 CET 2009 - llunak@novell.com + +- fix array overrun (CVE-2009-0689) (bnc#557126) + +------------------------------------------------------------------- +Sat Nov 7 07:03:01 UTC 2009 - beineri@opensuse.org + +- ignore inline attribute in applications.menu (bnc#529057) + +------------------------------------------------------------------- +Fri Nov 6 14:43:13 CET 2009 - dmueller@suse.de + +- fix buildrequires + +------------------------------------------------------------------- +Sun Aug 30 09:28:35 CEST 2009 - llunak@novell.com + +- fix macmenu + +------------------------------------------------------------------- +Thu Aug 20 10:55:42 CEST 2009 - beineri@opensuse.org + +- own files previously ghosted by desktop-file-utils (bnc#531122) + +------------------------------------------------------------------- +Mon Jun 15 10:23:45 CEST 2009 - coolo@novell.com + +- do take all autotool versions + +------------------------------------------------------------------- +Fri May 29 13:18:23 CEST 2009 - llunak@suse.cz + +- build with gcc 4.4 + +------------------------------------------------------------------- +Sat Apr 4 17:28:09 CEST 2009 - coolo@suse.de + +- refresh all patches to fix build + +------------------------------------------------------------------- +Fri Feb 13 18:33:23 CET 2009 - coolo@suse.de + +- move sr@Latn away in kde_post_install + +------------------------------------------------------------------- +Mon Feb 9 14:57:47 CET 2009 - coolo@suse.de + +- only take the first part of the release into kdeversion + +------------------------------------------------------------------- +Sat Feb 7 20:39:18 CET 2009 - coolo@suse.de + +- skip the build counter in the kdeversion.h + +------------------------------------------------------------------- +Wed Dec 10 12:34:56 CET 2008 - olh@suse.de + +- use Obsoletes: -XXbit only for ppc64 to help solver during distupgrade + (bnc#437293) + +------------------------------------------------------------------- +Thu Dec 4 12:34:56 CET 2008 - olh@suse.de + +- obsolete old -XXbit packages (bnc#437293) + +------------------------------------------------------------------- +Mon Nov 17 10:28:56 CET 2008 - stbinner@suse.de + +- Fix crash when fixed-layout tables specify all % width as 0 + (affects new ebay myebay version) (bnc#437318) + +------------------------------------------------------------------- +Thu Nov 6 21:22:53 CET 2008 - dmueller@suse.de + +- fix desktop translations after update-translations changes + +------------------------------------------------------------------- +Sun Nov 2 19:05:31 CET 2008 - coolo@suse.de + +- pass a --project to suse_desktop_files (quite a hack as we can't + use rpm macros in here) + +------------------------------------------------------------------- +Fri Oct 17 12:56:14 CEST 2008 - stbinner@suse.de + +- make a png non-executable (bnc#433749) + +------------------------------------------------------------------- +Wed Sep 24 20:45:39 CEST 2008 - wstephenson@suse.de + +- Fix vcard encoding issue (bnc#382959) + +------------------------------------------------------------------- +Wed Sep 10 13:02:23 CEST 2008 - dmueller@suse.de + +- fix m4 macro nesting +- fix build of inotify stuff for SLE10 + +------------------------------------------------------------------- +Tue Sep 9 11:52:53 CEST 2008 - dmueller@suse.de + +- update admin tarball for python 2.6 support + +------------------------------------------------------------------- +Mon Sep 8 22:34:30 CEST 2008 - dmueller@suse.de + +- fix inotify support with 2.6.27 (fixes build) + +------------------------------------------------------------------- +Wed Aug 20 18:43:12 CEST 2008 - coolo@suse.de + +- update to KDE 3.5.10 + * translation updates + * bugfixes + * desktop files validate + * removed patches upstreamed + +------------------------------------------------------------------- +Mon Jul 28 17:20:28 CEST 2008 - llunak@suse.cz + +- return kdesu password timeout back to 2 hours (bnc#404521) + +------------------------------------------------------------------- +Thu Jul 3 07:14:37 CEST 2008 - dmueller@suse.de + +- fix ftp protocol overwriting existing files during rename (bnc#399296) + +------------------------------------------------------------------- +Tue Jun 3 14:46:25 CEST 2008 - stbinner@suse.de + +- fix Desktop and Network icons missing in kcontrol (bnc#396153) + +------------------------------------------------------------------- +Tue May 27 10:42:55 CEST 2008 - llunak@suse.cz + +- fix kdesu not defaulting to sudo anymore (bnc#216796) + +------------------------------------------------------------------- +Tue May 20 18:00:29 CEST 2008 - llunak@suse.cz + +- do not always default to kdesu remembering password (bnc#386531) + +------------------------------------------------------------------- +Mon May 19 21:21:40 CEST 2008 - llunak@suse.cz + +- fix useless and potentionally even harmful usage of kde3 wrapper + +------------------------------------------------------------------- +Fri May 9 10:35:21 CEST 2008 - dmueller@suse.de + +- 3_5_BRANCH.diff update: + * translation fixes + * fix kdesu -t splitting lines (bnc#335507) + +------------------------------------------------------------------- +Sat Apr 26 02:07:41 CEST 2008 - dmueller@suse.de + +- fix start_kdeinit vulnerability (CVE-2008-1671, bnc#382618) + +------------------------------------------------------------------- +Fri Apr 25 18:00:19 CEST 2008 - llunak@suse.cz + +- change kdesu defaults to keeping a password for 5min (bnc#216796) + +------------------------------------------------------------------- +Wed Apr 23 13:40:22 CEST 2008 - llunak@suse.cz + +- 3_5_BRANCH.diff update to remove fsync() causing bad I/O + performance + +------------------------------------------------------------------- +Thu Apr 10 16:22:10 CEST 2008 - stbinner@suse.de + +- don't dump mime types of KDE4 apps but give it only low priority + +------------------------------------------------------------------- +Thu Apr 10 12:54:45 CEST 2008 - ro@suse.de + +- added baselibs.conf file to build xxbit packages + for multilib support + +------------------------------------------------------------------- +Mon Apr 7 14:24:56 CEST 2008 - dmueller@suse.de + +- remove ispell_dictionary as it breaks locale selection (bnc#204734) + +------------------------------------------------------------------- +Wed Mar 12 15:07:19 CET 2008 - dmueller@suse.de + +- 3_5_BRANCH.diff update to fix media manager autostart in KDE4 + +------------------------------------------------------------------- +Wed Feb 13 19:52:59 CET 2008 - dmueller@suse.de + +- update to 3.5.9: + * 9th bugfix release of KDE 3.5 + * remove patches that are already upstream + +------------------------------------------------------------------- +Fri Feb 8 22:18:23 CET 2008 - stbinner@suse.de + +- prevent autostarted application crashes under KDE4 (bnc#359800) + +------------------------------------------------------------------- +Thu Jan 10 14:11:25 CET 2008 - dmueller@suse.de + +- branch update (#334277, #348088) + +------------------------------------------------------------------- +Wed Jan 2 08:32:09 CET 2008 - stbinner@suse.de + +- update 3_5_BRANCH.diff to pick up some qxembed fixes + +------------------------------------------------------------------- +Wed Nov 14 13:08:53 CET 2007 - dmueller@suse.de + +- add 3_5_BRANCH.diff to fix the latest gcc 4.3 build + problem of the day + +------------------------------------------------------------------- +Mon Nov 5 15:50:12 CET 2007 - dmueller@suse.de + +- remove nosource tag from kdelib3-devel-doc + +------------------------------------------------------------------- +Tue Oct 9 10:53:35 CEST 2007 - stbinner@suse.de + +- update to KDE 3.5.8: + * small performance improvements in core libs + * bugfixes in core libs, http ioslave, khtml and kjs +- fix problem with focus when mailing link from Konqueror (#333386) +- fix non-KDE X-KDE-SubstituteUID apps not starting (#325633) +- fix WINE menu entries not being shown in the menu (#331598) + +------------------------------------------------------------------- +Mon Oct 1 14:00:49 CEST 2007 - stbinner@suse.de + +- SVN commit 717341: Revert r707381 which broke http-headers, and + add a bit more buffer to handle long http-headers like X-JSON + +------------------------------------------------------------------- +Thu Sep 27 15:31:48 CEST 2007 - dmueller@suse.de + +- drop -Bdirect + +------------------------------------------------------------------- +Mon Sep 17 13:59:30 CEST 2007 - stbinner@suse.de + +- fix build for < 10.3 +- fix bug 301648: Cannot select "remote charset" in Konqueror + +------------------------------------------------------------------- +Fri Sep 14 16:48:24 CEST 2007 - dmueller@suse.de + +- fix crash in kded on shutdown (#304640) +- fix addressbook ressource saving refcount bug +- fix konqueror slowdown on Qt API documentation +- fix cross domain cookie injection (kde bug #134421) +- http kioslave fixes to make it work with big and chunked + http response headers +- fix addressbar spoofing (#298707, #298736, CVE-2007-4224, + CVE-2007-4225, CVE-2007-3820) + +------------------------------------------------------------------- +Tue Sep 11 18:31:27 CEST 2007 - stbinner@suse.de + +- add mime-type definitions for Open XML docx, pptx & xlsx (#307159) + +------------------------------------------------------------------- +Tue Sep 11 14:59:41 CEST 2007 - stbinner@suse.de + +- fix kde4 application may get started instead of user substituded + kde3 application (#309044) + +------------------------------------------------------------------- +Tue Sep 11 13:45:02 CEST 2007 - tpatzig@suse.de + +- fix kded destructor to delete all loaded modules (#228865) + +------------------------------------------------------------------- +Tue Sep 11 10:51:13 CEST 2007 - stbinner@suse.de + +- only check for mime type starting with ""Shockwave Flash" (#304999) + +------------------------------------------------------------------- +Mon Sep 10 14:14:18 CEST 2007 - dmueller@suse.de + +- apply susetranslations in kbuildsycoca (#196855) + +------------------------------------------------------------------- +Mon Sep 3 15:08:18 CEST 2007 - stbinner@suse.de + +- search for locale and help also in /opt/kde3/share/locale-bundle, + /opt/kde3/share/doc-bundle & /usr/share/gnome/help-bundle (#302270) + +------------------------------------------------------------------- +Thu Aug 30 17:36:31 CEST 2007 - dmueller@suse.de + +- fix kdebug assertions on suppressed output + +------------------------------------------------------------------- +Wed Aug 29 14:27:01 CEST 2007 - stbinner@suse.de + +- get a missing Flash plugin not from Adobe but non-oss (#304999) + +------------------------------------------------------------------- +Fri Aug 24 18:28:42 CEST 2007 - dmueller@suse.de + +- disable kdDebug by default (#304173) + +------------------------------------------------------------------- +Fri Aug 10 18:56:56 CEST 2007 - dmueller@suse.de + +- add workaround for kernel garbling environ in kdeinit (#298943) + +------------------------------------------------------------------- +Sat Aug 4 18:38:32 CEST 2007 - stbinner@suse.de + +- update 3_5_BRANCH.diff: + * make KAcceleratorManager automanage popups + * fix kiconloader to scale if possible rather than return unknown + +------------------------------------------------------------------- +Fri Aug 3 13:16:55 CEST 2007 - stbinner@suse.de + +- split off libkdefx and Plastik into default-style sub-package + +------------------------------------------------------------------- +Sun Jul 22 07:27:46 CEST 2007 - coolo@suse.de + +- remove patch that conflicts with the 3.5 update because + it went upstream too + +------------------------------------------------------------------- +Fri Jul 20 14:57:35 CEST 2007 - llunak@suse.cz + +- update 3_5_BRANCH.diff to include bugfixes (#293424) + +------------------------------------------------------------------- +Mon Jul 16 13:46:19 CEST 2007 - stbinner@suse.de + +- ensure that correct kcmshell is called (#277292) + +------------------------------------------------------------------- +Fri Jul 13 11:41:55 CEST 2007 - stbinner@suse.de + +- add text completion editor to khtml forms and KHistoryCombo + +------------------------------------------------------------------- +Mon Jul 9 13:29:02 CEST 2007 - dmueller@suse.de + +- add patch for being able to open kwallet via DCOP + +------------------------------------------------------------------- +Thu Jun 28 15:03:28 CEST 2007 - wstephenson@suse.de + +- allow http to contact localhost when in offline mode + +------------------------------------------------------------------- +Tue Jun 19 23:58:03 CEST 2007 - dmueller@suse.de + +- update 3_5_BRANCH.diff to fix various 3.5.7 regressions + +------------------------------------------------------------------- +Sun Jun 10 13:38:14 CEST 2007 - stbinner@suse.de + +- brand default user agent like done in Firefox + +------------------------------------------------------------------- +Fri Jun 8 12:05:40 CEST 2007 - dmueller@suse.de + +- fix quoting in desktop-translations hook + +------------------------------------------------------------------- +Tue Jun 5 09:28:56 CEST 2007 - stbinner@suse.de + +- add Provides: kdepim3-networkstatus +- restore binary compatibility in network status patch (#279884) +- update common_options_legacy from common_options + +------------------------------------------------------------------- +Fri Jun 1 17:33:17 CEST 2007 - dmueller@suse.de + +- update to current 3_5_BRANCH: + * removes patches that went upstream + * adds kinit wrapper for OOM protection + +------------------------------------------------------------------- +Wed May 30 18:45:10 CEST 2007 - wstephenson@suse.de + +- Update Obsoletes: as networkstatus was moved into libs + +------------------------------------------------------------------- +Tue May 29 19:44:47 CEST 2007 - dmueller@suse.de + +- fix kde_post_install to also find desktop files in + other subdirectories under /opt/kde3/share +- use kde_post_install +- drop obsolete patch + +------------------------------------------------------------------- +Thu May 24 21:26:16 CEST 2007 - wstephenson@suse.de + +- Revised offline mode infrastructure (#237274) + +------------------------------------------------------------------- +Wed May 23 13:55:04 CEST 2007 - stbinner@suse.de + +- use %fdupes +- add missing ldconfig calls + +------------------------------------------------------------------- +Mon May 14 22:10:06 CEST 2007 - stbinner@suse.de + +- update to 3.5.7 + * several bugfixes in khtml, kjs and katepart +- add khtml patch to fix Google Mail + +------------------------------------------------------------------- +Mon May 7 15:36:45 CEST 2007 - stbinner@suse.de + +- X-KDE-AutoEmbed=false for Java applications (#210967) + +------------------------------------------------------------------- +Thu Apr 26 14:55:36 CEST 2007 - dmueller@suse.de + +- fix avahi daemon detection (#264233) + +------------------------------------------------------------------- +Mon Apr 23 16:45:29 CEST 2007 - stbinner@suse.de + +- don't start randomly KDE4 when a KDE3 app exists via mini-cli +- interpret OnlyShowIn=KDE of KDE4 applications as NotShowIn + +------------------------------------------------------------------- +Fri Apr 20 16:43:44 CEST 2007 - stbinner@suse.de + +- ignore mime types of kde4 applications and mark them in menus + +------------------------------------------------------------------- +Fri Apr 20 10:14:20 CEST 2007 - nadvornik@suse.cz + +- adjusted BuildRequires for libjasper-devel + +------------------------------------------------------------------- +Mon Apr 16 17:59:08 CEST 2007 - dmueller@suse.de + +- add unzip to buildrequires for the java checker + +------------------------------------------------------------------- +Thu Apr 12 13:37:13 CEST 2007 - stbinner@suse.de + +- default to UTF-8 encoding for spellchecking (#261217) + +------------------------------------------------------------------- +Tue Apr 3 22:56:10 CEST 2007 - stbinner@suse.de + +- update 3_5_BRANCH diff to fix build of kde3-i18n +- fix compiler options for gcc on < 10.3 + +------------------------------------------------------------------- +Mon Apr 2 18:13:42 CEST 2007 - dmueller@suse.de + +- update 3_5_BRANCH diff to include fix for + * possible utf8 overlong decoding issue in kjs (#259187) + * crash during ftp PASV scanning (#257045) + * possible XSS in title tags (#238377) + +------------------------------------------------------------------- +Mon Mar 26 22:31:33 CEST 2007 - dmueller@suse.de + +- add libbz2-devel build requires + +------------------------------------------------------------------- +Thu Mar 22 19:36:19 CET 2007 - stbinner@suse.de + +- adapt lpoptions config file position for CUPS 1.2 (#252947) + +------------------------------------------------------------------- +Tue Mar 20 18:26:03 CET 2007 - dmueller@suse.de + +- fix typo in xauth localhostname patch which inverts the logic + +------------------------------------------------------------------- +Mon Mar 19 13:35:16 CET 2007 - dmueller@suse.de + +- update 3_5_BRANCH.diff (#255753) + +------------------------------------------------------------------- +Mon Mar 12 11:04:05 CET 2007 - stbinner@suse.de + +- update 3_5_BRANCH.diff to fix katepart selection problems + +------------------------------------------------------------------- +Fri Mar 9 16:30:35 CET 2007 - dmueller@suse.de + +- apply 3_5_BRANCH.diff to fix build with Qt 3.3.8 + +------------------------------------------------------------------- +Fri Mar 9 14:19:43 CET 2007 - stbinner@suse.de + +- install kttds icon to hicolor/apps/ instead of crystalsvg/apps/ + +------------------------------------------------------------------- +Thu Mar 8 11:45:07 CET 2007 - stbinner@suse.de + +- adapt fix-gnome-help-support.diff to GNOME prefix move (#247434) + +------------------------------------------------------------------- +Thu Feb 22 13:38:59 CET 2007 - stbinner@suse.de + +- make previous changes block only active for > 10.2 + +------------------------------------------------------------------- +Wed Feb 21 16:57:10 CET 2007 - dobey@suse.de + +- Remove hicolor scalable sizes patch + Remove the kdelibs installed hicolor index.theme + Require hicolor-icon-theme + Fixes https://bugzilla.novell.com/show_bug.cgi?id=247278 + +------------------------------------------------------------------- +Tue Feb 6 17:49:52 CET 2007 - dmueller@suse.de + +- update 3_5_BRANCH to include latest fixes + +------------------------------------------------------------------- +Fri Feb 2 17:59:42 CET 2007 - stbinner@suse.de + +- fix changes file not incremental + +------------------------------------------------------------------- +Wed Jan 24 11:45:53 CET 2007 - stbinner@suse.de + +- update to fixed 3.5.6 tarball (bubble notification problem) + +------------------------------------------------------------------- +Mon Jan 22 10:57:54 CET 2007 - stbinner@suse.de + +- update to 3.5.6 release: + * khtml: + - implement CSS3 extension text-overflow: ellipsis. + - implement overflow-x/y as many websites use it now. + - several incorrect painting and crash bug fixes + * katepart: + - add actionscript highlighting. + - add some pseudo-elements that khtml supports, but FireFox doesn't. + * kdefx: change asterisks on passwords to bullets. + * several bugfixes within kdeprint, kio and kjs + +------------------------------------------------------------------- +Sun Jan 21 19:48:03 CET 2007 - dmueller@suse.de + +- fix build + +------------------------------------------------------------------- +Sat Jan 20 09:13:18 CET 2007 - aj@suse.de + +- Use avahi. + +------------------------------------------------------------------- +Wed Jan 3 19:51:47 CET 2007 - stbinner@suse.de + +- fix kickoff-drop-shadow.diff to not show drop shadows for all + widgets of application after the first where it really should + +------------------------------------------------------------------- +Mon Dec 11 16:19:56 CET 2006 - dmueller@suse.de + +- fix print dialog size in nondefault configuration (#227465) + +------------------------------------------------------------------- +Fri Nov 24 11:39:22 CET 2006 - dmueller@suse.de + +- fix ktip icon hack breaking translations (#221177) + +------------------------------------------------------------------- +Thu Nov 23 16:01:43 CET 2006 - dmueller@suse.de + +- fix cups only accepting localhost as ipp:// hostname (#222938) +- fix samba sharing dialog accessible even though samba not running + (#159223) + +------------------------------------------------------------------- +Wed Nov 22 20:53:12 CET 2006 - stbinner@suse.de + +- fix kdesu resets locale (#222728) + +------------------------------------------------------------------- +Mon Nov 20 17:18:52 CET 2006 - dmueller@suse.de + +- workaround gdb issue with backtraces in drkonqi (#211982) + +------------------------------------------------------------------- +Sat Nov 18 18:35:12 CET 2006 - stbinner@suse.de + +- fix branch kjs crash regression (kde #137518 & #137358), r602712 + +------------------------------------------------------------------- +Wed Nov 15 23:03:23 CET 2006 - dmueller@suse.de + +- run permissions in %post (#221138) + +------------------------------------------------------------------- +Wed Nov 8 16:47:11 CET 2006 - stbinner@suse.de + +- remove historic "Provides:" (#218798) + +------------------------------------------------------------------- +Mon Nov 6 20:53:48 CET 2006 - dmueller@suse.de + +- add patch for drop shadows in kickoff + +------------------------------------------------------------------- +Sun Nov 5 01:22:15 CET 2006 - stbinner@suse.de + +- fix dnd-utf8-fix.diff + +------------------------------------------------------------------- +Sat Nov 4 19:26:38 CET 2006 - stbinner@suse.de + +- fix drag & drop print with utf-8 name (#194400) + +------------------------------------------------------------------- +Fri Nov 3 15:32:59 CET 2006 - stbinner@suse.de + +- also search $XDG_DATA_DIRS/pixmaps for icons for now (#209385) + +------------------------------------------------------------------- +Tue Oct 31 16:52:52 CET 2006 - coolo@suse.de + +- update 3_5_BRANCH.diff + - even more KHTML fixes + +------------------------------------------------------------------- +Fri Oct 27 09:24:47 CEST 2006 - coolo@suse.de + +- update 3_5_BRANCH diff: + * fix severe kde bug 127662, which made working with KDE so much + less fun + +------------------------------------------------------------------- +Fri Oct 20 14:05:57 CEST 2006 - stbinner@suse.de + +- don't show progress when stating kio_beagle for beagle status + +------------------------------------------------------------------- +Thu Oct 19 12:20:58 CEST 2006 - dmueller@suse.de + +- update admin tarball + +------------------------------------------------------------------- +Tue Oct 17 11:05:20 CEST 2006 - dmueller@suse.de + +- update to 3_5_BRANCH.diff to add workaround + for gdb being unable to produce a valid backtrace + +------------------------------------------------------------------- +Mon Oct 16 00:55:23 CEST 2006 - schwab@suse.de + +- Make sure config.rpath is present. +- Update automake version test. + +------------------------------------------------------------------- +Wed Oct 11 22:47:10 CEST 2006 - stbinner@suse.de + +- update 3_5_BRANCH diff: + * fix crash when scheduling job for an invalid URL (#211541) + * fix cstyle indenter regression in Kate + +------------------------------------------------------------------- +Tue Oct 10 14:42:44 CEST 2006 - dmueller@suse.de + +- update 3_5_BRANCH to fix cups connect timeout (#210260) + +------------------------------------------------------------------- +Sat Oct 7 19:48:38 CEST 2006 - stbinner@suse.de + +- update to the next 3.5.5 release tarball + - fixes a crash in Kate when selecting or undoing + - some safe khtml crash fixes + +------------------------------------------------------------------- +Fri Oct 6 14:17:49 CEST 2006 - coolo@suse.de + +- update to the next 3.5.5 release tarball + - fixes for the kdesu show stopper bug + +------------------------------------------------------------------- +Tue Oct 3 21:03:03 CEST 2006 - dmueller@suse.de + +- update admin tarball (fixes kdelibs3-devel-doc) +- fix rejects in testkhtml (fixes testkhtml build) +- update 3_5_BRANCH to include kdesu fixes (#208272) + +------------------------------------------------------------------- +Tue Oct 3 10:08:35 CEST 2006 - stbinner@suse.de + +- update to 3.5.5 release tarball (no crypto changes) + +------------------------------------------------------------------- +Sun Oct 1 18:38:22 CEST 2006 - stbinner@suse.de + +- update 3.5 branch diff: + fixes in knewstuff, khtml and kjs (date object), kio, kate, + kdecore (iconloader, viewport) and kdeprint (cups) + +------------------------------------------------------------------- +Wed Sep 27 12:41:40 CEST 2006 - dmueller@suse.de + +- move ktradertest to kdelibs3 subpackage + +------------------------------------------------------------------- +Tue Sep 26 13:04:08 CEST 2006 - dmueller@suse.de + +- require sudo for 10.2 (#207884) + +------------------------------------------------------------------- +Wed Sep 20 19:23:05 CEST 2006 - dmueller@suse.de + +- add patch for CUPS 1.2.x support (#204453) +- add Viewport support to KWinModule + +------------------------------------------------------------------- +Tue Sep 19 22:53:21 CEST 2006 - dmueller@suse.de + +- add workaround for Xvfb bug in Xorg 7.1 in testkhtml +- fix kdelibs3-devel-doc build +- use sudo for kdesu authentication + +------------------------------------------------------------------- +Thu Sep 14 14:03:31 CEST 2006 - coolo@suse.de + +- update admin tar ball for python 2.5 +- update 3.5 branch diff: + - khtml, kjs fixes + - QXIMInputContext crash workaround + - cups 1.2: also support unix sockets and IPv6 + - protect urls in kdeprint interface + +------------------------------------------------------------------- +Wed Sep 13 11:29:09 CEST 2006 - stbinner@suse.de + +- fix build for < 10.1 + +------------------------------------------------------------------- +Mon Sep 11 16:28:48 CEST 2006 - ltinkl@suse.cz + +- fix #187601 - Swedish characters doesn't display right using fish in Konqueror + to access another computer over the network +- fix #204734 - recommend ispell, ispell_dictionary and enscript in kdelibs3 + +------------------------------------------------------------------- +Thu Sep 7 18:23:20 CEST 2006 - coolo@suse.de + +- update to 3_5_BRANCH to get latest API additions +- remove meaningless "level a" from the version to report and + use the kdelibs3 release number + +------------------------------------------------------------------- +Sun Sep 3 08:49:51 CEST 2006 - stbinner@suse.de + +- fix build + +------------------------------------------------------------------- +Fri Sep 1 17:24:04 CEST 2006 - llunak@suse.cz + +- Add patches with Xinerama improvements +- show Beagle kfile sidebar entry only if daemon is running + +------------------------------------------------------------------- +Fri Sep 1 14:12:38 CEST 2006 - coolo@suse.de + +- dropped unused patch (which required a suseconfig script anyway) +- updated 3_5_BRANCH to pickup random fixes (kate, khtml) + +------------------------------------------------------------------- +Fri Aug 25 00:40:12 CEST 2006 - dmueller@suse.de + +- build + +------------------------------------------------------------------- +Thu Aug 24 17:40:51 CEST 2006 - llunak@suse.cz + +- Search also $XDG_DATA_DIRS for icons (#192460). + +------------------------------------------------------------------- +Wed Aug 23 10:48:23 CEST 2006 - stbinner@suse.de + +- update 3_5_BRANCH (kate, khtml and translation improvements) + +------------------------------------------------------------------- +Mon Aug 14 11:12:09 CEST 2006 - coolo@suse.de + +- update 3_5_BRANCH.diff to fix "kcmshell background" if both GNOME + and KDE are installed + +------------------------------------------------------------------- +Fri Aug 11 15:54:40 CEST 2006 - dmueller@suse.de + +- update 3_5_BRANCH.diff to include fix for SSL issues + +------------------------------------------------------------------- +Mon Aug 7 16:34:42 CEST 2006 - coolo@suse.de + +- update 3_5_BRANCH.diff to include favicon drawing fix + +------------------------------------------------------------------- +Fri Aug 4 15:19:31 CEST 2006 - stbinner@suse.de + +- #define KDELIBS_SUSE in kdeversion.h +- patch kfile for better beagle:/ support +- fix new X.org font paths for testkhtml + +------------------------------------------------------------------- +Sun Jul 23 21:31:55 CEST 2006 - coolo@suse.de + +- update to KDE 3.5.4: + * several katepart, khtml and kjs fixes + * increased usability of KIO KSSL dialog + * allow KLineEdit show a hint message when empy and not focussed + * update the whitelist of IDNs: add gr, is and org + * kprocess/kcrash: add safety checks for set*uid return values + * kdirwatch: fix crashes caused by inotify code + +------------------------------------------------------------------- +Mon Jul 10 08:45:00 CEST 2006 - stbinner@suse.de + +- fix kdelibs3-devel-doc build + +------------------------------------------------------------------- +Sun Jul 9 21:29:14 CEST 2006 - stbinner@suse.de + +- fix duplicate parameter name in kdemm (#189860) + +------------------------------------------------------------------- +Fri Jun 30 11:32:36 CEST 2006 - dmueller@suse.de + +- update 3_5_BRANCH.diff to include KSSL changes for testing + +------------------------------------------------------------------- +Wed Jun 28 21:38:15 CEST 2006 - dmueller@suse.de + +- update admin tarball for autoconf 2.60 support + +------------------------------------------------------------------- +Tue Jun 27 11:29:39 CEST 2006 - stbinner@suse.de + +- update 3_5_BRANCH.diff for KDirWatch fixes (#188527) + +------------------------------------------------------------------- +Mon Jun 19 11:32:35 CEST 2006 - stbinner@suse.de + +- update 3_5_BRANCH.diff for KLineEdit::setClickMessage(QString) + +------------------------------------------------------------------- +Mon Jun 19 07:57:13 CEST 2006 - coolo@suse.de + +- fix 3.5.3 regression: show football news on spiegel.de + again (KDE #128944) + +------------------------------------------------------------------- +Fri Jun 16 09:02:59 CEST 2006 - coolo@suse.de + +- fix requires for older distributions (#185403) + +------------------------------------------------------------------- +Mon Jun 12 15:39:14 CEST 2006 - stbinner@suse.de + +- Add 3_5_BRANCH.diff update to fix openEXR configure check + +------------------------------------------------------------------- +Mon Jun 12 11:06:33 CEST 2006 - dmueller@suse.de + +- Update admin tarball from SVN + +------------------------------------------------------------------- +Fri Jun 9 17:03:58 CEST 2006 - dmueller@suse.de + +- reenable -Wl,as-needed + +------------------------------------------------------------------- +Fri Jun 2 03:45:05 CEST 2006 - dmueller@suse.de + +- disable -Wl,as-needed as long as binutils are not fixed + +------------------------------------------------------------------- +Mon May 29 09:38:58 CEST 2006 - stbinner@suse.de + +- fix build of kdelibs3-devel-doc + +------------------------------------------------------------------- +Wed May 24 09:50:37 CEST 2006 - stbinner@suse.de + +- update to KDE 3.5.3 + * several fixes to khtml, kio, kdeprint, kdeui and io-slaves + +------------------------------------------------------------------- +Tue May 23 14:51:11 CEST 2006 - ltinkl@suse.cz + +- integrate print preview patch (#133246) + +------------------------------------------------------------------- +Sat May 20 15:11:26 CEST 2006 - adrian@suse.de + +- do not require libdrm-devel for < 10.1 + +------------------------------------------------------------------- +Fri May 19 10:57:01 CEST 2006 - stbinner@suse.de + +- make khtml smooth scrolling acceptable (#175741) + +------------------------------------------------------------------- +Wed May 17 17:31:40 CEST 2006 - dmueller@suse.de + +- fix kerberos handling in kprinter (#154334) + +------------------------------------------------------------------- +Mon May 15 16:49:14 CEST 2006 - stbinner@suse.de + +- update to KDE 3.5.2 and 3_5_BRANCH.diff + * fixes to Kate + * khtml: fixes and performance improvements + * kjs: fixes and performance improvements + +------------------------------------------------------------------- +Mon May 15 11:17:39 CEST 2006 - stbinner@suse.de + +- complete OpenDocument mime type icons (#166917) + +------------------------------------------------------------------- +Tue May 2 10:19:34 CEST 2006 - coolo@suse.de + +- only show kresources in KDE (#170681) + +------------------------------------------------------------------- +Thu Apr 13 16:09:03 CEST 2006 - dmueller@suse.de + +- add dbus-1-qt3-devel to kdelibs3-devel dependencies + +------------------------------------------------------------------- +Thu Apr 13 14:35:49 CEST 2006 - dmueller@suse.de + +- implement mediamanager/hal-unmount support in KIO (#160654) + +------------------------------------------------------------------- +Wed Apr 12 20:42:37 CEST 2006 - dobey@suse.de + +- Add patch to improve default svg sizes in hicolor index.theme + Partial fix of https://bugzilla.novell.com/show_bug.cgi?id=162222 + If kdelibs3 is installed as well and the user uses gnome, this is + needed to prevent breaking the sizes in upstream hicolor which is + included in the gnome-icon-theme package + +------------------------------------------------------------------- +Fri Apr 7 14:57:03 CEST 2006 - dmueller@suse.de + +- fix media:/ urls in kfiledialog +- fix kdirwatch inducted memory corruption, often seen + as kate crashing during save. + +------------------------------------------------------------------- +Mon Apr 3 12:10:17 CEST 2006 - dmueller@suse.de + +- don't package xx locale + +------------------------------------------------------------------- +Tue Mar 28 16:49:08 CEST 2006 - dmueller@suse.de + +- fix xauth being garbled during hostname changes (#147691) +- fix tar extraction error for certain archives (#161312) + +------------------------------------------------------------------- +Tue Mar 28 16:44:52 CEST 2006 - ro@suse.de + +- kdelibs3-devel req: replace mDNSResponder by mDNSResponder-devel + +------------------------------------------------------------------- +Tue Mar 28 10:30:43 CEST 2006 - stbinner@suse.de + +- fix kdesu maybe not working with non-C locale (#152077) + +------------------------------------------------------------------- +Tue Mar 28 01:19:28 CEST 2006 - ro@suse.de + +- fix last patch to apply + +------------------------------------------------------------------- +Mon Mar 27 19:13:24 CEST 2006 - dmueller@suse.de + +- don't rely on KApplication still being there for KMessagebox (#160396) + +------------------------------------------------------------------- +Mon Mar 27 15:34:43 CEST 2006 - coolo@suse.de + +- only assume all KIO protocols if the desktop file specifies KDE + category (#160777) + +------------------------------------------------------------------- +Fri Mar 24 13:38:24 CET 2006 - dmueller@suse.de + +- reduce BuildRequires +- fix pasting of files with name collissions (#160581) + +------------------------------------------------------------------- +Tue Mar 21 17:05:55 CET 2006 - stbinner@suse.de + +- add support for login part of fdo autostart spec draft (#159395) + +------------------------------------------------------------------- +Tue Mar 21 14:49:14 CET 2006 - dmueller@suse.de + +- fix window titles in non-utf8 locale (#131287) +- drop gcc 4.1 miscompile workaround patch + +------------------------------------------------------------------- +Tue Mar 21 11:18:27 CET 2006 - dmueller@suse.de + +- fix pixmap leak in khtml + +------------------------------------------------------------------- +Mon Mar 13 18:59:51 CET 2006 - wstephenson@suse.de + +- add offline mode for http + +------------------------------------------------------------------- +Mon Mar 13 13:01:33 CET 2006 - dmueller@suse.de + +- reduce KDirWatch noiselevel (#157523) + +------------------------------------------------------------------- +Sun Mar 12 13:54:52 CET 2006 - coolo@suse.de + +- fix execution of desktop files without urls (#157130) + +------------------------------------------------------------------- +Tue Mar 7 11:43:24 CET 2006 - wstephenson@suse.de + +- Make sure that if a filesystem is not mounted with acl support, but the + acl support is compiled in, the metadata for acl setting is not set, + thus preventing and error on save, and as a result of that failure to + set permissions for all but the first file (in the multiple files case). + +------------------------------------------------------------------- +Tue Mar 7 09:40:50 CET 2006 - coolo@suse.de + +- pass windows in KRun (#155355) + +------------------------------------------------------------------- +Sat Mar 4 21:04:29 CET 2006 - coolo@suse.de + +- fix application themed icons (k3b toolbar) + +------------------------------------------------------------------- +Wed Mar 1 09:01:33 CET 2006 - coolo@suse.de + +- let kdelibs3-arts recommend kdemultimedia3-arts as it avoids crashes + (#115245) + +------------------------------------------------------------------- +Tue Feb 28 16:59:40 CET 2006 - coolo@suse.de + +- let crystalsvg inherit suseadds, so that we take the gnome and yast + icons in account (#154062) + +------------------------------------------------------------------- +Tue Feb 28 11:52:28 CET 2006 - stbinner@suse.de + +- degrade (untranslatable) kimproxy messagebox to warning + +------------------------------------------------------------------- +Tue Feb 21 12:11:49 CET 2006 - dmueller@suse.de + +- -fPIE is needed for s390x + +------------------------------------------------------------------- +Fri Feb 17 11:53:43 CET 2006 - coolo@suse.de + +- avoid breaking translations (show-distribution.diff) + +------------------------------------------------------------------- +Thu Feb 16 20:06:27 CET 2006 - coolo@suse.de + +- fix encoding problems with kprinter (mangled UTF-8) + +------------------------------------------------------------------- +Wed Feb 15 16:33:37 CET 2006 - ltinkl@suse.cz + +- fix #148215 - kde colorchooser won't save user defined colors +- fix #143263 - [gtk-qt] GTK+ scrollbars have several rendering issues + +------------------------------------------------------------------- +Tue Feb 7 16:02:33 CET 2006 - stbinner@suse.de + +- use XAUTHLOCALHOSTNAME as host name, patch by Lubos (#147691) + +------------------------------------------------------------------- +Mon Feb 6 22:43:23 CET 2006 - dmueller@suse.de + +- lookup desktop translations in desktop_translations catalogue + +------------------------------------------------------------------- +Mon Feb 6 13:27:32 CET 2006 - stbinner@suse.de + +- don't require libdrm-devel for older than SUSE Linux 10.1 + +------------------------------------------------------------------- +Fri Feb 3 13:57:49 CET 2006 - coolo@suse.de + +- add patch to fix KLocale warnings (#146525) + +------------------------------------------------------------------- +Fri Feb 3 12:05:20 CET 2006 - coolo@suse.de + +- update clever menu patch to fix #74524 (by Lubos) + +------------------------------------------------------------------- +Fri Feb 3 12:03:17 CET 2006 - coolo@suse.de + +- replace our own kdontchangethehostname with upstream fix +- debug output corrections + +------------------------------------------------------------------- +Thu Feb 2 09:37:18 CET 2006 - coolo@suse.de + +- fix requires for older distributions +- remove %ifs for < 920 + +------------------------------------------------------------------- +Wed Feb 1 16:36:38 CET 2006 - coolo@suse.de + +- translate servicemenus as they are used now for the medianotifier + (most of them will already have upstream translations) + +------------------------------------------------------------------- +Wed Feb 1 15:10:57 CET 2006 - stbinner@suse.de + +- fix tiny clickable areas of status icons in Konqueror (#146500) + +------------------------------------------------------------------- +Mon Jan 30 11:35:14 CET 2006 - stbinner@suse.de + +- update to 3.5 branch (changes to kprocess, khtml and kate) + +------------------------------------------------------------------- +Sat Jan 28 15:24:20 CET 2006 - coolo@suse.de + +- look for wallpapers into /usr/share/wallpapers + +------------------------------------------------------------------- +Fri Jan 27 20:23:49 CET 2006 - dmueller@suse.de + +- workaround gcc 4.1 miscompile + +------------------------------------------------------------------- +Fri Jan 27 09:29:19 CET 2006 - coolo@suse.de + +- fix patch conflict + +------------------------------------------------------------------- +Fri Jan 27 01:55:42 CET 2006 - mls@suse.de + +- converted neededforbuild to BuildRequires + +------------------------------------------------------------------- +Tue Jan 24 08:23:55 CET 2006 - coolo@suse.de + +- update to 3.5 branch for inotify fixes +- fix the kde_post_install translations + +------------------------------------------------------------------- +Mon Jan 23 16:10:12 CET 2006 - coolo@suse.de + +- translate more files in kde_post_install +- some khtml fixes for 3.5 branch +- disable preview for media:/ content + +------------------------------------------------------------------- +Sat Jan 21 20:23:19 CET 2006 - coolo@suse.de + +- update to KDE 3.5.1 + +------------------------------------------------------------------- +Thu Jan 19 17:35:48 CET 2006 - dmueller@suse.de + +- disable dnotify, we want inotify + +------------------------------------------------------------------- +Wed Jan 11 22:55:02 CET 2006 - stbinner@suse.de + +- update to 3_5_BRANCH (kdirwatch and kio_thumbnail fixes) + +------------------------------------------------------------------- +Mon Jan 9 15:45:42 CET 2006 - mls@suse.de + +- add kde3-devel-packages to devel package, obsoletes macro + +------------------------------------------------------------------- +Sun Jan 8 21:26:58 CET 2006 - stbinner@suse.de + +- update to 3_5_BRANCH (disable inotify on old broken kernels) + +------------------------------------------------------------------- +Thu Jan 5 15:16:40 CET 2006 - llunak@suse.cz + +- update performance patches, use same names like in kdebase-SuSE + +------------------------------------------------------------------- +Tue Dec 20 13:57:48 CET 2005 - dmueller@suse.de + +- add doc/HTML/* to filelist + +------------------------------------------------------------------- +Mon Dec 19 18:34:10 CET 2005 - dmueller@suse.de + +- add locale directories to the file list + +------------------------------------------------------------------- +Mon Dec 19 12:11:20 CET 2005 - coolo@suse.de + +- fix file list + +------------------------------------------------------------------- +Thu Dec 15 11:54:41 CET 2005 - coolo@suse.de + +- update to 3_5_BRANCH for strict aliasing fixes + +------------------------------------------------------------------- +Sun Dec 11 17:11:01 CET 2005 - stbinner@suse.de + +- update to 3_5_BRANCH (KDE #116156 and others) + +------------------------------------------------------------------- +Thu Dec 8 13:05:18 CET 2005 - coolo@suse.de + +- remove work around as binutils were fixed + +------------------------------------------------------------------- +Mon Dec 5 21:59:29 CET 2005 - coolo@suse.de + +- update to 3.5 branch +- add work around for better -Bdirect support + +------------------------------------------------------------------- +Sat Dec 3 15:07:43 CET 2005 - coolo@suse.de + +- build with -Bdirect if available + +------------------------------------------------------------------- +Fri Dec 2 15:00:57 CET 2005 - dmueller@suse.de + +- remove inotify patch, upstream now + +------------------------------------------------------------------- +Fri Dec 2 11:08:51 CET 2005 - dmueller@suse.de + +- create locolor icon dirs as well + +------------------------------------------------------------------- +Thu Dec 1 10:33:17 CET 2005 - dmueller@suse.de + +- create hicolor icon dirs and add them to the file list + +------------------------------------------------------------------- +Wed Nov 30 12:20:10 CET 2005 - coolo@suse.de + +- update to 3.5 branch +- update startup improvement patches +- remove the -O1 LDFLAGS for now + +------------------------------------------------------------------- +Sat Nov 26 10:10:03 CET 2005 - coolo@suse.de + +- update to 3.5.0 + +------------------------------------------------------------------- +Wed Nov 23 18:37:07 CET 2005 - coolo@suse.de + +- update to 3.5 branch + +------------------------------------------------------------------- +Tue Nov 22 08:46:49 CET 2005 - stbinner@suse.de + +- fix testkhtml build + +------------------------------------------------------------------- +Mon Nov 21 15:04:22 CET 2005 - stbinner@suse.de + +- update to 3.5 RC 2 + +------------------------------------------------------------------- +Wed Nov 16 17:41:03 CET 2005 - stbinner@suse.de + +- fix iconloader to not load icons from wrong inherited icon set + +------------------------------------------------------------------- +Wed Nov 16 11:49:43 CET 2005 - uli@suse.de + +- fixed to build on ARM (don't understand why it didn't fail + on other archs, though) + +------------------------------------------------------------------- +Sat Nov 12 11:45:13 CET 2005 - stbinner@suse.de + +- updated admin.tar.bz2 +- no dependency on kdelibs3-arts on older distributions + +------------------------------------------------------------------- +Sat Nov 12 01:33:22 CET 2005 - dmueller@suse.de + +- link with -O1 + +------------------------------------------------------------------- +Thu Nov 10 11:50:37 CET 2005 - stbinner@suse.de + +- update to 3.5 RC 1 + +------------------------------------------------------------------- +Thu Nov 10 00:22:48 CET 2005 - dmueller@suse.de + +- update inotify patch to current branch + +------------------------------------------------------------------- +Fri Nov 4 16:43:20 CET 2005 - coolo@suse.de + +- adding patch to rework autostart handling + +------------------------------------------------------------------- +Tue Oct 18 13:12:42 CEST 2005 - dmueller@suse.de + +- don't filter include hints for BETA +- update 3_5_BRANCH + +------------------------------------------------------------------- +Mon Oct 17 18:08:08 CEST 2005 - dmueller@suse.de + +- reduce debug output in kdelibs-inotify patch + +------------------------------------------------------------------- +Mon Oct 17 14:29:39 CEST 2005 - ke@suse.de + +- Fix xml encoding in contributor entities. + +------------------------------------------------------------------- +Mon Oct 17 11:06:42 CEST 2005 - dmueller@suse.de + +- update admin tarball to fix version number of packages + +------------------------------------------------------------------- +Fri Oct 14 19:06:23 CEST 2005 - dmueller@suse.de + +- add inotify support patch (experimental) + +------------------------------------------------------------------- +Wed Oct 12 11:07:53 CEST 2005 - stbinner@suse.de + +- update to version 3.4.92 (3.5 Beta 2) + +------------------------------------------------------------------- +Mon Oct 10 11:31:20 CEST 2005 - dmueller@suse.de + +- remove includehints from .ui files to fix Qt 3.3.5-caused build + failures + +------------------------------------------------------------------- +Thu Oct 6 12:38:46 CEST 2005 - stbinner@suse.de + +- added flac and flac-devel to neededforbuild (required by the new + libsndfile) + +------------------------------------------------------------------- +Wed Oct 5 18:31:30 CEST 2005 - stbinner@suse.de + +- adapt patches after update to 3.5 branch + +------------------------------------------------------------------- +Wed Oct 5 10:44:54 CEST 2005 - coolo@suse.de + +- update to 3.5 branch for various fixes +- adding inotify support to kdirwatch (kde4 backport) + +------------------------------------------------------------------- +Sat Oct 1 16:43:36 CEST 2005 - coolo@suse.de + +- fix VERBOSE=1 + +------------------------------------------------------------------- +Fri Sep 30 16:08:08 CEST 2005 - coolo@suse.de + +- fix start without sycoca + +------------------------------------------------------------------- +Thu Sep 29 09:01:45 CEST 2005 - dmueller@suse.de + +- ACL support only if > 10.0 + +------------------------------------------------------------------- +Thu Sep 29 01:41:21 CEST 2005 - dmueller@suse.de + +- fix kde_post_install to be robust against errors + +------------------------------------------------------------------- +Wed Sep 28 22:55:46 CEST 2005 - dmueller@suse.de + +- build with ACL support +- use unsermake with VERBOSE=1 to have useful logs + +------------------------------------------------------------------- +Tue Sep 27 16:22:13 CEST 2005 - stbinner@suse.de + +- add patch to allow and use no icon fallback if an icon is missing +- add upstream patch fixing common khtml crash (KDE #112905) + +------------------------------------------------------------------- +Tue Sep 27 14:50:08 CEST 2005 - dmueller@suse.de + +- fix kde_post_install to not abort when no icon is there + +------------------------------------------------------------------- +Tue Sep 27 09:10:19 CEST 2005 - adrian@suse.de + +- do not require mDNSResponder for 9.2 and before + +------------------------------------------------------------------- +Thu Sep 22 14:18:50 CEST 2005 - dmueller@suse.de + +- fix autobuild + +------------------------------------------------------------------- +Wed Sep 21 23:01:32 CEST 2005 - ke@suse.de + +- Add KDE docbook customizations to the SGML resp. XML catalog system [# + 113080]. + +------------------------------------------------------------------- +Wed Sep 21 09:37:16 CEST 2005 - coolo@suse.de + +- fix file file +- fix --no-unsermake support + +------------------------------------------------------------------- +Mon Sep 19 16:38:53 CEST 2005 - stbinner@suse.de + +- update to version 3.4.91 (3.5 Beta) + +------------------------------------------------------------------- +Mon Sep 12 11:01:52 CEST 2005 - stbinner@suse.de + +- fix missing images in ktip (#115954) + +------------------------------------------------------------------- +Fri Sep 9 16:36:53 CEST 2005 - dmueller@suse.de + +- split -devel-docs into a separate noarch package + +------------------------------------------------------------------- +Thu Sep 8 13:05:04 CEST 2005 - bg@suse.de + +- disable --as-needed for hppa (does not build with that option) + +------------------------------------------------------------------- +Thu Sep 8 08:04:42 CEST 2005 - coolo@suse.de + +- let the icon loader find the suse specials independent on the theme + (#115139 and others) + +------------------------------------------------------------------- +Wed Sep 7 21:37:08 CEST 2005 - dmueller@suse.de + +- fix kwallet wizard being 3000px in size (#114954) + +------------------------------------------------------------------- +Wed Sep 7 19:52:20 CEST 2005 - dmueller@suse.de + +- fix kpdf embedding crashes (#114724) +- add forgotten patch for mozilla/dragonegg integration + +------------------------------------------------------------------- +Wed Sep 7 16:05:58 CEST 2005 - dmueller@suse.de + +- improve TIFF detection (#114319) + +------------------------------------------------------------------- +Tue Sep 6 19:53:03 CEST 2005 - dmueller@suse.de + +- fix JPEG2000 support in KImgio (#115324) + +------------------------------------------------------------------- +Tue Aug 23 15:35:24 CEST 2005 - coolo@suse.de + +- add mimetype for OOo base (#72285) + +------------------------------------------------------------------- +Tue Aug 23 13:26:36 CEST 2005 - coolo@suse.de + +- don't play around with xauth when the host name changes + (#98627) + +------------------------------------------------------------------- +Tue Aug 23 03:54:04 CEST 2005 - dmueller@suse.de + +- fix novell.com language selector (#106008) + +------------------------------------------------------------------- +Mon Aug 22 14:20:42 CEST 2005 - coolo@suse.de + +- don't put libkdeinit_*.so in -devel + +------------------------------------------------------------------- +Sun Aug 21 11:42:34 CEST 2005 - coolo@suse.de + +- update from 3.4 branch to fix endless kio_http loop +- fix DPMS check in admin (broke with --enable-new-ldflags) + +------------------------------------------------------------------- +Sat Aug 20 16:06:01 CEST 2005 - coolo@suse.de + +- update from 3.4 branch +- pleasing the libtool check + +------------------------------------------------------------------- +Fri Aug 19 14:12:41 CEST 2005 - adrian@suse.de + +- fix endless loop, if no KDEMM backend can get found (#105772) + +------------------------------------------------------------------- +Fri Aug 19 10:22:14 CEST 2005 - llunak@suse.cz + +- Fix QXEmbed to have focus working properly in yast+kcontrol + (#46495). + +------------------------------------------------------------------- +Thu Aug 18 17:15:40 CEST 2005 - adrian@suse.de + +- do not use KLIRRRRR sound on popular request ... + +------------------------------------------------------------------- +Thu Aug 18 10:18:54 CEST 2005 - coolo@suse.de + +- extend kde_post_install of common_options + +------------------------------------------------------------------- +Wed Aug 17 16:20:44 CEST 2005 - adrian@suse.de + +- move arts dependency to -arts package +- clean up really all SimplePlayers in knotify, might cause a crash + which needs to be debugged + +------------------------------------------------------------------- +Mon Aug 15 04:25:38 CEST 2005 - dmueller@suse.de + +- fix horizontal scrolling in KHTML broken by the smooth scrolling + patch (#76565). + +------------------------------------------------------------------- +Sat Aug 13 16:03:17 CEST 2005 - adrian@suse.de + +- fix memory/handle leak in knotify while playing sound via kdemm + knotify can still hang, if all alsa channels are used. (#97588) +- install icons for BitTorrent MimeType + +------------------------------------------------------------------- +Thu Aug 11 15:58:43 CEST 2005 - coolo@suse.de + +- removing all of the extraicons patch, it doesn't work at all anymore + so we need a new solution (also #85839 I guess) +- updated 3.4 branch to get a fix for a crashing dcopserver and + hanging mounts (#102564) + +------------------------------------------------------------------- +Thu Aug 4 13:33:12 CEST 2005 - sbrabec@suse.cz + +- Removed share/pixmaps links from crystalsvg (#85839). + +------------------------------------------------------------------- +Mon Aug 1 18:37:53 CEST 2005 - coolo@suse.de + +- 3.4 update replacing custom patches + +------------------------------------------------------------------- +Fri Jul 29 17:31:21 CEST 2005 - dmueller@suse.de + +- Update admin tarball to include -Wno-non-virtual-dtor flag +- Fix PIE detection (#98889) +- Fix visibility support + +------------------------------------------------------------------- +Tue Jul 26 11:45:19 CEST 2005 - llunak@suse.cz + +- Fix #96594 (knotify logout timeout) + +------------------------------------------------------------------- +Fri Jul 22 10:51:28 CEST 2005 - coolo@suse.de + +- update to version 3.4.2 + +------------------------------------------------------------------- +Mon May 30 16:19:20 CEST 2005 - adrian@suse.de + +- fix build for released distributions + +------------------------------------------------------------------- +Tue May 24 11:54:02 CEST 2005 - adrian@suse.de + +- update to version 3.4.1 +- set level back to "a" + +------------------------------------------------------------------- +Fri May 13 21:49:46 CEST 2005 - coolo@suse.de + +- init variable + +------------------------------------------------------------------- +Tue Apr 19 10:21:55 CEST 2005 - coolo@suse.de + +- update admin for gcc4 + +------------------------------------------------------------------- +Thu Apr 14 17:17:06 CEST 2005 - sbrabec@suse.cz + +- Added audiofile-devel to neededforbuild. + +------------------------------------------------------------------- +Thu Apr 14 12:07:18 CEST 2005 - adrian@suse.de + +- update to current 3_4_BRANCH + * parallel build order fix +- do not export kdemm video player api, it will not get any + implementation in this way + +------------------------------------------------------------------- +Wed Apr 13 11:34:45 CEST 2005 - adrian@suse.de + +- update to current 3_4_BRANCH +- increase patch Level to "c" +- export kdemm mixer interface + +------------------------------------------------------------------- +Fri Apr 8 11:46:38 CEST 2005 - adrian@suse.de + +- port kfilepreview to kdemm +- extra arts subpackages, aRts is optional now ! +- add DNS resolver fix from 3_4_BRANCH + +------------------------------------------------------------------- +Mon Apr 4 14:42:49 CEST 2005 - adrian@suse.de + +- add missing #include to fix compile of kdemm players + +------------------------------------------------------------------- +Mon Apr 4 11:01:08 CEST 2005 - coolo@suse.de + +- enable features for new ld + +------------------------------------------------------------------- +Fri Apr 1 11:54:56 CEST 2005 - adrian@suse.de + +- fix build with gcc 4, exporting kdemm classes + +------------------------------------------------------------------- +Thu Mar 31 13:46:09 CEST 2005 - adrian@suse.de + +- first steps to make arts optional: + * add experimental kdemm support for post 9.3 + * use kdemm instead of arts in knotify + * TODO: port kfileaudiopreview to kdemm +- do not overrule CFLAGS from spec files + +------------------------------------------------------------------- +Wed Mar 30 16:10:39 CEST 2005 - coolo@suse.de + +- disable visibility when compiled with debug (for testkhtml) + +------------------------------------------------------------------- +Mon Mar 28 18:46:22 CEST 2005 - schwab@suse.de + +- common_options: also set CFLAGS. + +------------------------------------------------------------------- +Sat Mar 19 14:54:24 CET 2005 - aj@suse.de + +- Integrate patch from Waldo Bastian for #71888 to fix + accessing of Netscape bookmarks in konqueror. + +------------------------------------------------------------------- +Fri Mar 18 13:40:41 CET 2005 - adrian@suse.de + +- fix aspell support +- fixes from 3_4_BRANCH + * toolbar configuration fix (#73662) + * IPv6 blacklist io-slave fix + * a khtml crash fix with innerweb + * redirection fix to uppercase written top level domains + +------------------------------------------------------------------- +Tue Mar 15 13:30:48 CET 2005 - adrian@suse.de + +- fix kspell recursion, visible in kbabel (#72773 by Waldo) + +------------------------------------------------------------------- +Mon Mar 14 15:32:48 CET 2005 - coolo@suse.de + +- take susetranslations.mo into account for translations + +------------------------------------------------------------------- +Mon Mar 14 14:01:15 CET 2005 - coolo@suse.de + +- fix smoothscrolling patch (Lubos) +- adding some more kate fixes from branch + +------------------------------------------------------------------- +Fri Mar 11 14:55:14 CET 2005 - coolo@suse.de + +- some more fixes from 3_4_BRANCH + +------------------------------------------------------------------- +Tue Mar 8 13:47:31 CET 2005 - adrian@suse.de + +- various updates from cvs + * missing kate initialising (Lubos) + * kcmmodule crash fixed (Waldo) + * khtml fixes + +------------------------------------------------------------------- +Mon Mar 7 16:55:17 CET 2005 - adrian@suse.de + +- fix progress bar (from KDE cvs) + +------------------------------------------------------------------- +Mon Mar 7 14:32:27 CET 2005 - coolo@suse.de + +- add fix for broken webdav URLs (#59203) + +------------------------------------------------------------------- +Sat Mar 5 10:19:48 CET 2005 - adrian@suse.de + +- fixes from KDE cvs: + * support Netware based ftp servers in kio_ftp + * fix proxy socks support + +------------------------------------------------------------------- +Sat Mar 5 09:22:49 CET 2005 - adrian@suse.de + +- update to version 3.4 final (not final try) + +------------------------------------------------------------------- +Wed Mar 2 10:01:46 CET 2005 - adrian@suse.de + +- update scrollview patch to BC version +- move Requires: kdelibs3_doc to kdebase3 + +------------------------------------------------------------------- +Sat Feb 26 10:34:21 CET 2005 - adrian@suse.de + +- update to 3.4.0 RC1 + +------------------------------------------------------------------- +Thu Feb 24 13:16:10 CET 2005 - adrian@suse.de + +- update to version 3.4.0 RC1 try 1 + +------------------------------------------------------------------- +Tue Feb 22 16:51:01 CET 2005 - adrian@suse.de + +- update to current CVS +- add soft scrolling patch from Allan Sandfeld + +------------------------------------------------------------------- +Tue Feb 22 10:47:34 CET 2005 - adrian@suse.de + +- remove secure ICE patch again, it is part of CVS now + +------------------------------------------------------------------- +Mon Feb 21 11:26:34 CET 2005 - adrian@suse.de + +- update to current CVS + +------------------------------------------------------------------- +Fri Feb 18 11:18:03 CET 2005 - adrian@suse.de + +- update to current CVS + +------------------------------------------------------------------- +Wed Feb 16 17:53:31 CET 2005 - adrian@suse.de + +- remove floppy:/ from file dialog again, media:/ is enough + +------------------------------------------------------------------- +Mon Feb 14 14:41:13 CET 2005 - adrian@suse.de + +- update from CVS +- add rubberband patch from Andre Moreira Magalhaes, disabled by + default + +------------------------------------------------------------------- +Mon Feb 14 11:49:33 CET 2005 - adrian@suse.de + +- make it possible to disable IDN support via KDE_NO_IDN enviroment + variable + +------------------------------------------------------------------- +Sun Feb 13 10:26:22 CET 2005 - coolo@suse.de + +- fix do_make -j15 + +------------------------------------------------------------------- +Fri Feb 11 10:29:44 CET 2005 - adrian@suse.de + +- update from CVS + +------------------------------------------------------------------- +Wed Feb 9 15:57:01 CET 2005 - adrian@suse.de + +- apply patch from Waldo to set ICE sockets to 0700 permissions + +------------------------------------------------------------------- +Mon Feb 7 11:28:36 CET 2005 - adrian@suse.de + +- update to beta 2 + +------------------------------------------------------------------- +Sat Jan 29 10:59:09 CET 2005 - coolo@suse.de + +- fix --no-unsermake + +------------------------------------------------------------------- +Fri Jan 28 16:53:21 CET 2005 - meissner@suse.de + +- removed setuid root binary kgrantpty which is not needed + since 8.1... + +------------------------------------------------------------------- +Fri Jan 28 15:11:47 CET 2005 - adrian@suse.de + +- update to current snapshot +- use external unsermake now + +------------------------------------------------------------------- +Tue Jan 25 15:41:07 CET 2005 - adrian@suse.de + +- adapt file dialog for media slave and remove floppy icon + +------------------------------------------------------------------- +Mon Jan 24 21:05:47 CET 2005 - coolo@suse.de + +- update to current snapshot (for testkhtml) + +------------------------------------------------------------------- +Thu Jan 20 16:53:31 CET 2005 - adrian@suse.de + +- update to current snapshot + +------------------------------------------------------------------- +Sat Jan 15 21:05:52 CET 2005 - schwab@suse.de + +- Use : in permissions file. + +------------------------------------------------------------------- +Fri Jan 14 14:58:39 CET 2005 - adrian@suse.de + +- update to current HEAD +- disable limit-image-size patch, since it got also disabled in qt + +------------------------------------------------------------------- +Thu Jan 13 15:05:49 CET 2005 - coolo@suse.de + +- update to HEAD to get kdebase HEAD compiled + +------------------------------------------------------------------- +Mon Jan 10 11:56:08 CET 2005 - adrian@suse.de + +- fix kprinter.h header, this fixes the build of kdebindings + +------------------------------------------------------------------- +Mon Jan 10 09:37:17 CET 2005 - coolo@suse.de + +- fix permissions of do_make + +------------------------------------------------------------------- +Sun Jan 9 10:01:53 CET 2005 - adrian@suse.de + +- final 3.4 beta 1 + +------------------------------------------------------------------- +Tue Jan 4 11:49:56 CET 2005 - coolo@suse.de + +- update to 3.4 beta 1 (first snapshot) + +------------------------------------------------------------------- +Fri Dec 17 09:24:58 CET 2004 - coolo@suse.de + +- let -Wl, pass in $LDFLAGS +- fix quoting in make wrapper + +------------------------------------------------------------------- +Thu Dec 16 21:32:19 CET 2004 - hvogel@suse.de + +- change icon to about_kde. go comes from another package and + we dont want kdelibs require kdebase + +------------------------------------------------------------------- +Wed Dec 15 12:44:48 CET 2004 - coolo@suse.de + +- make the unsermake/automake switch more clever + +------------------------------------------------------------------- +Tue Dec 14 11:11:05 CET 2004 - coolo@suse.de + +- fix unsermake $PATH for packages that build several sources + +------------------------------------------------------------------- +Mon Dec 13 14:56:19 CET 2004 - coolo@suse.de + +- remove debug flag from configure +- replaced unsermake with latest greatest + +------------------------------------------------------------------- +Wed Dec 8 13:25:36 CET 2004 - adrian@suse.de + +- update to official 3.4 alpha 1 + +------------------------------------------------------------------- +Mon Dec 6 15:17:54 CET 2004 - adrian@suse.de + +- update to KDE head snapshot + +------------------------------------------------------------------- +Fri Dec 3 15:19:22 CET 2004 - adrian@suse.de + +- update to the final tar bal of 3.3.2 + +------------------------------------------------------------------- +Mon Nov 29 20:29:55 CET 2004 - adrian@suse.de + +- update to version 3.3.2 + +------------------------------------------------------------------- +Fri Nov 26 15:57:47 CET 2004 - adrian@suse.de + +- extend KDE_VERSION_STRING with extra Level information to tell + information about applied patches +- extend distribution string with distribution version +- show distribution version in about dialog + +------------------------------------------------------------------- +Thu Nov 25 11:44:39 CET 2004 - adrian@suse.de + +- correct gnome icon path to hicolor + +------------------------------------------------------------------- +Wed Nov 24 13:49:09 CET 2004 - adrian@suse.de + +- accept also Python 2.4 in configure checks + +------------------------------------------------------------------- +Thu Nov 18 15:38:38 CET 2004 - ro@suse.de + +- use kerberos-devel-packages + +------------------------------------------------------------------- +Mon Nov 15 15:37:37 CET 2004 - adrian@suse.de + +- include /opt/kde3/share/icons/crystalsvg/22x22/apps path + +------------------------------------------------------------------- +Wed Nov 10 12:52:20 CET 2004 - ro@suse.de + +- permission handling fixes + +------------------------------------------------------------------- +Wed Nov 10 11:14:50 CET 2004 - coolo@suse.de + +- moving khtml 3.3 diff in a seperate diff (now that the 3.3 branch + contains a lot of updates for it) + +------------------------------------------------------------------- +Mon Nov 8 16:33:07 CET 2004 - coolo@suse.de + +- renable patch to limit image size (#43841) + +------------------------------------------------------------------- +Wed Nov 3 15:19:43 CET 2004 - coolo@suse.de + +- updated khtml again to fix compilation problem with gcc 4 + +------------------------------------------------------------------- +Wed Nov 3 11:12:57 CET 2004 - coolo@suse.de + +- use HTML rendering engine from CVS head (preparing backport for + 3.3.2) + +------------------------------------------------------------------- +Tue Oct 12 11:25:02 CEST 2004 - adrian@suse.de + +- update to version 3.3.1 + +------------------------------------------------------------------- +Wed Oct 6 14:30:24 CEST 2004 - adrian@suse.de + +- fix crash in libkabc, when importing an ldif file (#46882) + +------------------------------------------------------------------- +Tue Oct 5 10:17:05 CEST 2004 - adrian@suse.de + +- do also find gnome pages when using "en_*" locale, instead of + "C" or "en" (#45480) + +------------------------------------------------------------------- +Sat Oct 2 08:40:00 CEST 2004 - adrian@suse.de + +- try to avoid klauncher registration with a wrong dcop name. + this can happen, if two KDE application gets started at the + same time, without having running kdeinit before. + patch by Waldo and solves problems in Gnome hopefully (#46355) +- khtml rendering fix for nvidia.com + +------------------------------------------------------------------- +Fri Oct 1 16:58:11 CEST 2004 - adrian@suse.de + +- fix html frame parent problem, fixes www.map24.de (#44156) + +------------------------------------------------------------------- +Thu Sep 30 09:09:07 CEST 2004 - adrian@suse.de + +- fix nasty error startup messages +- fix two minor javascript bugs +- fix Netscape bookmarks wrapping (by Waldo, #45917) + +------------------------------------------------------------------- +Sun Sep 26 18:04:31 CEST 2004 - adrian@suse.de + +- update to current 3_3_BRANCH + * translation updates + * kpart handling fixes + +------------------------------------------------------------------- +Mon Sep 20 10:07:28 CEST 2004 - adrian@suse.de + +- update to current 3_3_BRANCH +- add fix for KDE file dialog on 64bit + (crash when called by 32bit application, by Waldo #44995) + +------------------------------------------------------------------- +Thu Sep 16 17:11:22 CEST 2004 - adrian@suse.de + +- use kwallet fix from Arvin + (update external hash keys immediatly #43973) + +------------------------------------------------------------------- +Wed Sep 15 17:18:45 CEST 2004 - adrian@suse.de + +- disable kwallet fix, it is known to create a memory leak + +------------------------------------------------------------------- +Tue Sep 14 15:23:11 CEST 2004 - adrian@suse.de + +- update to current branch + * khtml fixes + +------------------------------------------------------------------- +Fri Sep 10 13:47:48 CEST 2004 - adrian@suse.de + +- update to current branch +- apply fix for kwallet from HEAD, needed for kinternet + +------------------------------------------------------------------- +Tue Sep 7 11:28:30 CEST 2004 - adrian@suse.de + +- update to current BRANCH +- more silence during kbuildsycoca run +- disable default unsermake in beta +- remove mad from nfb + +------------------------------------------------------------------- +Fri Sep 3 17:29:22 CEST 2004 - coolo@suse.de + +- fixing the fix ;( + +------------------------------------------------------------------- +Fri Sep 3 14:20:15 CEST 2004 - coolo@suse.de + +- unsermake: do not remove the .deps file before regenerating it to + avoid make races + +------------------------------------------------------------------- +Mon Aug 30 08:36:57 CEST 2004 - adrian@suse.de + +- compile with explicit --disable-debug to get rid off asserts + +------------------------------------------------------------------- +Sat Aug 28 08:22:23 CEST 2004 - adrian@suse.de + +- update to current BRANCH +- add gnome help page support for khelpcenter(by clahey, #44061) + +------------------------------------------------------------------- +Mon Aug 23 16:31:13 CEST 2004 - adrian@suse.de + +- disable patch to limit image sizes in khtml, it causes crashes + atm + +------------------------------------------------------------------- +Fri Aug 20 13:02:26 CEST 2004 - adrian@suse.de + +- update to current 3_3_BRANCH +- add patch from clahey to support gnome help pages better in khelpcenter + +------------------------------------------------------------------- +Wed Aug 18 12:15:58 CEST 2004 - adrian@suse.de + +- move debug mode switch to common_options + +------------------------------------------------------------------- +Tue Aug 17 08:12:49 CEST 2004 - adrian@suse.de + +- add patch from Waldo to make it possible to limit the max image + size within QImage. (#43841) + +------------------------------------------------------------------- +Mon Aug 16 15:32:44 CEST 2004 - adrian@suse.de + +- update to version 3.3.0 final + +------------------------------------------------------------------- +Mon Aug 16 15:32:44 CEST 2004 - adrian@suse.de + +- update to version 3.3.0 final +- use "make compile" + +------------------------------------------------------------------- +Fri Aug 13 10:37:43 CEST 2004 - coolo@suse.de + +- removed 3_2_BRANCH.diff +- build with unsermake + +------------------------------------------------------------------- +Tue Aug 10 08:58:24 CEST 2004 - adrian@suse.de + +- update to version 3.3.0 RC2 +- split doc tools into subpackage to make it possible to use + a different theming for special products + +------------------------------------------------------------------- +Mon Aug 2 09:21:16 CEST 2004 - adrian@suse.de + +- accept automake 1.9 + +------------------------------------------------------------------- +Mon Jul 19 10:35:33 CEST 2004 - adrian@suse.de + +- update to version 3.2.92 (KDE 3.3 beta 2) + +------------------------------------------------------------------- +Tue Jun 29 12:01:28 CEST 2004 - adrian@suse.de + +- do not remove .cpp/.h files, if they are not really generated + by uic + +------------------------------------------------------------------- +Mon Jun 28 22:32:49 CEST 2004 - adrian@suse.de + +- enable OpenEXR support + +------------------------------------------------------------------- +Mon Jun 28 09:30:57 CEST 2004 - adrian@suse.de + +- update to version 3.3 beta 1 + * usual patch cleanup + +------------------------------------------------------------------- +Mon May 31 20:29:40 CEST 2004 - adrian@suse.de + +- update to version 3.2.3 + * remove obsolete patches + +------------------------------------------------------------------- +Wed May 12 09:21:00 CEST 2004 - adrian@suse.de + +- update user_profile patch +- add 3.3 button layout patch + +------------------------------------------------------------------- +Thu Apr 29 08:59:13 CEST 2004 - coolo@suse.de + +- let unsermake rewrite install rules with $DESTDIR +- use unsermake for kdelibs and parallel build + +------------------------------------------------------------------- +Sat Apr 24 18:17:07 CEST 2004 - sndirsch@suse.de + +- use xorg-x11 packages + +------------------------------------------------------------------- +Tue Apr 20 14:12:35 CEST 2004 - adrian@suse.de + +- use admin tar ball from HEAD +- extend kde-config to export library suffix and check for it in + configure +- add user profiles patch from Waldo + +------------------------------------------------------------------- +Sun Apr 18 14:56:17 CEST 2004 - coolo@suse.de + +- updated unsermake + +------------------------------------------------------------------- +Wed Apr 14 11:16:33 CEST 2004 - adrian@suse.de + +- update to version 3.2.2 + +------------------------------------------------------------------- +Tue Apr 13 17:16:34 CEST 2004 - adrian@suse.de + +- adding utempter to neededforbuild. (#38833) + (this does not lead into a new runtime requirement) + +------------------------------------------------------------------- +Sun Apr 4 21:08:43 CEST 2004 - adrian@suse.de + +- do only show important items in file dialog (#38269) + +------------------------------------------------------------------- +Thu Apr 1 10:39:59 CEST 2004 - coolo@suse.de + +- replacing brute force shut up with a real log file in kconf_update + (Waldo) + +------------------------------------------------------------------- +Wed Mar 31 16:40:14 CEST 2004 - adrian@suse.de + +- fix 3_2_BRANCH patch + +------------------------------------------------------------------- +Tue Mar 30 17:43:16 CEST 2004 - adrian@suse.de + +- enable incremental sycoca creation again + +------------------------------------------------------------------- +Tue Mar 30 10:45:07 CEST 2004 - coolo@suse.de + +- fix desktop icon renaming (Waldo) +- fixing kconf_update for kwin (Waldo,#36682) + +------------------------------------------------------------------- +Mon Mar 29 10:19:55 CEST 2004 - coolo@suse.de + +- handle cups printers that insist on being different (#37011) + +------------------------------------------------------------------- +Sat Mar 27 09:53:52 CET 2004 - adrian@suse.de + +- fix regression in khtml parser with latest update (by coolo) + +------------------------------------------------------------------- +Fri Mar 26 16:47:48 CET 2004 - adrian@suse.de + +- more silence (Waldo, Dirk and Adrian) +- apply fix for possible hanging library unloading (Lubos) +- fix regression in khtml parser with latest update (coolo) +- fix for hidden cookie windows below main windows (Lubos) +- fix icons in kcontrol + +------------------------------------------------------------------- +Tue Mar 23 08:06:52 CET 2004 - adrian@suse.de + +- update to current 3_2_BRANCH + * khtml fixes + o recursion protection + o official patch for kio urls + o crash fix (happened with Quanta) + o urls with trailing / are handled as directories + o fix for some flash enabled sites (#36656) +- fix fileshare.diff, make us compatible to KDE again +- call %run_permissions +- apply fix for utf8 localisation problem in kdehelp (coolo, #36681) +- adjust yast icon path to the new location +- fix missing include in fontconfig-reverse-lookup patch +- remove special settings for s390 and alpha + (leaded into new problems like implicit declarations of functions) + +------------------------------------------------------------------- +Mon Mar 22 13:22:57 CET 2004 - adrian@suse.de + +- update to current 3_2_BRANCH + * fixes security leak in kdeprint (#36663) +- add patch from Waldo to disallow kio urls in khtml + +------------------------------------------------------------------- +Sun Mar 21 21:32:47 CET 2004 - adrian@suse.de + +- do not trigger mount with konq view of /media/ (by Lubos) + +------------------------------------------------------------------- +Sun Mar 21 11:08:11 CET 2004 - adrian@suse.de + +- update to current 3_2_BRANCH + * fixed linebreak patch +- fix deactivated patches and remove obsolete ones +- suppress sycoca warnings about missing mimetypes + +------------------------------------------------------------------- +Mon Mar 15 16:46:24 CET 2004 - coolo@suse.de + +- another update to 3_2_BRANCH (kdeprint layout fixes and kate repaint problems) + +------------------------------------------------------------------- +Sat Mar 13 12:50:59 CET 2004 - coolo@suse.de + +- adding patch to force line breaks in translation of desktop files + (Arbeits-\nplatz) + +------------------------------------------------------------------- +Wed Mar 10 23:28:21 CET 2004 - coolo@suse.de + +- kill dcopserver explicitly + +------------------------------------------------------------------- +Wed Mar 10 10:39:42 CET 2004 - coolo@suse.de + +- use current 3_2_BRANCH (#35070) + +------------------------------------------------------------------- +Mon Mar 8 11:20:24 CET 2004 - adrian@suse.de + +- use current 3_2_BRANCH +- disable debug mode +- find YaST icons + +------------------------------------------------------------------- +Sun Mar 7 13:06:48 CET 2004 - coolo@suse.de + +- fixing pnome -> gnome typo +- adding libidn-devel as requirement for devel subpackage + +------------------------------------------------------------------- +Sat Mar 6 12:46:33 CET 2004 - coolo@suse.de + +- older distributions have different layouts for gnome. Avoid + dangling symlinks + +------------------------------------------------------------------- +Fri Mar 5 16:35:39 CET 2004 - coolo@suse.de + +- fixing build + +------------------------------------------------------------------- +Fri Mar 5 14:53:16 CET 2004 - coolo@suse.de + +- restart cups through rcscripts instead of kill magic (#32787) +- final update for 3.2.1 + +------------------------------------------------------------------- +Thu Mar 4 14:45:52 CET 2004 - coolo@suse.de + +- require libidn hard to avoid problems e.g. on lib64 + +------------------------------------------------------------------- +Wed Mar 3 18:26:46 CET 2004 - adrian@suse.de + +- removed gnome packages from neededforbuild + +------------------------------------------------------------------- +Tue Mar 2 10:25:48 CET 2004 - coolo@suse.de + +- update tarball again for khtml regression fixes + +------------------------------------------------------------------- +Tue Mar 2 10:23:33 CET 2004 - coolo@suse.de + +- fix build + +------------------------------------------------------------------- +Mon Mar 1 10:34:30 CET 2004 - coolo@suse.de + +- update to version 3.2.1 +- reworked build process + +------------------------------------------------------------------- +Mon Mar 1 10:34:30 CET 2004 - coolo@suse.de + +- update to version 3.2.1 + +------------------------------------------------------------------- +Wed Feb 25 22:01:46 CET 2004 - adrian@suse.de + +- update to current 3_2_BRANCH +- add -g as compiler option for beta test + +------------------------------------------------------------------- +Wed Feb 25 20:42:15 CET 2004 - adrian@suse.de + +- do not build on slow architectures + +------------------------------------------------------------------- +Mon Feb 23 15:40:21 CET 2004 - adrian@suse.de + +- do not use DNotify or FAM on /media +- long poll intervall for /media +- include GnomeCrystal icons and general pixmaps path + +------------------------------------------------------------------- +Mon Feb 23 08:05:47 CET 2004 - coolo@suse.de + +- initial package + +------------------------------------------------------------------- +Mon Feb 23 08:05:26 CET 2004 - coolo@suse.de + +- update 3_2_BRANCH +- update HEAD khtml +- adding testkhtml.spec + +------------------------------------------------------------------- +Sat Feb 21 18:35:28 CET 2004 - adrian@suse.de + +- add gnome and default icon pathes +- fix ssh.protcol installation +- fix syntax error in common_options + +------------------------------------------------------------------- +Fri Feb 20 09:29:56 CET 2004 - coolo@suse.de + +- use khtml from HEAD (to be backported) +- update admin tar ball +- take out testing khtml from the main page + +------------------------------------------------------------------- +Wed Feb 18 17:40:33 CET 2004 - adrian@suse.de + +- update to current 3_2_BRANCH + * ssh support to ktelnetservice +- remove pcsc-lite from neededforbuild +- disable test_regression for now + +------------------------------------------------------------------- +Wed Feb 11 08:50:03 CET 2004 - coolo@suse.de + +- fixing build on s390 + +------------------------------------------------------------------- +Wed Feb 11 08:06:07 CET 2004 - adrian@suse.de + +- update to current 3_2_BRANCH + +------------------------------------------------------------------- +Thu Jan 29 14:06:43 CET 2004 - adrian@suse.de + +- apply fix for printing with QT 3.3 + +------------------------------------------------------------------- +Mon Jan 26 23:25:56 CET 2004 - adrian@suse.de + +- update to version 3.2.0 final + +------------------------------------------------------------------- +Fri Jan 23 18:44:08 CET 2004 - adrian@suse.de + +- update to current 3_2_BRANCH + +------------------------------------------------------------------- +Wed Jan 21 17:28:14 CET 2004 - adrian@suse.de + +- disable sse and mmx usage on 9.0 (compiler bug) +- remove autom4te.cache during update_admin + (automake 2.8 can run into error with <2.8 cache data) + +------------------------------------------------------------------- +Wed Jan 21 12:14:49 CET 2004 - adrian@suse.de + +- update to current BRANCH to get various khtml fixes + +------------------------------------------------------------------- +Sun Jan 18 21:43:52 CET 2004 - adrian@suse.de + +- update to version 3.1.95 ( KDE 3.2 RC1 ) + +------------------------------------------------------------------- +Fri Jan 16 17:10:30 CET 2004 - adrian@suse.de + +- implement short menus again + +------------------------------------------------------------------- +Tue Jan 13 13:32:16 CET 2004 - adrian@suse.de + +- update to snapshot 2004011309 +- disable debug + +------------------------------------------------------------------- +Tue Jan 6 19:20:55 CET 2004 - adrian@suse.de + +- update to snapshot 2004010618 +- add kde_post_install function to common_options +- remove pregenerated files from uic during update_admin + +------------------------------------------------------------------- +Thu Dec 18 14:12:16 CET 2003 - adrian@suse.de + +- update to snapshot 2003121718 + +------------------------------------------------------------------- +Mon Dec 15 14:18:36 CET 2003 - adrian@suse.de + +- update to snapshot 2003121511 +- accept automake 1.8 + +------------------------------------------------------------------- +Wed Dec 10 14:30:45 CET 2003 - adrian@suse.de + +- update to snapshot 2003121013 + +------------------------------------------------------------------- +Tue Dec 9 13:40:37 CET 2003 - adrian@suse.de + +- package test_regression for testing in khtmltest package + +------------------------------------------------------------------- +Tue Dec 2 11:10:27 CET 2003 - adrian@suse.de + +- use beta2, take two tar ball + +------------------------------------------------------------------- +Mon Dec 1 22:00:31 CET 2003 - adrian@suse.de + +- update to 3.1.94 ( KDE 3.2 beta 2 ) + +------------------------------------------------------------------- +Sun Nov 23 20:44:24 CET 2003 - adrian@suse.de + +- update to snapshot 2003112315 + * build again with alsa 1.0 + +------------------------------------------------------------------- +Thu Nov 13 23:14:30 CET 2003 - adrian@suse.de + +- update to new snapshot from 2003102409 +- add jasper (JPEG2000) support + +------------------------------------------------------------------- +Wed Oct 29 09:59:01 CET 2003 - adrian@suse.de + +- update to KDE 3.2 beta1 + +------------------------------------------------------------------- +Tue Oct 21 09:34:51 CEST 2003 - adrian@suse.de + +- update to snapshot 2003102008 + +------------------------------------------------------------------- +Sun Oct 5 14:31:09 CEST 2003 - adrian@suse.de + +- update to snapshot 2003100510 + +------------------------------------------------------------------- +Wed Oct 1 09:59:21 CEST 2003 - adrian@suse.de + +- update to snapshot 3.1.92_2003093021 + * should fix building of KDE 2.2 documents in other packages + +------------------------------------------------------------------- +Mon Sep 29 15:59:09 CEST 2003 - adrian@suse.de + +- update to version 1.1.92 (KDE 3.2 alpha 2) + +------------------------------------------------------------------- +Tue Sep 23 09:42:45 CEST 2003 - adrian@suse.de + +- apply crash fix (happens in kdesktop) from Marcus Meissner + happened with a (most likely broken) Windows Driver CD (#31568) + +------------------------------------------------------------------- +Tue Sep 16 11:40:25 CEST 2003 - adrian@suse.de + +- fix application/x-ogg icon + +------------------------------------------------------------------- +Sat Sep 13 10:37:36 CEST 2003 - adrian@suse.de + +- fix Unimportant routines really finaly +- Require pcre-devel only for > 8.2 +- make menu sorting a routine which can be called from kicker +- hide Documents folder entry in kfiledialog for > 8.2 + +------------------------------------------------------------------- +Fri Sep 12 13:51:12 CEST 2003 - coolo@suse.de + +- add requirement on pcre-devel as libkhtml.la contains a reference + to /usr/lib/libpcreposix.la + +------------------------------------------------------------------- +Thu Sep 11 15:50:09 CEST 2003 - coolo@suse.de + +- give a more correct error message (as good as we can get it out + of cups) for forbidden actions (#29225) + +------------------------------------------------------------------- +Thu Sep 11 09:20:07 CEST 2003 - adrian@suse.de + +- use updated 3.1.4 tar ball + * certifcate dialog will reappear after typing wrong password +- add BRANCH patch to fix kdesktop icon name renaming and a crash fix +- honor caching in KServiceGroup::SuSEchildCount() + +------------------------------------------------------------------- +Tue Sep 9 02:59:23 CEST 2003 - adrian@suse.de + +- add YaST icon path + +------------------------------------------------------------------- +Tue Sep 9 00:14:46 CEST 2003 - adrian@suse.de + +- update to version 3.1.4 + +------------------------------------------------------------------- +Mon Sep 8 15:27:08 CEST 2003 - adrian@suse.de + +- implement KServiceGroup::SuSEchildCount() to ignore + X-SuSE-Unimportant entries + +------------------------------------------------------------------- +Fri Sep 5 12:10:12 CEST 2003 - adrian@suse.de + +- add check for SuSE-Unimportant also in kservicegroup class +- add support for X-SuSE-GeneralDescription and ShortMenu +- update 3_1_BRANCH +- add kmimelist application for debugging +- add optioninal X-KDE-InitialPreference Tag, if we want + different settings in Gnome + +------------------------------------------------------------------- +Wed Sep 3 17:44:28 CEST 2003 - adrian@suse.de + +- update xdg patch from Waldo to get compatible with 3.2 again +- update 3_1_BRANCH to get klistview fixes + +------------------------------------------------------------------- +Tue Sep 2 12:52:02 CEST 2003 - adrian@suse.de + +- include default pixmaps path +- drop broken styles, which will also disappear in KDE 3.2 +- add shut up patch from coolo + +------------------------------------------------------------------- +Mon Sep 1 14:38:52 CEST 2003 - adrian@suse.de + +- update to current 3_1_BRANCH +- implement X-SuSE-Unimportant support + +------------------------------------------------------------------- +Fri Aug 29 17:24:16 CEST 2003 - adrian@suse.de + +- update to current 3_1_BRANCH for qt 3.2.1 fixes + +------------------------------------------------------------------- +Tue Aug 26 08:16:04 CEST 2003 - adrian@suse.de + +- apply fix from Lubos for maximised windows of GTK apps + +------------------------------------------------------------------- +Sun Aug 24 23:06:19 CEST 2003 - adrian@suse.de + +- redo last fix in a more often working way. + but maybe we try to fix support for broken svg's atm ... + +------------------------------------------------------------------- +Sun Aug 24 12:14:29 CEST 2003 - adrian@suse.de + +- fix svgicon engine to render karbon svg's. +- install ksvgiconengine with header(internal) to get used by + svg thumbnail generator + +------------------------------------------------------------------- +Sat Aug 23 22:34:40 CEST 2003 - adrian@suse.de + +- update to 3_1_BRANCH + +------------------------------------------------------------------- +Wed Aug 20 17:19:57 CEST 2003 - schwab@suse.de + +- Fix weird character in common_options script. + +------------------------------------------------------------------- +Wed Aug 20 15:56:59 CEST 2003 - adrian@suse.de + +- small bugfix from Waldo for XDG + +------------------------------------------------------------------- +Tue Aug 19 12:15:18 CEST 2003 - adrian@suse.de + +- fix compile with gcc 3.3.1 + +------------------------------------------------------------------- +Wed Aug 13 11:34:11 CEST 2003 - adrian@suse.de + +- fix lib64 plugin support +- use current 3_1_BRANCH +- clean up spec file +- package /opt/kde3/include in main package + +------------------------------------------------------------------- +Tue Aug 12 13:25:32 CEST 2003 - adrian@suse.de + +- update XDG patch (yep, popup's are still disabled ;) + +------------------------------------------------------------------- +Fri Aug 8 21:58:06 CEST 2003 - adrian@suse.de + +- disable popup in kbuildsycoca run again + +------------------------------------------------------------------- +Thu Aug 7 15:25:02 CEST 2003 - adrian@suse.de + +- new XDG code from Waldo to support kmenuedit + +------------------------------------------------------------------- +Tue Aug 5 08:25:26 CEST 2003 - adrian@suse.de + +- disable popup in kbuildsycoca run + +------------------------------------------------------------------- +Fri Aug 1 16:54:16 CEST 2003 - adrian@suse.de + +- disable shadow patch at all again +- update 3_1_BRANCH diff + * first fixes for Qt 3.2 +- update kdelibs-menus stuff + * Waldo: Less buggy, with prefix support and with a working + + +------------------------------------------------------------------- +Wed Jul 30 17:52:37 CEST 2003 - adrian@suse.de + +- update kdelibs-menus-kded tar ball to new version from Waldo, + to get the kbuildsycoca --menutest function +- merge kdelibs3-cups back to kdelibs3 + +------------------------------------------------------------------- +Mon Jul 28 15:11:15 CEST 2003 - adrian@suse.de + +- update to current 3_1_BRANCH + +------------------------------------------------------------------- +Wed Jul 23 08:55:42 CEST 2003 - adrian@suse.de + +- use another new 3.1.3 tar ball with further security fix + (cookie handling) +- add needed files for XDG support + +------------------------------------------------------------------- +Tue Jul 22 13:12:02 CEST 2003 - coolo@suse.de + +- remove CVS conflict files from admin +- make common_options a %config (for consistency) + +------------------------------------------------------------------- +Mon Jul 21 12:00:42 CEST 2003 - adrian@suse.de + +- fix build for 7.x distributions + +------------------------------------------------------------------- +Fri Jul 18 17:02:43 CEST 2003 - adrian@suse.de + +- third version of 3.1.3 tar ball + (security fix for cookie handling) +- add backported patch from 3.2 for shadow text on icons. + (written by Laur Ivan ) +- accept Qt 3.2 also, when "#MIN_CONFIG(3)" is used +- fix build for lib64 + +------------------------------------------------------------------- +Fri Jul 18 10:01:44 CEST 2003 - adrian@suse.de + +- fix owner ship of files +- add XDG support from Waldo from KDE 3.2 + +------------------------------------------------------------------- +Wed Jul 16 12:14:55 CEST 2003 - adrian@suse.de + +- use new 3.1.3 tar ball + +------------------------------------------------------------------- +Wed Jul 16 01:11:51 CEST 2003 - adrian@suse.de + +- update to 3.1.3 + +------------------------------------------------------------------- +Tue Jun 24 10:52:19 CEST 2003 - coolo@suse.de + +- update 3.1 branch (heading 3.1.3) + +------------------------------------------------------------------- +Wed Jun 11 11:54:55 CEST 2003 - kukuk@suse.de + +- Add missing directories to filelist + +------------------------------------------------------------------- +Sat Jun 7 22:10:12 CEST 2003 - coolo@suse.de + +- remove libtool update code completly +- don't create stale symlinks for < 820 +- create the gnome icons symlink only for < 829 + (moved to gnome packages, where they can't dangle) + +------------------------------------------------------------------- +Fri May 30 14:55:49 CEST 2003 - adrian@suse.de + +- fix file conflict and disable libtool update again + +------------------------------------------------------------------- +Thu May 29 10:51:54 CEST 2003 - adrian@suse.de + +- tune some minor bits of coolo's changes + (a minor side effect is that we are able to build KDE packages again) + +------------------------------------------------------------------- +Wed May 28 15:05:30 CEST 2003 - coolo@suse.de + +- put the configure work around in update_admin too + +------------------------------------------------------------------- +Tue May 27 14:08:45 CEST 2003 - coolo@suse.de + +- updating 3_1_BRANCH.diff (to get it working without --enable-final) +- build --enable-final in beta too +- update libtool files from system (experimental) + +------------------------------------------------------------------- +Mon May 26 15:03:34 CEST 2003 - adrian@suse.de + +- define and use $INSTALL_TARGET in common_options +- set to "install" (not "install-strip") for now + +------------------------------------------------------------------- +Mon May 19 09:41:44 CEST 2003 - adrian@suse.de + +- apply 3_1_BRANCH.diff (fix build for Qt 3.2b1) + +------------------------------------------------------------------- +Fri May 16 13:34:52 CEST 2003 - coolo@suse.de + +- remove the right CVS subdir + +------------------------------------------------------------------- +Fri May 16 07:54:36 CEST 2003 - coolo@suse.de + +- remove CVS subdir + +------------------------------------------------------------------- +Thu May 8 09:05:49 CEST 2003 - adrian@suse.de + +- new 3.1.2 tar ball (try2) + +------------------------------------------------------------------- +Wed May 7 08:58:28 CEST 2003 - adrian@suse.de + +- update to version 3.1.2 +- cleanup/drop patches +- update admin tar ball and apply changes via a patch +- require correct arts version (1.1 at least) + +------------------------------------------------------------------- +Fri Apr 18 15:02:41 CEST 2003 - adrian@suse.de + +- merge 8.2 changes with 8.3 +- remove libaps from neededforbuild + +------------------------------------------------------------------- +Mon Apr 7 15:49:35 CEST 2003 - adrian@suse.de + +- security fix from 3.0.5b + * run ghostscript in safe mode +- add patch from Uwe Gansert to support the new fileshare tool +- add crash fix from 3_1_BRANCH for khtml on www.w3.org/QA/ +- do reverse font lookup in kfontcombobox and kaction for + fontconfig based distributions (#25725) + +------------------------------------------------------------------- +Thu Apr 3 18:26:13 CEST 2003 - adrian@suse.de + +- fix possible crash in kprinter on cups server misbehaviour +- add gnome help pages support for khelpcenter. + +------------------------------------------------------------------- +Fri Mar 21 12:56:36 CET 2003 - adrian@suse.de + +- apply fix https over proxy + +------------------------------------------------------------------- +Sat Mar 15 21:40:57 CET 2003 - adrian@suse.de + +- fix kmid crash in libkmid (#24820) +- .exe files have a correct icon now +- remove unused mimelnk tar ball + +------------------------------------------------------------------- +Wed Mar 12 09:49:01 CET 2003 - adrian@suse.de + +- disable kbuildsycoca speed up patch from last check-in again + +------------------------------------------------------------------- +Tue Mar 11 11:47:19 CET 2003 - adrian@suse.de + +- update to 3.1.1 tar ball, second try + * memory leak in dcopclient + * kate crash and syntax highlighting fixes + * do not let two running kbuildsycoca conflict + * keramik pixmapCache conflict fix + * some session management fixes +- add patch from Lubos to fix further session management problems + with preloaded konq +- fix api documentation +- remove SuSEconfig.susewm-kbuildsycoca again + (initial created by susewm now) + +------------------------------------------------------------------- +Thu Mar 6 10:34:33 CET 2003 - coolo@suse.de + +- updating the admin tar ball to 3.1.1 too + +------------------------------------------------------------------- +Mon Mar 3 11:36:11 CET 2003 - adrian@suse.de + +- update to version 3.1.1 + * fixed alphablended background images in khtml + * crash fix after destructed documents + * additional syntax highlight descriptions for kate +- xrandr fixes from Lubos to initialize the display correct on login + +------------------------------------------------------------------- +Thu Feb 27 23:50:42 CET 2003 - adrian@suse.de + +- update 3_1_BRANCH +- remove wrong Obsoletes again +- drop preload.desktop in autostart and use improved patch from + Lubos instead +- comment out some noise in .xsession-errors + +------------------------------------------------------------------- +Wed Feb 26 21:49:06 CET 2003 - adrian@suse.de + +- fixing kded startup with DNOTIFY enabled and lots of files + +------------------------------------------------------------------- +Wed Feb 26 10:35:49 CET 2003 - adrian@suse.de + +- update 3_1_BRANCH +- add ksycoca-global patch from Waldo +- add SuSEconfig.susewm-kbuildsycoca +- add Obsolete and Conflict tags with kde2 packages + +------------------------------------------------------------------- +Mon Feb 24 18:42:15 CET 2003 - adrian@suse.de + +- update 3_1_BRANCH +- enable-dnotify + +------------------------------------------------------------------- +Mon Feb 24 09:10:42 CET 2003 - coolo@suse.de + +- fixing kups (#24084) + +------------------------------------------------------------------- +Fri Feb 14 12:04:25 CET 2003 - adrian@suse.de + +- update 3_1_BRANCH +- allow setgid for man +- add gnome icon path + +------------------------------------------------------------------- +Wed Feb 12 22:46:37 CET 2003 - adrian@suse.de + +- update 3_1_BRANCH +- add preloaded konq patches from Lubos +- move kde-config back to main package + +------------------------------------------------------------------- +Wed Feb 5 02:26:15 CET 2003 - adrian@suse.de + +- update 3_1_BRANCH again for more aliasing fixes from Dirk +- remove fallback patch and implement a real media detection instead + of that + +------------------------------------------------------------------- +Tue Feb 4 10:06:14 CET 2003 - coolo@suse.de + +- updating to newer 3_1_BRANCH that is gcc 3.3 compliant + +------------------------------------------------------------------- +Mon Feb 3 16:57:38 CET 2003 - adrian@suse.de + +- add -fno-cse-follow-jumps -fno-cse-skip-blocks to work around + compiler bug + +------------------------------------------------------------------- +Mon Feb 3 11:52:53 CET 2003 - adrian@suse.de + +- update 3_1_BRANCH patch +- use --enable-final again + +------------------------------------------------------------------- +Sat Feb 1 16:38:48 CET 2003 - adrian@suse.de + +- remove ppc64 special compile options + +------------------------------------------------------------------- +Tue Jan 28 17:46:03 CET 2003 - adrian@suse.de + +- follow changed QDesktopWidget::resized API + +------------------------------------------------------------------- +Tue Jan 28 00:31:12 CET 2003 - adrian@suse.de + +- add BRANCH patches +- add libart_lgpl-devel to Requires from -devel package + +------------------------------------------------------------------- +Fri Jan 24 12:16:47 CET 2003 - adrian@suse.de + +- apply fix for resized desktop for menubar from Seli + +------------------------------------------------------------------- +Thu Jan 23 09:58:07 CET 2003 - adrian@suse.de + +- ha ! RC7-try5, security relevant again + +------------------------------------------------------------------- +Wed Jan 22 07:17:29 CET 2003 - adrian@suse.de + +- RC7-try4. last one ? + +------------------------------------------------------------------- +Tue Jan 21 12:59:35 CET 2003 - adrian@suse.de + +- RC7-try3. last one. + +------------------------------------------------------------------- +Fri Jan 17 14:36:40 CET 2003 - adrian@suse.de + +- use RC7-try2 tar balls + +------------------------------------------------------------------- +Wed Jan 15 16:10:17 CET 2003 - adrian@suse.de + +- use cyrus-sasl2 + +------------------------------------------------------------------- +Tue Jan 14 17:26:02 CET 2003 - adrian@suse.de + +- update to version RC7. +- kdelibs3-devel requires now fam-devel on > 8.1 + +------------------------------------------------------------------- +Wed Jan 8 12:50:01 CET 2003 - adrian@suse.de + +- add fam-devel to neededforbuild + +------------------------------------------------------------------- +Wed Jan 8 11:12:50 CET 2003 - adrian@suse.de + +- fix build with new alsa. works hopefully also with old versions + +------------------------------------------------------------------- +Tue Jan 7 15:08:32 CET 2003 - adrian@suse.de + +- update to RC6 (newer than the last 3.1 final try ;) + +------------------------------------------------------------------- +Wed Dec 18 11:39:30 CET 2002 - coolo@suse.de + +- updating the admin tar ball to find out about possible problems + +------------------------------------------------------------------- +Mon Dec 16 14:28:39 CET 2002 - coolo@suse.de + +- updating to latest branch. + +------------------------------------------------------------------- +Tue Dec 10 14:55:41 CET 2002 - coolo@suse.de + +- adding a check to kdeinit that checks for KDE_IS_PRELINKED and + is not using dlopen then + +------------------------------------------------------------------- +Tue Dec 3 09:57:31 CET 2002 - coolo@suse.de + +- trying to fix SSL check for lib64 + +------------------------------------------------------------------- +Sat Nov 30 21:48:04 CET 2002 - adrian@suse.de + +- next try of RC5 tar ball. BRANCH fixes are again disabled + +------------------------------------------------------------------- +Thu Nov 28 13:01:54 CET 2002 - adrian@suse.de + +- apply 3_1_BRANCH fixes +- fix build for lib64 + +------------------------------------------------------------------- +Mon Nov 25 10:46:04 CET 2002 - adrian@suse.de + +- update to RC5. +- do not use --enable-final on beta (gcc 3.3) + +------------------------------------------------------------------- +Mon Nov 25 01:03:39 CET 2002 - ro@suse.de + +- added openldap2-client to neededforbuild + +------------------------------------------------------------------- +Sat Nov 23 16:24:50 CET 2002 - adrian@suse.de + +- enable openldap support +- clean up #neededforbuild + +------------------------------------------------------------------- +Wed Nov 20 15:02:54 CET 2002 - coolo@suse.de + +- adding fix for admin dir which should unbreak packages having problems + with autoconf 2.56 + +------------------------------------------------------------------- +Wed Nov 20 13:00:30 CET 2002 - adrian@suse.de + +- disable hotfix again (it is inside the new tar ball) + +------------------------------------------------------------------- +Wed Nov 20 11:13:49 CET 2002 - adrian@suse.de + +- update to version 3.1-RC4 (final ?) + +------------------------------------------------------------------- +Tue Nov 12 17:00:38 CET 2002 - coolo@suse.de + +- another snapshot with even more last minute fixes ;( + +------------------------------------------------------------------- +Tue Nov 12 09:14:09 CET 2002 - coolo@suse.de + +- apply the lib64 patch correctly (in updating to a source without + the patch pre-applied) + +------------------------------------------------------------------- +Mon Nov 11 16:14:44 CET 2002 - coolo@suse.de + +- update to newer snapshot and sort out patches + +------------------------------------------------------------------- +Wed Nov 6 17:35:47 CET 2002 - adrian@suse.de + +- update to snapshot 3.0.8.20021106 (fix file conflicts) + +------------------------------------------------------------------- +Sun Nov 3 13:16:21 CET 2002 - adrian@suse.de + +- update to version 1.1.0.20021030 ~= RC1 + +------------------------------------------------------------------- +Tue Oct 8 21:19:44 CEST 2002 - adrian@suse.de + +- update to version 3.0.4 +- disable topMenu patch again + +------------------------------------------------------------------- +Tue Sep 24 09:05:13 CEST 2002 - froh@suse.de + +- %-ifarch'ed Requires: alsa-devel for all but s390 and s390x (#18647) + +------------------------------------------------------------------- +Sun Sep 8 19:48:06 CEST 2002 - adrian@suse.de + +- cross side scripting check fix from Dirk Mueller + +------------------------------------------------------------------- +Sun Sep 8 15:53:37 CEST 2002 - adrian@suse.de + +- .exe files are handled now as files for wine and not direct executable + +------------------------------------------------------------------- +Thu Sep 5 14:11:22 CEST 2002 - adrian@suse.de + +- add fix from mana for libkmid, to get alsa sequenzer working again + +------------------------------------------------------------------- +Wed Sep 4 13:16:24 MEST 2002 - coolo@suse.de + +- fix the PNM mimetypes, so that digital cameras work + +------------------------------------------------------------------- +Sat Aug 31 23:49:25 CEST 2002 - adrian@suse.de + +- default to lib64 pathes in admin/* on lib64 systems. + (fix link error, when lib32 enviroment is installed) + +------------------------------------------------------------------- +Fri Aug 30 12:07:35 CEST 2002 - adrian@suse.de + +- use most current 3_0_BRANCH patches + * fix for crash in khtml with enabled java from Seli + * layout fix in kcombobox from gis + * kcombobox fix from dfaure for oversized box in koffice + * kjs date fixes from dfaure + * ksycoca, illegal object fix from Waldo + * kcompletion box fix for Xinerama setup, reviewed by gis + * do not loop on unexpected EOF in kio_khtml from Waldo + * newline handling fix in khtml from dirk + * disable tiff write support, since it is not implemented (coolo) + * translations + +------------------------------------------------------------------- +Mon Aug 26 14:55:32 CEST 2002 - adrian@suse.de + +- install plugins on lib64 into /opt/kde3/lib. so we do not need + different plugin path definitions +- add missing dependencies to -devel packages +- add some selected fix from 3_0_BRANCH + +------------------------------------------------------------------- +Tue Aug 20 10:28:25 CEST 2002 - adrian@suse.de + +- fix build for lib64 really :( + +------------------------------------------------------------------- +Tue Aug 20 08:51:21 CEST 2002 - adrian@suse.de + +- fix build for lib64 +- move designer plugins into -devel package + +------------------------------------------------------------------- +Tue Aug 20 00:41:40 CEST 2002 - adrian@suse.de + +- follow change qt plugin path patch (using implicit subdir on lib64) + +------------------------------------------------------------------- +Fri Aug 16 12:12:54 CEST 2002 - adrian@suse.de + +- update to current 3_0_BRANCH + * include dirk's khtml glitch fix + +------------------------------------------------------------------- +Wed Aug 14 16:08:17 CEST 2002 - coolo@suse.de + +- don't strip on debug-i386 +- fixing lib64 path for plugins + +------------------------------------------------------------------- +Tue Aug 13 15:29:12 CEST 2002 - coolo@suse.de + +- prefer settings in /etc/opt/kde3 over /opt/kde, so that UL + settings can overwrite standard KDE settings + +------------------------------------------------------------------- +Tue Aug 13 12:42:46 CEST 2002 - adrian@suse.de + +- update to 3.0.3 tar ball, second try + (includes security fix for KSSL) + +------------------------------------------------------------------- +Tue Aug 13 10:30:30 CEST 2002 - coolo@suse.de + +- alsadev -> alsa-devel + +------------------------------------------------------------------- +Mon Aug 12 17:08:37 CEST 2002 - coolo@suse.de + +- the x86_64 bug is fixed now + +------------------------------------------------------------------- +Sun Aug 11 12:54:06 CEST 2002 - coolo@suse.de + +- changing admin.tar.bz2 to work around automake crap not beeing + able to get kdemultimedia compiled +- update 3.0 branch patch again + +------------------------------------------------------------------- +Thu Aug 8 00:44:30 CEST 2002 - adrian@suse.de + +- update to 3.0.3 +- add 3_0_BRANCH fix for ksycoca recreation by Waldo + +------------------------------------------------------------------- +Mon Aug 5 10:43:16 CEST 2002 - adrian@suse.de + +- update 3_0_BRANCH.dif +- add some mimetypes +- apply patch to support a fallback on mounting devices +- fix PreRequires +- update admin.tar + +------------------------------------------------------------------- +Sun Aug 4 22:35:24 CEST 2002 - adrian@suse.de + +- finaly fix build for hammer + (yes, even tested this time) + +------------------------------------------------------------------- +Sun Aug 4 11:33:29 CEST 2002 - adrian@suse.de + +- fix the second typo in one line :( + +------------------------------------------------------------------- +Fri Aug 2 15:56:03 CEST 2002 - coolo@suse.de + +- adding a patch that hopefully fixes the very large tip of the konsole + window + +------------------------------------------------------------------- +Thu Aug 1 15:58:11 CEST 2002 - adrian@suse.de + +- and fix the typo in last patch + +------------------------------------------------------------------- +Thu Aug 1 15:47:00 CEST 2002 - adrian@suse.de + +- add workaround for x86_64 compiler bug + +------------------------------------------------------------------- +Thu Aug 1 09:24:45 CEST 2002 - coolo@suse.de + +- updating the branch patch for a possible fix to kukuk's + bugzilla crash :) + +------------------------------------------------------------------- +Wed Jul 31 15:58:12 CEST 2002 - adrian@suse.de + +- add missing directorys applnk/* + +------------------------------------------------------------------- +Tue Jul 30 12:00:25 CEST 2002 - coolo@suse.de + +- don't use SuSEconfig for the KDE api, but a dedicated script + in %post +- don't install a susehelp config file anymore, but let susehelp + handle it itself +- handle the new location for api docu + +------------------------------------------------------------------- +Fri Jul 26 20:37:03 CEST 2002 - adrian@suse.de + +- fix neededforbuild + +------------------------------------------------------------------- +Fri Jul 26 19:44:39 CEST 2002 - adrian@suse.de + +- disable fast-malloc, since it is in qt now + +------------------------------------------------------------------- +Tue Jul 23 16:02:01 CEST 2002 - coolo@suse.de + +- also install the qt.tag file +- remove configure option removed long ago + +------------------------------------------------------------------- +Tue Jul 23 09:05:40 CEST 2002 - coolo@suse.de + +- don't let the Makefile guess the package name. it will guess the + wrong thing + +------------------------------------------------------------------- +Fri Jul 19 10:57:12 CEST 2002 - adrian@suse.de + +- use the kpart for rpm mimetype (if installed) + +------------------------------------------------------------------- +Thu Jul 18 16:53:37 CEST 2002 - coolo@suse.de + +- use doxygen for docu +- backport admin fixes from HEAD branch +- removed neededforbuilds that look like stuff not needed for build + (since KDE 2.1) +- moved API docu (back) into /opt/kde3 +- updated 3.0 branch diff + +------------------------------------------------------------------- +Fri Jul 12 17:12:27 CEST 2002 - adrian@suse.de + +- add topMenu definition + +------------------------------------------------------------------- +Fri Jul 12 14:21:11 CEST 2002 - adrian@suse.de + +- use current 3_0_BRANCH + * includes the fix for the famous CSS/JS segfault in konqueror + +------------------------------------------------------------------- +Thu Jul 11 13:10:17 CEST 2002 - adrian@suse.de + +- fix build for lib64 +- use patch from coolo to disable g3 file support (libtiff is broken) + +------------------------------------------------------------------- +Mon Jul 8 13:04:10 CEST 2002 - adrian@suse.de + +- fix file list + +------------------------------------------------------------------- +Fri Jul 5 14:00:14 CEST 2002 - adrian@suse.de + +- add missing icon directorys +- split cups support into own package for 8.1 +- s,i386,%ix86, + +------------------------------------------------------------------- +Thu Jun 27 21:57:40 CEST 2002 - adrian@suse.de + +- add %run_ldconfig in %post +- use --disable-final on ppc64 +- disable more debug messages + +------------------------------------------------------------------- +Wed Jun 26 10:55:26 CEST 2002 - adrian@suse.de + +- update to the second try of 3.0.2 tar ball + +------------------------------------------------------------------- +Mon Jun 24 22:29:07 CEST 2002 - adrian@suse.de + +- udpate to version 3.0.2 + +------------------------------------------------------------------- +Wed Jun 19 18:12:46 CEST 2002 - uli@suse.de + +- disable-final on ARM + +------------------------------------------------------------------- +Wed Jun 12 10:44:09 CEST 2002 - adrian@suse.de + +- update to current 3_0_BRANCH (large kjs updates) +- clean #neededforbuild +- do only warn on missing admin directory in update_admin +- remove old common_compile_options file + +------------------------------------------------------------------- +Fri Jun 7 13:55:25 CEST 2002 - adrian@suse.de + +- using fixed libtool for -m32/-m64 in admin (fixed by matz) +- replace admin with the content from admin.tar.bz2 + +------------------------------------------------------------------- +Thu Jun 6 15:45:24 CEST 2002 - adrian@suse.de + +- export kde_styledir and kde_widgetdir to follow the plugins* + directory name from Qt. + +------------------------------------------------------------------- +Wed Jun 5 15:59:29 CEST 2002 - adrian@suse.de + +- go back to 1.316 for am_edit + (no unsermake support, but generates moc files with --enable-final) + +------------------------------------------------------------------- +Tue Jun 4 10:39:02 CEST 2002 - coolo@suse.de + +- adding /sbin:/usr/sbin to the PATH if kdesu is used to become root. + Work around for flaws in setup tools (#11362) + +------------------------------------------------------------------- +Mon Jun 3 15:03:11 CEST 2002 - coolo@suse.de + +- removing test programs that cause problems with automake 1.6.1 + +------------------------------------------------------------------- +Mon Jun 3 12:34:41 CEST 2002 - adrian@suse.de + +- update to inofficial version 3.0.1a + * include bug/security fix for file uploads +- fix for broken png's in khtml in some cases + +------------------------------------------------------------------- +Mon May 27 12:02:26 CEST 2002 - adrian@suse.de + +- fix for 7.0 distribution + +------------------------------------------------------------------- +Thu May 23 18:35:17 CEST 2002 - ro@suse.de + +- fix admin extraction + +------------------------------------------------------------------- +Thu May 23 16:43:13 CEST 2002 - adrian@suse.de + +- Obsolete/provide kups and add start script + +------------------------------------------------------------------- +Thu May 23 14:48:35 CEST 2002 - coolo@suse.de + +- adding a update_admin snippet here too, so we can fix kde 3 + apps the same way as kde 2 apps + +------------------------------------------------------------------- +Wed May 22 01:18:18 CEST 2002 - adrian@suse.de + +- use coolo's famous common_options config file format + old common_compile_options file is not disabled for now +- use explicit --enable-debug=full if RPM_OPT_FLAGS~=-g + +------------------------------------------------------------------- +Tue May 21 16:28:23 CEST 2002 - adrian@suse.de + +- use Dirk's official post-3.0.1 patch and disable our former ones + * includes a security fix for khtml, known as "Opera exploit" + * fix "arts not starting realtime" problem (typo in reading config +variable). + * fix crashing kbuildsycoca when it hits an unreadable directory + * fix a text selection problem for KMail. + * fix a problem where (i)frame's accidently were not resized correctly. + * fix mime-detection of koffice post v1.1 documents + * urgent fixes in kfiledialog + +------------------------------------------------------------------- +Fri May 17 15:09:31 CEST 2002 - adrian@suse.de + +- fix dieing kio slave on https connections + +------------------------------------------------------------------- +Fri May 17 14:09:44 CEST 2002 - adrian@suse.de + +- reduce noise on stdout from khtml (extend shut_up.dif) + +------------------------------------------------------------------- +Tue May 14 11:42:25 CEST 2002 - adrian@suse.de + +- use updated 3.0.1 tar ball include crash fixes (esp. for kmail) + +------------------------------------------------------------------- +Mon May 13 14:46:46 CEST 2002 - adrian@suse.de + +- set requirement back to qt-3.0.3 version + +------------------------------------------------------------------- +Fri May 10 16:11:58 CEST 2002 - adrian@suse.de + +- workaround rpm parse bug for old distributions + +------------------------------------------------------------------- +Fri May 10 13:29:58 CEST 2002 - adrian@suse.de + +- update to version 3.0.1 and remove obsolete patches + +------------------------------------------------------------------- +Tue May 7 12:49:37 CEST 2002 - meissner@suse.de + +- %_lib fixes inside the .cpp files (should now find SSL libraries) + +------------------------------------------------------------------- +Mon May 6 16:33:47 CEST 2002 - meissner@suse.de + +- %_lib fixes + +------------------------------------------------------------------- +Tue Apr 16 14:58:17 CEST 2002 - adrian@suse.de + +- Require spell (either ispell or aspell) > 8.0 only +- use --disable-final and -O0 on mips + +------------------------------------------------------------------- +Fri Apr 12 15:53:49 MEST 2002 - adrian@suse.de + +- set --enable-mt. Not needed for kdelibs3, but it should be + in the common compiler flags for some other applications with + older admin folder + +------------------------------------------------------------------- +Tue Apr 9 14:12:43 CEST 2002 - adrian@suse.de + +- fix kde api generation for 7.1, 7.2 and 7.3 based distributions + +------------------------------------------------------------------- +Tue Mar 26 00:14:11 CET 2002 - adrian@suse.de + +- update to new 3.0 final version. the last one. sure. +- comment out last harmless warning message from kdelibs + +------------------------------------------------------------------- +Mon Mar 25 20:31:47 CET 2002 - adrian@suse.de + +- update 3.0 final tar ball +- 2 urgent fixes ( kdirlister ) + +------------------------------------------------------------------- +Mon Mar 25 10:45:55 CET 2002 - adrian@suse.de + +- update to 3.0 final (everything is wonderfull version) +- switch from /etc/X11/kde3 to /etc/opt/kde3 to be FHS compliant +- add /etc/kde3rc with prefix, so we do not need $KDEDIRS anymore + +------------------------------------------------------------------- +Thu Mar 21 19:05:29 CET 2002 - adrian@suse.de + +- use kdoc to generate api-documentation again + (makes the class browser of kdevelop happy) + +------------------------------------------------------------------- +Thu Mar 21 16:55:43 CET 2002 - adrian@suse.de + +- update to 3.0rc3 + +------------------------------------------------------------------- +Sun Mar 10 17:03:38 CET 2002 - adrian@suse.de + +- update to 3.0rc2 + +------------------------------------------------------------------- +Mon Mar 4 17:31:55 CET 2002 - adrian@suse.de + +- update to 3.0rc1 + +------------------------------------------------------------------- +Mon Feb 25 19:09:57 CET 2002 - adrian@suse.de + +- update to snapshot 2.92.2002022512 + +------------------------------------------------------------------- +Mon Feb 18 20:55:08 CET 2002 - adrian@suse.de + +- update to snapshot 2.92.2002021810 + +------------------------------------------------------------------- +Thu Feb 14 23:26:36 CET 2002 - adrian@suse.de + +- update to snapshot 2.92.2002021421 +- split kdelibs3-artsd package into arts and arts-devel +- add Doug Lea's fast threaded malloc function from glibc 2.3 + * prepared by Lubos Lunak + * integrated into libkdecore + * add dummy library to make it configurable via libKmalloc.so link + * disabled by default + +------------------------------------------------------------------- +Mon Feb 11 15:07:20 CET 2002 - adrian@suse.de + +- update to snapshot 2.92.2002021111 + +------------------------------------------------------------------- +Mon Feb 4 23:51:35 CET 2002 - adrian@suse.de + +- update to 2.92 (KDE 3.0 beta 2) +- create common_compile_flags file + +------------------------------------------------------------------- +Fri Feb 1 00:26:05 CET 2002 - ro@suse.de + +- changed neededforbuild to + +------------------------------------------------------------------- +Mon Jan 28 14:49:00 CET 2002 - adrian@suse.de + +- update to snapshot from 2.91.2002012811 + +------------------------------------------------------------------- +Wed Jan 23 01:50:51 CET 2002 - adrian@suse.de + +- add missing header files + +------------------------------------------------------------------- +Wed Jan 23 00:31:21 CET 2002 - adrian@suse.de + +- update to snapshot 2.91.2002012221 + +------------------------------------------------------------------- +Tue Jan 15 18:24:51 CET 2002 - adrian@suse.de + +- update to snapshot 2.91.2002011511 + +------------------------------------------------------------------- +Sat Jan 5 18:28:06 CET 2002 - adrian@suse.de + +- update to recent/todays snapshot +- disable rpath for SuSE > 7.3 + (/opt/kde3/lib is in ld.so.conf) +- add Requires: line for at least Qt 3.0.1 + +------------------------------------------------------------------- +Mon Dec 17 15:58:49 CET 2001 - adrian@suse.de + +- fix compile on s390 +- add fix for khtml seg fault +- do not build documentation for <7.3 distributions until kdoc + is fixed + +------------------------------------------------------------------- +Wed Dec 12 17:02:34 CET 2001 - adrian@suse.de + +- update to KDE 3.0 Beta 1 + +------------------------------------------------------------------- +Tue Dec 4 20:13:20 CET 2001 - adrian@suse.de + +- use current CVS snapshot + +------------------------------------------------------------------- +Fri Nov 2 12:30:45 CET 2001 - adrian@suse.de + +- using cvs snapshot from 01 Nov 2001 + +------------------------------------------------------------------- +Sat Oct 20 17:57:21 CEST 2001 - adrian@suse.de + +- using newer cvs-snapshot + (compiles again with qt 3 final) + +------------------------------------------------------------------- +Tue Oct 9 11:55:41 CEST 2001 - adrian@suse.de + +- branch to first kdelibs 3 (alpha 1) + +------------------------------------------------------------------- +Mon Sep 24 01:40:05 CEST 2001 - adrian@suse.de + +- add security fix for peer-ssl from Dirk +- add fix to make it possible to allow JS from local pages + +------------------------------------------------------------------- +Fri Sep 21 22:51:53 CEST 2001 - adrian@suse.de + +- add fix for kbuildsycoca --incremental from Waldo + (changed files (due to updated packages or a SuSEconfig run for + example) do not lead anymore to an incorrect ksycoca database. + +------------------------------------------------------------------- +Tue Sep 18 08:55:26 CEST 2001 - adrian@suse.de + +- add symbolic link to /opt/kde2/doc/HTML/en/kdeapi +- #neededforbuild cups -> cups-libs + +------------------------------------------------------------------- +Sat Sep 15 19:13:06 CEST 2001 - adrian@suse.de + +- add klineedit fix +- add warning that kdDebug function is disabled (except for ppc) +- fix kdelibs-2.2.1.dif (do not apply patch for ppc-only global) + +------------------------------------------------------------------- +Thu Sep 13 09:36:06 CEST 2001 - adrian@suse.de + +- add fix for kjs (octal parsing) +- add fix icondialog (custom icon directorys) +- fix ia64 patch + +------------------------------------------------------------------- +Tue Sep 11 10:54:21 CEST 2001 - adrian@suse.de + +- add security fixes for kssl (do not save keys on disk) +- add Qt API to the API index page + +------------------------------------------------------------------- +Mon Sep 10 14:41:23 CEST 2001 - adrian@suse.de + +- update to to second try of kdelibs 2.2.1 tar ball + * JavaScript fixes +- fix ia64 workarounds to build on older distris + +------------------------------------------------------------------- +Sun Sep 9 17:57:01 CEST 2001 - schwab@suse.de + +- Fix specfile for ia64 workarounds. + +------------------------------------------------------------------- +Sat Sep 8 20:40:27 CEST 2001 - adrian@suse.de + +- updating to final 2.2.1 tar ball + +------------------------------------------------------------------- +Sun Sep 2 09:59:21 CEST 2001 - adrian@suse.de + +- update to KDE_2_2_BRANCH from 02.09.2001 + * compile fixes + * KFile crash fix + * KDockWidget crash fix, caused crash in quanta + * fix login with chars in password >127 + * load charsets file on demand + * kxmlgui fixed to read really the complete xml file. +- drop -cups package, the cups libs are now splitted from the cups + package. +- add kmimetype hack to get a fallback application for device icons +- make KDE quiet by default (kdDebug default value is 4 now) + +------------------------------------------------------------------- +Tue Aug 28 15:53:23 CEST 2001 - adrian@suse.de + +- update to KDE_2_2_BRANCH from 28.08.2001 + * fix kspell for iso 13 languages + * fix $PATH for kdesu + * check the preview action in setPreviewWidget() + * check for aborted save + * official patch for kbuildsycoca + * kfile fixes + * crash fixes in userstylesheets + * large file system support fix + * crash fix in kbugreport +- removed patches for kbuildsycoca and large file support + +------------------------------------------------------------------- +Sat Aug 25 09:49:21 CEST 2001 - adrian@suse.de + +- update to KDE_2_2_BRANCH from 25.08.2001 + * khtml supports + * kded updates + * translation updates +- kbuildsycoca speed optimisation + (original patch from Lubos Lunak, reworked to be BC) + +------------------------------------------------------------------- +Tue Aug 21 12:25:49 CEST 2001 - adrian@suse.de + +- using KDE_2_2_BRANCH from 21.08.2001 + * html parser fixes + * artsd fixes + * ... +- disable FAM by default, it can be enabled with + export USE_FAM=1 +- disable and obsolete -i686 package, until the number of problems + are solved + +------------------------------------------------------------------- +Mon Aug 6 23:55:17 CEST 2001 - adrian@suse.de + +- add assert into khtml/misc/loader.cpp as recomended by Dirk +- switch on SSE support in i386 architecture + (arts has a runtime checking) +- clean up file list +- ia64 workarounds + +------------------------------------------------------------------- +Mon Aug 6 10:59:49 CEST 2001 - adrian@suse.de + +- update to final 2.2 + +------------------------------------------------------------------- +Wed Aug 1 15:57:30 CEST 2001 - adrian@suse.de + +- update to 2.2rc1 + +------------------------------------------------------------------- +Fri Jul 6 11:53:42 CEST 2001 - adrian@suse.de + +- generate API documentation + (no need to install kdevelop for api docu anymore) + +------------------------------------------------------------------- +Fri Jun 29 15:39:12 CEST 2001 - adrian@suse.de + +- 2.2beta1 + +------------------------------------------------------------------- +Mon May 28 10:39:18 CEST 2001 - adrian@suse.de + +- 2.2alpha2 + +------------------------------------------------------------------- +Mon Apr 16 22:02:33 CEST 2001 - adrian@suse.de + +- 2.2alpha1 + +------------------------------------------------------------------- +Fri Apr 13 12:54:18 CEST 2001 - adrian@suse.de + +- add currency symbol to KFontDialog preview for testing purposes + +------------------------------------------------------------------- +Tue Apr 10 20:49:07 CEST 2001 - adrian@suse.de + +- revert also kdeinit changes (compile fix) +- add fixes for javascript from CVS +- add fixes for font name mapping from CVS +- add kdeinit_shutdown patch from Waldo + +------------------------------------------------------------------- +Tue Apr 10 01:01:16 MEST 2001 - adrian@suse.de + +- minor fix, but hopefully fix linker problems on all P-II systems + +------------------------------------------------------------------- +Mon Apr 9 11:24:07 CEST 2001 - adrian@suse.de + +- disable alsa for 7.0-ppc + +------------------------------------------------------------------- +Fri Apr 6 11:01:59 CEST 2001 - adrian@suse.de + +- drop the -nostdlib flag during linking. this causes problems + (since not all need libs are used) on some architectures +- -O2 for axp + +------------------------------------------------------------------- +Thu Apr 5 08:56:33 CEST 2001 - adrian@suse.de + +- update to 2_1_BRANCH. + this fixes the proxy server authentication problem + +------------------------------------------------------------------- +Wed Mar 28 18:28:29 CEST 2001 - adrian@suse.de + +- disable ssl support for 7.0-ppc + (problems with the compiler and linker, which can not be fixed + without to loss the BC) + +------------------------------------------------------------------- +Tue Mar 27 12:08:53 CEST 2001 - ro@suse.de + +- changed neededforbuild to + +------------------------------------------------------------------- +Tue Mar 20 21:58:31 CET 2001 - adrian@suse.de + +- enable -O2 for ppc + using inline gcc bug workaround for ia64 + +------------------------------------------------------------------- +Tue Mar 20 18:53:42 CET 2001 - adrian@suse.de + +- update to 2.1.1 (official tar ball) + +------------------------------------------------------------------- +Mon Mar 19 22:03:49 CET 2001 - adrian@suse.de + +- update to current 2_1_BRANCH + we have kde-config as executable binary back + (lots of configure scripts test this) + +------------------------------------------------------------------- +Mon Mar 19 15:39:26 CET 2001 - adrian@suse.de + +- add cyrus-sassl to #neededforbuild + +------------------------------------------------------------------- +Sat Mar 17 21:38:50 CET 2001 - adrian@suse.de + +- added missing packages in #neededforbuild + +------------------------------------------------------------------- +Sat Mar 17 13:32:29 CET 2001 - adrian@suse.de + +- fix CATALOG for distributions <7.2 + update to current 2_1_0_TAG + +------------------------------------------------------------------- +Tue Mar 13 14:29:16 CET 2001 - ro@suse.de + +- added CATALOG for docbook_3 + +------------------------------------------------------------------- +Tue Mar 13 01:12:30 CET 2001 - ro@suse.de + +- changed neededforbuild to + +------------------------------------------------------------------- +Thu Feb 22 19:22:17 CET 2001 - adrian@suse.de + +- the final final 2.1.0 tar ball ... + +------------------------------------------------------------------- +Wed Feb 21 22:42:47 CET 2001 - adrian@suse.de + +- use the right KDE BRANCH (not my fault ;-) + +------------------------------------------------------------------- +Wed Feb 21 17:16:51 CET 2001 - adrian@suse.de + +- update to final 2.1.0 + +------------------------------------------------------------------- +Wed Feb 14 17:04:08 CET 2001 - adrian@suse.de + +- update to 2.1 post beta 2 + +------------------------------------------------------------------- +Mon Jan 22 14:44:41 CET 2001 - stepan@suse.de + +- alpha axp compile fixes for gcc 2.95.2 + +------------------------------------------------------------------- +Tue Jan 16 12:05:26 CET 2001 - adrian@suse.de + +- add a check of return value in kprocess. + Hopefully no crashes anymore. + +------------------------------------------------------------------- +Mon Jan 15 22:13:16 CET 2001 - adrian@suse.de + +- disable --enable-final until the glibc/compiler problem in + kprocess is fixed + +------------------------------------------------------------------- +Mon Jan 15 14:01:38 CET 2001 - adrian@suse.de + +- fix index.desktop for distris <7.1 + +------------------------------------------------------------------- +Sat Jan 13 18:49:40 CET 2001 - adrian@suse.de + +- fix local support in kicker. native language again in menus + this fix does not work for chinese people + fix index.desktop in highcolor, 22x22 actions icons can be loaded + again + +------------------------------------------------------------------- +Fri Jan 12 00:02:33 CET 2001 - adrian@suse.de + +- create some links to see the konqueror gear again + fix hicolor index file + +------------------------------------------------------------------- +Tue Jan 9 22:07:19 CET 2001 - adrian@suse.de + +- added security fix for kdesu from Waldo + +------------------------------------------------------------------- +Mon Jan 8 15:43:09 CET 2001 - adrian@suse.de + +- fix SuSE icon description + +------------------------------------------------------------------- +Sun Jan 7 15:56:58 CET 2001 - adrian@suse.de + +- use additional pathes, to not conflict with older pathes + +------------------------------------------------------------------- +Sun Jan 7 14:24:01 CET 2001 - adrian@suse.de + +- new icon handling. much more clean now and the + dependencie to icons is not needed anymore + +------------------------------------------------------------------- +Sat Jan 6 17:15:51 CET 2001 - adrian@suse.de + +- fix locale support. + LANG=de_DE or LANG=de_DE.utf-8 is working now. + +------------------------------------------------------------------- +Tue Jan 2 21:51:19 CET 2001 - adrian@suse.de + +- added a fix for font handling, if antialising is used + (Thanks Kurt) + +------------------------------------------------------------------- +Mon Jan 1 22:16:48 CET 2001 - adrian@suse.de + +- remove charset for german. this confuses the font handling + added fix for stalled, but broken connections; thanks waldo + +------------------------------------------------------------------- +Sat Dec 30 21:22:21 CET 2000 - adrian@suse.de + +- extend rpm mimelnk for *.spm files + disabled threading + +------------------------------------------------------------------- +Wed Dec 27 18:33:15 CET 2000 - adrian@suse.de + +- drop message in kdeinit, which produce a lot of invalid bugzilla entrys + +------------------------------------------------------------------- +Wed Dec 20 10:38:25 CET 2000 - adrian@suse.de + +- added openssl-devel for #neededforbuild + +------------------------------------------------------------------- +Sun Dec 17 15:55:15 CET 2000 - adrian@suse.de + +- moved icon links back to kdelibs :-( + +------------------------------------------------------------------- +Sun Dec 17 12:54:19 CET 2000 - adrian@suse.de + +- moved icon links from this package to kdebase + +------------------------------------------------------------------- +Fri Dec 15 14:35:38 CET 2000 - adrian@suse.de + +- brown paper bag fix ... I spend Rudi a beer ... + +------------------------------------------------------------------- +Fri Dec 15 12:02:02 CET 2000 - adrian@suse.de + +- added icon packages to #neededforbuild + +------------------------------------------------------------------- +Thu Dec 14 12:38:23 CET 2000 - adrian@suse.de + +- fixed specfile + +------------------------------------------------------------------- +Wed Dec 13 19:22:39 CET 2000 - adrian@suse.de + +- fixed icon links + +------------------------------------------------------------------- +Wed Dec 13 16:52:23 CET 2000 - adrian@suse.de + +- update to current 2_0_BRANCH + +------------------------------------------------------------------- +Wed Nov 29 14:25:31 CET 2000 - adrian@suse.de + +- update to 2.0.1 + +------------------------------------------------------------------- +Wed Nov 22 02:01:26 CET 2000 - ro@suse.de + +- remove penguin.png (in kdebase) + +------------------------------------------------------------------- +Tue Nov 21 15:07:15 CET 2000 - adrian@suse.de + +- fixed /etc/kderc + +------------------------------------------------------------------- +Tue Nov 21 00:08:08 CET 2000 - adrian@suse.de + +- added icon support for non kde icons + added /etc/kderc + ~/Desktop -> ~/KDesktop + +------------------------------------------------------------------- +Thu Nov 16 15:46:49 CET 2000 - adrian@suse.de + +- update to newer snapshot from KDE_2_0_BRANCH + fixed sgml catalog file for our sgml enviroment + +------------------------------------------------------------------- +Fri Nov 3 08:45:45 CET 2000 - adrian@suse.de + +- fixed needed for build + +------------------------------------------------------------------- +Thu Nov 2 20:35:30 CET 2000 - adrian@suse.de + +- fixed file list + +------------------------------------------------------------------- +Tue Oct 17 04:52:05 CEST 2000 - adrian@suse.de + +- update to 2.0.0 +- changed default for ~/.kde to ~/.kde2 +- dropped klibs2i and klibs2cr again +- splitted package in + * kdelibs + * kdelibs-devel + +------------------------------------------------------------------- +Wed Sep 20 11:29:35 CEST 2000 - adrian@suse.de + +- the last fix :-( + +------------------------------------------------------------------- +Sun Sep 17 00:27:08 CEST 2000 - adrian@suse.de + +- splited klibs2 into klibs2, klibs2i (international version + without crypt support) and klibs2cr (crypt version) + +------------------------------------------------------------------- +Sat Sep 16 15:17:06 CEST 2000 - adrian@suse.de + +- removed ssl/ssh support + added big endian fix in KPixmap + +------------------------------------------------------------------- +Tue Sep 12 11:49:35 MEST 2000 - adrian@suse.de + +- changed to -O0 for ppc and alpha + +------------------------------------------------------------------- +Tue Sep 12 08:56:11 CEST 2000 - adrian@suse.de + +- update to RC 1 + +------------------------------------------------------------------- +Mon Aug 21 14:04:31 CEST 2000 - adrian@suse.de + +- update to beta 4 + +------------------------------------------------------------------- +Mon Jul 24 17:46:04 CEST 2000 - adrian@suse.de + +- update to second version of beta 3 + +------------------------------------------------------------------- +Fri Jul 21 22:39:53 CEST 2000 - adrian@suse.de + +- update to beta 3 + +------------------------------------------------------------------- +Mon Jul 17 19:24:01 CEST 2000 - adrian@suse.de + +- update to snapshot from 17.07.2000 + +------------------------------------------------------------------- +Thu Jul 6 19:48:47 CEST 2000 - adrian@suse.de + +- Spec file created from kdelibs-1.91.20000706.tar.gz by autospec + + +------------------------------------------------------------------- +Fri Jun 9 17:15:52 CEST 2000 - adrian@suse.de + +- correct neededforbuild and updated khtml + +------------------------------------------------------------------- +Fri Jun 9 02:35:16 CEST 2000 - adrian@suse.de + +- update to 1.91; beta 2 + +------------------------------------------------------------------- +Tue Jun 6 01:29:47 CEST 2000 - adrian@suse.de + +- snapshot from 06.06.2000 + +------------------------------------------------------------------- +Sun May 28 09:22:23 CEST 2000 - adrian@suse.de + +- snapshot from 28.05.2000 + new type of spec file + +------------------------------------------------------------------- +Fri May 12 13:29:41 CEST 2000 - adrian@suse.de + +- update to KDE 1.90 + +------------------------------------------------------------------- +Thu Apr 27 17:45:45 CEST 2000 - adrian@suse.de + +- snapshot from 25.04.2000 + +------------------------------------------------------------------- +Thu Apr 20 14:27:28 CEST 2000 - adrian@suse.de + +- fixed file list + +------------------------------------------------------------------- +Wed Apr 19 17:17:42 CEST 2000 - adrian@suse.de + +- snapshot from 17.04.2000 + +------------------------------------------------------------------- +Thu Apr 6 19:21:15 CEST 2000 - adrian@suse.de + +- snapshot from 06.04.2000 + +------------------------------------------------------------------- +Thu Mar 30 18:44:11 CEST 2000 - adrian@suse.de + +- first KDE libs 2 package. PRE 1.90 Version + diff --git a/opensuse/core/tdelibs.old/tdelibs.spec b/opensuse/core/tdelibs.old/tdelibs.spec new file mode 100644 index 000000000..4391fd245 --- /dev/null +++ b/opensuse/core/tdelibs.old/tdelibs.spec @@ -0,0 +1,645 @@ +# +# spec file for package tdelibs +# +# Copyright (c) 2011 the Trinity Project (opensuse). +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.trinitydesktop.org/ +# + +# norootforbuild + + +Name: tdelibs +BuildRequires: OpenEXR-devel arts arts-devel aspell-devel cups-devel fam-devel flac-devel krb5-devel +BuildRequires: libart_lgpl-devel libidn-devel libsndfile libtiff-devel +BuildRequires: libxslt-devel openldap2-devel pcre-devel libtqt4-devel sgml-skel +BuildRequires: db-devel libacl-devel libattr-devel unsermake update-desktop-files utempter +BuildRequires: unzip +BuildRequires: avahi-compat-mDNSResponder-devel fdupes libbz2-devel libjasper-devel +BuildRequires: libdrm-devel tde-filesystem cmake +URL: http://www.trinitydesktop.org/ +License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ +Group: System/GUI/TDE +BuildRoot: %{_tmppath}/%{name}-%{version}-build +Summary: Trinity Base Libraries +Version: R13.99 +Release: 1 +Provides: kups keramik tdelibs-cups tdelibs-33addons tdepim-networkstatus +Provides: kdelibs3_base = 3.3 +Requires: libtqt4 >= %( echo `rpm -q --queryformat '%{VERSION}' libtqt4`) +Requires: openssl tdelibs-default-style +Requires: hicolor-icon-theme +Recommends: ispell enscript +Requires: sudo +Source0: %{name}-%{version}.tar.bz2 +Source3: baselibs.conf +Source4: api_docu_description +Source6: tderc +# svn export svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/kde-common/admin +Source8: admin.tar.bz2 +Source9: cr16-filesys-file_broken.png +Source10: kdemm-20050330.tar.bz2 +Source11: 10888-bt.tar.gz +Source12: mimetype-icons.tar.bz2 +Source14: vnd.openxmlformats-officedocument.wordprocessingml.document.desktop +Source15: vnd.openxmlformats-officedocument.presentationml.presentation.desktop +Source16: vnd.openxmlformats-officedocument.spreadsheetml.sheet.desktop + +%description +This package contains tdelibs, one of the basic packages of the Trinity +Desktop Environment. It contains the necessary libraries for the Trinity +desktop. + +This package is absolutely necessary for using TDE. + +%package arts +License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ +Summary: TDE aRts support +Group: System/GUI/TDE +Provides: tdelibs:/opt/tde/bin/artsmessage +Requires: arts >= %( echo `rpm -q --queryformat '%{VERSION}' arts`) +Recommends: tdemultimedia-arts + +%description arts +This package contains bindings and gui elements for using aRts sound +daemon. + +%package default-style +License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ +Summary: The default TDE style +Group: System/GUI/TDE +Provides: tdelibs:%{_tde_libdir}/libtdefx.so.4 + +%description default-style +This package contains the Plastik widget style and libkdefx. It only +depends on TQt, not the KDE libraries. + +%package doc +License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ +Summary: Documentation for TDE Base Libraries +Group: System/GUI/TDE +Provides: tdelibs:/opt/tde/share/apps/ksgmltools2 +Provides: tdelibs_doc +Requires: sgml-skel libxml2 +%define regcat /usr/bin/sgml-register-catalog +PreReq: %{regcat} /usr/bin/xmlcatalog /usr/bin/edit-xml-catalog +PreReq: sed grep awk + +%description doc +This package contains the core environment and templates for the Trinity +help system. + +%package devel +License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ +# usefiles /opt/tde/bin/dcopidl /opt/tde/bin/dcopidl2cpp /opt/tde/bin/kdb2html /opt/tde/bin/preparetips +Requires: libtqt4-devel libvorbis-devel tdelibs = %version autoconf automake libxslt-devel libxml2-devel libart_lgpl-devel libjpeg-devel tde-filesystem +# next line from tde-devel-packages macro +Requires: tdelibs-doc libtiff-devel openssl-devel update-desktop-files +Requires: libdrm-devel dbus-1-tqt-devel +Requires: libattr-devel libacl-devel +Requires: tdelibs-arts +Summary: Trinity Base Package: Build Environment +Group: System/GUI/TDE +Requires: fam-devel pcre-devel libidn-devel arts-devel + +%description devel +This package contains all necessary include files and libraries needed +to develop applications that require these. + +%prep + echo %suse_version +%setup -q +tar xfvj %SOURCE10 +rm -rf admin +bunzip2 -cd %{SOURCE8} | tar xfv - --exclude=.cvsignore --exclude=CVS + +tar xfvj %SOURCE12 +# +# define KDE version exactly +# +myrelease=$(echo %release | cut -d. -f-1) +sed 's,#define KDE_VERSION_STRING "\(.*\)",#define KDE_VERSION_STRING "\1 \\"release '$myrelease'\\"",' kdecore/kdeversion.h > kdecore/kdeversion.h_ && mv kdecore/kdeversion.h_ kdecore/kdeversion.h +# +# create build enviroment +# +#UNSERMAKE=yes make -f admin/Makefile.common cvs + +%build +export PATH=$PWD/admin/:$PATH +FINAL="--enable-final" +CFLAGS="$CFLAGS -fno-strict-aliasing" +CXXFLAGS="$CXXFLAGS -fno-strict-aliasing" + +# common_options and do_make have been obsoleted by tde-filesystem + + export path_sudo=/usr/bin/sudo + # + # define the distribution exactly + # + test -e /.buildenv && . /.buildenv +%if %is_plus + # supplementary package + DISTRI="openSUSE $BUILD_DISTRIBUTION_VERSION UNSUPPORTED" +%else + # official build on released and maintained products + DISTRI="openSUSE $BUILD_DISTRIBUTION_VERSION" +%endif + sed 's,#define KDE_VERSION_STRING "\(.*\)",#define KDE_VERSION_STRING "\1 '"$ADD_VERSION"'",' kdecore/kdeversion.h > kdecore/kdeversion.h_ && mv kdecore/kdeversion.h_ kdecore/kdeversion.h + # find MIT kerberos + export PATH=/usr/lib/mit/bin:$PATH + # fast-malloc is not needed anymore + +EXTRA_FLAGS="-DCMAKE_SKIP_RPATH=OFF -DKDE_MALLOC_FULL=OFF -DKDE_MALLOC=OFF -DSSL_INSTALL_DIR=/usr/ssl -DPCSC_INSTALL_DIR=/usr -DENABLE_DNOFIFY=ON" + +# -DKDE_DISTRIBUTION=\"$DISTRI\" + +# %if %is_plus +# -DENABLE_DNOFIFY=ON \ +# %endif + +%cmake_tde -d build -- $EXTRA_FLAGS + +%make_tde -d build + +# +xmlcatbin=/usr/bin/xmlcatalog +# CATALOG=docbook-simple.xml +# $xmlcatbin --noout --create $CATALOG +# $xmlcatbin --noout --add "public" \ +# "-//OASIS//DTD Simplified DocBook XML V1.0//EN" \ +# "file://%{xml_mod_dtd_dir}/sdocbook.dtd" $CATALOG +# $xmlcatbin --noout --add "system" \ +# "http://www.oasis-open.org/docbook/xml/simple/1.0/sdocbook.dtd" \ +# "file://%{xml_mod_dtd_dir}/sdocbook.dtd" $CATALOG +%define FOR_ROOT_CAT for-catalog-%{name}-%{version}.xml +CATALOG=%{_tde_prefix}/share/apps/ksgmltools2/customization/catalog.xml +rm -f %{FOR_ROOT_CAT}.tmp +$xmlcatbin --noout --create %{FOR_ROOT_CAT}.tmp +# $xmlcatbin --noout --add "delegateSystem" \ +# "http://www.oasis-open.org/docbook/xml/simple/" \ +# "file:///$CATALOG" %{FOR_ROOT_CAT}.tmp +$xmlcatbin --noout --add "delegatePublic" \ + "-//KDE//DTD DocBook XML V4.2" \ + "file://$CATALOG" %{FOR_ROOT_CAT}.tmp +$xmlcatbin --noout --add "delegatePublic" \ + "-//KDE//ELEMENTS" \ + "file://$CATALOG" %{FOR_ROOT_CAT}.tmp +$xmlcatbin --noout --add "delegatePublic" \ + "-//KDE//ENTITIES" \ + "file://$CATALOG" %{FOR_ROOT_CAT}.tmp +# Create tag +sed '/ +/<\/catalog/i\ + ' \ + %{FOR_ROOT_CAT}.tmp > %{FOR_ROOT_CAT} + +%install + %makeinstall_tde -d build + mkdir -p $RPM_BUILD_ROOT/%{_tde_configkcfgdir} + install -D %SOURCE9 $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/16x16/filesystems/file_broken.png + mv $RPM_BUILD_ROOT/etc/xdg/menus/applications.menu \ + $RPM_BUILD_ROOT/etc/xdg/menus/applications.menu.kde + # + # lib64 compatibility symlink + # +%ifarch x86_64 ppc64 s390x mips64 sparc64 + mkdir -p $RPM_BUILD_ROOT/%{_tde_prefix}/lib/kde3/ + ln -sf ../../lib64/kde3/plugins \ + $RPM_BUILD_ROOT/%{_tde_prefix}/lib/kde3/plugins-lib64 +%endif + # + # add missing directories + # + for i in Applications Development Editors Edutainment Games Graphics Internet Multimedia Office Settings System Toys Utilities WordProcessing; do + install -d -m 0755 $RPM_BUILD_ROOT/%{_tde_appsdir}/$i + done + rm -f locale.list + for i in $(find /usr/share/locale -mindepth 1 -maxdepth 1 -type d | sed 's:/usr/share/locale/::'); do + install -d -m 755 $RPM_BUILD_ROOT/%{_tde_locale}/$i + install -d -m 755 $RPM_BUILD_ROOT/%{_tde_locale}/$i/LC_MESSAGES + install -d -m 755 $RPM_BUILD_ROOT/%{_tde_htmldir}/$i + echo "%lang($i) %doc %{_tde_locale}/$i" >> locale.list + done + %suse_update_desktop_file kresources X-KDE-settings-desktop + # unlike with other modules, tde_post_install shouldn't + # be put at the end of %install + %tde_post_install + # now create a filesystem layer + for theme in hicolor locolor; do + for j in actions apps filesystems mimetypes; do + for i in 16 22 32 48 64 128; do + install -d -m 0755 $RPM_BUILD_ROOT/%{_tde_icondir}/${theme}/${i}x${i}/${j} + done + install -d -m 0755 $RPM_BUILD_ROOT/%{_tde_icondir}/${theme}/scalable/${j} + done + done + install -d -m 0755 $RPM_BUILD_ROOT/etc/%{_tde_libdir} + install -d -m 0755 $RPM_BUILD_ROOT/etc/%{_tde_configdir} + install -d -m 0755 $RPM_BUILD_ROOT/%{_tde_datadir}/kdelibs/ + install -m 0644 %SOURCE6 $RPM_BUILD_ROOT/etc/ + rm -f $RPM_BUILD_ROOT/%{_tde_libdir}/libkdeinit_*.la + # + # add additional icon path (not needed anymore? we use cmake) + # + #mkdir -p ${RPM_BUILD_ROOT}/%{_tde_datadir}/kdelibs + #rm -f admin/*.orig + #cp -a admin ${RPM_BUILD_ROOT}/%{_tde_datadir}/kdelibs/ + # This is not needed on SUSE Linux! - Marcus Meissner + rm $RPM_BUILD_ROOT/%{_tde_bindir}/kgrantpty + # + # our version is in kdebase3 + # + rm -f $RPM_BUILD_ROOT/%{_tde_bindir}/fileshare* + # + # no sources for man pages + # + rm -f $RPM_BUILD_ROOT/%{_tde_htmldir}/en/kdelibs/man-* + # + # install BitTorrent icons + # + tar xfvz %SOURCE11 + for i in 16x16 22x22 32x32 48x48 64x64 128x128 ; do + install -m 0644 bt/$i/mimetypes/bt.png \ + $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/$i/mimetypes/torrent.png + done + #cp CATALOG.%{name} catalog.xml ${RPM_BUILD_ROOT}/%{_tde_datadir}/ksgmltools2/customization/ + cp catalog.xml ${RPM_BUILD_ROOT}/%{_tde_datadir}/ksgmltools2/customization/ + mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/xml + cp %{FOR_ROOT_CAT} ${RPM_BUILD_ROOT}%{_sysconfdir}/xml +# rm -f $RPM_BUILD_ROOT/%{_tde_libdir}/libkdefakes.la +# rm -f $RPM_BUILD_ROOT/%{_tde_libdir}/libkjava.la +rm -f $RPM_BUILD_ROOT/%{_tde_icondir}/hicolor/index.theme + # .desktop files in kdeaccessibility3 require the kttsd icon + for i in {16x16,22x22,32x32,48x48,64x64,128x128,scalable}; do mv $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/$i/apps/kttsd.* $RPM_BUILD_ROOT/%{_tde_icondir}/hicolor/$i/apps/;done + install -m 0644 %SOURCE14 $RPM_BUILD_ROOT/%{_tde_mimedir}/application/ + install -m 0644 %SOURCE15 $RPM_BUILD_ROOT/%{_tde_mimedir}/application/ + install -m 0644 %SOURCE16 $RPM_BUILD_ROOT/%{_tde_mimedir}/application/ + # fix bnc#396153 + for i in 16x16 22x22 32x32 48x48 64x64 128x128; do + ln -s %{_tde_icondir}/crystalsvg/$i/filesystems/network.png $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/$i/filesystems/preferences-system-network.png + ln -s %{_tde_icondir}/crystalsvg/$i/filesystems/desktop.png $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/$i/filesystems/preferences-desktop.png + done + chmod a-x $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/16x16/filesystems/file_broken.png + %fdupes -s $RPM_BUILD_ROOT + mkdir -p $RPM_BUILD_ROOT/etc/%{_tde_applicationsdir} + touch $RPM_BUILD_ROOT/etc/%{_tde_applicationsdir}/mimeinfo.cache + mkdir -p $RPM_BUILD_ROOT/%{_tde_applicationsdir} + touch $RPM_BUILD_ROOT/%{_tde_applicationsdir}/mimeinfo.cache +# Create /etc/ld.so.conf.d/kdelibs3.conf +mkdir -p $RPM_BUILD_ROOT/etc/ld.so.conf.d +cat > $RPM_BUILD_ROOT/etc/ld.so.conf.d/tdelibs.conf </dev/null 2>&1 + fi + if [ -x /usr/bin/edit-xml-catalog ]; then + edit-xml-catalog --group --catalog /etc/xml/suse-catalog.xml \ + --add /etc/xml/%{FOR_ROOT_CAT} + fi + +%postun doc + if [ "$1" = "0" -a -x %{regcat} ]; then + %{regcat} -r %{_tde_datadir}/ksgmltools2/customization/CATALOG.%{name} >/dev/null 2>&1 + fi + # remove entries only on removal of file + if [ ! -f %{xml_sysconf_dir}/%{FOR_ROOT_CAT} -a -x /usr/bin/edit-xml-catalog ] ; then + edit-xml-catalog --group --catalog /etc/xml/suse-catalog.xml \ + --del %{name}-%{version} + fi + exit 0 + +%clean + rm -rf ${RPM_BUILD_ROOT} + +%files default-style +%defattr(-,root,root) +%doc AUTHORS COPYING COPYING.BSD COPYING.LIB NAMING README +%{_tde_libdir}/libtdefx.so.* +%{_tde_libdir}/trinity/plugins/styles/plastik.* + +%files +%defattr(-,root,root) +%doc AUTHORS COPYING COPYING.BSD COPYING.LIB NAMING README +/etc/ld.so.conf.d/tdelibs.conf +%dir /etc/%{_tde_prefix} +%dir %{_tde_prefix} +%dir %{_tde_bindir} +%dir %{_tde_includedir} +%dir %{_tde_sharedir} +%dir %{_tde_configkcfgdir} +%{_tde_bindir}/checkXML +%{_tde_bindir}/dcop +%{_tde_bindir}/dcopclient +%{_tde_bindir}/dcopfind +%{_tde_bindir}/dcopobject +%{_tde_bindir}/dcopref +%{_tde_bindir}/dcops* +%{_tde_bindir}/dcopquit +%{_tde_bindir}/imagetops +%{_tde_bindir}/ka* +%{_tde_bindir}/kbuildsycoca +%{_tde_bindir}/kco* +%{_tde_bindir}/kcmshell +%{_tde_bindir}/kded +%{_tde_bindir}/kdetcompmgr +%{_tde_bindir}/networkstatustestservice +%{_tde_bindir}/tdeinit* +%{_tde_bindir}/start_tdeinit +%{_tde_bindir}/start_tdeinit_wrapper +%{_tde_bindir}/tde-config +%{_tde_bindir}/kde-menu +%{_tde_bindir}/tdesu_stub +%{_tde_bindir}/kdontchangethehostname +%{_tde_bindir}/kfile +%{_tde_bindir}/ki* +%{_tde_bindir}/kfmexec +%{_tde_bindir}/klauncher +%{_tde_bindir}/kmailservice +%{_tde_bindir}/ktradertest +%{_tde_bindir}/kstartupconfig +%{_tde_bindir}/kdostartupconfig +%verify(not mode) %{_tde_bindir}/kpac_dhcp_helper +%{_tde_bindir}/ksendbugmail +%{_tde_bindir}/kshell +%{_tde_bindir}/ktelnetservice +%{_tde_bindir}/kwrapper +%{_tde_bindir}/lnusertemp +%{_tde_bindir}/make_driver_db_lpr +%{_tde_bindir}/khotnewstuff +%{_tde_bindir}/makekdewidgets +%dir %{_tde_libdir} +%dir %{_tde_libdir}/trinity +%{_tde_libdir}/trinity/dcopserver.* +%{_tde_libdir}/trinity/kaddprinterwizard.* +%{_tde_libdir}/trinity/kbuildsycoca.* +%{_tde_libdir}/trinity/kcmshell.* +%{_tde_libdir}/trinity/kcm_kresources.* +%{_tde_libdir}/trinity/kconf_update.* +%{_tde_libdir}/trinity/kcookiejar.* +%{_tde_libdir}/trinity/kded.* +%{_tde_libdir}/trinity/kded_proxyscout.* +%{_tde_libdir}/trinity/kfileaudiopreview.* +%{_tde_libdir}/trinity/klauncher.* +%{_tde_libdir}/trinity/knotify.* +%{_tde_libdir}/trinity/kabc* +%{_tde_libdir}/trinity/kbzip2filter.* +%{_tde_libdir}/trinity/kded_k* +%{_tde_libdir}/trinity/tdeprint_ext.* +%{_tde_libdir}/trinity/tdeprint_lp* +%{_tde_libdir}/trinity/tdeprint_rlpr.* +%{_tde_libdir}/trinity/tdeprint_tool_escputil.* +%{_tde_libdir}/trinity/kgzipfilter.* +%{_tde_libdir}/trinity/khtmlimagepart.* +%{_tde_libdir}/trinity/ki* +%{_tde_libdir}/trinity/kjavaappletviewer.* +%{_tde_libdir}/trinity/ktexteditor_* +%{_tde_libdir}/trinity/libk* +%{_tde_libdir}/trinity/kspell_* +%{_tde_libdir}/trinity/kstyle_plastik_config.* +%{_tde_libdir}/trinity/kstyle_highcontrast_config.* +%{_tde_libdir}/trinity/libshellscript.* +# unsure +%{_tde_libdir}/trinity/kded_tdeprintd.* +%{_tde_libdir}/trinity/libtdeprint_management_module.* +# end unsure +%exclude %{_tde_libdir}/trinity/plugins/styles/plastik.* +%{_tde_libdir}/trinity/plugins +%{_tde_libdir}/libDCOP.so.* +%exclude %{_tde_libdir}/libtdefx.so.* +%{_tde_libdir}/libk*.so.* +%{_tde_libdir}/libvcard.so.* +%{_tde_libdir}/libtdecore.so.* +%{_tde_libdir}/libtdefakes.so.* +%{_tde_libdir}/libtdeinit*.so +%{_tde_libdir}/libtdeprint.so.* +%{_tde_libdir}/libtdeprint_management.so.* +%{_tde_libdir}/libtdesasl.so.* +%{_tde_libdir}/libtdesu.so.* +%{_tde_libdir}/libtdeui.so.* +%{_tde_libdir}/libnetworkstatus.so.* +%{_tde_libdir}/libconnectionmanager.so.* +%{_tde_libdir}/trinity/kded_networkstatus.* +%{_tde_appsdir} +%dir %{_tde_datadir} +%{_tde_datadir}/LICENSES +%{_tde_datadir}/ka* +%{_tde_datadir}/kc* +%dir %{_tde_datadir}/tdeprint +%{_tde_datadir}/tdeprint/apsdriver* +%{_tde_datadir}/tdeprint/filters +%{_tde_datadir}/tdeprint/icons +%{_tde_datadir}/tdeprint/lprngtooldriver1 +%{_tde_datadir}/tdeprint/pics +%dir %{_tde_datadir}/tdeprint/plugins +%{_tde_datadir}/tdeprint/plugins/ext.print +%{_tde_datadir}/tdeprint/plugins/lp*.print +%{_tde_datadir}/tdeprint/plugins/rlpr.print +%{_tde_datadir}/tdeprint/s* +%{_tde_datadir}/tdeprint/t* +%{_tde_datadir}/tdeui +%{_tde_datadir}/kdewidgets +%{_tde_datadir}/khtml +%{_tde_datadir}/kio_uiserver +%{_tde_datadir}/kjava +%{_tde_datadir}/knotify +%{_tde_datadir}/kssl +%{_tde_datadir}/kstyle +%{_tde_datadir}/ktexteditor_* +%{_tde_datadir}/proxyscout +%{_tde_datadir}/knewstuff +%{_tde_sharedir}/autostart +%{_tde_configdir} +%{_tde_sharedir}/emoticons +%{_tde_icondir} +%{_tde_locale} +%{_tde_mimedir} +%{_tde_sharedir}/service* +%config /etc/tderc +%{_tde_applicationsdir} +%{_tde_bindir}/cupsd* +%{_tde_bindir}/make_driver_db_cups +%{_tde_libdir}/trinity/tdeprint_cups.* +%{_tde_libdir}/trinity/cupsdconf.* +%{_tde_datadir}/tdeprint/cups* +%{_tde_datadir}/tdeprint/kde_logo.png +%{_tde_datadir}/tdeprint/plugins/cups.print +%{_tde_datadir}/tdeprint/preview* +%ifarch x86_64 ppc64 s390x mips64 sparc64 +%dir %{_tde_prefix}/lib +%dir %{_tde_prefix}/lib/trinity +%{_tde_prefix}/lib/trinity/plugins-lib64 +%endif +/etc/xdg/menus +%dir /etc/%{_tde_prefix} +%dir /etc/%{_tde_sharedir} +%dir /etc/%{_tde_applicationsdir} +%ghost /etc/%{_tde_applicationsdir}/mimeinfo.cache +%dir %{_tde_prefix} +%dir %{_tde_sharedir} +%dir %{_tde_applicationsdir} +%ghost %{_tde_applicationsdir}/mimeinfo.cache +%dir %{_tde_datadir}/konqueror +%dir %{_tde_datadir}/konqueror/servicemenus +%{_tde_datadir}/konqueror/servicemenus/isoservice.desktop + +%files arts +%defattr(-,root,root) +%{_tde_bindir}/artsmessage +%{_tde_libdir}/libartskde.so.* + +%files doc +%defattr(-,root,root) +%doc %{_tde_docdir} +%{_tde_bindir}/meinproc +%{_tde_datadir}/ksgmltools2 +%config %{_sysconfdir}/xml/%{FOR_ROOT_CAT} + +%files devel +%defattr(-,root,root) +%dir %{_tde_datadir}/kdelibs +%{_tde_bindir}/dcopidl* +%{_tde_bindir}/kmimelist +%{_tde_bindir}/preparetips +%{_tde_bindir}/kunittestmodrunner +#%{_tde_bindir}/MISC +%{_tde_includedir}/* +%{_tde_datadir}/dcopidlng +%{_tde_libdir}/libartskde.la +%{_tde_libdir}/libkunittest.la +%{_tde_libdir}/libkunittest.so +%{_tde_libdir}/libartskde.so +%{_tde_libdir}/libDCOP.so +%{_tde_libdir}/libvcard.so +%{_tde_libdir}/libvcard.la +%{_tde_libdir}/libDCOP.la +%{_tde_libdir}/lib*.a +%{_tde_libdir}/libkabc_dir.la +%{_tde_libdir}/libkabc_dir.so +%{_tde_libdir}/libkabc_file.la +%{_tde_libdir}/libkabc_file.so +%{_tde_libdir}/libkabc.la +%{_tde_libdir}/libkabc_ldapkio.la +%{_tde_libdir}/libkabc_ldapkio.so +%{_tde_libdir}/libkabc_net.la +%{_tde_libdir}/libkabc_net.so +%{_tde_libdir}/libkabc.so +%{_tde_libdir}/libkatepartinterfaces.la +%{_tde_libdir}/libkatepartinterfaces.so +%{_tde_libdir}/libtdecore.la +%{_tde_libdir}/libtdecore.so +%{_tde_libdir}/libtdefakes.la +%{_tde_libdir}/libtdefakes.so +%{_tde_libdir}/libtdefx.la +%{_tde_libdir}/libtdefx.so +%{_tde_libdir}/libtdeinit*.la +%{_tde_libdir}/libtdeprint.la +%{_tde_libdir}/libtdeprint_management.la +%{_tde_libdir}/libtdeprint_management.so +%{_tde_libdir}/libtdeprint.so +%{_tde_libdir}/libtdesasl.la +%{_tde_libdir}/libtdesasl.so +%{_tde_libdir}/libtdesu.la +%{_tde_libdir}/libtdesu.so +%{_tde_libdir}/libtdeui.la +%{_tde_libdir}/libtdeui.so +%{_tde_libdir}/libkdnssd.la +%{_tde_libdir}/libkdnssd.so +%{_tde_libdir}/libkglib.la +%{_tde_libdir}/libkglib.so +%{_tde_libdir}/libkhtml.la +%{_tde_libdir}/libkhtml.so +%{_tde_libdir}/libkimproxy.la +%{_tde_libdir}/libkimproxy.so +%{_tde_libdir}/libkio.la +%{_tde_libdir}/libkio.so +%{_tde_libdir}/libkjava.la +%{_tde_libdir}/libkjava.so +%{_tde_libdir}/libkjs.la +%{_tde_libdir}/libkjs.so +%{_tde_libdir}/libkmdi2.la +%{_tde_libdir}/libkmdi2.so +%{_tde_libdir}/libkmdi.la +%{_tde_libdir}/libkmdi.so +%{_tde_libdir}/libkmediaplayer.la +%{_tde_libdir}/libkmediaplayer.so +%{_tde_libdir}/libkmid.la +%{_tde_libdir}/libkmid.so +%{_tde_libdir}/libknewstuff.la +%{_tde_libdir}/libknewstuff.so +%{_tde_libdir}/libkntlm.la +%{_tde_libdir}/libkntlm.so +%{_tde_libdir}/libkparts.la +%{_tde_libdir}/libkparts.so +%{_tde_libdir}/libkrandr.la +%{_tde_libdir}/libkrandr.so +%{_tde_libdir}/libkresources.la +%{_tde_libdir}/libkresources.so +%{_tde_libdir}/libkrsync.la +%{_tde_libdir}/libkrsync.so +%{_tde_libdir}/libkscreensaver.la +%{_tde_libdir}/libkscreensaver.so +%{_tde_libdir}/libkscript.la +%{_tde_libdir}/libkscript.so +%{_tde_libdir}/libkspell2.la +%{_tde_libdir}/libkspell2.so +%{_tde_libdir}/libkspell.la +%{_tde_libdir}/libkspell.so +%{_tde_libdir}/libktexteditor.la +%{_tde_libdir}/libktexteditor.so +%{_tde_libdir}/libkutils.la +%{_tde_libdir}/libkutils.so +%{_tde_libdir}/libkwalletbackend.la +%{_tde_libdir}/libkwalletbackend.so +%{_tde_libdir}/libkwalletclient.la +%{_tde_libdir}/libkwalletclient.so +%{_tde_libdir}/libnetworkstatus.la +%{_tde_libdir}/libnetworkstatus.so +%{_tde_libdir}/libconnectionmanager.la +%{_tde_libdir}/libconnectionmanager.so +%{_datadir}/cmake/tdelibs.cmake + +%changelog diff --git a/opensuse/core/tdelibs.old/tdelibs.spec.old b/opensuse/core/tdelibs.old/tdelibs.spec.old new file mode 100644 index 000000000..ca1a72b7b --- /dev/null +++ b/opensuse/core/tdelibs.old/tdelibs.spec.old @@ -0,0 +1,826 @@ +# +# spec file for package tdelibs +# +# Copyright (c) 2011 the Trinity Project (opensuse). +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.trinitydesktop.org/ +# + +# norootforbuild + + +Name: tdelibs +BuildRequires: OpenEXR-devel arts-devel aspell-devel cups-devel fam-devel flac-devel krb5-devel +BuildRequires: libart_lgpl-devel libidn-devel libsndfile libtiff-devel +BuildRequires: libxslt-devel openldap2-devel pcre-devel libtqt4-devel sgml-skel +BuildRequires: db-devel libacl-devel libattr-devel unsermake update-desktop-files utempter +BuildRequires: unzip +BuildRequires: avahi-compat-mDNSResponder-devel fdupes libbz2-devel libjasper-devel +BuildRequires: libdrm-devel tde-filesystem cmake +URL: http://www.trinitydesktop.org/ +License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ +Group: System/GUI/TDE +BuildRoot: %{_tmppath}/%{name}-%{version}-build +Summary: Trinity Base Libraries +Version: R13.99 +Release: 1 +Provides: kups keramik tdelibs-cups tdelibs-33addons tdepim-networkstatus +Provides: kdelibs3_base = 3.3 +Requires: libtqt4 >= %( echo `rpm -q --queryformat '%{VERSION}' libtqt4`) +Requires: openssl tdelibs-default-style +Requires: hicolor-icon-theme +Recommends: ispell enscript +Requires: sudo +Source0: %{name}-%{version}.tar.bz2 +Source3: baselibs.conf +Source4: api_docu_description +Source6: tderc +# svn export svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/kde-common/admin +Source8: admin.tar.bz2 +Source9: cr16-filesys-file_broken.png +Source10: kdemm-20050330.tar.bz2 +Source11: 10888-bt.tar.gz +Source12: mimetype-icons.tar.bz2 +Source14: vnd.openxmlformats-officedocument.wordprocessingml.document.desktop +Source15: vnd.openxmlformats-officedocument.presentationml.presentation.desktop +Source16: vnd.openxmlformats-officedocument.spreadsheetml.sheet.desktop +Patch0: 3_5_BRANCH.diff +Patch1: kdeversion.diff +Patch2: admin.diff +Patch3: show-distribution.diff +Patch5: applications.menu-fallback.diff +Patch7: stat-on-media.diff +Patch8: kmimelist.diff +Patch9: x-kde-InitialPreference.diff +Patch10: disable-idn-support.diff +Patch11: silence.diff +Patch12: smooth-scrolling.diff +Patch13: rubberband-selection.diff +Patch15: add-suse-translations.diff +Patch16: kde3rc.dif +Patch17: artwork.diff +Patch26: mimetype-changes.diff +Patch27: noauto-package.diff +Patch29: prefer_distribution_settings.dif +Patch34: allow-man-setgid.diff +Patch40: clever-menu.diff +Patch43: fileshare.diff +Patch44: fontconfig-reverse-lookup.diff +Patch45: limit-max-image-size.diff +Patch50: fix-gnome-help-support.diff +Patch950: fix-gnome-help-support_legacy.diff +Patch52: kdeprint-restart-cupsd.diff +Patch54: kdemm.diff +Patch55: fix-kdemm-build.diff +Patch56: fix-dcopidlng-within-kdelibs-build.diff +Patch57: kdemm-filepreview.diff +Patch60: fix-qxembed.diff +Patch65: integrate-global-pixmaps-new.diff +Patch66: integrate-global-pixmaps-10.1.diff +Patch70: ktip-icon-hack.diff +Patch80: CATALOG.kdelibs3.diff +Patch81: xml-catalog.diff +Patch83: kdelibs3-gcc-4.1-miscompile.diff +Patch85: desktop-translations.diff +Patch86: use-xauthlocalhostname.diff +Patch88: mozilla-sliders.patch +Patch89: kdeprint-utf8.diff +Patch90: kimproxy-warning.diff +Patch95: kdelibs_networkstatus_branch2.diff +Patch97: autostart-spec.diff +Patch105: kdelibs3-hicolor-scalable-sizes.patch +Patch106: use-mediamanager.diff +Patch108: patch-mimetype-iconnames.diff +Patch109: fix-kerberos-printing.diff +Patch110: printpreview.patch +Patch111: kfile-beagle.diff +Patch112: xinerama.patch +Patch113: kremoteencoding-utf8.diff +Patch114: no-progress-for-beagle-status-query.diff +Patch117: kickoff-drop-shadow.diff +Patch122: disable-samba-dialog-without-smb.diff +Patch123: lpoptions-cups-1.2.diff +Patch124: spellcheck-default-utf8.diff +Patch125: kde4-applications.diff +Patch126: avahi-pidfile.diff +Patch127: x-jar-desktop.diff +Patch128: google-mail.diff +Patch129: default-useragent.diff +Patch130: kwalletd-try-open.diff +Patch131: textcompletion-editor.diff +Patch132: no-debug-by-default.diff +Patch133: flash-player-non-oss.diff +Patch134: bundle-locale-help.diff +Patch149: networkstatus.diff +Patch150: kdesu-settings.diff +Patch152: bug-399296_ftphandling-fix.diff +Patch153: bug-382959_kabc_fix_vcardparser.patch +Patch154: r874968-ebay-crash.diff +Patch155: gcc44.diff +Patch156: fix-macmenu.patch +Patch157: ignore-inline-menu.diff +Patch158: bnc557126.diff +Patch159: xmlhttprequest_3.x.diff +Patch160: kdecode_fakes_include.diff +Patch161: gcc45.diff +Patch162: arts-acinclude.patch +Patch163: kdelibs-3.5.10-ossl-1.x.patch +Patch164: light_v_2_scrollbar_patch.patch + +Patch201: kdelibs-3.5.4-CVE-2009-1690.patch +Patch203: kdelibs-3.5.10-latex-syntax-kile-2.0.3.patch +Patch204: kdelibs-3.5.10-CVE-2009-2702.patch +Patch205: kdelibs-3.5.10-cve-2009-2537-select-length.patch +Patch206: kdelibs-3.5.10-cve-2009-1725.patch +Patch207: kdelibs-3.5.10-cve-2009-1698.patch + +Patch210: kdelibs-3.5.10-kio.patch +Patch211: oom_score_adj.patch +Patch212: kcontrol_crash_patch.diff + +%description +This package contains tdelibs, one of the basic packages of the Trinity +Desktop Environment. It contains the necessary libraries for the Trinity +desktop. + +This package is absolutely necessary for using TDE. + +%package arts +License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ +Summary: TDE aRts support +Group: System/GUI/TDE +Provides: tdelibs:/opt/tde/bin/artsmessage +Requires: arts >= %( echo `rpm -q --queryformat '%{VERSION}' arts`) +Recommends: tdemultimedia-arts + +%description arts +This package contains bindings and gui elements for using aRts sound +daemon. + +%package default-style +License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ +Summary: The default TDE style +Group: System/GUI/TDE +Provides: tdelibs:/opt/tde/%_lib/libkdefx.so.4 + +%description default-style +This package contains the Plastik widget style and libkdefx. It only +depends on TQt, not the KDE libraries. + +%package doc +License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ +Summary: Documentation for TDE Base Libraries +Group: System/GUI/TDE +Provides: tdelibs:/opt/tde/share/apps/ksgmltools2 +Provides: tdelibs_doc +Requires: sgml-skel libxml2 +%define regcat /usr/bin/sgml-register-catalog +PreReq: %{regcat} /usr/bin/xmlcatalog /usr/bin/edit-xml-catalog +PreReq: sed grep awk + +%description doc +This package contains the core environment and templates for the Trinity +help system. + +%package devel +License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ +# usefiles /opt/tde/bin/dcopidl /opt/tde/bin/dcopidl2cpp /opt/tde/bin/kdb2html /opt/tde/bin/preparetips +Requires: libtqt4-devel libvorbis-devel tdelibs = %version autoconf automake libxslt-devel libxml2-devel libart_lgpl-devel libjpeg-devel tde-filesystem +# next line from tde-devel-packages macro +Requires: tdelibs-doc libtiff-devel openssl-devel update-desktop-files +Requires: libdrm-devel dbus-1-tqt-devel +Requires: libattr-devel libacl-devel +Requires: tdelibs-arts +Summary: Trinity Base Package: Build Environment +Group: System/GUI/TDE +Requires: fam-devel pcre-devel libidn-devel arts-devel + +%description devel +This package contains all necessary include files and libraries needed +to develop applications that require these. + +%prep + echo %suse_version +%setup -q +%patch0 +%patch1 +%patch3 +%patch5 +%patch7 +%patch10 +%patch11 +%patch12 +%patch13 +%patch15 +%patch16 +%patch17 +%patch26 +%patch27 +%patch29 +#%patch43 +#disable it because of BIC +#%patch45 +%if %suse_version > 1020 +%patch50 +%else +%patch950 +%endif +%patch52 +%patch34 +%patch44 +%patch40 +%patch8 +%patch9 +tar xfvj %SOURCE10 +# TODO! +%patch54 +%patch55 +%patch56 +%patch57 +%patch60 +# 10.2 goes back to the version without suseadds +%if %suse_version > 1010 +%patch65 +%else +%if %suse_version > 1000 +%patch66 +%else +%patch65 +%endif +%endif +%patch70 +rm -rf admin +bunzip2 -cd %{SOURCE8} | tar xfv - --exclude=.cvsignore --exclude=CVS +install -m 755 %{SOURCE2} admin +%patch2 +%patch80 -p 1 +%patch81 +%if %suse_version > 1000 +%patch83 +%endif +%patch85 +%patch86 +%patch88 +%patch89 +%patch90 +%patch95 +%patch97 +%if %suse_version < 1030 +%patch105 -p 1 +%endif +%patch106 +%patch108 +%patch109 +%patch110 +%patch111 +%patch112 +%patch113 +%patch114 +%patch117 +%patch122 +%if %suse_version > 1010 +%patch123 +%endif +%patch124 +%patch125 +%patch126 +%patch127 +%patch128 +%patch129 +%patch130 +%patch131 +%patch132 +%if %suse_version > 1020 +%patch133 +%patch134 +%endif +%patch149 +%patch150 +%patch152 +%patch153 +%patch154 +%patch155 +%patch156 +%if %suse_version > 1110 +%patch157 +%endif +%patch158 +%patch159 +%patch160 +%patch161 +%patch162 -p1 +%patch163 -p1 +%patch164 -p1 +%patch201 -p1 +%patch203 -p1 +%patch204 -p1 +%patch205 -p1 +%patch206 +%patch207 -p1 +%patch210 -p1 +%patch211 -p1 +%patch212 + +tar xfvj %SOURCE12 +# +# define KDE version exactly +# +myrelease=$(echo %release | cut -d. -f-1) +sed 's,#define KDE_VERSION_STRING "\(.*\)",#define KDE_VERSION_STRING "\1 \\"release '$myrelease'\\"",' kdecore/kdeversion.h > kdecore/kdeversion.h_ && mv kdecore/kdeversion.h_ kdecore/kdeversion.h +# +# create build enviroment +# +#UNSERMAKE=yes make -f admin/Makefile.common cvs + +%build +export PATH=$PWD/admin/:$PATH +FINAL="--enable-final" +CFLAGS="$CFLAGS -fno-strict-aliasing" +CXXFLAGS="$CXXFLAGS -fno-strict-aliasing" + +# common_options and do_make have been obsoleted by tde-filesystem + + export path_sudo=/usr/bin/sudo + # + # define the distribution exactly + # + test -e /.buildenv && . /.buildenv +%if %is_plus + # supplementary package + DISTRI="openSUSE $BUILD_DISTRIBUTION_VERSION UNSUPPORTED" +%else + # official build on released and maintained products + DISTRI="openSUSE $BUILD_DISTRIBUTION_VERSION" +%endif + sed 's,#define KDE_VERSION_STRING "\(.*\)",#define KDE_VERSION_STRING "\1 '"$ADD_VERSION"'",' kdecore/kdeversion.h > kdecore/kdeversion.h_ && mv kdecore/kdeversion.h_ kdecore/kdeversion.h + # find MIT kerberos + export PATH=/usr/lib/mit/bin:$PATH + # fast-malloc is not needed anymore + +%cmake_tde -d build -- \ + -DCMAKE_SKIP_RPATH=OFF \ + -DKDE_MALLOC_FULL=OFF \ + -DKDE_MALLOC=OFF \ + -DKDE_DISTRIBUTION="$DISTRI" \ + -DSSL_INSTALL_DIR=/usr/ssl \ + -DPCSC_INSTALL_DIR=/usr \ + %if %is_plus + -DENABLE_DNOFIFY=ON \ + %endif + +%make_tde -d build + +# +xmlcatbin=/usr/bin/xmlcatalog +# CATALOG=docbook-simple.xml +# $xmlcatbin --noout --create $CATALOG +# $xmlcatbin --noout --add "public" \ +# "-//OASIS//DTD Simplified DocBook XML V1.0//EN" \ +# "file://%{xml_mod_dtd_dir}/sdocbook.dtd" $CATALOG +# $xmlcatbin --noout --add "system" \ +# "http://www.oasis-open.org/docbook/xml/simple/1.0/sdocbook.dtd" \ +# "file://%{xml_mod_dtd_dir}/sdocbook.dtd" $CATALOG +%define FOR_ROOT_CAT for-catalog-%{name}-%{version}.xml +CATALOG=%{_tde_prefix}/share/apps/ksgmltools2/customization/catalog.xml +rm -f %{FOR_ROOT_CAT}.tmp +$xmlcatbin --noout --create %{FOR_ROOT_CAT}.tmp +# $xmlcatbin --noout --add "delegateSystem" \ +# "http://www.oasis-open.org/docbook/xml/simple/" \ +# "file:///$CATALOG" %{FOR_ROOT_CAT}.tmp +$xmlcatbin --noout --add "delegatePublic" \ + "-//KDE//DTD DocBook XML V4.2" \ + "file://$CATALOG" %{FOR_ROOT_CAT}.tmp +$xmlcatbin --noout --add "delegatePublic" \ + "-//KDE//ELEMENTS" \ + "file://$CATALOG" %{FOR_ROOT_CAT}.tmp +$xmlcatbin --noout --add "delegatePublic" \ + "-//KDE//ENTITIES" \ + "file://$CATALOG" %{FOR_ROOT_CAT}.tmp +# Create tag +sed '/ +/<\/catalog/i\ + ' \ + %{FOR_ROOT_CAT}.tmp > %{FOR_ROOT_CAT} + +%install + %makeinstall_tde -d build + mkdir -p $RPM_BUILD_ROOT/%{_tde_configkcfgdir} + install -D %SOURCE9 $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/16x16/filesystems/file_broken.png + mv $RPM_BUILD_ROOT/etc/xdg/menus/applications.menu \ + $RPM_BUILD_ROOT/etc/xdg/menus/applications.menu.kde + # + # lib64 compatibility symlink + # +%ifarch x86_64 ppc64 s390x mips64 sparc64 + mkdir -p $RPM_BUILD_ROOT/%{_tde_prefix}/lib/kde3/ + ln -sf ../../lib64/kde3/plugins \ + $RPM_BUILD_ROOT/%{_tde_prefix}/lib/kde3/plugins-lib64 +%endif + # + # add missing directories + # + for i in Applications Development Editors Edutainment Games Graphics Internet Multimedia Office Settings System Toys Utilities WordProcessing; do + install -d -m 0755 $RPM_BUILD_ROOT/%{_tde_appsdir}/$i + done + rm -f locale.list + for i in $(find /usr/share/locale -mindepth 1 -maxdepth 1 -type d | sed 's:/usr/share/locale/::'); do + install -d -m 755 $RPM_BUILD_ROOT/%{_tde_locale}/$i + install -d -m 755 $RPM_BUILD_ROOT/%{_tde_locale}/$i/LC_MESSAGES + install -d -m 755 $RPM_BUILD_ROOT/%{_tde_htmldir}/$i + echo "%lang($i) %doc %{_tde_locale}/$i" >> locale.list + done + %suse_update_desktop_file kresources X-KDE-settings-desktop + # unlike with other modules, tde_post_install shouldn't + # be put at the end of %install + %tde_post_install + # now create a filesystem layer + for theme in hicolor locolor; do + for j in actions apps filesystems mimetypes; do + for i in 16 22 32 48 64 128; do + install -d -m 0755 $RPM_BUILD_ROOT/%{_tde_icondir}/${theme}/${i}x${i}/${j} + done + install -d -m 0755 $RPM_BUILD_ROOT/%{_tde_icondir}/${theme}/scalable/${j} + done + done + install -d -m 0755 $RPM_BUILD_ROOT/etc/%{_tde_libdir} + install -d -m 0755 $RPM_BUILD_ROOT/etc/%{_tde_configdir} + install -d -m 0755 $RPM_BUILD_ROOT/%{_tde_datadir}/kdelibs/ + install -m 0644 %SOURCE6 $RPM_BUILD_ROOT/etc/ + rm -f $RPM_BUILD_ROOT/%{_tde_libdir}/libkdeinit_*.la + # + # add additional icon path (not needed anymore? we use cmake) + # + #mkdir -p ${RPM_BUILD_ROOT}/%{_tde_datadir}/kdelibs + #rm -f admin/*.orig + #cp -a admin ${RPM_BUILD_ROOT}/%{_tde_datadir}/kdelibs/ + # This is not needed on SUSE Linux! - Marcus Meissner + rm $RPM_BUILD_ROOT/%{_tde_bindir}/kgrantpty + # + # our version is in kdebase3 + # + rm -f $RPM_BUILD_ROOT/%{_tde_bindir}/fileshare* + # + # no sources for man pages + # + rm -f $RPM_BUILD_ROOT/%{_tde_htmldir}/en/kdelibs/man-* + # + # install BitTorrent icons + # + tar xfvz %SOURCE11 + for i in 16x16 22x22 32x32 48x48 64x64 128x128 ; do + install -m 0644 bt/$i/mimetypes/bt.png \ + $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/$i/mimetypes/torrent.png + done + cp CATALOG.%{name} catalog.xml ${RPM_BUILD_ROOT}/%{_tde_datadir}/ksgmltools2/customization/ + mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/xml + cp %{FOR_ROOT_CAT} ${RPM_BUILD_ROOT}%{_sysconfdir}/xml +# rm -f $RPM_BUILD_ROOT/%{_tde_libdir}/libkdefakes.la +# rm -f $RPM_BUILD_ROOT/%{_tde_libdir}/libkjava.la +rm -f $RPM_BUILD_ROOT/%{_tde_icondir}/hicolor/index.theme + # .desktop files in kdeaccessibility3 require the kttsd icon + for i in {16x16,22x22,32x32,48x48,64x64,128x128,scalable}; do mv $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/$i/apps/kttsd.* $RPM_BUILD_ROOT/%{_tde_icondir}/hicolor/$i/apps/;done + install -m 0644 %SOURCE14 $RPM_BUILD_ROOT/%{_tde_mimedir}/application/ + install -m 0644 %SOURCE15 $RPM_BUILD_ROOT/%{_tde_mimedir}/application/ + install -m 0644 %SOURCE16 $RPM_BUILD_ROOT/%{_tde_mimedir}/application/ + # fix bnc#396153 + for i in 16x16 22x22 32x32 48x48 64x64 128x128; do + ln -s %{_tde_icondir}/crystalsvg/$i/filesystems/network.png $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/$i/filesystems/preferences-system-network.png + ln -s %{_tde_icondir}/crystalsvg/$i/filesystems/desktop.png $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/$i/filesystems/preferences-desktop.png + done + chmod a-x $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/16x16/filesystems/file_broken.png + %fdupes -s $RPM_BUILD_ROOT + mkdir -p $RPM_BUILD_ROOT/etc/%{_tde_applicationsdir} + touch $RPM_BUILD_ROOT/etc/%{_tde_applicationsdir}/mimeinfo.cache + mkdir -p $RPM_BUILD_ROOT/%{_tde_applicationsdir} + touch $RPM_BUILD_ROOT/%{_tde_applicationsdir}/mimeinfo.cache +# Create /etc/ld.so.conf.d/kdelibs3.conf +mkdir -p $RPM_BUILD_ROOT/etc/ld.so.conf.d +cat > $RPM_BUILD_ROOT/etc/ld.so.conf.d/tdelibs.conf </dev/null 2>&1 + fi + if [ -x /usr/bin/edit-xml-catalog ]; then + edit-xml-catalog --group --catalog /etc/xml/suse-catalog.xml \ + --add /etc/xml/%{FOR_ROOT_CAT} + fi + +%postun doc + if [ "$1" = "0" -a -x %{regcat} ]; then + %{regcat} -r %{_tde_datadir}/ksgmltools2/customization/CATALOG.%{name} >/dev/null 2>&1 + fi + # remove entries only on removal of file + if [ ! -f %{xml_sysconf_dir}/%{FOR_ROOT_CAT} -a -x /usr/bin/edit-xml-catalog ] ; then + edit-xml-catalog --group --catalog /etc/xml/suse-catalog.xml \ + --del %{name}-%{version} + fi + exit 0 + +%clean + rm -rf ${RPM_BUILD_ROOT} + +%files default-style +%defattr(-,root,root) +%doc AUTHORS COPYING COPYING.BSD COPYING.LIB NAMING README +%{_tde_libdir}/libkdefx.so.* +%{_tde_libdir}/kde3/plugins/styles/plastik.* + +%files +%defattr(-,root,root) +%doc AUTHORS COPYING COPYING.BSD COPYING.LIB NAMING README +/etc/ld.so.conf.d/tdelibs.conf +%dir /etc/%{_tde_prefix} +%dir %{_tde_prefix} +%dir %{_tde_bindir} +%dir %{_tde_includedir} +%dir %{_tde_sharedir} +%dir %{_tde_configkcfgdir} +%_mandir/man*/* +%{_tde_bindir}/checkXML +%{_tde_bindir}/dcop +%{_tde_bindir}/dcopclient +%{_tde_bindir}/dcopfind +%{_tde_bindir}/dcopobject +%{_tde_bindir}/dcopref +%{_tde_bindir}/dcops* +%{_tde_bindir}/dcopquit +%{_tde_bindir}/imagetops +%{_tde_bindir}/ka* +%{_tde_bindir}/kbuildsycoca +%{_tde_bindir}/kco* +%{_tde_bindir}/kcmshell +%{_tde_bindir}/kded +%{_tde_bindir}/kdeinit* +%{_tde_bindir}/start_kdeinit +%{_tde_bindir}/start_kdeinit_wrapper +%{_tde_bindir}/kde-config +%{_tde_bindir}/kde-menu +%{_tde_bindir}/kdesu_stub +%{_tde_bindir}/kdontchangethehostname +%{_tde_bindir}/kfile +%{_tde_bindir}/ki* +%{_tde_bindir}/kfmexec +%{_tde_bindir}/klauncher +%{_tde_bindir}/kmailservice +%{_tde_bindir}/ktradertest +%{_tde_bindir}/knotify +%{_tde_bindir}/kstartupconfig +%{_tde_bindir}/kdostartupconfig +%verify(not mode) %{_tde_bindir}/kpac_dhcp_helper +%{_tde_bindir}/ksendbugmail +%{_tde_bindir}/kshell +%{_tde_bindir}/ktelnetservice +%{_tde_bindir}/kwrapper +%{_tde_bindir}/lnusertemp +%{_tde_bindir}/make_driver_db_lpr +%{_tde_bindir}/khotnewstuff +%{_tde_bindir}/makekdewidgets +%dir %{_tde_libdir} +%dir %{_tde_libdir}/kde3 +%{_tde_libdir}/kde3/dcopserver.* +%{_tde_libdir}/kde3/kaddprinterwizard.* +%{_tde_libdir}/kde3/kbuildsycoca.* +%{_tde_libdir}/kde3/kcmshell.* +%{_tde_libdir}/kde3/kcm_kresources.* +%{_tde_libdir}/kde3/kconf_update.* +%{_tde_libdir}/kde3/kcookiejar.* +%{_tde_libdir}/kde3/kded.* +%{_tde_libdir}/kde3/kded_proxyscout.* +%{_tde_libdir}/kde3/kfileaudiopreview.* +%{_tde_libdir}/kde3/klauncher.* +%{_tde_libdir}/kde3/knotify.* +%{_tde_libdir}/kde3/kabc* +%{_tde_libdir}/kde3/kbzip2filter.* +%{_tde_libdir}/kde3/kded_k* +%{_tde_libdir}/kde3/kdeprint_ext.* +%{_tde_libdir}/kde3/kdeprint_lp* +%{_tde_libdir}/kde3/kdeprint_rlpr.* +%{_tde_libdir}/kde3/kdeprint_tool_escputil.* +%{_tde_libdir}/kde3/kgzipfilter.* +%{_tde_libdir}/kde3/khtmlimagepart.* +%{_tde_libdir}/kde3/ki* +%{_tde_libdir}/kde3/kjavaappletviewer.* +%{_tde_libdir}/kde3/ktexteditor_* +%{_tde_libdir}/kde3/libk* +%{_tde_libdir}/kde3/kspell_* +%{_tde_libdir}/kde3/kstyle_plastik_config.* +%{_tde_libdir}/kde3/kstyle_highcontrast_config.* +%{_tde_libdir}/kde3/libshellscript.* +%exclude %{_tde_libdir}/kde3/plugins/styles/plastik.* +%{_tde_libdir}/kde3/plugins +%{_tde_libdir}/libDCOP.so.* +%exclude %{_tde_libdir}/libkdefx.so.* +%{_tde_libdir}/libk*.so.* +%{_tde_libdir}/libvcard.so.* +%{_tde_libdir}/libkdeinit*.so +%{_tde_libdir}/libnetworkstatus.so.* +%{_tde_libdir}/libconnectionmanager.so.* +%{_tde_libdir}/kde3/kded_networkstatus.* +%{_tde_appsdir} +%dir %{_tde_datadir} +%{_tde_datadir}/LICENSES +%{_tde_datadir}/ka* +%{_tde_datadir}/kc* +%dir %{_tde_datadir}/kdeprint +%{_tde_datadir}/kdeprint/apsdriver* +%{_tde_datadir}/kdeprint/filters +%{_tde_datadir}/kdeprint/icons +%{_tde_datadir}/kdeprint/lprngtooldriver1 +%{_tde_datadir}/kdeprint/pics +%dir %{_tde_datadir}/kdeprint/plugins +%{_tde_datadir}/kdeprint/plugins/ext.print +%{_tde_datadir}/kdeprint/plugins/lp*.print +%{_tde_datadir}/kdeprint/plugins/rlpr.print +%{_tde_datadir}/kdeprint/s* +%{_tde_datadir}/kdeprint/t* +%{_tde_datadir}/kdeui +%{_tde_datadir}/kdewidgets +%{_tde_datadir}/khtml +%{_tde_datadir}/kio_uiserver +%{_tde_datadir}/kjava +%{_tde_datadir}/knotify +%{_tde_datadir}/kssl +%{_tde_datadir}/kstyle +%{_tde_datadir}/ktexteditor_* +%{_tde_datadir}/proxyscout +%{_tde_datadir}/knewstuff +%{_tde_sharedir}/autostart +%{_tde_configdir} +%{_tde_sharedir}/emoticons +%{_tde_icondir}/icons +%{_tde_locale}/locale +%{_tde_mimedir}/mimelnk +%{_tde_sharedir}/service* +%config /etc/tderc +%{_tde_applicationsdir} +%{_tde_bindir}/cupsd* +%{_tde_bindir}/make_driver_db_cups +%{_tde_libdir}/kde3/kdeprint_cups.* +%{_tde_libdir}/kde3/cupsdconf.* +%{_tde_datadir}/kdeprint/cups* +%{_tde_datadir}/kdeprint/kde_logo.png +%{_tde_datadir}/kdeprint/plugins/cups.print +%{_tde_datadir}/kdeprint/preview* +%ifarch x86_64 ppc64 s390x mips64 sparc64 +%dir %{_tde_prefix}/lib +%dir %{_tde_prefix}/lib/kde3 +%{_tde_prefix}/lib/kde3/plugins-lib64 +%endif +/etc/xdg/menus +%dir /etc/%{_tde_prefix} +%dir /etc/%{_tde_sharedir} +%dir /etc/%{_tde_applicationsdir} +%ghost /etc/%{_tde_applicationsdir}/mimeinfo.cache +%dir %{_tde_prefix} +%dir %{_tde_sharedir} +%dir %{_tde_applicationsdir} +%ghost %{_tde_applicationsdir}/mimeinfo.cache + + +%files arts +%defattr(-,root,root) +%{_tde_bindir}/artsmessage +%{_tde_libdir}/libartskde.so.* + +%files doc +%defattr(-,root,root) +%doc %{_tde_docdir} +%{_tde_bindir}/meinproc +%{_tde_datadir}/ksgmltools2 +%config %{_sysconfdir}/xml/%{FOR_ROOT_CAT} + +%files devel +%defattr(-,root,root) +%dir %{_tde_datadir}/kdelibs +%{_tde_bindir}/dcopidl* +%{_tde_bindir}/kmimelist +%{_tde_bindir}/preparetips +%{_tde_bindir}/ksvgtopng +%{_tde_bindir}/kunittestmodrunner +#%{_tde_bindir}/MISC +%{_tde_includedir}/* +%{_tde_datadir}/dcopidlng +%{_tde_datadir}/kdelibs/admin +%{_tde_libdir}/libartskde.la +%{_tde_libdir}/libkunittest.la +%{_tde_libdir}/libkunittest.so +%{_tde_libdir}/libartskde.so +%{_tde_libdir}/libDCOP.so +%{_tde_libdir}/libvcard.so +%{_tde_libdir}/libvcard.la +%{_tde_libdir}/libDCOP.la +%{_tde_libdir}/lib*.a +%{_tde_libdir}/libkabc_dir.la +%{_tde_libdir}/libkabc_dir.so +%{_tde_libdir}/libkabc_file.la +%{_tde_libdir}/libkabc_file.so +%{_tde_libdir}/libkabc.la +%{_tde_libdir}/libkabc_ldapkio.la +%{_tde_libdir}/libkabc_ldapkio.so +%{_tde_libdir}/libkabc.so +%{_tde_libdir}/libkatepartinterfaces.la +%{_tde_libdir}/libkatepartinterfaces.so +%{_tde_libdir}/libkdecore.la +%{_tde_libdir}/libkdecore.so +%{_tde_libdir}/libkdefakes.la +%{_tde_libdir}/libkdefakes.so +%{_tde_libdir}/libkdefx.la +%{_tde_libdir}/libkdefx.so +%{_tde_libdir}/libkdemm.la +%{_tde_libdir}/libkdemm.so +%{_tde_libdir}/libkdeprint.la +%{_tde_libdir}/libkdeprint_management.la +%{_tde_libdir}/libkdeprint_management.so +%{_tde_libdir}/libkdeprint.so +%{_tde_libdir}/libkdesasl.la +%{_tde_libdir}/libkdesasl.so +%{_tde_libdir}/libkdesu.la +%{_tde_libdir}/libkdesu.so +%{_tde_libdir}/libkdeui.la +%{_tde_libdir}/libkdeui.so +%{_tde_libdir}/libkdnssd.la +%{_tde_libdir}/libkdnssd.so +%{_tde_libdir}/libkhtml.la +%{_tde_libdir}/libkhtml.so +%{_tde_libdir}/libkimproxy.la +%{_tde_libdir}/libkimproxy.so +%{_tde_libdir}/libkio.la +%{_tde_libdir}/libkio.so +%{_tde_libdir}/libkjava.la +%{_tde_libdir}/libkjava.so +%{_tde_libdir}/libkjs.la +%{_tde_libdir}/libkjs.so +%{_tde_libdir}/libkmdi2.la +%{_tde_libdir}/libkmdi2.so +%{_tde_libdir}/libkmdi.la +%{_tde_libdir}/libkmdi.so +%{_tde_libdir}/libkmediaplayer.la +%{_tde_libdir}/libkmediaplayer.so +%{_tde_libdir}/libkmid.la +%{_tde_libdir}/libkmid.so +%{_tde_libdir}/libknewstuff.la +%{_tde_libdir}/libknewstuff.so +%{_tde_libdir}/libkntlm.la +%{_tde_libdir}/libkntlm.so +%{_tde_libdir}/libkparts.la +%{_tde_libdir}/libkparts.so +%{_tde_libdir}/libkresources.la +%{_tde_libdir}/libkresources.so +%{_tde_libdir}/libkscreensaver.la +%{_tde_libdir}/libkscreensaver.so +%{_tde_libdir}/libkscript.la +%{_tde_libdir}/libkscript.so +%{_tde_libdir}/libkspell2.la +%{_tde_libdir}/libkspell2.so +%{_tde_libdir}/libkspell.la +%{_tde_libdir}/libkspell.so +%{_tde_libdir}/libktexteditor.la +%{_tde_libdir}/libktexteditor.so +%{_tde_libdir}/libkutils.la +%{_tde_libdir}/libkutils.so +%{_tde_libdir}/libkwalletbackend.la +%{_tde_libdir}/libkwalletbackend.so +%{_tde_libdir}/libkwalletclient.la +%{_tde_libdir}/libkwalletclient.so +%{_tde_libdir}/libnetworkstatus.la +%{_tde_libdir}/libnetworkstatus.so +%{_tde_libdir}/libconnectionmanager.la +%{_tde_libdir}/libconnectionmanager.so + +%changelog diff --git a/opensuse/core/tdelibs.old/tderc b/opensuse/core/tdelibs.old/tderc new file mode 100644 index 000000000..c98cc4144 --- /dev/null +++ b/opensuse/core/tdelibs.old/tderc @@ -0,0 +1,11 @@ +[Directories] +prefixes=/etc/opt/tde/ +userProfileMapFile=/etc/kde-user-profile +profileDirsPrefix=/var/lib/kde-profiles/ +dir_wallpaper=/usr/share/wallpapers + +[Directories-default] +ProfileDescription=Default Profile +ProfileInstallUser=root +prefixes=/var/lib/kde-profiles/default/ + diff --git a/opensuse/core/tdelibs.old/textcompletion-editor.diff b/opensuse/core/tdelibs.old/textcompletion-editor.diff new file mode 100644 index 000000000..d14776149 --- /dev/null +++ b/opensuse/core/tdelibs.old/textcompletion-editor.diff @@ -0,0 +1,344 @@ +Index: khtml/khtmlview.h +=================================================================== +--- khtml/khtmlview.h.orig ++++ khtml/khtmlview.h +@@ -314,6 +314,7 @@ private: + QStringList formCompletionItems(const QString &name) const; + void clearCompletionHistory(const QString& name); + void addFormCompletionItem(const QString &name, const QString &value); ++ void removeFormCompletionItem(const QString &name, const QString &value); + + void addNonPasswordStorableSite( const QString& host ); + bool nonPasswordStorableSite( const QString& host ) const; +Index: khtml/khtmlview.cpp +=================================================================== +--- khtml/khtmlview.cpp.orig ++++ khtml/khtmlview.cpp +@@ -3088,6 +3088,16 @@ void KHTMLView::addFormCompletionItem(co + d->formCompletions->writeEntry(name, items); + } + ++void KHTMLView::removeFormCompletionItem(const QString &name, const QString &value) ++{ ++ if (!m_part->settings()->isFormCompletionEnabled()) ++ return; ++ ++ QStringList items = formCompletionItems(name); ++ if (items.remove(value)) ++ d->formCompletions->writeEntry(name, items); ++} ++ + void KHTMLView::addNonPasswordStorableSite(const QString& host) + { + if (!d->formCompletions) { +Index: khtml/rendering/render_form.h +=================================================================== +--- khtml/rendering/render_form.h.orig ++++ khtml/rendering/render_form.h +@@ -272,10 +272,12 @@ private slots: + void spellCheckerMisspelling( const QString &text, const QStringList &, unsigned int pos); + void spellCheckerCorrected( const QString &, const QString &, unsigned int ); + void spellCheckerFinished(); ++ void slotRemoveFromHistory( const QString & ); + + private: + enum LineEditMenuID { +- ClearHistory ++ ClearHistory, ++ EditHistory + }; + DOM::HTMLInputElementImpl* m_input; + KHTMLView* m_view; +Index: khtml/rendering/render_form.cpp +=================================================================== +--- khtml/rendering/render_form.cpp.orig ++++ khtml/rendering/render_form.cpp +@@ -385,7 +385,9 @@ QPopupMenu *LineEditWidget::createPopupM + + if (m_input->autoComplete()) { + popup->insertSeparator(); +- int id = popup->insertItem( SmallIconSet("history_clear"), i18n("Clear &History"), ClearHistory ); ++ int id = popup->insertItem( SmallIconSet("edit"), i18n("&Edit History..."), EditHistory ); ++ popup->setItemEnabled( id, (compObj() && !compObj()->isEmpty()) ); ++ id = popup->insertItem( SmallIconSet("history_clear"), i18n("Clear &History"), ClearHistory ); + popup->setItemEnabled( id, (compObj() && !compObj()->isEmpty()) ); + } + +@@ -409,11 +411,25 @@ void LineEditWidget::extendedMenuActivat + m_view->clearCompletionHistory(m_input->name().string()); + if (compObj()) + compObj()->clear(); ++ case EditHistory: ++ { ++ KHistoryComboEditor dlg( compObj() ? compObj()->items() : QStringList(), this ); ++ connect( &dlg, SIGNAL( removeFromHistory(const QString&) ), SLOT( slotRemoveFromHistory(const QString&)) ); ++ dlg.exec(); ++ } + default: + break; + } + } + ++void LineEditWidget::slotRemoveFromHistory(const QString &entry) ++{ ++ m_view->removeFormCompletionItem(m_input->name().string(), entry); ++ if (compObj()) ++ compObj()->removeItem(entry); ++} ++ ++ + bool LineEditWidget::event( QEvent *e ) + { + if (KLineEdit::event(e)) +Index: kdeui/kcombobox.h +=================================================================== +--- kdeui/kcombobox.h.orig ++++ kdeui/kcombobox.h +@@ -24,8 +24,15 @@ + + #include + #include ++#include ++#include ++#include ++#include ++#include + + #include ++#include ++#include + + class QListBoxItem; + class QPopupMenu; +@@ -669,6 +676,12 @@ public: + */ + void reset() { slotReset(); } + ++ /** ++ * When enabling it you have to connect to "removed" signal and save changes ++ */ ++ void setHistoryEditorEnabled( bool enable ); ++ bool isHistoryEditorEnabled() const; ++ + public slots: + /** + * Adds an item to the end of the history list and to the completion list. +@@ -702,6 +715,8 @@ signals: + */ + void cleared(); + ++ void removed( const QString& item ); ++ + protected: + /** + * Handling key-events, the shortcuts to rotate the items. +@@ -741,10 +756,17 @@ private slots: + void slotClear(); + + /** ++ * Called from the popupmenu, ++ */ ++ void slotEdit(); ++ ++ /** + * Appends our own context menu entry. + */ + void addContextMenuItems( QPopupMenu* ); + ++ void slotRemoveFromHistory( const QString & ); ++ + private: + void init( bool useCompletion ); + void rotateUp(); +@@ -774,6 +796,30 @@ private: + KHistoryComboPrivate* const d; + }; + ++class KDEUI_EXPORT KHistoryComboEditor : public KDialogBase ++{ ++ Q_OBJECT ++ ++public: ++ KHistoryComboEditor( const QStringList& entries, QWidget *parent = 0L ); ++ ~KHistoryComboEditor(); ++ ++signals: ++ void removeFromHistory( const QString& ); ++ ++protected slots: ++ virtual void slotUser1(); // User1 is "Delete Entry" button ++ void slotSelectionChanged( QListViewItem * item ); ++ ++protected: ++ virtual void virtual_hook( int id, void* data ); ++ ++private: ++ KListView *m_pListView; ++ ++ class KHistoryComboEditorPrivate; ++ KHistoryComboEditorPrivate* const d; ++}; + + #endif + +Index: kdeui/kcombobox.cpp +=================================================================== +--- kdeui/kcombobox.cpp.orig ++++ kdeui/kcombobox.cpp +@@ -29,6 +29,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -343,10 +344,22 @@ void KComboBox::lineEditDeleted() + // ********************************************************************* + // ********************************************************************* + ++class KHistoryCombo::KHistoryComboPrivate ++{ ++public: ++ KHistoryComboPrivate() : bHistoryEditorEnabled(false) ++ { ++ } ++ ~KHistoryComboPrivate() ++ { ++ } ++ ++ bool bHistoryEditorEnabled; ++}; + + // we are always read-write + KHistoryCombo::KHistoryCombo( QWidget *parent, const char *name ) +- : KComboBox( true, parent, name ), d(0) ++ : KComboBox( true, parent, name ), d(new KHistoryComboPrivate) + { + init( true ); // using completion + } +@@ -354,7 +367,7 @@ KHistoryCombo::KHistoryCombo( QWidget *p + // we are always read-write + KHistoryCombo::KHistoryCombo( bool useCompletion, + QWidget *parent, const char *name ) +- : KComboBox( true, parent, name ), d(0) ++ : KComboBox( true, parent, name ), d(new KHistoryComboPrivate) + { + init( useCompletion ); + } +@@ -441,6 +454,10 @@ void KHistoryCombo::addContextMenuItems( + if ( menu ) + { + menu->insertSeparator(); ++ if (d->bHistoryEditorEnabled) { ++ int idedit = menu->insertItem( SmallIconSet("edit"), i18n("&Edit History..."), this, SLOT( slotEdit()) ); ++ menu->setItemEnabled(idedit, count()); ++ } + int id = menu->insertItem( SmallIconSet("history_clear"), i18n("Clear &History"), this, SLOT( slotClear())); + if (!count()) + menu->setItemEnabled(id, false); +@@ -677,10 +694,104 @@ void KHistoryCombo::slotClear() + emit cleared(); + } + ++void KHistoryCombo::slotEdit() ++{ ++ KHistoryComboEditor dlg( historyItems(), this ); ++ connect( &dlg, SIGNAL( removeFromHistory(const QString&) ), SLOT( slotRemoveFromHistory(const QString&)) ); ++ dlg.exec(); ++} ++ ++void KHistoryCombo::slotRemoveFromHistory(const QString &entry) ++{ ++ removeFromHistory(entry); ++ emit removed(entry); ++} ++ ++void KHistoryCombo::setHistoryEditorEnabled( bool enable ) ++{ ++ d->bHistoryEditorEnabled = enable; ++} ++ ++bool KHistoryCombo::isHistoryEditorEnabled() const ++{ ++ return d->bHistoryEditorEnabled; ++} ++ + void KComboBox::virtual_hook( int id, void* data ) + { KCompletionBase::virtual_hook( id, data ); } + + void KHistoryCombo::virtual_hook( int id, void* data ) + { KComboBox::virtual_hook( id, data ); } + ++void KHistoryComboEditor::virtual_hook( int id, void* data ) ++{ KDialogBase::virtual_hook( id, data ); } ++ ++KHistoryComboEditor::KHistoryComboEditor( const QStringList& entries, QWidget *parent ) ++: KDialogBase( parent, "khistorycomboeditor", true, i18n( "History Editor" ), ++ KDialogBase::Close | KDialogBase::User1, KDialogBase::User1, true, ++ KGuiItem( i18n( "&Delete Entry" ), "editdelete") ), d(0) ++{ ++ QVBox* box = new QVBox( this ); ++ box->setSpacing( KDialog::spacingHint() ); ++ setMainWidget( box ); ++ ++ new QLabel( i18n( "This dialog allows you to delete unwanted history items." ), box ); ++ ++ // Add searchline ++ QHBox* searchbox = new QHBox( box ); ++ searchbox->setSpacing( KDialog::spacingHint() ); ++ ++ QToolButton *clearSearch = new QToolButton(searchbox); ++ clearSearch->setTextLabel(i18n("Clear Search"), true); ++ clearSearch->setIconSet(SmallIconSet(QApplication::reverseLayout() ? "clear_left" : "locationbar_erase")); ++ QLabel* slbl = new QLabel(i18n("&Search:"), searchbox); ++ KListViewSearchLine* listViewSearch = new KListViewSearchLine(searchbox); ++ slbl->setBuddy(listViewSearch); ++ connect(clearSearch, SIGNAL(pressed()), listViewSearch, SLOT(clear())); ++ ++ // Add ListView ++ m_pListView = new KListView( box ); ++ listViewSearch->setListView(m_pListView); ++ m_pListView->setAllColumnsShowFocus(true); ++ m_pListView->header()->hide(); ++ m_pListView->addColumn(""); ++ m_pListView->setRenameable( 0 ); ++ ++ box->setStretchFactor( m_pListView, 1 ); ++ ++ QStringList newlist = entries; ++ for ( QStringList::Iterator it = newlist.begin(); it != newlist.end(); ++it ) { ++ new QListViewItem( m_pListView, *it ); ++ } ++ ++ m_pListView->setMinimumSize( m_pListView->sizeHint() ); ++ ++ connect( m_pListView, SIGNAL( selectionChanged( QListViewItem * ) ), ++ this, SLOT( slotSelectionChanged( QListViewItem * ) ) ); ++ ++ enableButton( KDialogBase::User1, false ); ++ ++ resize( sizeHint() ); ++} ++ ++KHistoryComboEditor::~KHistoryComboEditor() ++{ ++} ++ ++void KHistoryComboEditor::slotUser1() // Delete button ++{ ++ QListViewItem *item = m_pListView->selectedItem(); ++ ++ if ( item ) { ++ emit removeFromHistory( item->text(0) ); ++ m_pListView->takeItem( item ); ++ enableButton( KDialogBase::User1, false ); ++ } ++} ++ ++void KHistoryComboEditor::slotSelectionChanged( QListViewItem * item ) ++{ ++ enableButton( KDialogBase::User1, item ); ++} ++ + #include "kcombobox.moc" diff --git a/opensuse/core/tdelibs.old/use-mediamanager.diff b/opensuse/core/tdelibs.old/use-mediamanager.diff new file mode 100644 index 000000000..007c40bd0 --- /dev/null +++ b/opensuse/core/tdelibs.old/use-mediamanager.diff @@ -0,0 +1,44 @@ +Index: kioslave/file/file.cc +=================================================================== +--- kioslave/file/file.cc.orig ++++ kioslave/file/file.cc +@@ -69,6 +69,7 @@ + #include + #include + ++#include + #include + #include + #include +@@ -1609,6 +1610,31 @@ void FileProtocol::unmount( const QStrin + #endif /* HAVE_VOLMGT */ + + err = testLogFile( tmp ); ++ ++ if (err.contains("fstab") || err.contains("root")) { ++ QString olderr; ++ err = QString::null; ++ ++ DCOPRef d("kded", "mediamanager"); ++ d.setDCOPClient ( dcopClient() ); ++ DCOPReply reply = d.call("properties", _point); ++ QString udi; ++ ++ if ( reply.isValid() ) { ++ QStringList list = reply; ++ if (list.size()) ++ udi = list[0]; ++ } ++ ++ if (!udi.isEmpty()) ++ reply = d.call("unmount", udi); ++ ++ if (udi.isEmpty() || !reply.isValid()) ++ err = olderr; ++ else if (reply.isValid()) ++ reply.get(err); ++ } ++ + if ( err.isEmpty() ) + finished(); + else diff --git a/opensuse/core/tdelibs.old/use-xauthlocalhostname.diff b/opensuse/core/tdelibs.old/use-xauthlocalhostname.diff new file mode 100644 index 000000000..42ef39b9c --- /dev/null +++ b/opensuse/core/tdelibs.old/use-xauthlocalhostname.diff @@ -0,0 +1,240 @@ +Index: kinit/wrapper.c +=================================================================== +--- kinit/wrapper.c.orig ++++ kinit/wrapper.c +@@ -164,7 +164,9 @@ static int openSocket() + sock_file[strlen(sock_file)-1] = 0; + + strncat(sock_file, "/socket-", MAX_SOCK_FILE - strlen(sock_file)); +- if (gethostname(sock_file+strlen(sock_file), MAX_SOCK_FILE - strlen(sock_file) - 1) != 0) ++ if( getenv("XAUTHLOCALHOSTNAME")) ++ strncat(sock_file, getenv("XAUTHLOCALHOSTNAME"), MAX_SOCK_FILE - strlen(sock_file) - 1); ++ else if (gethostname(sock_file+strlen(sock_file), MAX_SOCK_FILE - strlen(sock_file) - 1) != 0) + { + perror("Warning: Could not determine hostname: "); + return -1; +Index: kinit/lnusertemp.c +=================================================================== +--- kinit/lnusertemp.c.orig ++++ kinit/lnusertemp.c +@@ -39,7 +39,7 @@ + + int check_tmp_dir(const char *tmp_dir); + int create_link(const char *file, const char *tmp_dir); +-int build_link(const char *tmp_prefix, const char *kde_prefix); ++int build_link(const char *tmp_prefix, const char *kde_prefix, int kdehostname); + + int check_tmp_dir(const char *tmp_dir) + { +@@ -89,7 +89,7 @@ int create_link(const char *file, const + } + + +-int build_link(const char *tmp_prefix, const char *kde_prefix) ++int build_link(const char *tmp_prefix, const char *kde_prefix, int kdehostname) + { + struct passwd *pw_ent; + char kde_tmp_dir[PATH_MAX+1]; +@@ -157,10 +157,21 @@ int build_link(const char *tmp_prefix, c + } + + strncat(kde_tmp_dir, kde_prefix, PATH_MAX - strlen(kde_tmp_dir)); +- if (gethostname(kde_tmp_dir+strlen(kde_tmp_dir), PATH_MAX - strlen(kde_tmp_dir) - 1) != 0) ++ ++ if( kdehostname ) ++ { ++ if( getenv("XAUTHLOCALHOSTNAME")) ++ strncat(kde_tmp_dir+strlen(kde_tmp_dir), getenv("XAUTHLOCALHOSTNAME"), PATH_MAX - strlen(kde_tmp_dir) - 1); ++ else ++ return 0; ++ } ++ else + { +- perror("Aborting. Could not determine hostname: "); +- exit(255); ++ if (gethostname(kde_tmp_dir+strlen(kde_tmp_dir), PATH_MAX - strlen(kde_tmp_dir) - 1) != 0) ++ { ++ perror("Could not determine hostname: "); ++ return 1; ++ } + } + kde_tmp_dir[sizeof(kde_tmp_dir)-1] = '\0'; + +@@ -266,7 +277,9 @@ int main(int argc, char **argv) + kde_prefix = "/cache-"; + } + +- res = build_link(tmp_prefix, kde_prefix); ++ res = build_link(tmp_prefix, kde_prefix, 1); ++ if( build_link(tmp_prefix, kde_prefix, 0)) ++ res = 1; + + free(tmp_prefix); + +Index: kdecore/kstandarddirs.cpp +=================================================================== +--- kdecore/kstandarddirs.cpp.orig ++++ kdecore/kstandarddirs.cpp +@@ -719,7 +719,10 @@ void KStandardDirs::createSpecialResourc + { + char hostname[256]; + hostname[0] = 0; +- gethostname(hostname, 255); ++ if( getenv("XAUTHLOCALHOSTNAME")) ++ strlcpy(hostname, getenv("XAUTHLOCALHOSTNAME"), 255 ); ++ else ++ gethostname(hostname, 255); + QString dir = QString("%1%2-%3").arg(localkdedir()).arg(type).arg(hostname); + char link[1024]; + link[1023] = 0; +Index: kdecore/kcrash.cpp +=================================================================== +--- kdecore/kcrash.cpp.orig ++++ kdecore/kcrash.cpp +@@ -466,7 +466,9 @@ static int openSocket() + sock_file[strlen(sock_file)-1] = 0; + + strncat(sock_file, "/socket-", MAX_SOCK_FILE - strlen(sock_file)); +- if (gethostname(sock_file+strlen(sock_file), MAX_SOCK_FILE - strlen(sock_file) - 1) != 0) ++ if( getenv("XAUTHLOCALHOSTNAME")) ++ strncat(sock_file, getenv("XAUTHLOCALHOSTNAME"), MAX_SOCK_FILE - strlen(sock_file) - 1); ++ else if (gethostname(sock_file+strlen(sock_file), MAX_SOCK_FILE - strlen(sock_file) - 1) != 0) + { + perror("Warning: Could not determine hostname: "); + return -1; +Index: dcop/dcopserver_shutdown.c +=================================================================== +--- dcop/dcopserver_shutdown.c.orig ++++ dcop/dcopserver_shutdown.c +@@ -95,7 +95,9 @@ static void getDCOPFile(char *dcop_file, + strncat(dcop_file, "/.DCOPserver_", n); + n -= strlen("/.DCOPserver_"); + +- if (gethostname(dcop_file+strlen(dcop_file), n) != 0) ++ if (getenv("XAUTHLOCALHOSTNAME")) ++ strncat(dcop_file+strlen(dcop_file), getenv("XAUTHLOCALHOSTNAME"), n); ++ else if (gethostname(dcop_file+strlen(dcop_file), n) != 0) + { + perror("Error. Could not determine hostname: "); + dcop_file[0] = '\0'; +Index: dcop/dcopc.c +=================================================================== +--- dcop/dcopc.c.orig ++++ dcop/dcopc.c +@@ -684,7 +684,9 @@ dcop_connect() + } + + hostName[0] = '\0'; +- if (gethostname(hostName, sizeof(hostName))) ++ if (getenv("XAUTHLOCALHOSTNAME")) ++ strlcpy(hostName, getenv("XAUTHLOCALHOSTNAME"),sizeof(hostName)-1); ++ else if (gethostname(hostName, sizeof(hostName))) + strcpy(hostName, "localhost"); + else + hostName[sizeof(hostName)-1] = '\0'; +Index: dcop/dcopclient.cpp +=================================================================== +--- dcop/dcopclient.cpp.orig ++++ dcop/dcopclient.cpp +@@ -277,7 +277,9 @@ static QCString dcopServerFile(const QCS + { + char hostName[256]; + hostName[0] = '\0'; +- if (gethostname(hostName, sizeof(hostName))) ++ if (getenv("XAUTHLOCALHOSTNAME")) ++ fName += getenv("XAUTHLOCALHOSTNAME"); ++ else if (gethostname(hostName, sizeof(hostName))) + { + fName += "localhost"; + } +Index: dcop/KDE-ICE/Xtranssock.c +=================================================================== +--- dcop/KDE-ICE/Xtranssock.c.orig ++++ dcop/KDE-ICE/Xtranssock.c +@@ -1444,6 +1444,7 @@ UnixHostReallyLocal (char *host) + + { + char hostnamebuf[256]; ++ char* xauthlocalname = getenv("XAUTHLOCALHOSTNAME"); + + TRANS(GetHostname) (hostnamebuf, sizeof (hostnamebuf)); + +@@ -1451,6 +1452,10 @@ UnixHostReallyLocal (char *host) + { + return (1); + } ++ else if(xauthlocalname && strcmp (xauthlocalname, host) == 0) ++ { ++ return (1); ++ } + else + { + /* +Index: kded/khostname.cpp +=================================================================== +--- kded/khostname.cpp.orig ++++ kded/khostname.cpp +@@ -111,7 +111,8 @@ static QCStringList split(const QCString + + void KHostName::changeX() + { +- QString cmd = "xauth list"; ++ const char* xauthlocalhostname = getenv("XAUTHLOCALHOSTNAME"); ++ QString cmd = "xauth -n list"; + FILE *xFile = popen(QFile::encodeName(cmd), "r"); + if (!xFile) + { +@@ -123,6 +124,7 @@ void KHostName::changeX() + char buf[1024+1]; + while (!feof(xFile)) + { ++ buf[1024]='\0'; + QCString line = fgets(buf, 1024, xFile); + if (line.length()) + line.truncate(line.length()-1); // Strip LF. +@@ -157,12 +159,17 @@ void KHostName::changeX() + QCString newNetId = newName+netId.mid(i); + QCString oldNetId = netId.left(i); + +- if(oldNetId != oldName) +- continue; ++ if(oldNetId != oldName ++ && (!xauthlocalhostname || strcmp(xauthlocalhostname, oldNetId.data()) != 0)) ++ continue; + +- cmd = "xauth remove "+KProcess::quote(netId); +- system(QFile::encodeName(cmd)); +- cmd = "xauth add "; ++ // don't nuke the xauth when XAUTHLOCALHOSTNAME points to it ++ if (!xauthlocalhostname || oldNetId != xauthlocalhostname) ++ { ++ cmd = "xauth -n remove "+KProcess::quote(netId); ++ system(QFile::encodeName(cmd)); ++ } ++ cmd = "xauth -n add "; + cmd += KProcess::quote(newNetId); + cmd += " "; + cmd += KProcess::quote(authName); +@@ -276,7 +283,10 @@ void KHostName::changeDcop() + } + } + +- // Remove old entries ++ // Remove old entries, but only if XAUTHLOCALHOSTNAME doesn't point ++ // to it ++ char* xauthlocalhostname = getenv("XAUTHLOCALHOSTNAME"); ++ if (!xauthlocalhostname || !oldNetId.contains(xauthlocalhostname)) + { + QString cmd = "iceauth remove "+KProcess::quote("netid="+oldNetId); + system(QFile::encodeName(cmd)); +@@ -368,9 +378,7 @@ int main(int argc, char **argv) + + KHostName hn; + +- if(!getenv("XAUTHLOCALHOSTNAME")) +- hn.changeX(); +- ++ hn.changeX(); + hn.changeDcop(); + hn.changeStdDirs("socket"); + hn.changeStdDirs("tmp"); diff --git a/opensuse/core/tdelibs.old/vnd.openxmlformats-officedocument.presentationml.presentation.desktop b/opensuse/core/tdelibs.old/vnd.openxmlformats-officedocument.presentationml.presentation.desktop new file mode 100644 index 000000000..80856ff95 --- /dev/null +++ b/opensuse/core/tdelibs.old/vnd.openxmlformats-officedocument.presentationml.presentation.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Type=MimeType +MimeType=application/vnd.openxmlformats-officedocument.presentationml.presentation +Patterns=*.pptx;*.PPTX +Icon=presentation +Comment=Open XML Presentation Document +[Property::X-KDE-NativeExtension] +Type=QString +Value=.pptx diff --git a/opensuse/core/tdelibs.old/vnd.openxmlformats-officedocument.spreadsheetml.sheet.desktop b/opensuse/core/tdelibs.old/vnd.openxmlformats-officedocument.spreadsheetml.sheet.desktop new file mode 100644 index 000000000..e138deae4 --- /dev/null +++ b/opensuse/core/tdelibs.old/vnd.openxmlformats-officedocument.spreadsheetml.sheet.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Type=MimeType +MimeType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet +Patterns=*.xlsx;*.XLSX +Icon=spreadsheet +Comment=Open XML Spreadsheet Document +[Property::X-KDE-NativeExtension] +Type=QString +Value=.xlsx diff --git a/opensuse/core/tdelibs.old/vnd.openxmlformats-officedocument.wordprocessingml.document.desktop b/opensuse/core/tdelibs.old/vnd.openxmlformats-officedocument.wordprocessingml.document.desktop new file mode 100644 index 000000000..cf0e677b2 --- /dev/null +++ b/opensuse/core/tdelibs.old/vnd.openxmlformats-officedocument.wordprocessingml.document.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Type=MimeType +MimeType=application/vnd.openxmlformats-officedocument.wordprocessingml.document +Patterns=*.docx;*.DOCX +Icon=wordprocessing +Comment=Open XML Word Processing Document +[Property::X-KDE-NativeExtension] +Type=QString +Value=.docx diff --git a/opensuse/core/tdelibs.old/x-jar-desktop.diff b/opensuse/core/tdelibs.old/x-jar-desktop.diff new file mode 100644 index 000000000..1e68b1af4 --- /dev/null +++ b/opensuse/core/tdelibs.old/x-jar-desktop.diff @@ -0,0 +1,10 @@ +Index: mimetypes/application/x-jar.desktop +=================================================================== +--- mimetypes/application/x-jar.desktop.orig ++++ mimetypes/application/x-jar.desktop +@@ -87,4 +87,4 @@ Comment[zh_CN]=Java 归档 + Comment[zh_HK]=Java 壓縮檔 + Comment[zh_TW]=Java 壓縮檔案 + Comment[zu]=Umqulu we-Java +-X-KDE-AutoEmbed=true ++X-KDE-AutoEmbed=false diff --git a/opensuse/core/tdelibs.old/x-kde-InitialPreference.diff b/opensuse/core/tdelibs.old/x-kde-InitialPreference.diff new file mode 100644 index 000000000..d95df7a2c --- /dev/null +++ b/opensuse/core/tdelibs.old/x-kde-InitialPreference.diff @@ -0,0 +1,16 @@ +Index: kio/kio/kservice.cpp +=================================================================== +--- kio/kio/kservice.cpp.orig ++++ kio/kio/kservice.cpp +@@ -249,7 +249,10 @@ KService::init( KDesktopFile *config ) + m_bAllowAsDefault = config->readBoolEntry( "AllowDefault", true ); + entryMap.remove("AllowDefault"); + +- m_initialPreference = config->readNumEntry( "InitialPreference", 1 ); ++ m_initialPreference = config->readNumEntry( "X-KDE-InitialPreference", 1 ); ++ entryMap.remove("X-KDE-InitialPreference"); ++ if ( m_initialPreference == 1 ) ++ m_initialPreference = config->readNumEntry( "InitialPreference", 1 ); + entryMap.remove("InitialPreference"); + + // Store all additional entries in the property map. diff --git a/opensuse/core/tdelibs.old/xinerama.patch b/opensuse/core/tdelibs.old/xinerama.patch new file mode 100644 index 000000000..dec878b40 --- /dev/null +++ b/opensuse/core/tdelibs.old/xinerama.patch @@ -0,0 +1,543 @@ +Index: kio/kio/krun.h +=================================================================== +--- kio/kio/krun.h.orig ++++ kio/kio/krun.h +@@ -111,6 +111,8 @@ public: + */ + KRun( const KURL& url, QWidget* window, mode_t mode = 0, + bool isLocalFile = false, bool showProgressInfo = true ); ++ KRun( const KURL& url, QWidget* window, const QCString& asn, mode_t mode = 0, ++ bool isLocalFile = false, bool showProgressInfo = true ); + + /** + * Destructor. Don't call it yourself, since a KRun object auto-deletes +@@ -210,6 +212,8 @@ public: + * @since 3.5.2 + */ + static pid_t run( const KService& _service, const KURL::List& _urls, QWidget* window, bool tempFiles = false ); ++ static pid_t run( const KService& _service, const KURL::List& _urls, QWidget* window, ++ const QCString& asn, bool tempFiles = false ); + /** + * Open a list of URLs with a certain service (application). + * +@@ -226,6 +230,8 @@ public: + /// @since 3.5.3 + /// @internal + static pid_t run( const KService& _service, const KURL::List& _urls, QWidget* window, bool tempFiles, const QString& suggestedFileName ); ++ static pid_t run( const KService& _service, const KURL::List& _urls, QWidget* window, ++ const QCString& asn, bool tempFiles, const QString& suggestedFileName ); + + /** + * Open a list of URLs with. +@@ -269,6 +275,7 @@ public: + static pid_t runURL( const KURL& _url, const QString& _mimetype ); + /// @since 3.5.3 + /// @internal ++ static pid_t runURL( const KURL& _url, const QString& _mimetype, QWidget* window, const QCString& asn, bool tempFile, bool runExecutables, const QString& suggestedFileName ); + static pid_t runURL( const KURL& _url, const QString& _mimetype, bool tempFile, bool runExecutables, const QString& suggestedFileName ); + + /** +@@ -299,6 +306,8 @@ public: + * of running command) if command was unsafe for map notification. + */ + static pid_t runCommand( const QString& cmd, const QString & execName, const QString & icon ); ++ static pid_t runCommand( const QString& cmd, const QString & execName, const QString & icon, ++ QWidget* window, const QCString& asn ); + + /** + * Display the Open-With dialog for those URLs, and run the chosen application. +@@ -438,7 +447,7 @@ protected: + virtual void virtual_hook( int id, void* data ); + + private: +- void init (const KURL& url, QWidget* window, mode_t mode, ++ void init (const KURL& url, QWidget* window, const QCString& asn, mode_t mode, + bool isLocalFile, bool showProgressInfo); + private: + class KRunPrivate; +Index: kio/kio/krun.cpp +=================================================================== +--- kio/kio/krun.cpp.orig ++++ kio/kio/krun.cpp +@@ -77,6 +77,7 @@ public: + QString m_localPath; + QString m_suggestedFileName; + QGuardedPtr m_window; ++ QCString m_asn; + }; + + pid_t KRun::runURL( const KURL& u, const QString& _mimetype ) +@@ -109,14 +110,20 @@ bool KRun::isExecutableFile( const KURL& + return false; + } + +-// This is called by foundMimeType, since it knows the mimetype of the URL + pid_t KRun::runURL( const KURL& u, const QString& _mimetype, bool tempFile, bool runExecutables, const QString& suggestedFileName ) + { ++ return runURL( u, _mimetype, NULL, "", tempFile, runExecutables, suggestedFileName ); ++} ++ ++// This is called by foundMimeType, since it knows the mimetype of the URL ++pid_t KRun::runURL( const KURL& u, const QString& _mimetype, QWidget* window, const QCString& asn, ++ bool tempFile, bool runExecutables, const QString& suggestedFileName ) ++{ + bool noRun = false; + bool noAuth = false; + if ( _mimetype == "inode/directory-locked" ) + { +- KMessageBoxWrapper::error( 0L, ++ KMessageBoxWrapper::error( window, + i18n("Unable to enter %1.\nYou do not have access rights to this location.").arg(u.htmlURL()) ); + return 0; + } +@@ -133,7 +140,7 @@ pid_t KRun::runURL( const KURL& u, const + { + QString path = u.path(); + shellQuote( path ); +- return (KRun::runCommand(path)); // just execute the url as a command ++ return (KRun::runCommand(path, QString::null, QString::null, window, asn)); // just execute the url as a command + // ## TODO implement deleting the file if tempFile==true + } + else +@@ -155,14 +162,14 @@ pid_t KRun::runURL( const KURL& u, const + + if ( noRun ) + { +- KMessageBox::sorry( 0L, ++ KMessageBox::sorry( window, + i18n("The file %1 is an executable program. " + "For safety it will not be started.").arg(u.htmlURL())); + return 0; + } + if ( noAuth ) + { +- KMessageBoxWrapper::error( 0L, ++ KMessageBoxWrapper::error( window, + i18n("You do not have permission to run %1.").arg(u.htmlURL()) ); + return 0; + } +@@ -182,7 +189,7 @@ pid_t KRun::runURL( const KURL& u, const + return displayOpenWithDialog( lst, tempFile, suggestedFileName ); + } + +- return KRun::run( *offer, lst, 0 /*window*/, tempFile, suggestedFileName ); ++ return KRun::run( *offer, lst, window, asn, tempFile, suggestedFileName ); + } + + bool KRun::displayOpenWithDialog( const KURL::List& lst ) +@@ -536,13 +543,13 @@ QString KRun::binaryName( const QString + } + + static pid_t runCommandInternal( KProcess* proc, const KService* service, const QString& binName, +- const QString &execName, const QString & iconName ) ++ const QString &execName, const QString & iconName, QWidget* window, QCString asn ) + { + if (service && !service->desktopEntryPath().isEmpty() + && !KDesktopFile::isAuthorizedDesktopFile( service->desktopEntryPath() )) + { + kdWarning() << "No authorization to execute " << service->desktopEntryPath() << endl; +- KMessageBox::sorry(0, i18n("You are not authorized to execute this file.")); ++ KMessageBox::sorry(window, i18n("You are not authorized to execute this file.")); + return 0; + } + QString bin = KRun::binaryName( binName, true ); +@@ -550,10 +557,10 @@ static pid_t runCommandInternal( KProces + bool silent; + QCString wmclass; + KStartupInfoId id; +- bool startup_notify = KRun::checkStartupNotify( binName, service, &silent, &wmclass ); ++ bool startup_notify = ( asn != "0" && KRun::checkStartupNotify( binName, service, &silent, &wmclass )); + if( startup_notify ) + { +- id.initId(); ++ id.initId( asn ); + id.setupStartupEnv(); + KStartupInfoData data; + data.setHostname(); +@@ -572,6 +579,8 @@ static pid_t runCommandInternal( KProces + if( silent ) + data.setSilent( KStartupInfoData::Yes ); + data.setDesktop( KWin::currentDesktop()); ++ if( window ) ++ data.setLaunchedBy( window->winId()); + KStartupInfo::sendStartup( id, data ); + } + pid_t pid = KProcessRunner::run( proc, binName, id ); +@@ -635,7 +644,8 @@ bool KRun::checkStartupNotify( const QSt + return true; + } + +-static pid_t runTempService( const KService& _service, const KURL::List& _urls, bool tempFiles, const QString& suggestedFileName ) ++static pid_t runTempService( const KService& _service, const KURL::List& _urls, QWidget* window, ++ const QCString& asn, bool tempFiles, const QString& suggestedFileName ) + { + if (!_urls.isEmpty()) { + kdDebug(7010) << "runTempService: first url " << _urls.first().url() << endl; +@@ -654,7 +664,7 @@ static pid_t runTempService( const KServ + { + KURL::List singleUrl; + singleUrl.append(*it); +- runTempService( _service, singleUrl, tempFiles, suggestedFileName ); ++ runTempService( _service, singleUrl, window, "", tempFiles, suggestedFileName ); + } + KURL::List singleUrl; + singleUrl.append(_urls.first()); +@@ -673,7 +683,7 @@ static pid_t runTempService( const KServ + proc->setWorkingDirectory(_service.path()); + + return runCommandInternal( proc, &_service, KRun::binaryName( _service.exec(), false ), +- _service.name(), _service.icon() ); ++ _service.name(), _service.icon(), window, asn ); + } + + // WARNING: don't call this from processDesktopExec, since klauncher uses that too... +@@ -734,11 +744,22 @@ pid_t KRun::run( const KService& _servic + + pid_t KRun::run( const KService& _service, const KURL::List& _urls, QWidget* window, bool tempFiles ) + { +- return run( _service, _urls, window, tempFiles, QString::null ); ++ return run( _service, _urls, window, "", tempFiles, QString::null ); ++} ++ ++pid_t KRun::run( const KService& _service, const KURL::List& _urls, QWidget* window, const QCString& asn, bool tempFiles ) ++{ ++ return run( _service, _urls, window, asn, tempFiles, QString::null ); + } + + pid_t KRun::run( const KService& _service, const KURL::List& _urls, QWidget* window, bool tempFiles, const QString& suggestedFileName ) + { ++ return run( _service, _urls, window, "", tempFiles, suggestedFileName ); ++} ++ ++pid_t KRun::run( const KService& _service, const KURL::List& _urls, QWidget* window, const QCString& asn, ++ bool tempFiles, const QString& suggestedFileName ) ++{ + if (!_service.desktopEntryPath().isEmpty() && + !KDesktopFile::isAuthorizedDesktopFile( _service.desktopEntryPath())) + { +@@ -759,7 +780,7 @@ pid_t KRun::run( const KService& _servic + + if ( tempFiles || _service.desktopEntryPath().isEmpty() || !suggestedFileName.isEmpty() ) + { +- return runTempService(_service, _urls, tempFiles, suggestedFileName); ++ return runTempService(_service, _urls, window, asn, tempFiles, suggestedFileName); + } + + kdDebug(7010) << "KRun::run " << _service.desktopEntryPath() << endl; +@@ -773,9 +794,25 @@ pid_t KRun::run( const KService& _servic + + QString error; + int pid = 0; +- ++ ++ QCString myasn = asn; ++ // startServiceByDesktopPath() doesn't take QWidget*, add it to the startup info now ++ if( window != NULL ) ++ { ++ if( myasn.isEmpty()) ++ myasn = KStartupInfo::createNewStartupId(); ++ if( myasn != "0" ) ++ { ++ KStartupInfoId id; ++ id.initId( myasn ); ++ KStartupInfoData data; ++ data.setLaunchedBy( window->winId()); ++ KStartupInfo::sendChange( id, data ); ++ } ++ } ++ + int i = KApplication::startServiceByDesktopPath( +- _service.desktopEntryPath(), urls.toStringList(), &error, 0L, &pid ++ _service.desktopEntryPath(), urls.toStringList(), &error, 0L, &pid, myasn + ); + + if (i != 0) +@@ -800,33 +837,47 @@ pid_t KRun::run( const QString& _exec, c + + pid_t KRun::runCommand( QString cmd ) + { +- return KRun::runCommand( cmd, QString::null, QString::null ); ++ return KRun::runCommand( cmd, QString::null, QString::null, NULL, "" ); + } + + pid_t KRun::runCommand( const QString& cmd, const QString &execName, const QString & iconName ) + { ++ return KRun::runCommand( cmd, execName, iconName, NULL, "" ); ++} ++ ++pid_t KRun::runCommand( const QString& cmd, const QString &execName, const QString & iconName, ++ QWidget* window, const QCString& asn ) ++{ + kdDebug(7010) << "runCommand " << cmd << "," << execName << endl; + KProcess * proc = new KProcess; + proc->setUseShell(true); + *proc << cmd; + KService::Ptr service = KService::serviceByDesktopName( binaryName( execName, true ) ); +- return runCommandInternal( proc, service.data(), binaryName( execName, false ), execName, iconName ); ++ return runCommandInternal( proc, service.data(), binaryName( execName, false ), execName, iconName, ++ window, asn ); + } + + KRun::KRun( const KURL& url, mode_t mode, bool isLocalFile, bool showProgressInfo ) + :m_timer(0,"KRun::timer") + { +- init (url, 0, mode, isLocalFile, showProgressInfo); ++ init (url, 0, "", mode, isLocalFile, showProgressInfo); + } + + KRun::KRun( const KURL& url, QWidget* window, mode_t mode, bool isLocalFile, + bool showProgressInfo ) + :m_timer(0,"KRun::timer") + { +- init (url, window, mode, isLocalFile, showProgressInfo); ++ init (url, window, "", mode, isLocalFile, showProgressInfo); ++} ++ ++KRun::KRun( const KURL& url, QWidget* window, const QCString& asn, mode_t mode, bool isLocalFile, ++ bool showProgressInfo ) ++ :m_timer(0,"KRun::timer") ++{ ++ init (url, window, asn, mode, isLocalFile, showProgressInfo); + } + +-void KRun::init ( const KURL& url, QWidget* window, mode_t mode, bool isLocalFile, ++void KRun::init ( const KURL& url, QWidget* window, const QCString& asn, mode_t mode, bool isLocalFile, + bool showProgressInfo ) + { + m_bFault = false; +@@ -842,6 +893,7 @@ void KRun::init ( const KURL& url, QWidg + d = new KRunPrivate; + d->m_runExecutables = true; + d->m_window = window; ++ d->m_asn = asn; + setEnableExternalBrowser(true); + + // Start the timer. This means we will return to the event +@@ -942,7 +994,7 @@ void KRun::init() + KService::Ptr service = KService::serviceByStorageId( exec ); + if (service) + { +- run( *service, urls ); ++ run( *service, urls, d->m_window, d->m_asn ); + ok = true; + } + } +@@ -1235,7 +1287,7 @@ void KRun::foundMimeType( const QString& + { + KURL::List lst; + lst.append( m_strURL ); +- m_bFinished = KRun::run( *serv, lst ); ++ m_bFinished = KRun::run( *serv, lst, d->m_window, d->m_asn ); + /// Note: the line above means that if that service failed, we'll + /// go to runURL to maybe find another service, even though a dialog + /// box was displayed. That's good if runURL tries another service, +@@ -1250,7 +1302,7 @@ void KRun::foundMimeType( const QString& + m_strURL.setPath( d->m_localPath ); + } + +- if (!m_bFinished && KRun::runURL( m_strURL, type, false, d->m_runExecutables, d->m_suggestedFileName )){ ++ if (!m_bFinished && KRun::runURL( m_strURL, type, d->m_window, d->m_asn, false, d->m_runExecutables, d->m_suggestedFileName )){ + m_bFinished = true; + } + else{ +Index: kdecore/kstartupinfo.cpp +=================================================================== +--- kdecore/kstartupinfo.cpp.orig ++++ kdecore/kstartupinfo.cpp +@@ -1109,7 +1109,7 @@ unsigned long KStartupInfoId::timestamp( + struct KStartupInfoDataPrivate + { + KStartupInfoDataPrivate() : desktop( 0 ), wmclass( "" ), hostname( "" ), +- silent( KStartupInfoData::Unknown ), timestamp( -1U ), screen( -1 ) {} ++ silent( KStartupInfoData::Unknown ), timestamp( -1U ), screen( -1 ), xinerama( -1 ), launched_by( 0 ) {} + QString bin; + QString name; + QString description; +@@ -1121,6 +1121,8 @@ struct KStartupInfoDataPrivate + KStartupInfoData::TriState silent; + unsigned long timestamp; + int screen; ++ int xinerama; ++ WId launched_by; + }; + + QString KStartupInfoData::to_text() const +@@ -1151,6 +1153,10 @@ QString KStartupInfoData::to_text() cons + ret += QString::fromLatin1( " TIMESTAMP=%1" ).arg( d->timestamp ); + if( d->screen != -1 ) + ret += QString::fromLatin1( " SCREEN=%1" ).arg( d->screen ); ++ if( d->xinerama != -1 ) ++ ret += QString::fromLatin1( " XINERAMA=%1" ).arg( d->xinerama ); ++ if( d->launched_by != 0 ) ++ ret += QString::fromLatin1( " LAUNCHED_BY=%1" ).arg( d->launched_by ); + return ret; + } + +@@ -1169,6 +1175,8 @@ KStartupInfoData::KStartupInfoData( cons + const QString silent_str = QString::fromLatin1( "SILENT=" ); + const QString timestamp_str = QString::fromLatin1( "TIMESTAMP=" ); + const QString screen_str = QString::fromLatin1( "SCREEN=" ); ++ const QString xinerama_str = QString::fromLatin1( "XINERAMA=" ); ++ const QString launched_by_str = QString::fromLatin1( "LAUNCHED_BY=" ); + for( QStringList::Iterator it = items.begin(); + it != items.end(); + ++it ) +@@ -1199,6 +1207,10 @@ KStartupInfoData::KStartupInfoData( cons + d->timestamp = get_unum( *it ); + else if( ( *it ).startsWith( screen_str )) + d->screen = get_num( *it ); ++ else if( ( *it ).startsWith( xinerama_str )) ++ d->xinerama = get_num( *it ); ++ else if( ( *it ).startsWith( launched_by_str )) ++ d->launched_by = get_num( *it ); + } + } + +@@ -1242,6 +1254,10 @@ void KStartupInfoData::update( const KSt + d->timestamp = data_P.timestamp(); + if( data_P.screen() != -1 ) + d->screen = data_P.screen(); ++ if( data_P.xinerama() != -1 && xinerama() != -1 ) // don't overwrite ++ d->xinerama = data_P.xinerama(); ++ if( data_P.launchedBy() != 0 && launchedBy() != 0 ) // don't overwrite ++ d->launched_by = data_P.launchedBy(); + } + + KStartupInfoData::KStartupInfoData() +@@ -1412,6 +1428,26 @@ int KStartupInfoData::screen() const + return d->screen; + } + ++void KStartupInfoData::setXinerama( int xinerama ) ++ { ++ d->xinerama = xinerama; ++ } ++ ++int KStartupInfoData::xinerama() const ++ { ++ return d->xinerama; ++ } ++ ++void KStartupInfoData::setLaunchedBy( WId window ) ++ { ++ d->launched_by = window; ++ } ++ ++WId KStartupInfoData::launchedBy() const ++ { ++ return d->launched_by; ++ } ++ + static + long get_num( const QString& item_P ) + { +Index: kdecore/netwm_def.h +=================================================================== +--- kdecore/netwm_def.h.orig ++++ kdecore/netwm_def.h +@@ -610,6 +610,7 @@ public: + WM2WindowRole = 1<<11, ///< @since 3.3 + WM2ClientMachine = 1<<12, ///< @since 3.3 + WM2ShowingDesktop = 1<<13, ///< @since 3.5 ++ WM2FullPlacement = 1<<14, + WM2DesktopLayout = 1<<15 ///< @since 3.5.8 + }; + +Index: kdecore/netwm.cpp +=================================================================== +--- kdecore/netwm.cpp.orig ++++ kdecore/netwm.cpp +@@ -145,6 +145,9 @@ static Atom net_wm_state_stays_on_top = + // used to determine whether application window is managed or not + static Atom xa_wm_state = 0; + ++// ability flags ++static Atom net_wm_full_placement = 0; ++ + static Bool netwm_atoms_created = False; + const unsigned long netwm_sendevent_mask = (SubstructureRedirectMask| + SubstructureNotifyMask); +@@ -236,7 +239,7 @@ static int wcmp(const void *a, const voi + } + + +-static const int netAtomCount = 84; ++static const int netAtomCount = 85; + static void create_atoms(Display *d) { + static const char * const names[netAtomCount] = + { +@@ -330,7 +333,9 @@ static void create_atoms(Display *d) { + "_KDE_NET_WM_TEMPORARY_RULES", + + "WM_STATE", +- "WM_PROTOCOLS" ++ "WM_PROTOCOLS", ++ ++ "_NET_WM_FULL_PLACEMENT" + }; + + Atom atoms[netAtomCount], *atomsp[netAtomCount] = +@@ -425,7 +430,9 @@ static void create_atoms(Display *d) { + &kde_net_wm_temporary_rules, + + &xa_wm_state, +- &wm_protocols ++ &wm_protocols, ++ ++ &net_wm_full_placement + }; + + assert( !netwm_atoms_created ); +@@ -1355,6 +1362,8 @@ void NETRootInfo::setSupported() { + + if (p->properties[ PROTOCOLS2 ] & WM2KDETemporaryRules) + atoms[pnum++] = kde_net_wm_temporary_rules; ++ if (p->properties[ PROTOCOLS2 ] & WM2FullPlacement) ++ atoms[pnum++] = net_wm_full_placement; + + XChangeProperty(p->display, p->root, net_supported, XA_ATOM, 32, + PropModeReplace, (unsigned char *) atoms, pnum); +@@ -1587,6 +1596,8 @@ void NETRootInfo::updateSupportedPropert + + else if( atom == kde_net_wm_temporary_rules ) + p->properties[ PROTOCOLS2 ] |= WM2KDETemporaryRules; ++ else if( atom == net_wm_full_placement ) ++ p->properties[ PROTOCOLS2 ] |= WM2FullPlacement; + } + + extern Time qt_x_user_time; +Index: kdecore/kstartupinfo.h +=================================================================== +--- kdecore/kstartupinfo.h.orig ++++ kdecore/kstartupinfo.h +@@ -635,6 +635,30 @@ class KDECORE_EXPORT KStartupInfoData + * This is usually not necessary to set, as it's set by default to qt_xscreen(). + */ + void setScreen( int screen ); ++ ++ /** ++ * The Xinerama screen for the startup notification, -1 if unknown. ++ */ ++ int xinerama() const; ++ ++ /** ++ * Sets the Xinerama screen for the startup notification ( i.e. the screeen on which ++ * the starting application should appear ). ++ * @param xinerama the Xinerama screen for the startup notification ++ */ ++ void setXinerama( int xinerama ); ++ ++ /** ++ * The toplevel window of the application that caused this startup notification, ++ * 0 if unknown. ++ */ ++ WId launchedBy() const; ++ ++ /** ++ * Sets the toplevel window of the application that caused this startup notification. ++ * @param window window ID of the toplevel window that is responsible for this startup ++ */ ++ void setLaunchedBy( WId window ); + + /** + * Updates the notification data from the given data. Some data, such as the desktop diff --git a/opensuse/core/tdelibs.old/xml-catalog.diff b/opensuse/core/tdelibs.old/xml-catalog.diff new file mode 100644 index 000000000..0abaefec2 --- /dev/null +++ b/opensuse/core/tdelibs.old/xml-catalog.diff @@ -0,0 +1,44 @@ +Index: catalog.xml +=================================================================== +--- /dev/null ++++ catalog.xml +@@ -0,0 +1,39 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ diff --git a/opensuse/core/tdelibs.old/xmlhttprequest_3.x.diff b/opensuse/core/tdelibs.old/xmlhttprequest_3.x.diff new file mode 100644 index 000000000..822a8870b --- /dev/null +++ b/opensuse/core/tdelibs.old/xmlhttprequest_3.x.diff @@ -0,0 +1,47 @@ +http://www.kde.org/info/security/advisory-20091027-1.txt + +Index: xmlhttprequest.cpp +=================================================================== +--- khtml/ecma/xmlhttprequest.cpp (revision 954808) ++++ khtml/ecma/xmlhttprequest.cpp (working copy) +@@ -342,17 +342,17 @@ + { + aborted = false; + ++ const QString protocol = url.protocol().lower(); ++ // Abandon the request when the protocol is other than "http", ++ // instead of blindly doing a KIO::get on other protocols like file:/. ++ if (!protocol.startsWith("http") && !protocol.startsWith("webdav")) ++ { ++ abort(); ++ return; ++ } ++ + if (method == "post") { +- QString protocol = url.protocol().lower(); + +- // Abondon the request when the protocol is other than "http", +- // instead of blindly changing it to a "get" request. +- if (!protocol.startsWith("http") && !protocol.startsWith("webdav")) +- { +- abort(); +- return; +- } +- + // FIXME: determine post encoding correctly by looking in headers + // for charset. + QByteArray buf; +@@ -763,11 +763,11 @@ + if (obj.isValid() && obj.inherits(&DOMDocument::info)) { + DOM::Node docNode = static_cast(obj.imp())->toNode(); + DOM::DocumentImpl *doc = static_cast(docNode.handle()); +- ++ + try { + body = doc->toString().string(); + // FIXME: also need to set content type, including encoding! +- ++ + } catch(DOM::DOMException& e) { + Object err = Error::create(exec, GeneralError, "Exception serializing document"); + exec->setException(err); diff --git a/opensuse/core/tdelibs/.project b/opensuse/core/tdelibs/.project deleted file mode 100644 index de1dea1f3..000000000 --- a/opensuse/core/tdelibs/.project +++ /dev/null @@ -1,12 +0,0 @@ - - - tdelibs - - - - - - - org.eclipse.linuxtools.rpm.core.rpmnature - - diff --git a/opensuse/core/tdelibs/3_5_BRANCH.diff b/opensuse/core/tdelibs/3_5_BRANCH.diff deleted file mode 100644 index 6809b8aea..000000000 --- a/opensuse/core/tdelibs/3_5_BRANCH.diff +++ /dev/null @@ -1,126 +0,0 @@ -package: kdelibs-3.5.10.tar.bz2 -kdemod: kdelibs -Index: BRANCH_STATUS -=================================================================== ---- /dev/null -+++ BRANCH_STATUS -@@ -0,0 +1,2 @@ -+current HEAD: 859452 -+svn di between //tags/KDE/3.5.10/kdelibs and //branches/KDE/3.5/kdelibs -Index: kinit/start_kdeinit.c -=================================================================== ---- kinit/start_kdeinit.c.orig -+++ kinit/start_kdeinit.c -@@ -44,7 +44,7 @@ static int set_protection( pid_t pid, in - { - char buf[ 1024 ]; - int procfile; -- sprintf( buf, "/proc/%d/oom_adj", pid ); -+ sprintf( buf, "/proc/%d/stat", pid ); - if( !enable ) { - /* Be paranoid and check that the pid we got from the pipe - belongs to this user. */ -@@ -52,6 +52,7 @@ static int set_protection( pid_t pid, in - if( lstat( buf, &st ) < 0 || st.st_uid != getuid()) - return 0; - } -+ sprintf( buf, "/proc/%d/oom_adj", pid ); - procfile = open( buf, O_WRONLY ); - if( procfile >= 0 ) { - if( enable ) -Index: kio/kio/configure.in.in -=================================================================== ---- kio/kio/configure.in.in.orig -+++ kio/kio/configure.in.in -@@ -139,8 +139,30 @@ if test "x$kde_enable_inotify" = "xyes"; - AC_LANG_RESTORE - ]) - -- if test "$kde_cv_have_inotify" = "yes" ; then -+ AC_CACHE_VAL(kde_cv_have_sys_inotify, -+ [ -+ kde_cv_have_sys_inotify=no -+ AC_LANG_SAVE -+ AC_LANG_C -+ -+ AC_TRY_COMPILE( -+ [ -+#include -+ ], -+ [ -+#ifndef IN_ALL_EVENTS -+#error no inotify notification -+#endif -+ ],kde_cv_have_sys_inotify=yes,kde_cv_have_sys_inotify=no) -+ -+ AC_LANG_RESTORE -+ ]) -+ -+ if test "$kde_cv_have_inotify" = "yes" -o "$kde_cv_have_sys_inotify" = "yes"; then - AC_DEFINE_UNQUOTED(HAVE_INOTIFY, 1, [Define if your system has Linux Inode Notification]) -+ if test "$kde_cv_have_sys_inotify" = "yes"; then -+ AC_DEFINE_UNQUOTED(HAVE_SYS_INOTIFY, 1, [Define if your system has glibc support for inotify]) -+ fi - AC_MSG_RESULT(yes) - else - AC_MSG_RESULT(no) -Index: kio/kio/kdirwatch.cpp -=================================================================== ---- kio/kio/kdirwatch.cpp.orig -+++ kio/kio/kdirwatch.cpp -@@ -64,11 +64,13 @@ - // debug - #include - --#ifdef HAVE_INOTIFY -+#ifdef HAVE_SYS_INOTIFY -+#include -+#include -+#elif HAVE_INOTIFY - #include - #include - #include --#include - // Linux kernel headers are documented to not compile - #define _S390_BITOPS_H - #include -@@ -87,7 +89,9 @@ static inline int inotify_rm_watch (int - { - return syscall (__NR_inotify_rm_watch, fd, wd); - } -+#endif - -+#ifdef HAVE_INOTIFY - #ifndef IN_ONLYDIR - #define IN_ONLYDIR 0x01000000 - #endif -@@ -99,7 +103,6 @@ static inline int inotify_rm_watch (int - #ifndef IN_MOVE_SELF - #define IN_MOVE_SELF 0x00000800 - #endif -- - #endif - - #include -Index: kdoctools/customization/pt-BR/user.entities -=================================================================== ---- kdoctools/customization/pt-BR/user.entities.orig -+++ kdoctools/customization/pt-BR/user.entities -@@ -17,7 +17,7 @@ - Esc"> - etc"> - por exemplo"> --FAQ)"> -+FAQ)"> - HTML'> - - Centro de Informações"> -@@ -34,7 +34,7 @@ - esquerdo do mouse"> - meio do mouse"> - Sistema Operacional"> --direto do mouse"> -+direito do mouse"> - Shift"> - bandeja do sistema"> - Tab"> diff --git a/opensuse/core/tdelibs/CATALOG.kdelibs3.diff b/opensuse/core/tdelibs/CATALOG.kdelibs3.diff deleted file mode 100644 index 5fac7cf92..000000000 --- a/opensuse/core/tdelibs/CATALOG.kdelibs3.diff +++ /dev/null @@ -1,139 +0,0 @@ -Index: kdelibs-3.5.10/CATALOG.kdelibs3 -=================================================================== ---- /dev/null -+++ kdelibs-3.5.10/CATALOG.kdelibs3 -@@ -0,0 +1,134 @@ -+-- -+Catalogue for KDE DocBook XML -+ -+Copyright (C) 2001,2002 Frederik Fouvry -+ -+This program is free software; you can redistribute it and/or -+modify it under the terms of the GNU General Public License -+as published by the Free Software Foundation; either version 2 -+of the License, or (at your option) any later version. -+ -+This program 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 General Public License for more details. -+ -+You should have received a copy of the GNU General Public License -+along with this program; if not, write to the Free Software -+Foundation, Inc., 51 Franklin Steet, Fifth Floor, Boston, MA 02110-1301, USA. -+ -+Send suggestions, comments, etc. to the KDE DocBook mailing list -+. -+-- -+ -+OVERRIDE YES -+-- SGMLDECL "xml.dcl" -- -+DTDDECL "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" /usr/share/sgml/opensp/xml.dcl -+DTDDECL "-//KDE//ELEMENTS DocBook XML Hierarchy Redeclarations 2 V1.0//EN" /usr/share/sgml/opensp/xml.dcl -+DTDDECL "-//KDE//ELEMENTS DocBook XML Pool Redeclarations V1.1//EN" /usr/share/sgml/opensp/xml.dcl -+DTDDECL "-//KDE//ELEMENTS DocBook XML Modifications (Restrictions) V1.1//EN" /usr/share/sgml/opensp/xml.dcl -+DTDDECL "-//KDE//ENTITIES DocBook XML General Entity Declarations V1.2//EN" /usr/share/sgml/opensp/xml.dcl -+DTDDECL "-//KDE//ENTITIES DocBook XML General Entity Declarations (Persons) V1.0//EN" /usr/share/sgml/opensp/xml.dcl -+DTDDECL "-//KDE//ENTITIES DocBook XML Localisation Entity Declarations V1.0//EN" /usr/share/sgml/opensp/xml.dcl -+ -+ -- DocBook -- -+ -+-- DocBook 4.2 KDE Variant V1.1 -- -+ -+PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" -+ "dtd/kdex.dtd" -+PUBLIC "-//KDE//ELEMENTS DocBook XML Hierarchy Redeclarations 2 V1.0//EN" -+ "dtd/rdbhier2.elements" -+PUBLIC "-//KDE//ELEMENTS DocBook XML Pool Redeclarations V1.1//EN" -+ "dtd/rdbpool.elements" -+PUBLIC "-//KDE//ELEMENTS DocBook XML Modifications (Restrictions) V1.1//EN" -+ "dtd/modifications.elements" -+ -+PUBLIC "-//KDE//ENTITIES DocBook XML General Entity Declarations V1.2//EN" -+ "entities/general.entities" -+PUBLIC "-//KDE//ENTITIES DocBook XML General Entity Declarations (Persons) V1.0//EN" -+ "entities/contributor.entities" -+ -+ -- General KDE Entities -- -+ -+PUBLIC "-//KDE//ENTITIES DocBook XML Localisation Entity Declarations V1.0//EN" -+ "entities/l10n.entities" -+ -+ -- Various external files -- -+ -+-- only DocBook XML files are in entities, the others are in -+ kdelibs/doc/common or in kdelibs/licenses -- -+ -+PUBLIC "-//GNU//DOCUMENT GNU General Public License V2//EN" -+ "entities/gpl-license" -+PUBLIC "-//GNU//DOCUMENT GNU Lesser General Public License V2.1//EN" -+ "entities/lgpl-license" -+PUBLIC "-//GNU//DOCUMENT GNU Free Documentation License V1.1//EN" -+ "entities/fdl-license" -+PUBLIC "-//KDE//DOCUMENT X11 License//EN" -+ "entities/x11-license" -+PUBLIC "-//KDE//DOCUMENT BSD License//EN" -+ "entities/bsd-license" -+PUBLIC "-//KDE//DOCUMENT Artistic License//EN" -+ "entities/artistic-license" -+ -+CATALOG af/catalog -+CATALOG bg/catalog -+CATALOG ca/catalog -+CATALOG cs/catalog -+CATALOG da/catalog -+CATALOG de/catalog -+CATALOG el/catalog -+CATALOG en/catalog -+CATALOG en-GB/catalog -+CATALOG es/catalog -+CATALOG et/catalog -+CATALOG fi/catalog -+CATALOG fo/catalog -+CATALOG fr/catalog -+CATALOG he/catalog -+CATALOG hu/catalog -+CATALOG id/catalog -+CATALOG it/catalog -+CATALOG ja/catalog -+CATALOG ko/catalog -+CATALOG lt/catalog -+CATALOG nl/catalog -+CATALOG no/catalog -- considered to be the same as nb -- -+CATALOG nn/catalog -- incorrectly known as no_NY -- -+CATALOG pl/catalog -+CATALOG pt-BR/catalog -+CATALOG pt/catalog -+CATALOG ro/catalog -+CATALOG ru/catalog -+CATALOG sk/catalog -+CATALOG sl/catalog -+CATALOG sr/catalog -+CATALOG sv/catalog -+CATALOG tr/catalog -+CATALOG uk/catalog -+CATALOG wa/catalog -+CATALOG xh/catalog -+CATALOG zh-CN/catalog -+CATALOG zh-TW/catalog -+ -+-- DocBook 4.1.2 KDE Variant V1.1 -- -+ -+PUBLIC "-//KDE//DTD DocBook XML V4.1.2-Based Variant V1.1//EN" -+ "obsolete/kdex.dtd" -+PUBLIC "-//KDE//ENTITIES DocBook XML General Entity Declarations V1.1//EN" -+ "obsolete/general.entities" -+PUBLIC "-//KDE//ELEMENTS DocBook XML Pool Redeclarations V1.0//EN" -+ "obsolete/rdbpool.elements" -+PUBLIC "-//KDE//ELEMENTS DocBook XML Modifications V1.0//EN" -+ "obsolete/modifications.elements" -+ -+-- DocBook 4.1.2 KDE Variant V1.0 -- -+ -+PUBLIC "-//KDE//DTD DocBook XML V4.1.2-Based Variant V1.0//EN" -+ "obsolete/kdex-412-10.dtd" -+ -+-- DocBook 4.1 KDE Variant V1.0 -- -+ -+PUBLIC "-//KDE//DTD DocBook XML V4.1-Based Variant V1.0//EN" -+ "obsolete/kdex-412-10.dtd" diff --git a/opensuse/core/tdelibs/add-suse-translations.diff b/opensuse/core/tdelibs/add-suse-translations.diff index 2cb8ce8cb..b95ad9b7c 100644 --- a/opensuse/core/tdelibs/add-suse-translations.diff +++ b/opensuse/core/tdelibs/add-suse-translations.diff @@ -1,14 +1,14 @@ -Index: kdecore/klocale.cpp +Index: tdecore/klocale.cpp =================================================================== ---- kdecore/klocale.cpp.orig -+++ kdecore/klocale.cpp -@@ -131,6 +131,9 @@ void KLocale::initMainCatalogues(const Q - d->catalogNames.append( mainCatalogue ); // application catalog - d->catalogNames.append( SYSTEM_MESSAGES ); // always include kdelibs.mo - d->catalogNames.append( "kio" ); // always include kio.mo -+ KGlobal::dirs()->addResourceDir("locale", "/usr/share/locale"); -+ d->catalogNames.append( "desktop_translations" ); -+ d->catalogNames.append( "susetranslations" ); +--- tdecore/klocale.cpp.orig ++++ tdecore/klocale.cpp +@@ -139,6 +139,9 @@ void KLocale::initMainCatalogues(const Q + d->catalogNames.append( SYSTEM_MESSAGES ); // always include tdelibs.mo + d->catalogNames.append( "kio" ); // always include kio.mo + d->catalogNames.append( "xdg-user-dirs" ); ++ KGlobal::dirs()->addResourceDir("locale", "/usr/share/locale"); ++ d->catalogNames.append( "desktop_translations" ); ++ d->catalogNames.append( "susetranslations" ); + } updateCatalogues(); // evaluate this for all languages } - } diff --git a/opensuse/core/tdelibs/admin.diff b/opensuse/core/tdelibs/admin.diff deleted file mode 100644 index 8abac2426..000000000 --- a/opensuse/core/tdelibs/admin.diff +++ /dev/null @@ -1,55 +0,0 @@ -Index: admin/acinclude.m4.in -=================================================================== ---- admin/acinclude.m4.in.orig -+++ admin/acinclude.m4.in -@@ -4988,6 +4988,7 @@ AC_DEFUN([KDE_SET_PREFIX_CORE], - fi - # And delete superfluous '/' to make compares easier - prefix=`echo "$prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` -+ kde_libs_htmldir=$prefix/share/doc/HTML/ - exec_prefix=`echo "$exec_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` - - kde_libs_prefix='$(prefix)' -Index: admin/detect-autoconf.pl -=================================================================== ---- admin/detect-autoconf.pl.orig -+++ admin/detect-autoconf.pl -@@ -216,7 +216,7 @@ $unsermake = ""; - # backward compatible: if $UNSERMAKE points to a path, use it - $unsermake = findProgram('unsermake') if (defined($ENV{'UNSERMAKE'}) and $ENV{'UNSERMAKE'} =~ /\//); - # new compatible: if it says 'yes', use the one from path --$unsermake = which('unsermake') if ($ENV{'UNSERMAKE'} ne 'no'); -+$unsermake = which('unsermake') if ($ENV{'UNSERMAKE'} eq 'yes'); - - ($automake_suffix) = $automake =~ /.*automake(.*)$/; - - ---- admin/cvs.sh -+++ admin/cvs.sh -@@ -32,7 +32,7 @@ check_autotool_versions() - required_autoconf_version="2.53 or newer" - AUTOCONF_VERSION=`$AUTOCONF --version | head -n 1` - case $AUTOCONF_VERSION in -- Autoconf*2.5* | autoconf*2.5* | autoconf*2.6* ) : ;; -+ autoconf* ) : ;; - "" ) - echo "*** AUTOCONF NOT FOUND!." - echo "*** KDE requires autoconf $required_autoconf_version" -@@ -47,7 +47,7 @@ esac - - AUTOHEADER_VERSION=`$AUTOHEADER --version | head -n 1` - case $AUTOHEADER_VERSION in -- Autoconf*2.5* | autoheader*2.5* | autoheader*2.6* ) : ;; -+ autoheader* ) : ;; - "" ) - echo "*** AUTOHEADER NOT FOUND!." - echo "*** KDE requires autoheader $required_autoconf_version" -@@ -68,7 +68,7 @@ case $AUTOMAKE_STRING in - echo "*** KDE requires automake $required_automake_version" - exit 1 - ;; -- automake*1.6.* | automake*1.7* | automake*1.8* | automake*1.9* | automake*1.10*) -+ automake*) - echo "*** $AUTOMAKE_STRING found." - UNSERMAKE=no - ;; diff --git a/opensuse/core/tdelibs/admin.tar.bz2 b/opensuse/core/tdelibs/admin.tar.bz2 deleted file mode 100644 index 7a2e55a1e..000000000 Binary files a/opensuse/core/tdelibs/admin.tar.bz2 and /dev/null differ diff --git a/opensuse/core/tdelibs/allow-man-setgid.diff b/opensuse/core/tdelibs/allow-man-setgid.diff deleted file mode 100644 index 51a47d720..000000000 --- a/opensuse/core/tdelibs/allow-man-setgid.diff +++ /dev/null @@ -1,32 +0,0 @@ -Index: kdecore/kapplication.cpp -=================================================================== ---- kdecore/kapplication.cpp.orig -+++ kdecore/kapplication.cpp -@@ -87,6 +87,8 @@ - #include - #endif - #include -+#include -+#include - - #ifndef Q_WS_WIN - #include "kwin.h" -@@ -776,10 +778,15 @@ void KApplication::init(bool GUIenabled) - { - d->guiEnabled = GUIenabled; - if ((getuid() != geteuid()) || -- (getgid() != getegid())) -+ (getgid() != getegid()) ) - { -- fprintf(stderr, "The KDE libraries are not designed to run with suid privileges.\n"); -- ::exit(127); -+ // man permissions are not exploitable and better than -+ // world writable directories -+ struct group *man = getgrnam("man"); -+ if ( !man || man->gr_gid != getegid() ){ -+ fprintf(stderr, "The KDE libraries are not designed to run with suid privileges.\n"); -+ ::exit(127); -+ } - } - - KProcessController::ref(); diff --git a/opensuse/core/tdelibs/applications.menu-fallback.diff b/opensuse/core/tdelibs/applications.menu-fallback.diff index 69450dad8..b2c339b1d 100644 --- a/opensuse/core/tdelibs/applications.menu-fallback.diff +++ b/opensuse/core/tdelibs/applications.menu-fallback.diff @@ -4,8 +4,8 @@ Index: kded/kbuildsycoca.cpp +++ kded/kbuildsycoca.cpp @@ -378,8 +378,12 @@ bool KBuildSycoca::build() - connect(g_vfolder, SIGNAL(newService(const QString &, KService **)), - this, SLOT(slotCreateEntry(const QString &, KService **))); + connect(g_vfolder, TQT_SIGNAL(newService(const TQString &, KService **)), + this, TQT_SLOT(slotCreateEntry(const TQString &, KService **))); - - VFolderMenu::SubMenu *kdeMenu = g_vfolder->parseMenu("applications.menu", true); + diff --git a/opensuse/core/tdelibs/arts-acinclude.patch b/opensuse/core/tdelibs/arts-acinclude.patch index 0610d6df5..e387ac2f2 100644 --- a/opensuse/core/tdelibs/arts-acinclude.patch +++ b/opensuse/core/tdelibs/arts-acinclude.patch @@ -11,7 +11,7 @@ should go upstream. --- arts-1.5.10/admin/acinclude.m4.in 2008-08-20 18:07:05.000000000 +0200 +++ arts-1.5.10/admin/acinclude.m4.in 2009-12-09 17:30:57.000000000 +0100 -@@ -3081,8 +3081,18 @@ +@@ -3364,8 +3364,18 @@ fi ]) @@ -30,7 +30,7 @@ should go upstream. AC_ARG_ENABLE(debug, AC_HELP_STRING([--enable-debug=ARG],[enables debug symbols (yes|no|full) [default=no]]), [ -@@ -3141,11 +3151,6 @@ +@@ -3424,11 +3434,6 @@ [kde_use_profiling="no"] ) @@ -40,9 +40,9 @@ should go upstream. - AC_PROG_CC - AC_PROG_CPP - - if test "$GCC" = "yes"; then -@@ -3174,10 +3179,6 @@ + + AC_C_BIGENDIAN +@@ -3459,10 +3464,6 @@ LDFLAGS="" fi @@ -53,7 +53,7 @@ should go upstream. KDE_CHECK_FOR_BAD_COMPILER if test "$GXX" = "yes" || test "$CXX" = "KCC"; then -@@ -3503,8 +3504,8 @@ +@@ -3802,8 +3803,8 @@ AC_REQUIRE([AC_LIBTOOL_DLOPEN]) AC_REQUIRE([KDE_CHECK_LIB64]) diff --git a/opensuse/core/tdelibs/artwork.diff b/opensuse/core/tdelibs/artwork.diff deleted file mode 100644 index 0c6742d22..000000000 --- a/opensuse/core/tdelibs/artwork.diff +++ /dev/null @@ -1,46 +0,0 @@ -Index: kdecore/eventsrc -=================================================================== ---- kdecore/eventsrc.orig -+++ kdecore/eventsrc -@@ -2572,7 +2572,7 @@ Comment[wa]=On messaedje critike est hå - Comment[zh_CN]=正在显示关键消息 - Comment[zh_HK]=顯示嚴重警告訊息 - Comment[zh_TW]=嚴重的警告訊息已顯示 --default_sound=KDE_Glass_Break.ogg -+default_sound=KDE_Error_1.ogg - default_presentation=65 - nopresentation=18 - level=4 -Index: mimetypes/application/x-bittorrent.desktop -=================================================================== ---- mimetypes/application/x-bittorrent.desktop.orig -+++ mimetypes/application/x-bittorrent.desktop -@@ -1,4 +1,5 @@ - [Desktop Entry] -+Icon=torrent - Comment=BitTorrent Download - Comment[af]=BitTorrent Aflaai - Comment[ar]=ملف تنزيل BitTorrent -Index: mimetypes/application/x-msdos-program.desktop -=================================================================== ---- mimetypes/application/x-msdos-program.desktop.orig -+++ mimetypes/application/x-msdos-program.desktop -@@ -85,5 +85,5 @@ MimeType=application/x-msdos-program - X-KDE-IsAlso=application/x-executable - [Property::X-KDE-NativeExtension] - Type=QString --Value=.exe -+Value=.exe;.EXE; - -Index: kresources/kresources.desktop -=================================================================== ---- kresources/kresources.desktop.orig -+++ kresources/kresources.desktop -@@ -1,6 +1,6 @@ - [Desktop Entry] - Exec=kcmshell kresources --Icon=date -+Icon=about_kde - Type=Application - Terminal=false - diff --git a/opensuse/core/tdelibs/autostart-spec.diff b/opensuse/core/tdelibs/autostart-spec.diff deleted file mode 100644 index a67a8e487..000000000 --- a/opensuse/core/tdelibs/autostart-spec.diff +++ /dev/null @@ -1,55 +0,0 @@ -Index: kdecore/kstandarddirs.cpp -=================================================================== ---- kdecore/kstandarddirs.cpp.orig -+++ kdecore/kstandarddirs.cpp -@@ -100,7 +100,7 @@ static const char* const types[] = {"htm - "wallpaper", "lib", "pixmap", "templates", - "module", "qtplugins", - "xdgdata-apps", "xdgdata-dirs", "xdgconf-menu", -- "xdgdata-icon", "xdgdata-pixmap", -+ "xdgdata-icon", "xdgdata-pixmap", "xdgconf-autostart", - "kcfg", "emoticons", 0 }; - - static int tokenize( QStringList& token, const QString& str, -@@ -1067,6 +1067,8 @@ QString KStandardDirs::kde_default(const - return "desktop-directories/"; - if (!strcmp(type, "xdgconf-menu")) - return "menus/"; -+ if (!strcmp(type, "xdgconf-autostart")) -+ return "autostart/"; - if (!strcmp(type, "kcfg")) - return "share/config.kcfg"; - if (!strcmp(type, "emoticons")) -Index: kinit/autostart.cpp -=================================================================== ---- kinit/autostart.cpp.orig -+++ kinit/autostart.cpp -@@ -104,7 +104,9 @@ static bool startCondition(const QString - void - AutoStart::loadAutoStartList() - { -- QStringList files = KGlobal::dirs()->findAllResources("autostart", "*.desktop", false, true); -+ QStringList files = KGlobal::dirs()->findAllResources("xdgconf-autostart", "*.desktop", false, true); -+ QStringList kdefiles = KGlobal::dirs()->findAllResources("autostart", "*.desktop", false, true); -+ files += kdefiles; - - for(QStringList::ConstIterator it = files.begin(); - it != files.end(); -@@ -129,6 +131,17 @@ AutoStart::loadAutoStartList() - continue; - } - -+ if (config.hasKey("OnlyShowIn")) -+ { -+ if (!config.readListEntry("OnlyShowIn", ';').contains("KDE")) -+ continue; -+ } -+ if (config.hasKey("NotShowIn")) -+ { -+ if (config.readListEntry("NotShowIn", ';').contains("KDE")) -+ continue; -+ } -+ - AutoStartItem *item = new AutoStartItem; - item->name = extractName(*it); - item->service = *it; diff --git a/opensuse/core/tdelibs/avahi-pidfile.diff b/opensuse/core/tdelibs/avahi-pidfile.diff deleted file mode 100644 index 62cd3d8da..000000000 --- a/opensuse/core/tdelibs/avahi-pidfile.diff +++ /dev/null @@ -1,13 +0,0 @@ -Index: dnssd/servicebrowser.cpp -=================================================================== ---- dnssd/servicebrowser.cpp.orig -+++ dnssd/servicebrowser.cpp -@@ -30,7 +30,7 @@ - #include - #endif - --#define MDNSD_PID "/var/run/mdnsd.pid" -+#define MDNSD_PID "/var/run/avahi-daemon/pid" - - namespace DNSSD - { diff --git a/opensuse/core/tdelibs/bnc557126.diff b/opensuse/core/tdelibs/bnc557126.diff deleted file mode 100644 index 0782537b9..000000000 --- a/opensuse/core/tdelibs/bnc557126.diff +++ /dev/null @@ -1,21 +0,0 @@ ------------------------------------------------------------------------- -r1052100 | mueller | 2009-11-20 19:35:00 +0000 (Fri, 20 Nov 2009) | 2 lines -Changed paths: - M /branches/KDE/4.3/kdelibs/kjs/dtoa.cpp - -fix array overrun (CVE-2009-0689) - ------------------------------------------------------------------------- -Index: dtoa.cpp -=================================================================== ---- kjs/dtoa.cpp (revision 1052099) -+++ kjs/dtoa.cpp (revision 1052100) -@@ -457,7 +457,7 @@ - #define FREE_DTOA_LOCK(n) /*nothing*/ - #endif - --#define Kmax 15 -+#define Kmax (sizeof(size_t) << 3) - - struct - Bigint { diff --git a/opensuse/core/tdelibs/bug-382959_kabc_fix_vcardparser.patch b/opensuse/core/tdelibs/bug-382959_kabc_fix_vcardparser.patch index f7c3ee78d..543545f29 100644 --- a/opensuse/core/tdelibs/bug-382959_kabc_fix_vcardparser.patch +++ b/opensuse/core/tdelibs/bug-382959_kabc_fix_vcardparser.patch @@ -2,11 +2,11 @@ Index: kabc/vcardconverter.cpp =================================================================== --- kabc/vcardconverter.cpp.orig +++ kabc/vcardconverter.cpp -@@ -51,6 +51,14 @@ QString VCardConverter::createVCard( con +@@ -51,6 +51,14 @@ TQString VCardConverter::createVCard( co return createVCards( list, version ); } -+QCString VCardConverter::createVCardRaw( const Addressee &addr, Version version ) ++TQCString VCardConverter::createVCardRaw( const Addressee &addr, Version version ) +{ + Addressee::List list; + list.append( addr ); @@ -14,42 +14,42 @@ Index: kabc/vcardconverter.cpp + return createVCardsRaw( list, version ); +} + - QString VCardConverter::createVCards( Addressee::List list, Version version ) + TQString VCardConverter::createVCards( Addressee::List list, Version version ) { VCardTool tool; -@@ -58,6 +66,13 @@ QString VCardConverter::createVCards( Ad +@@ -58,6 +66,13 @@ TQString VCardConverter::createVCards( A return tool.createVCards( list, ( version == v3_0 ? VCard::v3_0 : VCard::v2_1 ) ); } -+QCString VCardConverter::createVCardsRaw( Addressee::List list, Version version ) ++TQCString VCardConverter::createVCardsRaw( Addressee::List list, Version version ) +{ + VCardTool tool; + + return tool.createVCardsRaw( list, ( version == v3_0 ? VCard::v3_0 : VCard::v2_1 ) ); +} + - Addressee VCardConverter::parseVCard( const QString& vcard ) + Addressee VCardConverter::parseVCard( const TQString& vcard ) { Addressee::List list = parseVCards( vcard ); @@ -65,6 +80,13 @@ Addressee VCardConverter::parseVCard( co return list[ 0 ]; } -+Addressee VCardConverter::parseVCardRaw( const QCString& vcard ) ++Addressee VCardConverter::parseVCardRaw( const TQCString& vcard ) +{ + Addressee::List list = parseVCardsRaw( vcard ); + + return list[ 0 ]; +} + - Addressee::List VCardConverter::parseVCards( const QString& vcard ) + Addressee::List VCardConverter::parseVCards( const TQString& vcard ) { VCardTool tool; @@ -72,6 +94,13 @@ Addressee::List VCardConverter::parseVCa return tool.parseVCards( vcard ); } -+Addressee::List VCardConverter::parseVCardsRaw( const QCString& vcard ) ++Addressee::List VCardConverter::parseVCardsRaw( const TQCString& vcard ) +{ + VCardTool tool; + @@ -58,7 +58,7 @@ Index: kabc/vcardconverter.cpp + // ---------------------------- deprecated stuff ---------------------------- // - bool VCardConverter::vCardToAddressee( const QString &str, Addressee &addr, Version version ) + bool VCardConverter::vCardToAddressee( const TQString &str, Addressee &addr, Version version ) Index: kabc/vcardconverter.h =================================================================== --- kabc/vcardconverter.h.orig @@ -66,33 +66,33 @@ Index: kabc/vcardconverter.h @@ -82,6 +82,7 @@ class KABC_EXPORT VCardConverter @param version The version of the generated vCard format */ - QString createVCard( const Addressee &addr, Version version = v3_0 ); -+ QCString createVCardRaw( const Addressee &addr, Version version = v3_0 ); + TQString createVCard( const Addressee &addr, Version version = v3_0 ); ++ TQCString createVCardRaw( const Addressee &addr, Version version = v3_0 ); /** Creates a string in vCard format which contains the given @@ -92,6 +93,7 @@ class KABC_EXPORT VCardConverter */ // FIXME: Add error handling - QString createVCards( Addressee::List list, Version version = v3_0 ); -+ QCString createVCardsRaw( Addressee::List list, Version version = v3_0 ); + TQString createVCards( Addressee::List list, Version version = v3_0 ); ++ TQCString createVCardsRaw( Addressee::List list, Version version = v3_0 ); // FIXME: Add "createVCards( AddressBook * )" @@ -99,12 +101,14 @@ class KABC_EXPORT VCardConverter Parses a string in vCard format and returns the first contact. */ - Addressee parseVCard( const QString& vcard ); -+ Addressee parseVCardRaw( const QCString& vcard ); + Addressee parseVCard( const TQString& vcard ); ++ Addressee parseVCardRaw( const TQCString& vcard ); /** Parses a string in vCard format and returns a list of contact objects. */ // FIXME: Add error handling - Addressee::List parseVCards( const QString& vcard ); -+ Addressee::List parseVCardsRaw( const QCString& vcard ); + Addressee::List parseVCards( const TQString& vcard ); ++ Addressee::List parseVCardsRaw( const TQCString& vcard ); - // FIXME: Add "bool parseVCards( AddressBook *, const QString &vcard )" + // FIXME: Add "bool parseVCards( AddressBook *, const TQString &vcard )" Index: kabc/vcardformatplugin.cpp =================================================================== @@ -100,15 +100,15 @@ Index: kabc/vcardformatplugin.cpp +++ kabc/vcardformatplugin.cpp @@ -38,14 +38,11 @@ VCardFormatPlugin::~VCardFormatPlugin() - bool VCardFormatPlugin::load( Addressee &addressee, QFile *file ) + bool VCardFormatPlugin::load( Addressee &addressee, TQFile *file ) { -- QString data; +- TQString data; - -- QTextStream t( file ); -- t.setEncoding( QTextStream::Latin1 ); +- TQTextStream t( file ); +- t.setEncoding( TQTextStream::Latin1 ); - data = t.read(); -+ const QByteArray rawData = file->readAll(); -+ const QCString data( rawData.data(), rawData.size() ); ++ const TQByteArray rawData = file->readAll(); ++ const TQCString data( rawData.data(), rawData.size() ); VCardConverter converter; - Addressee::List l = converter.parseVCards( data ); @@ -118,15 +118,15 @@ Index: kabc/vcardformatplugin.cpp addressee = l.first(); @@ -57,15 +54,11 @@ bool VCardFormatPlugin::load( Addressee - bool VCardFormatPlugin::loadAll( AddressBook*, Resource *resource, QFile *file ) + bool VCardFormatPlugin::loadAll( AddressBook*, Resource *resource, TQFile *file ) { -- QString data; +- TQString data; - -- QTextStream t( file ); -- t.setEncoding( QTextStream::Latin1 ); +- TQTextStream t( file ); +- t.setEncoding( TQTextStream::Latin1 ); - data = t.read(); -+ const QByteArray rawData = file->readAll(); -+ const QCString data( rawData.data(), rawData.size() ); ++ const TQByteArray rawData = file->readAll(); ++ const TQCString data( rawData.data(), rawData.size() ); VCardConverter converter; - @@ -139,26 +139,26 @@ Index: kabc/vcardformatplugin.cpp vcardlist.append( addressee ); -- QTextStream t( file ); -- t.setEncoding( QTextStream::UnicodeUTF8 ); +- TQTextStream t( file ); +- t.setEncoding( TQTextStream::UnicodeUTF8 ); - t << converter.createVCards( vcardlist ); -+ const QCString data = converter.createVCardsRaw( vcardlist ); ++ const TQCString data = converter.createVCardsRaw( vcardlist ); + file->writeBlock( data, data.length() ); } - void VCardFormatPlugin::saveAll( AddressBook*, Resource *resource, QFile *file ) + void VCardFormatPlugin::saveAll( AddressBook*, Resource *resource, TQFile *file ) @@ -102,9 +94,8 @@ void VCardFormatPlugin::saveAll( Address vcardlist.append( *it ); } -- QTextStream t( file ); -- t.setEncoding( QTextStream::UnicodeUTF8 ); +- TQTextStream t( file ); +- t.setEncoding( TQTextStream::UnicodeUTF8 ); - t << converter.createVCards( vcardlist ); -+ const QCString data = converter.createVCardsRaw( vcardlist ); ++ const TQCString data = converter.createVCardsRaw( vcardlist ); + file->writeBlock( data, data.length() ); } - bool VCardFormatPlugin::checkFormat( QFile *file ) const + bool VCardFormatPlugin::checkFormat( TQFile *file ) const Index: kabc/vcardparser/vcardparser.cpp =================================================================== --- kabc/vcardparser/vcardparser.cpp.orig @@ -167,10 +167,10 @@ Index: kabc/vcardparser/vcardparser.cpp Boston, MA 02110-1301, USA. */ -+#include - #include - #include -+#include ++#include + #include + #include ++#include #include +#include @@ -181,20 +181,20 @@ Index: kabc/vcardparser/vcardparser.cpp using namespace KABC; --static QString backslash( "\\\\" ); --static QString comma( "\\," ); --static QString newline( "\\n" ); --static QString cr( "\\r" ); -+typedef QValueList QCStringList; +-static TQString backslash( "\\\\" ); +-static TQString comma( "\\," ); +-static TQString newline( "\\n" ); +-static TQString cr( "\\r" ); ++typedef TQValueList TQCStringList; --static void addEscapes( QString &str ) -+QValueList splitCString( const QCString &str, char sep ) +-static void addEscapes( TQString &str ) ++QValueList splitCString( const TQCString &str, char sep ) { - str.replace( '\\', backslash ); - str.replace( ',', comma ); - str.replace( '\r', cr ); - str.replace( '\n', newline ); -+ QValueList list; ++ TQValueList list; + int start = 0; + int end; + while ((end = str.find(sep, start)) != -1) { @@ -206,9 +206,9 @@ Index: kabc/vcardparser/vcardparser.cpp + return list; +} + -+QValueList splitCString( const QCString &str, const QRegExp &exp ) ++TQValueList splitCString( const TQCString &str, const TQRegExp &exp ) +{ -+ QValueList list; ++ TQValueList list; + int start = 0; + int end; + while ((end = str.find(exp, start)) != -1) { @@ -220,18 +220,18 @@ Index: kabc/vcardparser/vcardparser.cpp + return list; +} + -+bool cStringStartsWith( const QCString &str, const QCString &pattern ) ++bool cStringStartsWith( const TQCString &str, const TQCString &pattern ) +{ + const int length = pattern.length(); + if ( length == 0 ) + return true; + -+ const QCString part = str.left( length ); ++ const TQCString part = str.left( length ); + return (pattern == part); } --static void removeEscapes( QString &str ) -+static void addEscapes( QCString &str ) +-static void removeEscapes( TQString &str ) ++static void addEscapes( TQCString &str ) { - str.replace( cr, "\\r" ); - str.replace( newline, "\n" ); @@ -243,7 +243,7 @@ Index: kabc/vcardparser/vcardparser.cpp + str.replace( '\n', "\\n" ); +} + -+static void removeEscapes( QCString &str ) ++static void removeEscapes( TQCString &str ) +{ + str.replace( "\\r", "\r" ); + str.replace( "\\n", "\n" ); @@ -254,35 +254,35 @@ Index: kabc/vcardparser/vcardparser.cpp VCardParser::VCardParser() @@ -60,24 +98,29 @@ VCardParser::~VCardParser() - VCard::List VCardParser::parseVCards( const QString& text ) + VCard::List VCardParser::parseVCards( const TQString& text ) { + return parseVCardsRaw( text.utf8() ); +} + -+VCard::List VCardParser::parseVCardsRaw( const QCString& text ) ++VCard::List VCardParser::parseVCardsRaw( const TQCString& text ) +{ - static QRegExp sep( "[\x0d\x0a]" ); + static TQRegExp sep( "[\x0d\x0a]" ); VCard currentVCard; VCard::List vCardList; -- QString currentLine; -+ QCString currentLine; +- TQString currentLine; ++ TQCString currentLine; -- const QStringList lines = QStringList::split( sep, text ); -- QStringList::ConstIterator it; -+ const QCStringList lines = splitCString( text, sep ); -+ QCStringList::ConstIterator it; +- const TQStringList lines = TQStringList::split( sep, text ); +- TQStringList::ConstIterator it; ++ const TQCStringList lines = splitCString( text, sep ); ++ TQCStringList::ConstIterator it; bool inVCard = false; -- QStringList::ConstIterator linesEnd( lines.end() ); -+ QCStringList::ConstIterator linesEnd( lines.end() ); +- TQStringList::ConstIterator linesEnd( lines.end() ); ++ TQCStringList::ConstIterator linesEnd( lines.end() ); for ( it = lines.begin(); it != linesEnd; ++it ) { if ( (*it).isEmpty() ) // empty line continue; if ( (*it)[ 0 ] == ' ' || (*it)[ 0 ] == '\t' ) { // folded line => append to previous -- currentLine += QString( *it ).remove( 0, 1 ); +- currentLine += TQString( *it ).remove( 0, 1 ); + currentLine.append( (*it).mid( 1 ) ); continue; } else { @@ -291,32 +291,32 @@ Index: kabc/vcardparser/vcardparser.cpp } VCardLine vCardLine; -- const QString key = currentLine.left( colon ).stripWhiteSpace(); -- QString value = currentLine.mid( colon + 1 ); -+ const QCString key = currentLine.left( colon ).stripWhiteSpace(); -+ QCString value = currentLine.mid( colon + 1 ); +- const TQString key = currentLine.left( colon ).stripWhiteSpace(); +- TQString value = currentLine.mid( colon + 1 ); ++ const TQCString key = currentLine.left( colon ).stripWhiteSpace(); ++ TQCString value = currentLine.mid( colon + 1 ); -- QStringList params = QStringList::split( ';', key ); -+ QCStringList params = splitCString( key, ';' ); +- TQStringList params = TQStringList::split( ';', key ); ++ TQCStringList params = splitCString( key, ';' ); // check for group if ( params[0].find( '.' ) != -1 ) { -- const QStringList groupList = QStringList::split( '.', params[0] ); +- const TQStringList groupList = TQStringList::split( '.', params[0] ); - vCardLine.setGroup( groupList[0] ); - vCardLine.setIdentifier( groupList[1] ); -+ const QCStringList groupList = splitCString( params[0], '.' ); -+ vCardLine.setGroup( QString::fromLatin1( groupList[0] ) ); -+ vCardLine.setIdentifier( QString::fromLatin1( groupList[1] ) ); ++ const TQCStringList groupList = splitCString( params[0], '.' ); ++ vCardLine.setGroup( TQString::tqfromLatin1( groupList[0] ) ); ++ vCardLine.setIdentifier( TQString::tqfromLatin1( groupList[1] ) ); } else - vCardLine.setIdentifier( params[0] ); -+ vCardLine.setIdentifier( QString::fromLatin1( params[0] ) ); ++ vCardLine.setIdentifier( TQString::tqfromLatin1( params[0] ) ); if ( params.count() > 1 ) { // find all parameters -- QStringList::ConstIterator paramIt = params.begin(); -+ QCStringList::ConstIterator paramIt = params.begin(); +- TQStringList::ConstIterator paramIt = params.begin(); ++ TQCStringList::ConstIterator paramIt = params.begin(); for ( ++paramIt; paramIt != params.end(); ++paramIt ) { -- QStringList pair = QStringList::split( '=', *paramIt ); -+ QCStringList pair = splitCString( *paramIt, '=' ); +- TQStringList pair = TQStringList::split( '=', *paramIt ); ++ TQCStringList pair = splitCString( *paramIt, '=' ); if ( pair.size() == 1 ) { // correct the fucking 2.1 'standard' if ( pair[0].lower() == "quoted-printable" ) { @@ -324,29 +324,29 @@ Index: kabc/vcardparser/vcardparser.cpp } // This is pretty much a faster pair[1].contains( ',' )... if ( pair[1].find( ',' ) != -1 ) { // parameter in type=x,y,z format -- const QStringList args = QStringList::split( ',', pair[ 1 ] ); -- QStringList::ConstIterator argIt; -+ const QCStringList args = splitCString( pair[ 1 ], ',' ); -+ QCStringList::ConstIterator argIt; +- const TQStringList args = TQStringList::split( ',', pair[ 1 ] ); +- TQStringList::ConstIterator argIt; ++ const TQCStringList args = splitCString( pair[ 1 ], ',' ); ++ TQCStringList::ConstIterator argIt; for ( argIt = args.begin(); argIt != args.end(); ++argIt ) - vCardLine.addParameter( pair[0].lower(), *argIt ); -+ vCardLine.addParameter( QString::fromLatin1( pair[0].lower() ), QString::fromLatin1( *argIt ) ); ++ vCardLine.addParameter( TQString::tqfromLatin1( pair[0].lower() ), TQString::tqfromLatin1( *argIt ) ); } else - vCardLine.addParameter( pair[0].lower(), pair[1] ); -+ vCardLine.addParameter( QString::fromLatin1( pair[0].lower() ), QString::fromLatin1( pair[1] ) ); ++ vCardLine.addParameter( TQString::tqfromLatin1( pair[0].lower() ), TQString::tqfromLatin1( pair[1] ) ); } } @@ -133,10 +176,8 @@ VCard::List VCardParser::parseVCards( co - QByteArray output; + TQByteArray output; bool wasBase64Encoded = false; - params = vCardLine.parameterList(); - if ( params.findIndex( "encoding" ) != -1 ) { // have to decode the data -- QByteArray input; -- input = QCString(value.latin1()); +- TQByteArray input; +- input = TQCString(value.latin1()); + if ( vCardLine.parameterList().findIndex( "encoding" ) != -1 ) { // have to decode the data -+ QByteArray input = value; ++ TQByteArray input = value; if ( vCardLine.parameter( "encoding" ).lower() == "b" || vCardLine.parameter( "encoding" ).lower() == "base64" ) { KCodecs::base64Decode( input, output ); @@ -354,59 +354,59 @@ Index: kabc/vcardparser/vcardparser.cpp value = value.remove( value.length() - 1, 1 ) + (*it); ++it; } -- input = QCString(value.latin1()); +- input = TQCString(value.latin1()); + input = value; KCodecs::quotedPrintableDecode( input, output ); } } else { -- output = QCString(value.latin1()); +- output = TQCString(value.latin1()); + output = value; } - if ( params.findIndex( "charset" ) != -1 ) { // have to convert the data + if ( vCardLine.parameterList().findIndex( "charset" ) != -1 ) { // have to convert the data - QTextCodec *codec = - QTextCodec::codecForName( vCardLine.parameter( "charset" ).latin1() ); + TQTextCodec *codec = + TQTextCodec::codecForName( vCardLine.parameter( "charset" ).latin1() ); if ( codec ) { @@ -173,17 +214,17 @@ VCard::List VCardParser::parseVCards( co } // we do not save the start and end tag as vcardline - if ( (*it).lower().startsWith( "begin:vcard" ) ) { -+ if ( cStringStartsWith( (*it).lower(), QCString( "begin:vcard" ) ) ) { ++ if ( cStringStartsWith( (*it).lower(), TQCString( "begin:vcard" ) ) ) { inVCard = true; - currentLine.setLength( 0 ); -+ currentLine = QCString(); ++ currentLine = TQCString(); currentVCard.clear(); // flush vcard continue; } - if ( (*it).lower().startsWith( "end:vcard" ) ) { -+ if ( cStringStartsWith( (*it).lower(), QCString( "end:vcard" ) ) ) { ++ if ( cStringStartsWith( (*it).lower(), TQCString( "end:vcard" ) ) ) { inVCard = false; vCardList.append( currentVCard ); - currentLine.setLength( 0 ); -+ currentLine = QCString(); ++ currentLine = TQCString(); currentVCard.clear(); // flush vcard continue; } @@ -197,8 +238,13 @@ VCard::List VCardParser::parseVCards( co - QString VCardParser::createVCards( const VCard::List& list ) + TQString VCardParser::createVCards( const VCard::List& list ) { -- QString text; -- QString textLine; -+ return QString::fromUtf8( createVCardsRaw( list ) ); +- TQString text; +- TQString textLine; ++ return TQString::fromUtf8( createVCardsRaw( list ) ); +} + -+QCString VCardParser::createVCardsRaw( const VCard::List& list ) ++TQCString VCardParser::createVCardsRaw( const VCard::List& list ) +{ -+ QCString text; -+ QCString textLine; - QString encodingType; - QStringList idents; - QStringList params; -@@ -213,7 +259,7 @@ QString VCardParser::createVCards( const ++ TQCString text; ++ TQCString textLine; + TQString encodingType; + TQStringList idents; + TQStringList params; +@@ -213,7 +259,7 @@ TQString VCardParser::createVCards( cons bool hasEncoding; @@ -415,54 +415,54 @@ Index: kabc/vcardparser/vcardparser.cpp // iterate over the cards VCard::List::ConstIterator listEnd( list.end() ); -@@ -228,9 +274,9 @@ QString VCardParser::createVCards( const - for ( lineIt = lines.constBegin(); lineIt != lines.constEnd(); ++lineIt ) { +@@ -229,9 +275,9 @@ TQString VCardParser::createVCards( cons if ( !(*lineIt).value().asString().isEmpty() ) { - if ( (*lineIt).hasGroup() ) -- textLine = (*lineIt).group() + "." + (*lineIt).identifier(); -+ textLine = (*lineIt).group().latin1() + QCString( "." ) + (*lineIt).identifier().latin1(); - else -- textLine = (*lineIt).identifier(); -+ textLine = (*lineIt).identifier().latin1(); - - params = (*lineIt).parameterList(); - hasEncoding = false; -@@ -243,9 +289,9 @@ QString VCardParser::createVCards( const - - values = (*lineIt).parameters( *paramIt ); - for ( valueIt = values.constBegin(); valueIt != values.constEnd(); ++valueIt ) { -- textLine.append( ";" + (*paramIt).upper() ); -+ textLine.append( QCString( ";" ) + (*paramIt).upper().latin1() ); - if ( !(*valueIt).isEmpty() ) -- textLine.append( "=" + (*valueIt) ); -+ textLine.append( QCString( "=" ) + (*valueIt).latin1() ); + if ((*lineIt).identifier() != TQString("URI")) { + if ( (*lineIt).hasGroup() ) +- textLine = (*lineIt).group() + "." + (*lineIt).identifier(); ++ textLine = (*lineIt).group().latin1() + TQCString( "." ) + (*lineIt).identifier().latin1(); + else +- textLine = (*lineIt).identifier(); ++ textLine = (*lineIt).identifier().latin1(); + + params = (*lineIt).parameterList(); + hasEncoding = false; +@@ -244,9 +290,9 @@ TQString VCardParser::createVCards( cons + + values = (*lineIt).parameters( *paramIt ); + for ( valueIt = values.constBegin(); valueIt != values.constEnd(); ++valueIt ) { +- textLine.append( ";" + (*paramIt).upper() ); ++ textLine.append( TQCString( ";" ) + (*paramIt).upper().latin1() ); + if ( !(*valueIt).isEmpty() ) +- textLine.append( "=" + (*valueIt) ); ++ textLine.append( TQCString( "=" ) + (*valueIt).latin1() ); + } } } - } -@@ -261,11 +307,11 @@ QString VCardParser::createVCards( const - KCodecs::quotedPrintableEncode( input, output, false ); - } +@@ -262,11 +308,11 @@ TQString VCardParser::createVCards( cons + KCodecs::quotedPrintableEncode( input, output, false ); + } -- QString value( output ); -+ QCString value( output ); - addEscapes( value ); - textLine.append( ":" + value ); - } else { -- QString value( (*lineIt).value().asString() ); -+ QCString value( (*lineIt).value().toString().utf8() ); - addEscapes( value ); - textLine.append( ":" + value ); - } +- TQString value( output ); ++ TQCString value( output ); + addEscapes( value ); + textLine.append( ":" + value ); + } else { +- TQString value( (*lineIt).value().asString() ); ++ TQCString value( (*lineIt).value().toString().utf8() ); + addEscapes( value ); + textLine.append( ":" + value ); + } Index: kabc/vcardparser/vcardparser.h =================================================================== --- kabc/vcardparser/vcardparser.h.orig +++ kabc/vcardparser/vcardparser.h @@ -34,6 +34,9 @@ class VCardParser - static VCard::List parseVCards( const QString& text ); - static QString createVCards( const VCard::List& list ); + static VCard::List parseVCards( const TQString& text ); + static TQString createVCards( const VCard::List& list ); -+ static VCard::List parseVCardsRaw( const QCString& text ); -+ static QCString createVCardsRaw( const VCard::List& list ); ++ static VCard::List parseVCardsRaw( const TQCString& text ); ++ static TQCString createVCardsRaw( const VCard::List& list ); + private: class VCardParserPrivate; @@ -476,14 +476,14 @@ Index: kabc/vcardtool.cpp } -// TODO: make list a const& -+QCString VCardTool::createVCardsRaw( Addressee::List list, VCard::Version version ) ++TQCString VCardTool::createVCardsRaw( Addressee::List list, VCard::Version version ) +{ + const VCard::List vCardList = createVCardsInternal( list, version ); + + return VCardParser::createVCardsRaw( vCardList ); +} + - QString VCardTool::createVCards( Addressee::List list, VCard::Version version ) + TQString VCardTool::createVCards( Addressee::List list, VCard::Version version ) { - VCard::List vCardList; + const VCard::List vCardList = createVCardsInternal( list, version ); @@ -500,10 +500,10 @@ Index: kabc/vcardtool.cpp for ( addrIt = list.constBegin(); addrIt != listEnd; ++addrIt ) { - VCard card; + KABC::VCard card; - QStringList::ConstIterator strIt; + TQStringList::ConstIterator strIt; // ADR + LABEL -@@ -348,17 +361,30 @@ QString VCardTool::createVCards( Address +@@ -351,17 +364,30 @@ QString VCardTool::createVCards( Address vCardList.append( card ); } @@ -511,14 +511,14 @@ Index: kabc/vcardtool.cpp + return vCardList; +} + -+Addressee::List VCardTool::parseVCardsRaw( const QCString& vcard ) ++Addressee::List VCardTool::parseVCardsRaw( const TQCString& vcard ) +{ + const VCard::List vCardList = VCardParser::parseVCardsRaw( vcard ); + + return parseVCardsInternal( vCardList ); } - Addressee::List VCardTool::parseVCards( const QString& vcard ) + Addressee::List VCardTool::parseVCards( const TQString& vcard ) { + const VCard::List vCardList = VCardParser::parseVCards( vcard ); + @@ -527,9 +527,9 @@ Index: kabc/vcardtool.cpp + +Addressee::List VCardTool::parseVCardsInternal( const VCard::List &vCardList ) +{ - static const QChar semicolonSep( ';' ); - static const QChar commaSep( ',' ); - QString identifier; + static const TQChar semicolonSep( ';' ); + static const TQChar commaSep( ',' ); + TQString identifier; Addressee::List addrList; - const VCard::List vCardList = VCardParser::parseVCards( vcard ); @@ -542,16 +542,16 @@ Index: kabc/vcardtool.h +++ kabc/vcardtool.h @@ -46,12 +46,19 @@ class KABC_EXPORT VCardTool */ - QString createVCards( Addressee::List list, VCard::Version version = VCard::v3_0 ); + TQString createVCards( Addressee::List list, VCard::Version version = VCard::v3_0 ); -+ QCString createVCardsRaw( Addressee::List list, VCard::Version version = VCard::v3_0 ); ++ TQCString createVCardsRaw( Addressee::List list, VCard::Version version = VCard::v3_0 ); + /** Parses the string and returns a list of addressee objects. */ - Addressee::List parseVCards( const QString& vcard ); + Addressee::List parseVCards( const TQString& vcard ); -+ Addressee::List parseVCardsRaw( const QCString& vcard ); ++ Addressee::List parseVCardsRaw( const TQCString& vcard ); + private: + VCard::List createVCardsInternal( Addressee::List list, VCard::Version version ); diff --git a/opensuse/core/tdelibs/bug-399296_ftphandling-fix.diff b/opensuse/core/tdelibs/bug-399296_ftphandling-fix.diff deleted file mode 100644 index a8719ab92..000000000 --- a/opensuse/core/tdelibs/bug-399296_ftphandling-fix.diff +++ /dev/null @@ -1,57 +0,0 @@ -Index: kioslave/ftp/ftp.cc -=================================================================== ---- kioslave/ftp/ftp.cc.orig -+++ kioslave/ftp/ftp.cc -@@ -1275,6 +1275,16 @@ bool Ftp::ftpRename( const QString & src - return false; - } - -+ // Must check if dst already exists, RNFR+RNTO overwrites by default (#127793). -+ if (ftpFileExists(dst)) { -+ error(ERR_FILE_ALREADY_EXIST, dst); -+ return false; -+ } -+ if (ftpFolder(dst, false)) { -+ error(ERR_DIR_ALREADY_EXIST, dst); -+ return false; -+ } -+ - int pos = src.findRev("/"); - if( !ftpFolder(src.left(pos+1), false) ) - return false; -@@ -2406,6 +2416,19 @@ bool Ftp::ftpSize( const QString & path, - return true; - } - -+bool Ftp::ftpFileExists(const QString& path) -+{ -+ QCString buf; -+ buf = "SIZE "; -+ buf += remoteEncoding()->encode(path); -+ if( !ftpSendCmd( buf ) || (m_iRespType != 2) ) -+ return false; -+ -+ // skip leading "213 " (response code) -+ const char* psz = ftpResponse(4); -+ return psz != 0; -+} -+ - // Today the differences between ASCII and BINARY are limited to - // CR or CR/LF line terminators. Many servers ignore ASCII (like - // win2003 -or- vsftp with default config). In the early days of -Index: kioslave/ftp/ftp.h -=================================================================== ---- kioslave/ftp/ftp.h.orig -+++ kioslave/ftp/ftp.h -@@ -350,6 +350,11 @@ private: - /** - * Set the current working directory, but only if not yet current - */ -+ bool ftpFileExists(const QString& path); -+ -+ /** -+ * Set the current working directory, but only if not yet current -+ */ - bool ftpFolder(const QString& path, bool bReportError); - - /** diff --git a/opensuse/core/tdelibs/bundle-locale-help.diff b/opensuse/core/tdelibs/bundle-locale-help.diff deleted file mode 100644 index 8305fad3a..000000000 --- a/opensuse/core/tdelibs/bundle-locale-help.diff +++ /dev/null @@ -1,107 +0,0 @@ -Index: kdecore/kstandarddirs.cpp -=================================================================== ---- kdecore/kstandarddirs.cpp.orig -+++ kdecore/kstandarddirs.cpp -@@ -94,8 +94,8 @@ KStandardDirsSingleton* KStandardDirsSin - return s_self; - } - --static const char* const types[] = {"html", "icon", "apps", "sound", -- "data", "locale", "services", "mime", -+static const char* const types[] = {"html", "html-bundle", "icon", "apps", "sound", -+ "data", "locale", "locale-bundle", "services", "mime", - "servicetypes", "config", "exe", - "wallpaper", "lib", "pixmap", "templates", - "module", "qtplugins", -@@ -1023,6 +1023,8 @@ static int tokenize( QStringList& tokens - QString KStandardDirs::kde_default(const char *type) { - if (!strcmp(type, "data")) - return "share/apps/"; -+ if (!strcmp(type, "html-bundle")) -+ return "share/doc-bundle/HTML/"; - if (!strcmp(type, "html")) - return "share/doc/HTML/"; - if (!strcmp(type, "icon")) -@@ -1035,6 +1037,8 @@ QString KStandardDirs::kde_default(const - return "share/applnk/"; - if (!strcmp(type, "sound")) - return "share/sounds/"; -+ if (!strcmp(type, "locale-bundle")) -+ return "share/locale-bundle/"; - if (!strcmp(type, "locale")) - return "share/locale/"; - if (!strcmp(type, "services")) -Index: kdecore/kcatalogue.cpp -=================================================================== ---- kdecore/kcatalogue.cpp.orig -+++ kdecore/kcatalogue.cpp -@@ -66,7 +66,11 @@ KCatalogue::KCatalogue(const QString & n - .arg( d->language ) - .arg( d->name ); - -- setFileName( locate( "locale", path ) ); -+ QString fileName = locate( "locale", path ); -+ if (fileName.isEmpty()) -+ fileName = locate( "locale-bundle", path ); -+ -+ setFileName( fileName ); - - } - -Index: kdecore/klocale.cpp -=================================================================== ---- kdecore/klocale.cpp.orig -+++ kdecore/klocale.cpp -@@ -402,7 +402,11 @@ QString KLocale::catalogueFileName(const - .arg( language ) - .arg( catalog.name() ); - -- return locate( "locale", path ); -+ QString fileName = locate( "locale", path ); -+ if (fileName.isEmpty()) -+ fileName = locate( "locale-bundle", path ); -+ -+ return fileName; - } - - bool KLocale::setLanguage(const QString & language) -@@ -501,6 +505,9 @@ bool KLocale::isApplicationTranslatedInt - // kdDebug() << "isApplicationTranslatedInto: filename " << sFileName << endl; - - QString sAbsFileName = locate( "locale", sFileName ); -+ if (sAbsFileName.isEmpty()) -+ sAbsFileName = locate( "locale-bundle", sFileName ); -+ - // kdDebug() << "isApplicationTranslatedInto: absname " << sAbsFileName << endl; - return ! sAbsFileName.isEmpty(); - } -Index: kdoctools/kio_help.cpp -=================================================================== ---- kdoctools/kio_help.cpp.orig -+++ kdoctools/kio_help.cpp -@@ -42,7 +42,7 @@ QString HelpProtocol::langLookup(const Q - QStringList search; - - // assemble the local search paths -- const QStringList localDoc = KGlobal::dirs()->resourceDirs("html"); -+ const QStringList localDoc = KGlobal::dirs()->resourceDirs("html") + KGlobal::dirs()->resourceDirs("html-bundle"); - - kdDebug( 7119 ) << "Looking up help for: " << fname << endl; - QString _fname = fname; -@@ -60,10 +60,14 @@ QString HelpProtocol::langLookup(const Q - QStringList langs = KGlobal::locale()->languageList(); - QStringList::ConstIterator lang; - for (lang = langs.begin(); lang != langs.end(); ++lang) -- if ((*lang).left(2) == "en") -+ if ((*lang).left(2) == "en") { - search.append(QString("/usr/share/gnome/help/%1/C%2").arg(path).arg(_fname)); -- else -+ search.append(QString("/usr/share/gnome/help-bundle/%1/C%2").arg(path).arg(_fname)); -+ } -+ else { - search.append(QString("/usr/share/gnome/help/%1/%2%3").arg(path).arg(*lang).arg(_fname)); -+ search.append(QString("/usr/share/gnome/help-bundle/%1/%2%3").arg(path).arg(*lang).arg(_fname)); -+ } - - langs.append( "en" ); - langs.remove( "C" ); diff --git a/opensuse/core/tdelibs/clever-menu.diff b/opensuse/core/tdelibs/clever-menu.diff deleted file mode 100644 index e2ae876c5..000000000 --- a/opensuse/core/tdelibs/clever-menu.diff +++ /dev/null @@ -1,221 +0,0 @@ -Index: kio/kio/kservice.cpp -=================================================================== ---- kio/kio/kservice.cpp.orig -+++ kio/kio/kservice.cpp -@@ -725,6 +725,20 @@ QString KService::untranslatedGenericNam - return v.isValid() ? v.toString() : QString::null; - } - -+bool KService::SuSEunimportant() const { -+ QMap::ConstIterator it = m_mapProps.find( "X-SuSE-Unimportant" ); -+ if ( (it == m_mapProps.end()) || (!it.data().isValid())) -+ { -+ return false; -+ } -+ -+ QString aValue = it.data().toString(); -+ if (aValue == "true" || aValue == "on" || aValue == "yes") -+ return true; -+ else -+ return false; -+} -+ - QString KService::parentApp() const { - QMap::ConstIterator it = m_mapProps.find( "X-KDE-ParentApp" ); - if ( (it == m_mapProps.end()) || (!it.data().isValid())) -Index: kio/kio/kservice.h -=================================================================== ---- kio/kio/kservice.h.orig -+++ kio/kio/kservice.h -@@ -327,6 +327,10 @@ public: - * @return true to suppress this service - */ - bool noDisplay() const; -+ /** -+ * check if the application entry is important -+ */ -+ bool SuSEunimportant() const; - - /** - * Name of the application this service belongs to. -Index: kio/kio/kservicegroup.cpp -=================================================================== ---- kio/kio/kservicegroup.cpp.orig -+++ kio/kio/kservicegroup.cpp -@@ -31,8 +31,10 @@ - class KServiceGroup::Private - { - public: -- Private() { m_bNoDisplay = false; m_bShowEmptyMenu = false;m_bShowInlineHeader=false;m_bInlineAlias=false; m_bAllowInline = false;m_inlineValue = 4;} -+ Private() { m_bNoDisplay = false; m_bShowEmptyMenu = false;m_bShowInlineHeader=false;m_bInlineAlias=false; m_bAllowInline = false; m_inlineValue = 4; m_bShortMenu = false; m_bGeneralDescription = false;} - bool m_bNoDisplay; -+ bool m_bShortMenu; -+ bool m_bGeneralDescription; - bool m_bShowEmptyMenu; - bool m_bShowInlineHeader; - bool m_bInlineAlias; -@@ -73,6 +75,11 @@ KServiceGroup::KServiceGroup( const QStr - m_strComment = config.readEntry( "Comment" ); - m_bDeleted = config.readBoolEntry( "Hidden", false ); - d->m_bNoDisplay = config.readBoolEntry( "NoDisplay", false ); -+ if (d->directoryEntryPath.startsWith(QDir::homeDirPath())) -+ d->m_bShortMenu = false; -+ else -+ d->m_bShortMenu = config.readBoolEntry( "X-SuSE-AutoShortMenu", true ); -+ d->m_bGeneralDescription = config.readBoolEntry( "X-SuSE-GeneralDescription", false ); - QStringList tmpList; - if (config.hasKey("OnlyShowIn")) - { -@@ -120,6 +127,10 @@ int KServiceGroup::childCount() - { - if (m_childCount == -1) - { -+ KConfig global("kdeglobals"); -+ global.setGroup("KDE"); -+ bool showUnimportant = global.readBoolEntry("showUnimportant", false); -+ - m_childCount = 0; - - for( List::ConstIterator it = m_serviceList.begin(); -@@ -130,7 +141,8 @@ int KServiceGroup::childCount() - { - KService *service = static_cast(p); - if (!service->noDisplay()) -- m_childCount++; -+ if ( showUnimportant || !service->SuSEunimportant() ) -+ m_childCount++; - } - else if (p->isType(KST_KServiceGroup)) - { -@@ -203,6 +215,16 @@ QStringList KServiceGroup::suppressGener - return d->suppressGenericNames; - } - -+bool KServiceGroup::SuSEgeneralDescription() const -+{ -+ return d->m_bGeneralDescription; -+} -+ -+bool KServiceGroup::SuSEshortMenu() const -+{ -+ return d->m_bShortMenu; -+} -+ - void KServiceGroup::load( QDataStream& s ) - { - QStringList groupList; -@@ -214,7 +236,8 @@ void KServiceGroup::load( QDataStream& s - s >> m_strCaption >> m_strIcon >> - m_strComment >> groupList >> m_strBaseGroupName >> m_childCount >> - noDisplay >> d->suppressGenericNames >> d->directoryEntryPath >> -- d->sortOrder >> _showEmptyMenu >> inlineHeader >> _inlineAlias >> _allowInline; -+ d->sortOrder >> _showEmptyMenu >> inlineHeader >> _inlineAlias >> -+ _allowInline >> d->m_bShortMenu >> d->m_bGeneralDescription; - - d->m_bNoDisplay = (noDisplay != 0); - d->m_bShowEmptyMenu = ( _showEmptyMenu != 0 ); -@@ -286,7 +309,8 @@ void KServiceGroup::save( QDataStream& s - s << m_strCaption << m_strIcon << - m_strComment << groupList << m_strBaseGroupName << m_childCount << - noDisplay << d->suppressGenericNames << d->directoryEntryPath << -- d->sortOrder <<_showEmptyMenu <sortOrder <<_showEmptyMenu <m_bShortMenu << d->m_bGeneralDescription; - } - - KServiceGroup::List -@@ -312,6 +336,12 @@ static void addItem(KServiceGroup::List - KServiceGroup::List - KServiceGroup::entries(bool sort, bool excludeNoDisplay, bool allowSeparators, bool sortByGenericName) - { -+ return SuSEentries(sort, excludeNoDisplay, allowSeparators, sortByGenericName); -+} -+ -+KServiceGroup::List -+KServiceGroup::SuSEentries(bool sort, bool excludeNoDisplay, bool allowSeparators, bool sortByGenericName, bool excludeSuSEunimportant) -+{ - KServiceGroup *group = this; - - // If the entries haven't been loaded yet, we have to reload ourselves -@@ -338,11 +368,18 @@ KServiceGroup::entries(bool sort, bool e - for (List::ConstIterator it(group->m_serviceList.begin()); it != group->m_serviceList.end(); ++it) - { - KSycocaEntry *p = (*it); -+ if( !p->isType(KST_KServiceGroup) && !p->isType(KST_KService)) -+ continue; - bool noDisplay = p->isType(KST_KServiceGroup) ? - static_cast(p)->noDisplay() : - static_cast(p)->noDisplay(); - if (excludeNoDisplay && noDisplay) - continue; -+ bool SuSEunimportant = p->isType(KST_KService) && -+ static_cast(p)->SuSEunimportant(); -+ if (excludeSuSEunimportant && SuSEunimportant) -+ continue; -+ - // Choose the right list - KSortableValueList & list = p->isType(KST_KServiceGroup) ? glist : slist; - QString name; -@@ -374,6 +411,15 @@ KServiceGroup::entries(bool sort, bool e - } - list.insert(key,SPtr(*it)); - } -+ -+ return group->SuSEsortEntries( slist, glist, excludeNoDisplay, allowSeparators ); -+} -+ -+KServiceGroup::List -+KServiceGroup::SuSEsortEntries( KSortableValueList slist, KSortableValueList glist, bool excludeNoDisplay, bool allowSeparators ) -+{ -+ KServiceGroup *group = this; -+ - // Now sort - slist.sort(); - glist.sort(); -@@ -415,6 +461,8 @@ KServiceGroup::entries(bool sort, bool e - // TODO: This prevents duplicates - for(KSortableValueList::Iterator it2 = slist.begin(); it2 != slist.end(); ++it2) - { -+ if (!(*it2).value()->isType(KST_KService)) -+ continue; - KService *service = (KService *)((KSycocaEntry *)((*it2).value())); - if (service->menuId() == item) - { -Index: kio/kio/kservicegroup.h -=================================================================== ---- kio/kio/kservicegroup.h.orig -+++ kio/kio/kservicegroup.h -@@ -26,6 +26,7 @@ - #include - - #include -+#include - - #include "ksycocaentry.h" - #include "ksycocatype.h" -@@ -201,6 +202,12 @@ public: - void setLayoutInfo(const QStringList &layout); - - /** -+ * SuSE special, not part of KDE API -+ */ -+ bool SuSEshortMenu() const; -+ bool SuSEgeneralDescription() const; -+ -+ /** - * @internal - * Returns information related to the layout of services in this group. - */ -@@ -238,6 +245,12 @@ public: - */ - virtual List entries(bool sorted = false); - -+ /* -+ * UNOFFICIAL SuSE special -+ */ -+ virtual List SuSEentries(bool sort, bool excludeNoDisplay, bool allowSeparators, bool sortByGenericName, bool excludeSuSEunimportant = true); -+ virtual List SuSEsortEntries( KSortableValueList slist, KSortableValueList glist, bool excludeNoDisplay, bool allowSeparators ); -+ - /** - * Returns a non-empty string if the group is a special base group. - * By default, "Settings/" is the kcontrol base group ("settings") diff --git a/opensuse/core/tdelibs/default-useragent.diff b/opensuse/core/tdelibs/default-useragent.diff index 76b92aef8..c5073f6da 100644 --- a/opensuse/core/tdelibs/default-useragent.diff +++ b/opensuse/core/tdelibs/default-useragent.diff @@ -6,8 +6,8 @@ Index: kio/kio/kprotocolmanager.cpp // DEFAULT USERAGENT STRING #define CFG_DEFAULT_UAGENT(X) \ --QString("Mozilla/5.0 (compatible; Konqueror/%1.%2%3) KHTML/%4.%5.%6 (like Gecko)") \ -+QString("Mozilla/5.0 (compatible; Konqueror/%1.%2%3) KHTML/%4.%5.%6 (like Gecko) SUSE") \ - .arg(KDE_VERSION_MAJOR).arg(KDE_VERSION_MINOR).arg(X).arg(KDE_VERSION_MAJOR).arg(KDE_VERSION_MINOR).arg(KDE_VERSION_RELEASE) +-TQString("Mozilla/5.0 (compatible; Konqueror/%1.%2%3) KHTML/%4.%5.%6 (like Gecko)") \ ++TQString("Mozilla/5.0 (compatible; Konqueror/%1.%2%3) KHTML/%4.%5.%6 (like Gecko) TDE SUSE") \ + .arg(TDE_VERSION_MAJOR).arg(TDE_VERSION_MINOR).arg(X).arg(TDE_VERSION_MAJOR).arg(TDE_VERSION_MINOR).arg(TDE_VERSION_RELEASE) void KProtocolManager::reparseConfiguration() diff --git a/opensuse/core/tdelibs/desktop-translations.diff b/opensuse/core/tdelibs/desktop-translations.diff deleted file mode 100644 index 6bf878469..000000000 --- a/opensuse/core/tdelibs/desktop-translations.diff +++ /dev/null @@ -1,209 +0,0 @@ -Index: kdecore/kconfigbase.h -=================================================================== ---- kdecore/kconfigbase.h.orig -+++ kdecore/kconfigbase.h -@@ -1985,6 +1985,7 @@ public: - - protected: - QCString readEntryUtf8( const char *pKey) const; -+ bool hasTranslatedKey( const char *pKey ) const; - - /** - * The currently selected group. */ -Index: kdecore/kconfigbase.cpp -=================================================================== ---- kdecore/kconfigbase.cpp.orig -+++ kdecore/kconfigbase.cpp -@@ -131,6 +131,24 @@ bool KConfigBase::hasKey(const char *pKe - return !entry.mValue.isNull(); - } - -+bool KConfigBase::hasTranslatedKey(const char* pKey) const -+{ -+ KEntryKey aEntryKey(mGroup, 0); -+ aEntryKey.c_key = pKey; -+ aEntryKey.bDefault = readDefaults(); -+ -+ if (!locale().isNull()) { -+ // try the localized key first -+ aEntryKey.bLocal = true; -+ KEntry entry = lookupData(aEntryKey); -+ if (!entry.mValue.isNull()) -+ return true; -+ aEntryKey.bLocal = false; -+ } -+ -+ return false; -+} -+ - bool KConfigBase::hasGroup(const QString &group) const - { - return internalHasGroup( group.utf8()); -Index: kdecore/kdesktopfile.h -=================================================================== ---- kdecore/kdesktopfile.h.orig -+++ kdecore/kdesktopfile.h -@@ -236,6 +236,8 @@ private: - - private: - -+ QString translatedEntry(const char*) const; -+ - // copy-construction and assignment are not allowed - KDesktopFile( const KDesktopFile& ); - KDesktopFile& operator= ( const KDesktopFile& ); -Index: kdecore/kdesktopfile.cpp -=================================================================== ---- kdecore/kdesktopfile.cpp.orig -+++ kdecore/kdesktopfile.cpp -@@ -34,6 +34,8 @@ - #include "kapplication.h" - #include "kstandarddirs.h" - #include "kmountpoint.h" -+#include "kcatalogue.h" -+#include "klocale.h" - - #include "kdesktopfile.h" - #include "kdesktopfile.moc" -@@ -145,6 +147,27 @@ bool KDesktopFile::isAuthorizedDesktopFi - return false; - } - -+QString KDesktopFile::translatedEntry(const char* key) const -+{ -+ if (hasTranslatedKey(key)) -+ return readEntry(key); -+ -+ if (hasKey(key)) { -+ QString value = readEntryUntranslated(key); -+ QString fName = fileName(); -+ fName = fName.mid(fName.findRev('/')+1); -+ QString po_lookup_key = QString::fromLatin1(key) + "(" + fName + "): " + value; -+ QString po_value = KGlobal::locale()->translate(po_lookup_key.utf8().data()); -+ -+ if (po_value == po_lookup_key) -+ return value; -+ -+ return po_value; -+ } -+ -+ return QString::null; -+} -+ - QString KDesktopFile::readType() const - { - return readEntry("Type"); -@@ -157,17 +180,17 @@ QString KDesktopFile::readIcon() const - - QString KDesktopFile::readName() const - { -- return readEntry("Name"); -+ return translatedEntry("Name"); - } - - QString KDesktopFile::readComment() const - { -- return readEntry("Comment"); -+ return translatedEntry("Comment"); - } - - QString KDesktopFile::readGenericName() const - { -- return readEntry("GenericName"); -+ return translatedEntry("GenericName"); - } - - QString KDesktopFile::readPath() const -@@ -342,5 +365,3 @@ KDesktopFile* KDesktopFile::copyTo(const - config->setDesktopGroup(); - return config; - } -- -- -Index: kio/kio/kservice.cpp -=================================================================== ---- kio/kio/kservice.cpp.orig -+++ kio/kio/kservice.cpp -@@ -114,7 +114,7 @@ KService::init( KDesktopFile *config ) - return; - } - -- m_strName = config->readEntry( "Name" ); -+ m_strName = config->readName(); - entryMap.remove("Name"); - if ( m_strName.isEmpty() ) - { -@@ -134,7 +134,7 @@ KService::init( KDesktopFile *config ) - m_strName = m_strName.left(i); - } - -- m_strType = config->readEntry( "Type" ); -+ m_strType = config->readType(); - entryMap.remove("Type"); - if ( m_strType.isEmpty() ) - { -@@ -204,11 +204,11 @@ KService::init( KDesktopFile *config ) - entryMap.remove("Terminal"); - m_strTerminalOptions = config->readEntry( "TerminalOptions" ); // should be a property IMHO - entryMap.remove("TerminalOptions"); -- m_strPath = config->readPathEntry( "Path" ); -+ m_strPath = config->readPath(); - entryMap.remove("Path"); -- m_strComment = config->readEntry( "Comment" ); -+ m_strComment = config->readComment(); - entryMap.remove("Comment"); -- m_strGenName = config->readEntry( "GenericName" ); -+ m_strGenName = config->readGenericName(); - entryMap.remove("GenericName"); - QString untranslatedGenericName = config->readEntryUntranslated( "GenericName" ); - if (!untranslatedGenericName.isEmpty()) -Index: kio/kio/kservicegroup.cpp -=================================================================== ---- kio/kio/kservicegroup.cpp.orig -+++ kio/kio/kservicegroup.cpp -@@ -66,13 +66,11 @@ KServiceGroup::KServiceGroup( const QStr - - d->directoryEntryPath = cfg; - -- KConfig config( cfg, true, false, "apps" ); -+ KDesktopFile config( cfg, true, "apps" ); - -- config.setDesktopGroup(); -- -- m_strCaption = config.readEntry( "Name" ); -- m_strIcon = config.readEntry( "Icon" ); -- m_strComment = config.readEntry( "Comment" ); -+ m_strCaption = config.readName(); -+ m_strIcon = config.readIcon(); -+ m_strComment = config.readComment(); - m_bDeleted = config.readBoolEntry( "Hidden", false ); - d->m_bNoDisplay = config.readBoolEntry( "NoDisplay", false ); - if (d->directoryEntryPath.startsWith(QDir::homeDirPath())) -Index: kio/kio/kmimetype.cpp -=================================================================== ---- kio/kio/kmimetype.cpp.orig -+++ kio/kio/kmimetype.cpp -@@ -677,9 +677,8 @@ QString KFolderType::comment( const KURL - KURL u( _url ); - u.addPath( ".directory" ); - -- KSimpleConfig cfg( u.path(), true ); -- cfg.setDesktopGroup(); -- QString comment = cfg.readEntry( "Comment" ); -+ KDesktopFile cfg( u.path(), true ); -+ QString comment = cfg.readComment(); - if ( comment.isEmpty() ) - return KMimeType::comment( _url, _is_local ); - -@@ -772,9 +771,8 @@ QString KDEDesktopMimeType::comment( con - if ( !_is_local ) - return KMimeType::comment( _url, _is_local ); - -- KSimpleConfig cfg( _url.path(), true ); -- cfg.setDesktopGroup(); -- QString comment = cfg.readEntry( "Comment" ); -+ KDesktopFile cfg( _url.path(), true ); -+ QString comment = cfg.readComment(); - if ( comment.isEmpty() ) - return KMimeType::comment( _url, _is_local ); - diff --git a/opensuse/core/tdelibs/disable-idn-support.diff b/opensuse/core/tdelibs/disable-idn-support.diff index 37c59bc91..eab2b7282 100644 --- a/opensuse/core/tdelibs/disable-idn-support.diff +++ b/opensuse/core/tdelibs/disable-idn-support.diff @@ -1,7 +1,7 @@ -Index: kdecore/network/kresolver.cpp +Index: tdecore/network/kresolver.cpp =================================================================== ---- kdecore/network/kresolver.cpp.orig -+++ kdecore/network/kresolver.cpp +--- tdecore/network/kresolver.cpp.orig ++++ tdecore/network/kresolver.cpp @@ -50,6 +50,7 @@ // IDN @@ -11,7 +11,7 @@ Index: kdecore/network/kresolver.cpp #endif @@ -1084,6 +1085,10 @@ static QStringList splitLabels(const QSt - static QCString ToASCII(const QString& label) + static TQCString ToASCII(const TQString& label) { #ifdef HAVE_IDNA_H + // We do disable it by default for security reasons for now. @@ -22,13 +22,13 @@ Index: kdecore/network/kresolver.cpp // function :) @@ -1118,6 +1123,10 @@ static QCString ToASCII(const QString& l - static QString ToUnicode(const QString& label) + static TQString ToUnicode(const TQString& label) { #ifdef HAVE_IDNA_H + // We do disable it by default for security reasons for now. + if ( getenv("KDE_NO_IPV6") && strcmp( getenv("KDE_NO_IPV6"), "no" ) ) + return label; + - // We have idna.h, so we can use the idna_to_unicode + // We have idna.h, so we can use the idna_to_tqunicode // function :) diff --git a/opensuse/core/tdelibs/disable-samba-dialog-without-smb.diff b/opensuse/core/tdelibs/disable-samba-dialog-without-smb.diff deleted file mode 100644 index cd0c29927..000000000 --- a/opensuse/core/tdelibs/disable-samba-dialog-without-smb.diff +++ /dev/null @@ -1,66 +0,0 @@ -Index: kio/kio/kfileshare.cpp -=================================================================== ---- kio/kio/kfileshare.cpp.orig -+++ kio/kio/kfileshare.cpp -@@ -291,4 +291,24 @@ bool KFileShare::setShared( const QStrin - return ok; - } - -+bool KFileShare::sambaActive() -+{ -+ // rcsmb is not executable by users, try ourselves -+ int status = system( "/sbin/checkproc -p /var/run/samba/smbd.pid /usr/sbin/smbd" ); -+ return status != -1 && WIFEXITED( status ) && WEXITSTATUS( status ) == 0; -+} -+ -+bool KFileShare::nfsActive() -+{ -+ // rcnfsserver is not executable by users, try ourselves -+ int status = system( "/sbin/checkproc /usr/sbin/rpc.mountd" ); -+ if( status != -1 && WIFEXITED( status ) && WEXITSTATUS( status ) == 0 ) -+ { -+ status = system( "/sbin/checkproc -n nfsd" ); -+ if( status != -1 && WIFEXITED( status ) && WEXITSTATUS( status ) == 0 ) -+ return true; -+ } -+ return false; -+} -+ - #include "kfileshare.moc" -Index: kio/kio/kfileshare.h -=================================================================== ---- kio/kio/kfileshare.h.orig -+++ kio/kio/kfileshare.h -@@ -131,6 +131,18 @@ public: - * Returns whether NFS is enabled - */ - static bool nfsEnabled(); -+ -+ /** -+ * Returns whether Samba is active (service is running) -+ * @internal -+ */ -+ static bool sambaActive(); -+ -+ /** -+ * Returns whether NFS is active (service is running) -+ * @internal -+ */ -+ static bool nfsActive(); - - private: - static Authorization s_authorization; -Index: kio/kfile/kfilesharedlg.cpp -=================================================================== ---- kio/kfile/kfilesharedlg.cpp.orig -+++ kio/kfile/kfilesharedlg.cpp -@@ -167,6 +167,9 @@ void KFileSharePropsPlugin::init() - vbox->addWidget( m_pbConfig, 0, Qt::AlignHCenter ); - - vbox->addStretch( 10 ); -+ -+ if( !KFileShare::sambaActive() && !KFileShare::nfsActive()) -+ m_widget->setEnabled( false ); - } - } - break; diff --git a/opensuse/core/tdelibs/fileshare.diff b/opensuse/core/tdelibs/fileshare.diff deleted file mode 100644 index 86f7d0941..000000000 --- a/opensuse/core/tdelibs/fileshare.diff +++ /dev/null @@ -1,296 +0,0 @@ ---- kio/kfile/kfilesharedlg.cpp -+++ kio/kfile/kfilesharedlg.cpp 2004/08/06 08:38:31 -@@ -24,6 +24,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -93,8 +94,10 @@ - delete m_widget; - m_rbShare = 0L; - m_rbUnShare = 0L; -+ m_rbSharerw = 0L; - m_widget = new QWidget( d->m_vBox ); - QVBoxLayout * vbox = new QVBoxLayout( m_widget ); -+ //QHBoxLayout * hbox = new QHBoxLayout( vbox ); - - switch ( KFileShare::authorization() ) { - case KFileShare::Authorized: -@@ -105,18 +108,31 @@ - home += '/'; - bool ok = true; - KFileItemList items = properties->items(); -- // We have 3 possibilities: all shared, all unshared, or mixed. -+ // We have some possibilities: all shared, all unshared (ro,rw), or mixed. - bool allShared = true; - bool allUnshared = true; -+ bool allreadonly = true; - KFileItemListIterator it( items ); - for ( ; it.current() && ok; ++it ) { - QString path = (*it)->url().path(); -+ -+ // 0 => not shared -+ // 1 => shared read only -+ // 3 => shared writeable -+ int dirStatus = KFileShare::isDirectoryShared( path ); - if ( !path.startsWith( home ) ) - ok = false; -- if ( KFileShare::isDirectoryShared( path ) ) -+ if ( dirStatus == 1 ) { - allUnshared = false; -- else -+ } -+ else if ( dirStatus == 3 ) { -+ allUnshared = false; -+ allreadonly = false; -+ } -+ else { - allShared = false; -+ allreadonly = false; -+ } - } - if ( !ok ) - { -@@ -136,16 +152,31 @@ - vbox->addWidget( m_rbUnShare, 0 ); - rbGroup->insert( m_rbUnShare ); - -- m_rbShare = new QRadioButton( i18n("Shared"), m_widget ); -+ m_rbShare = new QRadioButton( i18n("Shared - read only for others"), m_widget ); - connect( m_rbShare, SIGNAL( toggled(bool) ), SIGNAL( changed() ) ); - vbox->addWidget( m_rbShare, 0 ); - rbGroup->insert( m_rbShare ); - -+ m_rbSharerw = new QRadioButton( i18n("Shared - writeable for others"), m_widget ); -+ connect( m_rbSharerw, SIGNAL( toggled(bool) ), SIGNAL( changed() ) ); -+ vbox->addWidget( m_rbSharerw, 0 ); -+ rbGroup->insert( m_rbSharerw ); -+ -+ //QLabel *testlabel1 = new QLabel(i18n("Enter Samba Share Name here"),m_widget); -+ //m_leSmbShareName = new QLineEdit(m_widget); -+ //m_leSmbShareName->setMaxLength(12); -+ -+ //hbox->addWidget( testlabel1, 0 ); -+ //hbox->addWidget( m_leSmbShareName ); -+ //vbox->addLayout( hbox ); -+ - // Activate depending on status - if ( allShared ) -- m_rbShare->setChecked(true); -+ m_rbSharerw->setChecked(true); - if ( allUnshared ) - m_rbUnShare->setChecked(true); -+ if ( allreadonly ) -+ m_rbShare->setChecked(true); - - // Some help text - QLabel *label = new QLabel( i18n("Sharing this folder makes it available under Linux/UNIX (NFS) and Windows (Samba).") , m_widget ); -@@ -204,7 +235,7 @@ - void KFileSharePropsPlugin::applyChanges() - { - kdDebug() << "KFileSharePropsPlugin::applyChanges" << endl; -- if ( m_rbShare && m_rbUnShare ) -+ if ( m_rbShare && m_rbUnShare && m_rbSharerw ) - { - bool share = m_rbShare->isChecked(); - KFileItemList items = properties->items(); -@@ -212,7 +243,7 @@ - bool ok = true; - for ( ; it.current() && ok; ++it ) { - QString path = (*it)->url().path(); -- ok = setShared( path, share ); -+ ok = SuSEsetShared( path, share, m_rbSharerw->isChecked() ); - if (!ok) { - if (share) - KMessageBox::detailedError(properties, -@@ -239,8 +270,14 @@ - - bool KFileSharePropsPlugin::setShared( const QString& path, bool shared ) - { -- kdDebug() << "KFileSharePropsPlugin::setShared " << path << "," << shared << endl; -- return KFileShare::setShared( path, shared ); -+ return SuSEsetShared( path, shared, true ); -+} -+ -+bool KFileSharePropsPlugin::SuSEsetShared( const QString& path, bool shared, bool readonly ) -+{ -+ kdDebug() << "KFileSharePropsPlugin::setShared " << path << "," -+ << shared << readonly << endl; -+ return KFileShare::SuSEsetShared( path, shared, readonly ); - } - - QWidget* KFileSharePropsPlugin::page() const ---- kio/kfile/kfilesharedlg.h -+++ kio/kfile/kfilesharedlg.h 2004/08/06 08:38:31 -@@ -54,10 +54,13 @@ - private: - void init(); - bool setShared( const QString&path, bool shared ); -+ bool SuSEsetShared( const QString&path, bool shared, bool readonly ); - - QWidget *m_widget; - QRadioButton *m_rbShare; -+ QRadioButton *m_rbSharerw; - QRadioButton *m_rbUnShare; -+ //QLineEdit *m_leSmbShareName; - QPushButton *m_pbConfig; - class Private; - Private *d; ---- kio/kio/kfileshare.cpp -+++ kio/kio/kfileshare.cpp 2004/08/06 08:38:51 -@@ -20,6 +20,7 @@ - #include "kfileshare.h" - #include - #include -+#include - #include - #include - #include -@@ -35,8 +36,10 @@ - #include - - KFileShare::Authorization KFileShare::s_authorization = NotInitialized; --QStringList* KFileShare::s_shareList = 0L; --static KStaticDeleter sdShareList; -+//QStringList* KFileShare::s_shareList = 0L; -+//static KStaticDeleter sdShareList; -+QMap* KFileShare::s_shareMap = 0L; -+static KStaticDeleter > sdShareMap; - - KFileShare::ShareMode KFileShare::s_shareMode; - bool KFileShare::s_sambaEnabled; -@@ -164,10 +167,10 @@ - void KFileShare::readShareList() - { - KFileSharePrivate::self(); -- if ( !s_shareList ) -- sdShareList.setObject( s_shareList, new QStringList ); -+ if ( !s_shareMap ) -+ sdShareMap.setObject( s_shareMap, new QMap ); - else -- s_shareList->clear(); -+ s_shareMap->clear(); - - // /usr/sbin on Mandrake, $PATH allows flexibility for other distributions - QString exe = findExe( "filesharelist" ); -@@ -185,29 +188,45 @@ - - // Reading code shamelessly stolen from khostname.cpp ;) - QString line; -+ QString options; -+ QString path; - int length; -+ QRegExp rx_line("([^\\s]+)\\s+(.*)"); - do { - length = proc.readln(line, true); - if ( length > 0 ) - { - if ( line[length-1] != '/' ) - line += '/'; -- s_shareList->append(line); -+ if( rx_line.search( line ) != -1 ) { -+ options = rx_line.cap(1); -+ path = rx_line.cap(2); -+ (*s_shareMap)[path] = options; -+ } - kdDebug(7000) << "Shared dir:" << line << endl; - } - } while (length > -1); - } - - --bool KFileShare::isDirectoryShared( const QString& _path ) -+int KFileShare::isDirectoryShared( const QString& _path ) - { -- if ( ! s_shareList ) -+ int ret(0); -+ -+ if ( ! s_shareMap ) - readShareList(); - - QString path( _path ); - if ( path[path.length()-1] != '/' ) - path += '/'; -- return s_shareList && s_shareList->contains( path ); -+ //return s_shareList && s_shareList->contains( path ); -+ if( (*s_shareMap).contains(path) && !((*s_shareMap)[path].isEmpty()) ) { -+ ret+=1; -+ if( (*s_shareMap)[path].find("readwrite") != -1 ) -+ ret+=2; -+ } -+ -+ return ret; - } - - KFileShare::Authorization KFileShare::authorization() -@@ -230,17 +249,30 @@ - - bool KFileShare::setShared( const QString& path, bool shared ) - { -+ return SuSEsetShared( path, shared, false ); -+} -+ -+bool KFileShare::SuSEsetShared( const QString& path, bool shared, bool rw ) -+{ - if (! KFileShare::sharingEnabled() || - KFileShare::shareMode() == Advanced) - return false; - -- kdDebug(7000) << "KFileShare::setShared " << path << "," << shared << endl; - QString exe = KFileShare::findExe( "fileshareset" ); - if (exe.isEmpty()) - return false; -- -+ -+ // we want to share, so we kick it first - just to be sure - KProcess proc; - proc << exe; -+ proc << "--remove"; -+ proc << path; -+ proc.start( KProcess::Block ); -+ proc.clearArguments(); -+ -+ proc << exe; -+ if( rw ) -+ proc << "--rw"; - if ( shared ) - proc << "--add"; - else ---- kio/kio/kfileshare.h -+++ kio/kio/kfileshare.h 2004/08/06 08:38:31 -@@ -65,7 +65,7 @@ - /** - * Call this to know if a directory is currently shared - */ -- static bool isDirectoryShared( const QString& path ); -+ static int isDirectoryShared( const QString& path ); - - enum Authorization { NotInitialized, ErrorNotFound, Authorized, UserNotAllowed }; - /** -@@ -83,7 +83,12 @@ - * @returns wether the perl script was successful - */ - static bool setShared( const QString& path, bool shared ); -- -+ -+ /* -+ * SuSE only enhancement for now -+ */ -+ static bool SuSEsetShared( const QString& path, bool shared, bool ro ); -+ - /** - * The used share mode. - * Simple means that the simple sharing dialog is used and -@@ -132,7 +137,8 @@ - - private: - static Authorization s_authorization; -- static QStringList* s_shareList; -+// static QStringList* s_shareList; -+ static QMap* s_shareMap; - static ShareMode s_shareMode; - static bool s_sambaEnabled; - static bool s_nfsEnabled; diff --git a/opensuse/core/tdelibs/fix-dcopidlng-within-kdelibs-build.diff b/opensuse/core/tdelibs/fix-dcopidlng-within-kdelibs-build.diff index bac35d2b4..76caf2f77 100644 --- a/opensuse/core/tdelibs/fix-dcopidlng-within-kdelibs-build.diff +++ b/opensuse/core/tdelibs/fix-dcopidlng-within-kdelibs-build.diff @@ -2,15 +2,15 @@ Index: dcop/dcopidlng/dcopidlng =================================================================== --- dcop/dcopidlng/dcopidlng.orig +++ dcop/dcopidlng/dcopidlng -@@ -5,7 +5,11 @@ trap "rm -f dcopidlng.stderr.$$" 0 1 2 1 +@@ -6,7 +6,11 @@ trap "rm -f dcopidlng.stderr.$$" 0 1 2 1 if test -z "$KDECONFIG"; then - KDECONFIG=kde-config + KDECONFIG=tde-config fi -+if type kde-config > /dev/null; then ++if type tde-config > /dev/null; then LIBDIR="`$KDECONFIG --install data --expandvars`/dcopidlng" +else +LIBDIR="${0%/*}" +fi - perl -I"$LIBDIR" "$LIBDIR/kalyptus" --allow_k_dcop_accessors -f dcopidl $1 2> dcopidlng.stderr.$$ + perl -I"$LIBDIR" "$LIBDIR/kalyptus" --allow_k_dcop_accessors -f dcopidl $1 2> $tmpfile RET=$? if [ $RET -ne 0 ] diff --git a/opensuse/core/tdelibs/fix-gnome-help-support.diff b/opensuse/core/tdelibs/fix-gnome-help-support.diff index c9778f9bf..78921f3b3 100644 --- a/opensuse/core/tdelibs/fix-gnome-help-support.diff +++ b/opensuse/core/tdelibs/fix-gnome-help-support.diff @@ -2,14 +2,14 @@ Index: kdoctools/kio_help.cpp =================================================================== --- kdoctools/kio_help.cpp.orig +++ kdoctools/kio_help.cpp -@@ -44,7 +44,27 @@ QString HelpProtocol::langLookup(const Q +@@ -44,7 +44,27 @@ TQString HelpProtocol::langLookup(const // assemble the local search paths - const QStringList localDoc = KGlobal::dirs()->resourceDirs("html"); + const TQStringList localDoc = KGlobal::dirs()->resourceDirs("html") + KGlobal::dirs()->resourceDirs("html-bundle"); + kdDebug( 7119 ) << "Looking up help for: " << fname << endl; -+ QString _fname = fname; ++ TQString _fname = fname; + -+ QString path; ++ TQString path; + int slash = _fname.findRev ('/'); + if (slash == -1 || slash == 0) { + path = _fname; @@ -19,34 +19,34 @@ Index: kdoctools/kio_help.cpp + _fname = _fname.right (_fname.length() - slash); + } + - QStringList langs = KGlobal::locale()->languageList(); -+ QStringList::ConstIterator lang; + TQStringList langs = KGlobal::locale()->languageList(); ++ TQStringList::ConstIterator lang; + for (lang = langs.begin(); lang != langs.end(); ++lang) + if ((*lang).left(2) == "en") -+ search.append(QString("/usr/share/gnome/help/%1/C%2").arg(path).arg(_fname)); ++ search.append(TQString("/usr/share/gnome/help/%1/C%2").arg(path).arg(_fname)); + else -+ search.append(QString("/usr/share/gnome/help/%1/%2%3").arg(path).arg(*lang).arg(_fname)); ++ search.append(TQString("/usr/share/gnome/help/%1/%2%3").arg(path).arg(*lang).arg(_fname)); + langs.append( "en" ); langs.remove( "C" ); -@@ -60,7 +80,7 @@ QString HelpProtocol::langLookup(const Q +@@ -60,7 +80,7 @@ TQString HelpProtocol::langLookup(const { - QStringList::ConstIterator lang; + TQStringList::ConstIterator lang; for (lang = langs.begin(); lang != langs.end(); ++lang) -- search.append(QString("%1%2/%3").arg(localDoc[id], *lang, fname)); -+ search.append(QString("%1%2/%3").arg(localDoc[id], *lang, path + _fname)); +- search.append(TQString("%1%2/%3").arg(localDoc[id], *lang, fname)); ++ search.append(TQString("%1%2/%3").arg(localDoc[id], *lang, path + _fname)); } // try to locate the file -@@ -81,6 +101,15 @@ QString HelpProtocol::langLookup(const Q +@@ -81,6 +101,15 @@ TQString HelpProtocol::langLookup(const if (info.exists() && info.isFile() && info.isReadable()) return *it; } + + if ( ( *it ).right( 5 ) == ".html" ) + { -+ QString file = (*it).left((*it).findRev('/')) + "/" + path + ".xml"; ++ TQString file = (*it).left((*it).findRev('/')) + "/" + path + ".xml"; + kdDebug( 7119 ) << "Looking for help in: " << file << endl; + info.setFile(file); + if (info.exists() && info.isFile() && info.isReadable()) @@ -55,7 +55,7 @@ Index: kdoctools/kio_help.cpp } -@@ -100,7 +129,7 @@ QString HelpProtocol::lookupFile(const Q +@@ -100,7 +129,7 @@ TQString HelpProtocol::lookupFile(const result = langLookup(path); if (result.isEmpty()) { @@ -67,16 +67,16 @@ Index: kdoctools/kio_help.cpp @@ -190,12 +219,26 @@ void HelpProtocol::get( const KURL& url } } else { - QString docbook_file = file.left(file.findRev('/')) + "/index.docbook"; + TQString docbook_file = file.left(file.findRev('/')) + "/index.docbook"; + int last_slash = file.findRev('/'); + if (last_slash != -1 && last_slash != 0) { + int slash2 = file.findRev('/', last_slash -1); + if (slash2 != -1 && slash2 != 0) { + int slash3 = file.findRev('/', slash2 - 1); + if (slash3 != -1) { -+ QString xml_file = file.left(file.findRev('/')) + "/" + file.mid(slash3 + 1, slash2 - (slash3 + 1)) + ".xml"; ++ TQString xml_file = file.left(file.findRev('/')) + "/" + file.mid(slash3 + 1, slash2 - (slash3 + 1)) + ".xml"; + kdDebug( 7119 ) << "xml_file " << xml_file << endl; -+ QFileInfo fi(xml_file); ++ TQFileInfo fi(xml_file); + if (fi.exists()) + docbook_file = xml_file; + } @@ -85,7 +85,7 @@ Index: kdoctools/kio_help.cpp if (!KStandardDirs::exists(file)) { file = docbook_file; } else { - QFileInfo fi(file); + TQFileInfo fi(file); if (fi.isDir()) { - file = file + "/index.docbook"; + file = docbook_file; @@ -96,8 +96,8 @@ Index: kdoctools/kio_help.cpp mParsed = transform(file, locate("dtd", "customization/kde-chunk.xsl")); if ( !mParsed.isEmpty() ) { infoMessage( i18n( "Saving to cache" ) ); -- QString cache = file.left( file.length() - 7 ); -+ QString cache; +- TQString cache = file.left( file.length() - 7 ); ++ TQString cache; + if (file.endsWith(".xml")) + cache = file.left( file.length() - strlen ("xml") ); + else @@ -109,22 +109,22 @@ Index: kdoctools/xslt.cpp =================================================================== --- kdoctools/xslt.cpp.orig +++ kdoctools/xslt.cpp -@@ -278,10 +278,16 @@ static bool readCache( const QString &fi - QString lookForCache( const QString &filename ) +@@ -278,10 +278,16 @@ static bool readCache( const TQString &f + TQString lookForCache( const TQString &filename ) { kdDebug() << "lookForCache " << filename << endl; - assert( filename.endsWith( ".docbook" ) ); + assert( filename.endsWith( ".docbook" ) || filename.endsWith( ".xml" ) ); assert( filename.at( 0 ) == '/' ); -- QString cache = filename.left( filename.length() - 7 ); -+ QString cache; +- TQString cache = filename.left( filename.length() - 7 ); ++ TQString cache; + + if (filename.endsWith( ".xml" )) + cache = filename.left( filename.length() - strlen ("xml") ); + else + cache = filename.left( filename.length() - strlen ("docbook") ); + - QString output; + TQString output; if ( readCache( filename, cache + "cache.bz2", output) ) return output; diff --git a/opensuse/core/tdelibs/fix-gnome-help-support_legacy.diff b/opensuse/core/tdelibs/fix-gnome-help-support_legacy.diff index 0e2922e41..5db880383 100644 --- a/opensuse/core/tdelibs/fix-gnome-help-support_legacy.diff +++ b/opensuse/core/tdelibs/fix-gnome-help-support_legacy.diff @@ -2,12 +2,12 @@ +++ kdoctools/kio_help.cpp @@ -44,7 +44,27 @@ // assemble the local search paths - const QStringList localDoc = KGlobal::dirs()->resourceDirs("html"); + const TQStringList localDoc = KGlobal::dirs()->resourceDirs("html") + KGlobal::dirs()->resourceDirs("html-bundle"); + kdDebug( 7119 ) << "Looking up help for: " << fname << endl; -+ QString _fname = fname; ++ TQString _fname = fname; + -+ QString path; ++ TQString path; + int slash = _fname.findRev ('/'); + if (slash == -1 || slash == 0) { + path = _fname; @@ -17,23 +17,23 @@ + _fname = _fname.right (_fname.length() - slash); + } + - QStringList langs = KGlobal::locale()->languageList(); -+ QStringList::ConstIterator lang; + TQStringList langs = KGlobal::locale()->languageList(); ++ TQStringList::ConstIterator lang; + for (lang = langs.begin(); lang != langs.end(); ++lang) + if ((*lang).left(2) == "en") -+ search.append(QString("/opt/gnome/share/gnome/help/%1/C%2").arg(path).arg(_fname)); ++ search.append(TQString("/opt/gnome/share/gnome/help/%1/C%2").arg(path).arg(_fname)); + else -+ search.append(QString("/opt/gnome/share/gnome/help/%1/%2%3").arg(path).arg(*lang).arg(_fname)); ++ search.append(TQString("/opt/gnome/share/gnome/help/%1/%2%3").arg(path).arg(*lang).arg(_fname)); + langs.append( "en" ); langs.remove( "C" ); @@ -60,7 +80,7 @@ { - QStringList::ConstIterator lang; + TQStringList::ConstIterator lang; for (lang = langs.begin(); lang != langs.end(); ++lang) -- search.append(QString("%1%2/%3").arg(localDoc[id], *lang, fname)); -+ search.append(QString("%1%2/%3").arg(localDoc[id], *lang, path + _fname)); +- search.append(TQString("%1%2/%3").arg(localDoc[id], *lang, fname)); ++ search.append(TQString("%1%2/%3").arg(localDoc[id], *lang, path + _fname)); } // try to locate the file @@ -44,7 +44,7 @@ + + if ( ( *it ).right( 5 ) == ".html" ) + { -+ QString file = (*it).left((*it).findRev('/')) + "/" + path + ".xml"; ++ TQString file = (*it).left((*it).findRev('/')) + "/" + path + ".xml"; + kdDebug( 7119 ) << "Looking for help in: " << file << endl; + info.setFile(file); + if (info.exists() && info.isFile() && info.isReadable()) @@ -65,16 +65,16 @@ @@ -190,12 +219,26 @@ } } else { - QString docbook_file = file.left(file.findRev('/')) + "/index.docbook"; + TQString docbook_file = file.left(file.findRev('/')) + "/index.docbook"; + int last_slash = file.findRev('/'); + if (last_slash != -1 && last_slash != 0) { + int slash2 = file.findRev('/', last_slash -1); + if (slash2 != -1 && slash2 != 0) { + int slash3 = file.findRev('/', slash2 - 1); + if (slash3 != -1) { -+ QString xml_file = file.left(file.findRev('/')) + "/" + file.mid(slash3 + 1, slash2 - (slash3 + 1)) + ".xml"; ++ TQString xml_file = file.left(file.findRev('/')) + "/" + file.mid(slash3 + 1, slash2 - (slash3 + 1)) + ".xml"; + kdDebug( 7119 ) << "xml_file " << xml_file << endl; -+ QFileInfo fi(xml_file); ++ TQFileInfo fi(xml_file); + if (fi.exists()) + docbook_file = xml_file; + } @@ -83,7 +83,7 @@ if (!KStandardDirs::exists(file)) { file = docbook_file; } else { - QFileInfo fi(file); + TQFileInfo fi(file); if (fi.isDir()) { - file = file + "/index.docbook"; + file = docbook_file; @@ -94,8 +94,8 @@ mParsed = transform(file, locate("dtd", "customization/kde-chunk.xsl")); if ( !mParsed.isEmpty() ) { infoMessage( i18n( "Saving to cache" ) ); -- QString cache = file.left( file.length() - 7 ); -+ QString cache; +- TQString cache = file.left( file.length() - 7 ); ++ TQString cache; + if (file.endsWith(".xml")) + cache = file.left( file.length() - strlen ("xml") ); + else @@ -105,22 +105,22 @@ "cache.bz2" ) ); --- kdoctools/xslt.cpp +++ kdoctools/xslt.cpp -@@ -274,10 +274,16 @@ - QString lookForCache( const QString &filename ) +@@ -278,10 +278,16 @@ + TQString lookForCache( const TQString &filename ) { kdDebug() << "lookForCache " << filename << endl; - assert( filename.endsWith( ".docbook" ) ); + assert( filename.endsWith( ".docbook" ) || filename.endsWith( ".xml" ) ); - assert( filename.at( 0 ) == '/' ); + assert( filename.tqat( 0 ) == '/' ); -- QString cache = filename.left( filename.length() - 7 ); -+ QString cache; +- TQString cache = filename.left( filename.length() - 7 ); ++ TQString cache; + + if (filename.endsWith( ".xml" )) + cache = filename.left( filename.length() - strlen ("xml") ); + else + cache = filename.left( filename.length() - strlen ("docbook") ); + - QString output; + TQString output; if ( readCache( filename, cache + "cache.bz2", output) ) return output; diff --git a/opensuse/core/tdelibs/fix-kdemm-build.diff b/opensuse/core/tdelibs/fix-kdemm-build.diff deleted file mode 100644 index befe5e324..000000000 --- a/opensuse/core/tdelibs/fix-kdemm-build.diff +++ /dev/null @@ -1,88 +0,0 @@ -Index: kdemm/backend.h -=================================================================== ---- kdemm/backend.h.orig -+++ kdemm/backend.h -@@ -41,7 +41,7 @@ namespace Multimedia - * \author Matthias Kretz - * \since 4.0 - */ -- class Backend : public QObject -+ class KDE_EXPORT Backend : public QObject - { - Q_OBJECT - public: -Index: kdemm/channel.h -=================================================================== ---- kdemm/channel.h.orig -+++ kdemm/channel.h -@@ -34,7 +34,7 @@ namespace Multimedia - * \author Matthias Kretz - * \since 4.0 - */ -- class Channel : public QObject, virtual public MixerIface -+ class KDE_EXPORT Channel : public QObject, virtual public MixerIface - { - Q_OBJECT - public: -Index: kdemm/factory.h -=================================================================== ---- kdemm/factory.h.orig -+++ kdemm/factory.h -@@ -64,7 +64,7 @@ class VideoPlayer; - * \author Matthias Kretz - * \since 4.0 - */ --class Factory : public QObject, public DCOPObject -+class KDE_EXPORT Factory : public QObject, public DCOPObject - { - Q_OBJECT - public: -Index: kdemm/player.h -=================================================================== ---- kdemm/player.h.orig -+++ kdemm/player.h -@@ -20,6 +20,7 @@ - #ifndef PLAYOBJECT_H - #define PLAYOBJECT_H - -+#include - #include - - class KURL; -@@ -35,7 +36,7 @@ namespace Multimedia - * \author Matthias Kretz - * \since 4.0 - */ -- class Player : public QObject -+ class KDE_EXPORT Player : public QObject - { - Q_OBJECT - public: -Index: kdemm/simpleplayer.h -=================================================================== ---- kdemm/simpleplayer.h.orig -+++ kdemm/simpleplayer.h -@@ -32,7 +32,7 @@ namespace KDE - namespace Multimedia - { - --class SimplePlayer : public QObject -+class KDE_EXPORT SimplePlayer : public QObject - { - Q_OBJECT - public: -Index: kdemm/mixeriface.h -=================================================================== ---- kdemm/mixeriface.h.orig -+++ kdemm/mixeriface.h -@@ -21,8 +21,9 @@ - #define MIXERIFACE_H - - #include -+#include - --class MixerIface : public DCOPObject -+class KDE_EXPORT MixerIface : public DCOPObject - { - K_DCOP - k_dcop: diff --git a/opensuse/core/tdelibs/fix-kerberos-printing.diff b/opensuse/core/tdelibs/fix-kerberos-printing.diff deleted file mode 100644 index 0276cdd06..000000000 --- a/opensuse/core/tdelibs/fix-kerberos-printing.diff +++ /dev/null @@ -1,37 +0,0 @@ -Index: kdeprint/management/smbview.cpp -=================================================================== ---- kdeprint/management/smbview.cpp.orig -+++ kdeprint/management/smbview.cpp -@@ -187,13 +187,26 @@ void SmbView::setOpen(QListViewItem *ite - } - else if (item->depth() == 1) - { // opening server -+ char *krb5ccname = getenv ("KRB5CCNAME"); - m_current = item; -- *m_proc << "smbclient -N -L "; -- *m_proc << KProcess::quote(item->text(0)); -- *m_proc << " -W "; -- *m_proc << KProcess::quote(item->parent()->text(0)); -- *m_proc << " -A "; -- *m_proc << KProcess::quote(m_passwdFile->name()); -+ if (krb5ccname) -+ { -+ *m_proc << "smbclient -k -N -L "; -+ } -+ else -+ { -+ *m_proc << "smbclient -N -L "; -+ } -+ *m_proc << KProcess::quote (item->text (0)); -+ *m_proc << " -W "; -+ *m_proc << KProcess::quote (item->parent ()-> -+ text (0)); -+ if (!krb5ccname) -+ { -+ *m_proc << " -A "; -+ *m_proc << KProcess:: -+ quote (m_passwdFile->name ()); -+ } - startProcess(ShareListing); - } - } diff --git a/opensuse/core/tdelibs/fix-macmenu.patch b/opensuse/core/tdelibs/fix-macmenu.patch deleted file mode 100644 index 4b8f6b1cf..000000000 --- a/opensuse/core/tdelibs/fix-macmenu.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- kdeui/kmenubar.cpp.sav 2008-03-08 17:32:38.000000000 +0100 -+++ kdeui/kmenubar.cpp 2009-08-30 09:27:29.000000000 +0200 -@@ -308,7 +308,7 @@ void KMenuBar::updateFallbackSize() - if( d->fallback_mode ) - { - d->fallback_mode = false; --// KWin::setStrut( winId(), 0, 0, 0, 0 ); KWin will set strut as it will see fit -+ KWin::setStrut( winId(), 0, 0, 0, 0 ); - setMinimumSize( 0, 0 ); - setMaximumSize( QWIDGETSIZE_MAX, QWIDGETSIZE_MAX ); - updateMenuBarSize(); diff --git a/opensuse/core/tdelibs/fix-qxembed.diff b/opensuse/core/tdelibs/fix-qxembed.diff deleted file mode 100644 index 8ea18d69d..000000000 --- a/opensuse/core/tdelibs/fix-qxembed.diff +++ /dev/null @@ -1,80 +0,0 @@ -Index: kdeui/qxembed.h -=================================================================== ---- kdeui/qxembed.h.orig -+++ kdeui/qxembed.h -@@ -191,6 +191,11 @@ public: - void enterWhatsThisMode(); // temporary, fix in Qt (Matthias, Mon Jul 17 15:20:55 CEST 2000 ) - virtual void reparent( QWidget * parent, WFlags f, const QPoint & p, bool showIt = false ); - -+ /** -+ * @internal -+ */ -+ void updateEmbeddedFocus( bool hasfocus ); -+ - signals: - /** - * This signal is emitted when the embedded window has been lost (destroyed or reparented away) -Index: kdeui/qxembed.cpp -=================================================================== ---- kdeui/qxembed.cpp.orig -+++ kdeui/qxembed.cpp -@@ -314,8 +314,8 @@ bool QXEmbedAppFilter::eventFilter( QObj - if ( qApp->focusWidget() == o && - ((QPublicWidget*)qApp->focusWidget()->topLevelWidget())->topData()->embedded ) { - QFocusEvent* fe = (QFocusEvent*) e; -- if ( obeyFocus || fe->reason() == QFocusEvent::Mouse || -- fe->reason() == QFocusEvent::Shortcut ) { -+ if ( obeyFocus || fe->reason() != QFocusEvent::ActiveWindow /*|| fe->reason() == QFocusEvent::Mouse || -+ fe->reason() == QFocusEvent::Shortcut*/ ) { - // L0614: A widget in the embedded client was just given the Qt focus. - // Variable `obeyFocus' suggests that this is the result of mouse - // activity in the client. The XEMBED_REQUEST_FOCUS message causes -@@ -478,8 +478,11 @@ static int qxembed_x11_event_filter( XEv - switch ( detail ) { - case XEMBED_FOCUS_CURRENT: - // L0683: Set focus on saved focus widget -- if ( focusCurrent ) -+ if ( focusCurrent ) { - focusCurrent->setFocus(); -+ if( QXEmbed* emb = dynamic_cast< QXEmbed* >( focusCurrent )) -+ emb->updateEmbeddedFocus( true ); -+ } - else if ( !w->topLevelWidget()->focusWidget() ) - w->topLevelWidget()->setFocus(); - break; -@@ -511,6 +514,8 @@ static int qxembed_x11_event_filter( XEv - // We first record what the focus widget was - // and clear the Qt focus. - if ( w->topLevelWidget()->focusWidget() ) { -+ if( QXEmbed* emb = dynamic_cast< QXEmbed* >( w->topLevelWidget()->focusWidget())) -+ emb->updateEmbeddedFocus( false ); - focusMap->insert( w->topLevelWidget(), - new QGuardedPtr(w->topLevelWidget()->focusWidget() ) ); - w->topLevelWidget()->focusWidget()->clearFocus(); -@@ -919,6 +924,17 @@ void QXEmbed::focusOutEvent( QFocusEvent - } - - -+// When QXEmbed has Qt focus and gets/loses X focus, make sure the client knows -+// about the state of the focus. -+void QXEmbed::updateEmbeddedFocus( bool hasfocus ){ -+ if (!window || d->xplain) -+ return; -+ if( hasfocus ) -+ sendXEmbedMessage( window, XEMBED_FOCUS_IN, XEMBED_FOCUS_CURRENT); -+ else -+ sendXEmbedMessage( window, XEMBED_FOCUS_OUT); -+} -+ - // L1600: Helper for QXEmbed::embed() - // Check whether a window is in withdrawn state. - static bool wstate_withdrawn( WId winid ) -@@ -1161,6 +1177,8 @@ bool QXEmbed::x11Event( XEvent* e) - // L2085: The client asks for the focus. - case XEMBED_REQUEST_FOCUS: - if( ((QPublicWidget*)topLevelWidget())->topData()->embedded ) { -+ focusMap->remove( topLevelWidget() ); -+ focusMap->insert( topLevelWidget(), new QGuardedPtr( this )); - WId window = ((QPublicWidget*)topLevelWidget())->topData()->parentWinId; - sendXEmbedMessage( window, XEMBED_REQUEST_FOCUS ); - } else { diff --git a/opensuse/core/tdelibs/flash-player-non-oss.diff b/opensuse/core/tdelibs/flash-player-non-oss.diff index e3bcdc3e4..f6b3da259 100644 --- a/opensuse/core/tdelibs/flash-player-non-oss.diff +++ b/opensuse/core/tdelibs/flash-player-non-oss.diff @@ -1,44 +1,42 @@ -Index: khtml/rendering/render_frames.cpp -=================================================================== ---- khtml/rendering/render_frames.cpp.orig -+++ khtml/rendering/render_frames.cpp -@@ -940,14 +940,33 @@ void RenderPartObject::slotPartLoadingEr - // Prepare the URL to show in the question (host only if http, to make it short) - KURL pluginPageURL( embed->pluginPage ); - QString shortURL = pluginPageURL.protocol() == "http" ? pluginPageURL.host() : pluginPageURL.prettyURL(); -- int res = KMessageBox::questionYesNo( m_view, -- i18n("No plugin found for '%1'.\nDo you want to download one from %2?").arg(mimeName).arg(shortURL), +--- khtml/rendering/render_frames.cpp.orig 2011-12-11 21:10:39.556986274 +0100 ++++ khtml/rendering/render_frames.cpp 2011-12-11 21:19:11.017986213 +0100 +@@ -953,14 +953,33 @@ + // Prepare the URL to show in the question (host only if http, to make it short) + KURL pluginPageURL( embed->pluginPage ); + TQString shortURL = pluginPageURL.protocol() == "http" ? pluginPageURL.host() : pluginPageURL.prettyURL(); +- int res = KMessageBox::questionYesNo( m_view, +- i18n("No plugin found for '%1'.\nDo you want to download one from %2?").arg(mimeName).arg(shortURL), + -+ int res; -+ if (mimeName.startsWith("Shockwave Flash",false)) -+ { -+ res = KMessageBox::questionYesNo( m_view, -+ i18n("No plugin found for '%1'.\nDo you want to download one from %2?").arg(mimeName).arg("openSUSE"), - i18n("Missing Plugin"), i18n("Download"), i18n("Do Not Download"), QString("plugin-")+serviceType); -- if ( res == KMessageBox::Yes ) ++ int res; ++ if (mimeName.startsWith("Shockwave Flash",false)) ++ { ++ res = KMessageBox::questionYesNo( m_view, ++ i18n("No plugin found for '%1'.\nDo you want to download one from %2?").arg(mimeName).arg("openSUSE"), + i18n("Missing Plugin"), i18n("Download"), i18n("Do Not Download"), TQString("plugin-")+serviceType); +- if ( res == KMessageBox::Yes ) + -+ if ( res == KMessageBox::Yes ) -+ { ++ if ( res == KMessageBox::Yes ) ++ { + // Open YMP file + KURL ymp_flash ("http://download.opensuse.org/YaST/flash-player.ymp"); + ext->openURLRequest( ymp_flash ); + return; -+ } -+ } -+ else - { -- // Display vendor download page -- ext->createNewWindow( pluginPageURL ); -- return; -+ res = KMessageBox::questionYesNo( m_view, -+ i18n("No plugin found for '%1'.\nDo you want to download one from %2?").arg(mimeName).arg(shortURL), -+ i18n("Missing Plugin"), i18n("Download"), i18n("Do Not Download"), QString("plugin-")+serviceType); -+ if ( res == KMessageBox::Yes ) -+ { ++ } ++ } ++ else + { +- // Display vendor download page +- ext->createNewWindow( pluginPageURL ); +- return; ++ res = KMessageBox::questionYesNo( m_view, ++ i18n("No plugin found for '%1'.\nDo you want to download one from %2?").arg(mimeName).arg(shortURL), ++ i18n("Missing Plugin"), i18n("Download"), i18n("Do Not Download"), TQString("plugin-")+serviceType); ++ if ( res == KMessageBox::Yes ) ++ { + // Display vendor download page + ext->createNewWindow( pluginPageURL ); + return; -+ } ++ } + } } } - } diff --git a/opensuse/core/tdelibs/fontconfig-reverse-lookup.diff b/opensuse/core/tdelibs/fontconfig-reverse-lookup.diff deleted file mode 100644 index af32e5600..000000000 --- a/opensuse/core/tdelibs/fontconfig-reverse-lookup.diff +++ /dev/null @@ -1,137 +0,0 @@ -Index: kdeui/Makefile.am -=================================================================== ---- kdeui/Makefile.am.orig -+++ kdeui/Makefile.am -@@ -20,7 +20,7 @@ - - SUBDIRS = . kdetrayproxy tests about - --INCLUDES= -I$(top_srcdir)/kdefx -I$(top_srcdir)/interfaces $(all_includes) -+INCLUDES= -I/usr/include/freetype2/ -I$(top_srcdir)/kdefx -I$(top_srcdir)/interfaces $(all_includes) - - # For the future: examine if condensing the tons of *_LDFLAGS variables - # into $(all_libraries) isn't better -Index: kdeui/kaction.cpp -=================================================================== ---- kdeui/kaction.cpp.orig -+++ kdeui/kaction.cpp -@@ -42,6 +42,17 @@ - #include - #include - -+#include -+#include FT_FREETYPE_H -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include -+ - /** - * How it works. - * KActionCollection is an organizing container for KActions. -Index: kdeui/kactionclasses.cpp -=================================================================== ---- kdeui/kactionclasses.cpp.orig -+++ kdeui/kactionclasses.cpp -@@ -27,6 +27,9 @@ - #include "kactionclasses.h" - - #include -+#include -+#include FT_FREETYPE_H -+#include - - #include - #include -@@ -35,6 +38,7 @@ - #include - #include - #include -+#include - - #include - #include -@@ -1498,7 +1502,24 @@ void KFontAction::setFont( const QString - return; - } - } -- kdDebug(129) << "Font not found " << family.lower() << endl; -+ -+ // nothing matched yet, try a fontconfig reverse lookup and -+ // check again to solve an alias -+ FcPattern *pattern = NULL; -+ FcConfig *config = NULL; -+ QString realFamily; -+ QRegExp regExp("[-:]"); -+ pattern = FcNameParse( (unsigned char*) family.ascii() ); -+ FcDefaultSubstitute(pattern); -+ FcConfigSubstitute (config, pattern, FcMatchPattern); -+ pattern = FcFontMatch(NULL, pattern, NULL); -+ realFamily = (char*)FcNameUnparse(pattern); -+ realFamily.remove(realFamily.find(regExp), realFamily.length()); -+ -+ if ( !realFamily.isEmpty() && realFamily != family ) -+ setFont( realFamily ); -+ else -+ kdDebug(129) << "Font not found " << family.lower() << endl; - } - - int KFontAction::plug( QWidget *w, int index ) -Index: kdeui/kfontcombo.cpp -=================================================================== ---- kdeui/kfontcombo.cpp.orig -+++ kdeui/kfontcombo.cpp -@@ -20,6 +20,7 @@ - #include - #include - #include -+#include - - #include - #include -@@ -29,6 +30,18 @@ - #include "kfontcombo.h" - #include "kfontcombo.moc" - -+#include -+#include FT_FREETYPE_H -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include -+ -+ - struct KFontComboPrivate - { - KFontComboPrivate() -@@ -227,6 +240,22 @@ void KFontCombo::setCurrentFont(const QS - return; - } - } -+ -+ // nothing matched yet, try a fontconfig reverse lookup and -+ // check again to solve an alias -+ FcPattern *pattern = NULL; -+ FcConfig *config = NULL; -+ QString realFamily; -+ QRegExp regExp("[-:]"); -+ pattern = FcNameParse( (unsigned char*) family.ascii() ); -+ FcDefaultSubstitute(pattern); -+ FcConfigSubstitute (config, pattern, FcMatchPattern); -+ pattern = FcFontMatch(NULL, pattern, NULL); -+ realFamily = (char*)FcNameUnparse(pattern); -+ realFamily.remove(realFamily.find(regExp), realFamily.length()); -+ -+ if ( !realFamily.isEmpty() && realFamily != family ) -+ setCurrentFont( realFamily ); - } - - void KFontCombo::slotModified( int ) diff --git a/opensuse/core/tdelibs/gcc44.diff b/opensuse/core/tdelibs/gcc44.diff deleted file mode 100644 index f191e1202..000000000 --- a/opensuse/core/tdelibs/gcc44.diff +++ /dev/null @@ -1,20 +0,0 @@ ---- kioslave/ftp/ftp.cc.sav 2009-05-29 13:38:11.000000000 +0200 -+++ kioslave/ftp/ftp.cc 2009-05-29 13:38:38.000000000 +0200 -@@ -876,7 +876,7 @@ int Ftp::ftpOpenPASVDataConnection() - // The usual answer is '227 Entering Passive Mode. (160,39,200,55,6,245)' - // but anonftpd gives '227 =160,39,200,55,6,245' - int i[6]; -- char *start = strchr(ftpResponse(3), '('); -+ const char *start = strchr(ftpResponse(3), '('); - if ( !start ) - start = strchr(ftpResponse(3), '='); - if ( !start || -@@ -931,7 +931,7 @@ int Ftp::ftpOpenEPSVDataConnection() - return ERR_INTERNAL; - } - -- char *start = strchr(ftpResponse(3), '|'); -+ const char *start = strchr(ftpResponse(3), '|'); - if ( !start || sscanf(start, "|||%d|", &portnum) != 1) - return ERR_INTERNAL; - diff --git a/opensuse/core/tdelibs/gcc45.diff b/opensuse/core/tdelibs/gcc45.diff deleted file mode 100644 index a4b8679bf..000000000 --- a/opensuse/core/tdelibs/gcc45.diff +++ /dev/null @@ -1,31 +0,0 @@ ------------------------------------------------------------------------- -r1074156 | mueller | 2010-01-13 16:02:53 +0100 (Mi, 13. Jan 2010) | 2 Zeilen - -fix build with gcc 4.5 - ------------------------------------------------------------------------- -Index: kate/part/katehighlight.cpp -=================================================================== ---- kate/part/katehighlight.cpp (Revision 1074155) -+++ kate/part/katehighlight.cpp (Revision 1074156) -@@ -3225,7 +3225,7 @@ void KateHlManager::getDefaults(uint sch - list.append(charAttribute); - - KateAttribute* string = new KateAttribute(); -- string->setTextColor(QColor::QColor("#D00")); -+ string->setTextColor(QColor("#D00")); - string->setSelectedTextColor(Qt::red); - list.append(string); - -@@ -3242,9 +3242,9 @@ void KateHlManager::getDefaults(uint sch - - KateAttribute* alert = new KateAttribute(); - alert->setTextColor(Qt::black); -- alert->setSelectedTextColor( QColor::QColor("#FCC") ); -+ alert->setSelectedTextColor( QColor("#FCC") ); - alert->setBold(true); -- alert->setBGColor( QColor::QColor("#FCC") ); -+ alert->setBGColor( QColor("#FCC") ); - list.append(alert); - - KateAttribute* functionAttribute = new KateAttribute(); diff --git a/opensuse/core/tdelibs/google-mail.diff b/opensuse/core/tdelibs/google-mail.diff deleted file mode 100644 index 59b132529..000000000 --- a/opensuse/core/tdelibs/google-mail.diff +++ /dev/null @@ -1,18 +0,0 @@ -Index: khtml/html/html_elementimpl.cpp -=================================================================== ---- khtml/html/html_elementimpl.cpp.orig -+++ khtml/html/html_elementimpl.cpp -@@ -565,6 +565,13 @@ DocumentFragment HTMLElementImpl::create - - void HTMLElementImpl::setInnerHTML( const DOMString &html, int &exceptioncode ) - { -+ // Works line innerText in Gecko -+ // ### test if needed for ID_SCRIPT as well. -+ if ( id() == ID_STYLE ) { -+ setInnerText(html, exceptioncode); -+ return; -+ } -+ - DocumentFragment fragment = createContextualFragment( html ); - if ( fragment.isNull() ) { - exceptioncode = DOMException::NO_MODIFICATION_ALLOWED_ERR; diff --git a/opensuse/core/tdelibs/ignore-inline-menu.diff b/opensuse/core/tdelibs/ignore-inline-menu.diff index 106bc5284..09ec6b853 100644 --- a/opensuse/core/tdelibs/ignore-inline-menu.diff +++ b/opensuse/core/tdelibs/ignore-inline-menu.diff @@ -1,14 +1,14 @@ --- kded/vfolder_menu.cpp 2009/11/07 07:01:12 1.1 +++ kded/vfolder_menu.cpp 2009/11/07 07:01:42 -@@ -1496,6 +1496,7 @@ +@@ -1498,6 +1498,7 @@ else kdDebug()<<" Error in parsing show_empty attribute :"<fileName().startsWith("/usr/share/applications/kde4/"); - - config->setDesktopGroup(); - -@@ -133,6 +134,8 @@ KService::init( KDesktopFile *config ) - if (i != -1) - m_strName = m_strName.left(i); - } -+ if (kde4application) -+ m_strName += "/KDE4"; - - m_strType = config->readType(); - entryMap.remove("Type"); -@@ -196,6 +199,18 @@ KService::init( KDesktopFile *config ) - name = name.left(pos); - - m_strExec = config->readPathEntry( "Exec" ); -+ if (kde4application && !m_strExec.startsWith("/")) -+ m_strExec = "/usr/bin/"+m_strExec; -+ else if (config->readBoolEntry("X-KDE-SubstituteUID")) { -+ int space = m_strExec.find(" "); -+ if (space==-1) -+ m_strExec = KStandardDirs::findExe(m_strExec); -+ else { -+ const QString command = m_strExec.left(space); -+ m_strExec.replace(command,KStandardDirs::findExe(command)); -+ } -+ } -+ - entryMap.remove("Exec"); - - m_strIcon = config->readEntry( "Icon", "unknown" ); -@@ -245,6 +260,8 @@ KService::init( KDesktopFile *config ) - m_DCOPServiceType = DCOP_None; - - m_strDesktopEntryName = name.lower(); -+ if (kde4application) -+ m_strDesktopEntryName = "kde4-" + m_strDesktopEntryName; - - m_bAllowAsDefault = config->readBoolEntry( "AllowDefault", true ); - entryMap.remove("AllowDefault"); -@@ -254,6 +271,8 @@ KService::init( KDesktopFile *config ) - if ( m_initialPreference == 1 ) - m_initialPreference = config->readNumEntry( "InitialPreference", 1 ); - entryMap.remove("InitialPreference"); -+ if (kde4application) -+ m_initialPreference = 1; - - // Store all additional entries in the property map. - // A QMap would be easier for this but we can't -@@ -263,7 +282,10 @@ KService::init( KDesktopFile *config ) - for( ; it != entryMap.end();++it) - { - //qDebug(" Key = %s Data = %s", it.key().latin1(), it.data().latin1()); -- m_mapProps.insert( it.key(), QVariant( it.data())); -+ QString key = it.key(); -+ if (kde4application && key=="OnlyShowIn" && it.data()=="KDE;") -+ key = "NotShowIn"; -+ m_mapProps.insert( key, QVariant( it.data())); - } - } - diff --git a/opensuse/core/tdelibs/kdecode_fakes_include.diff b/opensuse/core/tdelibs/kdecode_fakes_include.diff deleted file mode 100644 index a00585286..000000000 --- a/opensuse/core/tdelibs/kdecode_fakes_include.diff +++ /dev/null @@ -1,18 +0,0 @@ ---- kdecore/fakes.c -+++ kdecore/fakes.c 2010/01/10 14:00:22 -@@ -323,6 +323,7 @@ - #endif - - #ifndef HAVE_STRLCPY -+#include - KDECORE_EXPORT unsigned long strlcpy(char* d, const char* s, unsigned long bufsize) - { - unsigned long len, ret = strlen(s); -@@ -341,6 +342,7 @@ - #endif - - #ifndef HAVE_STRLCAT -+#include - KDECORE_EXPORT unsigned long strlcat(char* d, const char* s, unsigned long bufsize) - { - char *cp; diff --git a/opensuse/core/tdelibs/kdelibs-3.5.10-CVE-2009-2702.patch b/opensuse/core/tdelibs/kdelibs-3.5.10-CVE-2009-2702.patch deleted file mode 100644 index e6f06a779..000000000 --- a/opensuse/core/tdelibs/kdelibs-3.5.10-CVE-2009-2702.patch +++ /dev/null @@ -1,62 +0,0 @@ -diff -pruN kdelibs-3.5.4.orig/kio/kssl/kopenssl.cc kdelibs-3.5.4/kio/kssl/kopenssl.cc ---- kdelibs-3.5.4.orig/kio/kssl/kopenssl.cc 2009-08-31 20:50:12.000000000 +0200 -+++ kdelibs-3.5.4/kio/kssl/kopenssl.cc 2009-08-31 21:46:47.000000000 +0200 -@@ -196,6 +196,7 @@ static int (*K_X509_NAME_add_entry_by_tx - static X509_NAME *(*K_X509_NAME_new)() = 0L; - static int (*K_X509_REQ_set_subject_name)(X509_REQ*,X509_NAME*) = 0L; - static unsigned char *(*K_ASN1_STRING_data)(ASN1_STRING*) = 0L; -+static int (*K_ASN1_STRING_length)(ASN1_STRING*) = 0L; - static STACK_OF(SSL_CIPHER) *(*K_SSL_get_ciphers)(const SSL *ssl) = 0L; - - #endif -@@ -498,6 +499,7 @@ KConfig *cfg; - K_X509_NAME_new = (X509_NAME *(*)()) _cryptoLib->symbol("X509_NAME_new"); - K_X509_REQ_set_subject_name = (int (*)(X509_REQ*,X509_NAME*)) _cryptoLib->symbol("X509_REQ_set_subject_name"); - K_ASN1_STRING_data = (unsigned char *(*)(ASN1_STRING*)) _cryptoLib->symbol("ASN1_STRING_data"); -+ K_ASN1_STRING_length = (int (*)(ASN1_STRING*)) _cryptoLib->symbol("ASN1_STRING_length"); - #endif - } - -@@ -1549,6 +1551,13 @@ unsigned char *KOpenSSLProxy::ASN1_STRIN - return 0L; - } - -+ -+int KOpenSSLProxy::ASN1_STRING_length(ASN1_STRING *x) { -+ if (K_ASN1_STRING_length) return (K_ASN1_STRING_length)(x); -+ return 0L; -+} -+ -+ - STACK_OF(SSL_CIPHER) *KOpenSSLProxy::SSL_get_ciphers(const SSL* ssl) { - if (K_SSL_get_ciphers) return (K_SSL_get_ciphers)(ssl); - return 0L; -diff -pruN kdelibs-3.5.4.orig/kio/kssl/kopenssl.h kdelibs-3.5.4/kio/kssl/kopenssl.h ---- kdelibs-3.5.4.orig/kio/kssl/kopenssl.h 2006-07-22 10:16:39.000000000 +0200 -+++ kdelibs-3.5.4/kio/kssl/kopenssl.h 2009-08-31 21:46:47.000000000 +0200 -@@ -622,6 +622,11 @@ public: - unsigned char *ASN1_STRING_data(ASN1_STRING *x); - - /* -+ * ASN1_STRING_length -+ */ -+ int ASN1_STRING_length(ASN1_STRING *x); -+ -+ /* - * - */ - int OBJ_obj2nid(ASN1_OBJECT *o); -diff -pruN kdelibs-3.5.4.orig/kio/kssl/ksslcertificate.cc kdelibs-3.5.4/kio/kssl/ksslcertificate.cc ---- kdelibs-3.5.4.orig/kio/kssl/ksslcertificate.cc 2006-01-19 18:06:12.000000000 +0100 -+++ kdelibs-3.5.4/kio/kssl/ksslcertificate.cc 2009-08-31 21:54:38.000000000 +0200 -@@ -1099,7 +1099,9 @@ QStringList KSSLCertificate::subjAltName - } - - QString s = (const char *)d->kossl->ASN1_STRING_data(val->d.ia5); -- if (!s.isEmpty()) { -+ if (!s.isEmpty() && -+ /* skip subjectAltNames with embedded NULs */ -+ s.length() == d->kossl->ASN1_STRING_length(val->d.ia5)) { - rc += s; - } - } diff --git a/opensuse/core/tdelibs/kdelibs-3.5.10-cve-2009-1698.patch b/opensuse/core/tdelibs/kdelibs-3.5.10-cve-2009-1698.patch deleted file mode 100644 index ab9fea5c2..000000000 --- a/opensuse/core/tdelibs/kdelibs-3.5.10-cve-2009-1698.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff -ur kdelibs-3.5.10/khtml/css/cssparser.cpp kdelibs-3.5.10-cve-2009-1698/khtml/css/cssparser.cpp ---- kdelibs-3.5.10/khtml/css/cssparser.cpp 2007-01-15 12:34:04.000000000 +0100 -+++ kdelibs-3.5.10-cve-2009-1698/khtml/css/cssparser.cpp 2009-07-26 05:46:39.000000000 +0200 -@@ -1344,6 +1344,14 @@ - if ( args->size() != 1) - return false; - Value *a = args->current(); -+ if (a->unit != CSSPrimitiveValue::CSS_IDENT) { -+ isValid=false; -+ break; -+ } -+ if (qString(a->string)[0] == '-') { -+ isValid=false; -+ break; -+ } - parsedValue = new CSSPrimitiveValueImpl(domString(a->string), CSSPrimitiveValue::CSS_ATTR); - } - else -@@ -1396,7 +1404,8 @@ - - CounterImpl *counter = new CounterImpl; - Value *i = args->current(); --// if (i->unit != CSSPrimitiveValue::CSS_IDENT) goto invalid; -+ if (i->unit != CSSPrimitiveValue::CSS_IDENT) goto invalid; -+ if (qString(i->string)[0] == '-') goto invalid; - counter->m_identifier = domString(i->string); - if (counters) { - i = args->next(); -diff -ur kdelibs-3.5.10/khtml/css/css_valueimpl.cpp kdelibs-3.5.10-cve-2009-1698/khtml/css/css_valueimpl.cpp ---- kdelibs-3.5.10/khtml/css/css_valueimpl.cpp 2006-07-22 10:16:49.000000000 +0200 -+++ kdelibs-3.5.10-cve-2009-1698/khtml/css/css_valueimpl.cpp 2009-07-26 05:45:36.000000000 +0200 -@@ -736,7 +736,9 @@ - text = getValueName(m_value.ident); - break; - case CSSPrimitiveValue::CSS_ATTR: -- // ### -+ text = "attr("; -+ text += DOMString( m_value.string ); -+ text += ")"; - break; - case CSSPrimitiveValue::CSS_COUNTER: - text = "counter("; diff --git a/opensuse/core/tdelibs/kdelibs-3.5.10-cve-2009-1725.patch b/opensuse/core/tdelibs/kdelibs-3.5.10-cve-2009-1725.patch deleted file mode 100644 index ee8fdbc3f..000000000 --- a/opensuse/core/tdelibs/kdelibs-3.5.10-cve-2009-1725.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: khtml/html/htmltokenizer.cpp -=================================================================== ---- khtml/html/htmltokenizer.cpp (revision 1002163) -+++ khtml/html/htmltokenizer.cpp (revision 1002164) -@@ -736,7 +736,7 @@ - #ifdef TOKEN_DEBUG - kdDebug( 6036 ) << "unknown entity!" << endl; - #endif -- checkBuffer(10); -+ checkBuffer(11); - // ignore the sequence, add it to the buffer as plaintext - *dest++ = '&'; - for(unsigned int i = 0; i < cBufferPos; i++) diff --git a/opensuse/core/tdelibs/kdelibs-3.5.10-kio.patch b/opensuse/core/tdelibs/kdelibs-3.5.10-kio.patch index 9fb299d4a..8cba39f49 100644 --- a/opensuse/core/tdelibs/kdelibs-3.5.10-kio.patch +++ b/opensuse/core/tdelibs/kdelibs-3.5.10-kio.patch @@ -4,12 +4,12 @@ return true; } -+bool KZip::writeDir(const QString& name, const QString& user, const QString& group) ++bool KZip::writeDir(const TQString& name, const TQString& user, const TQString& group) +{ + // Zip files have no explicit directories, they are implicitly created during extraction time + // when file entries have paths in them. + // However, to support empty directories, we must create a dummy file entry which ends with '/'. -+ QString dirName = name; ++ TQString dirName = name; + if (!name.endsWith("/")) + dirName = dirName.append('/'); + @@ -19,17 +19,8 @@ +} + // Doesn't need to be reimplemented anymore. Remove for KDE-4.0 - bool KZip::writeFile( const QString& name, const QString& user, const QString& group, uint size, const char* data ) + bool KZip::writeFile( const TQString& name, const TQString& user, const TQString& group, uint size, const char* data ) { -@@ -1114,7 +1128,7 @@ - } - - // delete entries in the filelist with the same filename as the one we want -- // to save, so that we dont have duplicate file entries when viewing the zip -+ // to save, so that we don�t have duplicate file entries when viewing the zip - // with konqi... - // CAUTION: the old file itself is still in the zip and won't be removed !!! - QPtrListIterator it( d->m_fileList ); diff -up kdelibs-3.5.10/kio/kio/kzip.h.orig kdelibs-3.5.10/kio/kio/kzip.h --- kdelibs-3.5.10/kio/kio/kzip.h.orig 2009-12-09 19:35:42.000000000 +0100 +++ kdelibs-3.5.10/kio/kio/kzip.h 2009-12-09 19:35:48.000000000 +0100 @@ -40,8 +31,8 @@ diff -up kdelibs-3.5.10/kio/kio/kzip.h.orig kdelibs-3.5.10/kio/kio/kzip.h - /** - * @internal Not needed for zip - */ -- virtual bool writeDir( const QString& name, const QString& user, const QString& group) { Q_UNUSED(name); Q_UNUSED(user); Q_UNUSED(group); return true; } -+ virtual bool writeDir(const QString& name, const QString& user, const QString& group); +- virtual bool writeDir( const TQString& name, const TQString& user, const TQString& group) { Q_UNUSED(name); Q_UNUSED(user); Q_UNUSED(group); return true; } ++ virtual bool writeDir(const TQString& name, const TQString& user, const TQString& group); // TODO(BIC) uncomment and make virtual for KDE 4. - // bool writeDir( const QString& name, const QString& user, const QString& group, + // bool writeDir( const TQString& name, const TQString& user, const TQString& group, // mode_t perm, time_t atime, time_t mtime, time_t ctime ); diff --git a/opensuse/core/tdelibs/kdelibs-3.5.10-latex-syntax-kile-2.0.3.patch b/opensuse/core/tdelibs/kdelibs-3.5.10-latex-syntax-kile-2.0.3.patch deleted file mode 100644 index 450dd1fe8..000000000 --- a/opensuse/core/tdelibs/kdelibs-3.5.10-latex-syntax-kile-2.0.3.patch +++ /dev/null @@ -1,143 +0,0 @@ -diff -ur kdelibs-3.5.10/kate/data/latex.xml kdelibs-3.5.10-latex-syntax-kile-2.0.3/kate/data/latex.xml ---- kdelibs-3.5.10/kate/data/latex.xml 2007-05-14 09:52:27.000000000 +0200 -+++ kdelibs-3.5.10-latex-syntax-kile-2.0.3/kate/data/latex.xml 2008-12-05 14:08:28.000000000 +0100 -@@ -1,16 +1,18 @@ - - -- -+ - - - - - - -- -+ - -+ - - -+ - - - -@@ -22,6 +24,11 @@ - - - -+ -+ -+ -+ -+ - - - -@@ -59,9 +66,46 @@ - - - -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ - - -- -+ - - - -@@ -137,8 +181,9 @@ - - - -- - -+ -+ - - - -@@ -228,6 +273,28 @@ - - - -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ - - - -@@ -315,11 +382,18 @@ - - - -+ -+ - - - - - -+ -+ -+ -+ -+ - - - diff --git a/opensuse/core/tdelibs/kdelibs-3.5.10-ossl-1.x.patch b/opensuse/core/tdelibs/kdelibs-3.5.10-ossl-1.x.patch deleted file mode 100644 index a948b884a..000000000 --- a/opensuse/core/tdelibs/kdelibs-3.5.10-ossl-1.x.patch +++ /dev/null @@ -1,180 +0,0 @@ -diff -up kdelibs-3.5.10/kio/kssl/kopenssl.cc.ossl-1.x kdelibs-3.5.10/kio/kssl/kopenssl.cc ---- kdelibs-3.5.10/kio/kssl/kopenssl.cc.ossl-1.x 2009-09-04 23:10:53.000000000 +0200 -+++ kdelibs-3.5.10/kio/kssl/kopenssl.cc 2009-09-04 23:10:53.000000000 +0200 -@@ -96,9 +96,14 @@ static int (*K_BIO_write) (BIO *b, cons - static int (*K_PEM_ASN1_write_bio) (int (*)(),const char *,BIO *,char *, - const EVP_CIPHER *,unsigned char *,int , - pem_password_cb *, void *) = 0L; -+#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+static int (*K_ASN1_item_i2d_fp)(ASN1_ITEM *,FILE *,unsigned char *) = 0L; -+static ASN1_ITEM *K_NETSCAPE_X509_it = 0L; -+#else - static ASN1_METHOD* (*K_X509_asn1_meth) (void) = 0L; - static int (*K_ASN1_i2d_fp)(int (*)(),FILE *,unsigned char *) = 0L; - static int (*K_i2d_ASN1_HEADER)(ASN1_HEADER *, unsigned char **) = 0L; -+#endif - static int (*K_X509_print_fp) (FILE *, X509*) = 0L; - static int (*K_i2d_PKCS12) (PKCS12*, unsigned char**) = 0L; - static int (*K_i2d_PKCS12_fp) (FILE *, PKCS12*) = 0L; -@@ -430,9 +435,14 @@ KConfig *cfg; - K_BIO_ctrl = (long (*) (BIO *,int,long,void *)) _cryptoLib->symbol("BIO_ctrl"); - K_BIO_write = (int (*) (BIO *b, const void *data, int len)) _cryptoLib->symbol("BIO_write"); - K_PEM_ASN1_write_bio = (int (*)(int (*)(), const char *,BIO*, char*, const EVP_CIPHER *, unsigned char *, int, pem_password_cb *, void *)) _cryptoLib->symbol("PEM_ASN1_write_bio"); -+#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+ K_ASN1_item_i2d_fp = (int (*)(ASN1_ITEM *, FILE*, unsigned char *)) _cryptoLib->symbol("ASN1_item_i2d_fp"); -+ K_NETSCAPE_X509_it = (ASN1_ITEM *) _cryptoLib->symbol("NETSCAPE_X509_it"); -+#else - K_X509_asn1_meth = (ASN1_METHOD* (*)(void)) _cryptoLib->symbol("X509_asn1_meth"); - K_ASN1_i2d_fp = (int (*)(int (*)(), FILE*, unsigned char *)) _cryptoLib->symbol("ASN1_i2d_fp"); - K_i2d_ASN1_HEADER = (int (*)(ASN1_HEADER *, unsigned char **)) _cryptoLib->symbol("i2d_ASN1_HEADER"); -+#endif - K_X509_print_fp = (int (*)(FILE*, X509*)) _cryptoLib->symbol("X509_print_fp"); - K_i2d_PKCS12 = (int (*)(PKCS12*, unsigned char**)) _cryptoLib->symbol("i2d_PKCS12"); - K_i2d_PKCS12_fp = (int (*)(FILE *, PKCS12*)) _cryptoLib->symbol("i2d_PKCS12_fp"); -@@ -594,7 +604,7 @@ KConfig *cfg; - K_SSL_set_session = (int (*)(SSL*,SSL_SESSION*)) _sslLib->symbol("SSL_set_session"); - K_d2i_SSL_SESSION = (SSL_SESSION* (*)(SSL_SESSION**,unsigned char**, long)) _sslLib->symbol("d2i_SSL_SESSION"); - K_i2d_SSL_SESSION = (int (*)(SSL_SESSION*,unsigned char**)) _sslLib->symbol("i2d_SSL_SESSION"); -- K_SSL_get_ciphers = (STACK *(*)(const SSL*)) _sslLib->symbol("SSL_get_ciphers"); -+ K_SSL_get_ciphers = (STACK_OF(SSL_CIPHER) *(*)(const SSL*)) _sslLib->symbol("SSL_get_ciphers"); - #endif - - -@@ -982,7 +992,13 @@ int KOpenSSLProxy::PEM_write_bio_X509(BI - else return -1; - } - -- -+#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+int KOpenSSLProxy::ASN1_i2d_fp(FILE *out,unsigned char *x) { -+ if (K_ASN1_item_i2d_fp && K_NETSCAPE_X509_it) -+ return (K_ASN1_item_i2d_fp)(K_NETSCAPE_X509_it, out, x); -+ else return -1; -+} -+#else - ASN1_METHOD *KOpenSSLProxy::X509_asn1_meth(void) { - if (K_X509_asn1_meth) return (K_X509_asn1_meth)(); - else return 0L; -@@ -994,7 +1010,7 @@ int KOpenSSLProxy::ASN1_i2d_fp(FILE *out - return (K_ASN1_i2d_fp)((int (*)())K_i2d_ASN1_HEADER, out, x); - else return -1; - } -- -+#endif - - int KOpenSSLProxy::X509_print(FILE *fp, X509 *x) { - if (K_X509_print_fp) return (K_X509_print_fp)(fp, x); -diff -up kdelibs-3.5.10/kio/kssl/kopenssl.h.ossl-1.x kdelibs-3.5.10/kio/kssl/kopenssl.h ---- kdelibs-3.5.10/kio/kssl/kopenssl.h.ossl-1.x 2006-07-22 10:16:39.000000000 +0200 -+++ kdelibs-3.5.10/kio/kssl/kopenssl.h 2009-09-04 23:10:53.000000000 +0200 -@@ -48,6 +48,9 @@ class KOpenSSLProxyPrivate; - #include - #include - #undef crypt -+#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+#define STACK _STACK -+#endif - #endif - - #include -@@ -446,12 +449,12 @@ public: - */ - int PEM_write_bio_X509(BIO *bp, X509 *x); - -- -+#if OPENSSL_VERSION_NUMBER < 0x10000000L - /* - * X509_asn1_meth - used for netscape output - */ - ASN1_METHOD *X509_asn1_meth(); -- -+#endif - - /* - * ASN1_i2d_fp - used for netscape output -@@ -531,6 +534,9 @@ public: - */ - void sk_free(STACK *s); - -+#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+ void sk_free(void *s) { return sk_free(reinterpret_cast(s)); } -+#endif - - /* - * Number of elements in the stack -@@ -543,6 +549,9 @@ public: - */ - char *sk_value(STACK *s, int n); - -+#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+ char *sk_value(void *s, int n) { return sk_value(reinterpret_cast(s), n); } -+#endif - - /* - * Create a new stack -@@ -555,6 +564,9 @@ public: - */ - int sk_push(STACK *s, char *d); - -+#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+ int sk_push(void *s, void *d) { return sk_push(reinterpret_cast(s), reinterpret_cast(d)); } -+#endif - - /* - * Duplicate the stack -diff -up kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc.ossl-1.x kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc ---- kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc.ossl-1.x 2005-10-10 17:05:44.000000000 +0200 -+++ kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc 2009-09-04 23:10:53.000000000 +0200 -@@ -87,7 +87,7 @@ KSMIMECryptoPrivate::KSMIMECryptoPrivate - - - STACK_OF(X509) *KSMIMECryptoPrivate::certsToX509(QPtrList &certs) { -- STACK_OF(X509) *x509 = sk_new(NULL); -+ STACK_OF(X509) *x509 = reinterpret_cast(sk_new(NULL)); - KSSLCertificate *cert = certs.first(); - while(cert) { - sk_X509_push(x509, cert->getCert()); -diff -up kdelibs-3.5.10/kio/kssl/ksslcertificate.cc.ossl-1.x kdelibs-3.5.10/kio/kssl/ksslcertificate.cc ---- kdelibs-3.5.10/kio/kssl/ksslcertificate.cc.ossl-1.x 2006-01-19 18:06:12.000000000 +0100 -+++ kdelibs-3.5.10/kio/kssl/ksslcertificate.cc 2009-09-04 23:10:53.000000000 +0200 -@@ -1003,17 +1003,31 @@ return qba; - QByteArray KSSLCertificate::toNetscape() { - QByteArray qba; - #ifdef KSSL_HAVE_SSL --ASN1_HEADER ah; --ASN1_OCTET_STRING os; --KTempFile ktf; -+#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+ NETSCAPE_X509 nx; -+ ASN1_OCTET_STRING hdr; -+#else -+ ASN1_HEADER ah; -+ ASN1_OCTET_STRING os; -+#endif -+ KTempFile ktf; - -- os.data = (unsigned char *)NETSCAPE_CERT_HDR; -- os.length = strlen(NETSCAPE_CERT_HDR); -- ah.header = &os; -- ah.data = (char *)getCert(); -- ah.meth = d->kossl->X509_asn1_meth(); -+#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+ hdr.data = (unsigned char *)NETSCAPE_CERT_HDR; -+ hdr.length = strlen(NETSCAPE_CERT_HDR); -+ nx.header = &hdr; -+ nx.cert = getCert(); -+ -+ d->kossl->ASN1_i2d_fp(ktf.fstream(),(unsigned char *)&nx); -+#else -+ os.data = (unsigned char *)NETSCAPE_CERT_HDR; -+ os.length = strlen(NETSCAPE_CERT_HDR); -+ ah.header = &os; -+ ah.data = (char *)getCert(); -+ ah.meth = d->kossl->X509_asn1_meth(); - -- d->kossl->ASN1_i2d_fp(ktf.fstream(),(unsigned char *)&ah); -+ d->kossl->ASN1_i2d_fp(ktf.fstream(),(unsigned char *)&ah); -+#endif - - ktf.close(); - diff --git a/opensuse/core/tdelibs/kdelibs-3.5.4-CVE-2009-1690.patch b/opensuse/core/tdelibs/kdelibs-3.5.4-CVE-2009-1690.patch deleted file mode 100644 index 2972d0ebf..000000000 --- a/opensuse/core/tdelibs/kdelibs-3.5.4-CVE-2009-1690.patch +++ /dev/null @@ -1,545 +0,0 @@ ---- kdelibs-3.5.4/khtml/html/RefPtr.h.CVE-2009-1690 2009-06-17 14:19:00.000000000 +0200 -+++ kdelibs-3.5.4/khtml/html/RefPtr.h 2009-06-17 14:19:00.000000000 +0200 -@@ -0,0 +1,202 @@ -+// -*- mode: c++; c-basic-offset: 4 -*- -+/* -+ * Copyright (C) 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. -+ * -+ * 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. -+ * -+ */ -+ -+#ifndef WTF_RefPtr_h -+#define WTF_RefPtr_h -+ -+#include -+#include "AlwaysInline.h" -+ -+namespace WTF { -+ -+ enum PlacementNewAdoptType { PlacementNewAdopt }; -+ -+ template class PassRefPtr; -+ -+ enum HashTableDeletedValueType { HashTableDeletedValue }; -+ -+ template class RefPtr { -+ public: -+ RefPtr() : m_ptr(0) { } -+ RefPtr(T* ptr) : m_ptr(ptr) { if (ptr) ptr->ref(); } -+ RefPtr(const RefPtr& o) : m_ptr(o.m_ptr) { if (T* ptr = m_ptr) ptr->ref(); } -+ // see comment in PassRefPtr.h for why this takes const reference -+ template RefPtr(const PassRefPtr&); -+ -+ // Special constructor for cases where we overwrite an object in place. -+ RefPtr(PlacementNewAdoptType) { } -+ -+ // Hash table deleted values, which are only constructed and never copied or destroyed. -+ RefPtr(HashTableDeletedValueType) : m_ptr(hashTableDeletedValue()) { } -+ bool isHashTableDeletedValue() const { return m_ptr == hashTableDeletedValue(); } -+ -+ ~RefPtr() { if (T* ptr = m_ptr) ptr->deref(); } -+ -+ template RefPtr(const RefPtr& o) : m_ptr(o.get()) { if (T* ptr = m_ptr) ptr->ref(); } -+ -+ T* get() const { return m_ptr; } -+ -+ void clear() { if (T* ptr = m_ptr) ptr->deref(); m_ptr = 0; } -+ PassRefPtr release() { PassRefPtr tmp = adoptRef(m_ptr); m_ptr = 0; return tmp; } -+ -+ T& operator*() const { return *m_ptr; } -+ ALWAYS_INLINE T* operator->() const { return m_ptr; } -+ -+ bool operator!() const { return !m_ptr; } -+ -+ // This conversion operator allows implicit conversion to bool but not to other integer types. -+ typedef T* RefPtr::*UnspecifiedBoolType; -+ operator UnspecifiedBoolType() const { return m_ptr ? &RefPtr::m_ptr : 0; } -+ -+ RefPtr& operator=(const RefPtr&); -+ RefPtr& operator=(T*); -+ RefPtr& operator=(const PassRefPtr&); -+ template RefPtr& operator=(const RefPtr&); -+ template RefPtr& operator=(const PassRefPtr&); -+ -+ void swap(RefPtr&); -+ -+ private: -+ static T* hashTableDeletedValue() { return reinterpret_cast(-1); } -+ -+ T* m_ptr; -+ }; -+ -+ template template inline RefPtr::RefPtr(const PassRefPtr& o) -+ : m_ptr(o.releaseRef()) -+ { -+ } -+ -+ template inline RefPtr& RefPtr::operator=(const RefPtr& o) -+ { -+ T* optr = o.get(); -+ if (optr) -+ optr->ref(); -+ T* ptr = m_ptr; -+ m_ptr = optr; -+ if (ptr) -+ ptr->deref(); -+ return *this; -+ } -+ -+ template template inline RefPtr& RefPtr::operator=(const RefPtr& o) -+ { -+ T* optr = o.get(); -+ if (optr) -+ optr->ref(); -+ T* ptr = m_ptr; -+ m_ptr = optr; -+ if (ptr) -+ ptr->deref(); -+ return *this; -+ } -+ -+ template inline RefPtr& RefPtr::operator=(T* optr) -+ { -+ if (optr) -+ optr->ref(); -+ T* ptr = m_ptr; -+ m_ptr = optr; -+ if (ptr) -+ ptr->deref(); -+ return *this; -+ } -+ -+ template inline RefPtr& RefPtr::operator=(const PassRefPtr& o) -+ { -+ T* ptr = m_ptr; -+ m_ptr = o.releaseRef(); -+ if (ptr) -+ ptr->deref(); -+ return *this; -+ } -+ -+ template template inline RefPtr& RefPtr::operator=(const PassRefPtr& o) -+ { -+ T* ptr = m_ptr; -+ m_ptr = o.releaseRef(); -+ if (ptr) -+ ptr->deref(); -+ return *this; -+ } -+ -+ template inline void RefPtr::swap(RefPtr& o) -+ { -+ std::swap(m_ptr, o.m_ptr); -+ } -+ -+ template inline void swap(RefPtr& a, RefPtr& b) -+ { -+ a.swap(b); -+ } -+ -+ template inline bool operator==(const RefPtr& a, const RefPtr& b) -+ { -+ return a.get() == b.get(); -+ } -+ -+ template inline bool operator==(const RefPtr& a, U* b) -+ { -+ return a.get() == b; -+ } -+ -+ template inline bool operator==(T* a, const RefPtr& b) -+ { -+ return a == b.get(); -+ } -+ -+ template inline bool operator!=(const RefPtr& a, const RefPtr& b) -+ { -+ return a.get() != b.get(); -+ } -+ -+ template inline bool operator!=(const RefPtr& a, U* b) -+ { -+ return a.get() != b; -+ } -+ -+ template inline bool operator!=(T* a, const RefPtr& b) -+ { -+ return a != b.get(); -+ } -+ -+ template inline RefPtr static_pointer_cast(const RefPtr& p) -+ { -+ return RefPtr(static_cast(p.get())); -+ } -+ -+ template inline RefPtr const_pointer_cast(const RefPtr& p) -+ { -+ return RefPtr(const_cast(p.get())); -+ } -+ -+ template inline T* getPtr(const RefPtr& p) -+ { -+ return p.get(); -+ } -+ -+} // namespace WTF -+ -+using WTF::RefPtr; -+using WTF::static_pointer_cast; -+using WTF::const_pointer_cast; -+ -+#endif // WTF_RefPtr_h ---- kdelibs-3.5.4/khtml/html/htmlparser.cpp.CVE-2009-1690 2006-07-22 10:16:43.000000000 +0200 -+++ kdelibs-3.5.4/khtml/html/htmlparser.cpp 2009-06-17 11:51:15.000000000 +0200 -@@ -199,7 +199,6 @@ - - form = 0; - map = 0; -- head = 0; - end = false; - isindex = 0; - -@@ -616,8 +615,7 @@ - case ID_BASE: - if(!head) { - head = new HTMLHeadElementImpl(document); -- e = head; -- insertNode(e); -+ insertNode(head.get()); - handled = true; - } - break; -@@ -839,7 +837,7 @@ - case ID_HEAD: - if(!head && current->id() == ID_HTML) { - head = new HTMLHeadElementImpl(document); -- n = head; -+ n = head.get(); - } - break; - case ID_BODY: -@@ -1679,12 +1677,12 @@ - head = new HTMLHeadElementImpl(document); - HTMLElementImpl *body = doc()->body(); - int exceptioncode = 0; -- doc()->firstChild()->insertBefore(head, body, exceptioncode); -+ doc()->firstChild()->insertBefore(head.get(), body, exceptioncode); - if ( exceptioncode ) { - #ifdef PARSER_DEBUG - kdDebug( 6035 ) << "creation of head failed!!!!" << endl; - #endif -- delete head; -+ delete head.get(); - head = 0; - } - } ---- kdelibs-3.5.4/khtml/html/Platform.h.CVE-2009-1690 2009-06-17 14:19:07.000000000 +0200 -+++ kdelibs-3.5.4/khtml/html/Platform.h 2009-06-17 14:19:07.000000000 +0200 -@@ -0,0 +1,218 @@ -+/* -*- mode: c++; c-basic-offset: 4 -*- */ -+/* -+ * Copyright (C) 2006 Apple Computer, Inc. All rights reserved. -+ * -+ * Redistribution and use in source and binary forms, with or without -+ * modification, are permitted provided that the following conditions -+ * are met: -+ * 1. Redistributions of source code must retain the above copyright -+ * notice, this list of conditions and the following disclaimer. -+ * 2. Redistributions in binary form must reproduce the above copyright -+ * notice, this list of conditions and the following disclaimer in the -+ * documentation and/or other materials provided with the distribution. -+ * -+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY -+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR -+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY -+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -+ */ -+ -+#ifndef WTF_Platform_h -+#define WTF_Platform_h -+ -+/* Force KDE build here in our tree... */ -+#ifndef BUILDING_KDE__ -+#define BUILDING_KDE__ 1 -+#endif -+ -+/* PLATFORM handles OS, operating environment, graphics API, and CPU */ -+#define PLATFORM(WTF_FEATURE) (defined( WTF_PLATFORM_##WTF_FEATURE ) && WTF_PLATFORM_##WTF_FEATURE) -+#define COMPILER(WTF_FEATURE) (defined( WTF_COMPILER_##WTF_FEATURE ) && WTF_COMPILER_##WTF_FEATURE) -+#define HAVE(WTF_FEATURE) (defined( HAVE_##WTF_FEATURE ) && HAVE_##WTF_FEATURE) -+#define USE(WTF_FEATURE) (defined( WTF_USE_##WTF_FEATURE ) && WTF_USE_##WTF_FEATURE) -+#define ENABLE(WTF_FEATURE) (defined( ENABLE_##WTF_FEATURE ) && ENABLE_##WTF_FEATURE) -+ -+/* Operating systems - low-level dependencies */ -+ -+/* PLATFORM(DARWIN) */ -+/* Operating system level dependencies for Mac OS X / Darwin that should */ -+/* be used regardless of operating environment */ -+#ifdef __APPLE__ -+#define WTF_PLATFORM_DARWIN 1 -+#endif -+ -+/* PLATFORM(WIN_OS) */ -+/* Operating system level dependencies for Windows that should be used */ -+/* regardless of operating environment */ -+#if defined(WIN32) || defined(_WIN32) -+#define WTF_PLATFORM_WIN_OS 1 -+#endif -+ -+/* PLATFORM(UNIX) */ -+/* Operating system level dependencies for Unix-like systems that */ -+/* should be used regardless of operating environment */ -+/* (includes PLATFORM(DARWIN)) */ -+#if defined(__APPLE__) \ -+ || defined(unix) \ -+ || defined(__unix) \ -+ || defined(__unix__) \ -+ || defined (__NetBSD__) \ -+ || defined(_AIX) -+#define WTF_PLATFORM_UNIX 1 -+#endif -+ -+/* PLATFORM(SOLARIS_OS) */ -+/* Operating system level dependencies for Sun (Open)Solaris 10. */ -+/* Studio 12 on Solaris defines __SunOS; gcc defines __sun__; */ -+/* Both compilers define __sun and sun. */ -+#if defined(__sun) || defined(sun) -+#define WTF_PLATFORM_SOLARIS_OS 1 -+#endif -+ -+/* Operating environments */ -+ -+/* I made the BUILDING_KDE__ macro up for the KDE build system to define */ -+ -+/* PLATFORM(KDE) */ -+/* PLATFORM(MAC) */ -+/* PLATFORM(WIN) */ -+#if BUILDING_KDE__ -+#define WTF_PLATFORM_KDE 1 -+#elif PLATFORM(DARWIN) -+#define WTF_PLATFORM_MAC 1 -+#elif PLATFORM(WIN_OS) -+#define WTF_PLATFORM_WIN 1 -+#endif -+#if defined(BUILDING_GDK__) -+#define WTF_PLATFORM_GDK 1 -+#endif -+ -+ -+/* CPU */ -+ -+/* PLATFORM(PPC) */ -+#if defined(__ppc__) \ -+ || defined(__PPC__) \ -+ || defined(__powerpc__) \ -+ || defined(__powerpc) \ -+ || defined(__POWERPC__) \ -+ || defined(_M_PPC) \ -+ || defined(__PPC) -+#define WTF_PLATFORM_PPC 1 -+#define WTF_PLATFORM_BIG_ENDIAN 1 -+#endif -+ -+/* PLATFORM(PPC64) */ -+#if defined(__ppc64__) \ -+ || defined(__PPC64__) -+#define WTF_PLATFORM_PPC64 1 -+#define WTF_PLATFORM_BIG_ENDIAN 1 -+#endif -+ -+#if defined(arm) -+#define WTF_PLATFORM_ARM 1 -+#if defined(__ARMEB__) -+#define WTF_PLATFORM_BIG_ENDIAN 1 -+#elif !defined(__ARM_EABI__) && !defined(__ARMEB__) -+#define WTF_PLATFORM_MIDDLE_ENDIAN 1 -+#endif -+#if !defined(__ARM_EABI__) -+#define WTF_PLATFORM_FORCE_PACK 1 -+#endif -+#endif -+ -+/* PLATFORM(X86) */ -+#if defined(__i386__) \ -+ || defined(i386) \ -+ || defined(_M_IX86) \ -+ || defined(_X86_) \ -+ || defined(__THW_INTEL) -+#define WTF_PLATFORM_X86 1 -+#endif -+ -+/* PLATFORM(X86_64) */ -+#if defined(__x86_64__) \ -+ || defined(__ia64__) -+#define WTF_PLATFORM_X86_64 1 -+#endif -+ -+/* PLATFORM(SPARC) */ -+#if defined(sparc) -+#define WTF_PLATFORM_SPARC 1 -+#endif -+ -+/* Compiler */ -+ -+/* COMPILER(CWP) */ -+#if defined(__MWERKS__) -+#define WTF_COMPILER_CWP 1 -+#endif -+ -+/* COMPILER(MSVC) */ -+#if defined(_MSC_VER) -+#define WTF_COMPILER_MSVC 1 -+#endif -+ -+/* COMPILER(GCC) */ -+#if defined(__GNUC__) -+#define WTF_COMPILER_GCC 1 -+#endif -+ -+/* COMPILER(SUNPRO) */ -+#if defined(__SUNPRO_CC) -+#define WTF_COMPILER_SUNPRO 1 -+#endif -+ -+/* COMPILER(BORLAND) */ -+/* not really fully supported - is this relevant any more? */ -+#if defined(__BORLANDC__) -+#define WTF_COMPILER_BORLAND 1 -+#endif -+ -+/* COMPILER(CYGWIN) */ -+/* not really fully supported - is this relevant any more? */ -+#if defined(__CYGWIN__) -+#define WTF_COMPILER_CYGWIN 1 -+#endif -+ -+/* multiple threads only supported on Mac for now */ -+#if PLATFORM(MAC) -+#ifndef WTF_USE_MULTIPLE_THREADS -+#define WTF_USE_MULTIPLE_THREADS 1 -+#endif -+#ifndef WTF_USE_BINDINGS -+#define WTF_USE_BINDINGS 1 -+#endif -+#endif -+ -+/* for Unicode, KDE uses Qt, everything else uses ICU */ -+#if PLATFORM(KDE) || PLATFORM(QT) -+#define WTF_USE_QT4_UNICODE 1 -+#elif PLATFORM(SYMBIAN) -+#define WTF_USE_SYMBIAN_UNICODE 1 -+#else -+#define WTF_USE_ICU_UNICODE 1 -+#endif -+ -+#if PLATFORM(MAC) -+#define WTF_PLATFORM_CF 1 -+#endif -+ -+#if PLATFORM(WIN) -+#define WTF_USE_WININET 1 -+#endif -+ -+#if PLATFORM(GDK) -+#define WTF_USE_CURL 1 -+#endif -+ -+/* ENABLE macro defaults */ -+ -+#endif /* WTF_Platform_h */ ---- kdelibs-3.5.4/khtml/html/AlwaysInline.h.CVE-2009-1690 2009-06-17 14:18:52.000000000 +0200 -+++ kdelibs-3.5.4/khtml/html/AlwaysInline.h 2009-06-17 13:56:36.000000000 +0200 -@@ -0,0 +1,49 @@ -+/* -+ * Copyright (C) 2005, 2007 Apple Inc. All rights reserved. -+ * -+ * 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 "html/Platform.h" -+ -+ -+#ifndef ALWAYS_INLINE -+#if COMPILER(GCC) && defined(NDEBUG) && __GNUC__ > 3 -+#define ALWAYS_INLINE inline __attribute__ ((__always_inline__)) -+#elif COMPILER(MSVC) && defined(NDEBUG) -+#define ALWAYS_INLINE __forceinline -+#else -+#define ALWAYS_INLINE inline -+#endif -+#endif -+ -+#ifndef ALWAYS_INLINE_INTO -+#if COMPILER(GCC) && defined(NDEBUG) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 1) || __GNUC__ > 4) -+#define ALWAYS_INLINE_INTO __attribute__ ((__flatten__)) -+#else -+#define ALWAYS_INLINE_INTO -+#endif -+#endif -+ -+ -+#ifndef NEVER_INLINE -+#if COMPILER(GCC) && __GNUC__ > 3 -+#define NEVER_INLINE __attribute__ ((__noinline__)) -+#else -+#define NEVER_INLINE -+#endif -+#endif ---- kdelibs-3.5.4/khtml/html/htmlparser.h.CVE-2009-1690 2005-10-10 17:06:04.000000000 +0200 -+++ kdelibs-3.5.4/khtml/html/htmlparser.h 2009-06-17 14:42:27.000000000 +0200 -@@ -38,10 +38,10 @@ - #include - #endif - -- - #include "dom/dom_string.h" - #include "xml/dom_nodeimpl.h" - #include "html/html_documentimpl.h" -+#include "html/RefPtr.h" - - class KHTMLView; - class HTMLStackElem; -@@ -148,7 +148,7 @@ - /* - * the head element. Needed for crappy html which defines after - */ -- DOM::HTMLHeadElementImpl *head; -+ RefPtr head; - - /* - * a possible element in the head. Compatibility hack for diff --git a/opensuse/core/tdelibs/kdelibs3-gcc-4.1-miscompile.diff b/opensuse/core/tdelibs/kdelibs3-gcc-4.1-miscompile.diff deleted file mode 100644 index cad4ceedd..000000000 --- a/opensuse/core/tdelibs/kdelibs3-gcc-4.1-miscompile.diff +++ /dev/null @@ -1,15 +0,0 @@ -Index: kdecore/kwinmodule.cpp -=================================================================== ---- kdecore/kwinmodule.cpp.orig -+++ kdecore/kwinmodule.cpp -@@ -436,7 +436,9 @@ QRect KWinModule::workArea( const QValue - if ( strut.bottom > 0 ) - r.setBottom( r.bottom() - (int) strut.bottom ); - -- a = a.intersect(r); -+ QRect tmp; -+ tmp = a.intersect(r); -+ a = tmp; - } - return a; - } diff --git a/opensuse/core/tdelibs/kdelibs3-hicolor-scalable-sizes.patch b/opensuse/core/tdelibs/kdelibs3-hicolor-scalable-sizes.patch index 9f06adc93..4ab77bfae 100644 --- a/opensuse/core/tdelibs/kdelibs3-hicolor-scalable-sizes.patch +++ b/opensuse/core/tdelibs/kdelibs3-hicolor-scalable-sizes.patch @@ -1,7 +1,7 @@ diff -uNr kdelibs-3.5.1.old/pics/hicolor/index.theme kdelibs-3.5.1/pics/hicolor/index.theme --- kdelibs-3.5.1.old/pics/hicolor/index.theme 2006-01-20 07:53:04.000000000 +0100 +++ kdelibs-3.5.1/pics/hicolor/index.theme 2006-04-12 20:18:31.907163700 +0200 -@@ -314,36 +314,36 @@ +@@ -333,36 +333,36 @@ Type=Threshold [scalable/actions] diff --git a/opensuse/core/tdelibs/kdelibs_networkstatus_branch2.diff b/opensuse/core/tdelibs/kdelibs_networkstatus_branch2.diff deleted file mode 100644 index 069dffbea..000000000 --- a/opensuse/core/tdelibs/kdelibs_networkstatus_branch2.diff +++ /dev/null @@ -1,69 +0,0 @@ -Index: kioslave/http/http.cc -=================================================================== ---- kioslave/http/http.cc.orig -+++ kioslave/http/http.cc -@@ -1804,9 +1804,11 @@ bool HTTPProtocol::isOffline(const KURL - QByteArray reply; - - QDataStream stream(params, IO_WriteOnly); -- stream << url.url(); - -- if ( dcopClient()->call( "kded", "networkstatus", "status(QString)", -+ if ( url.host() == QString::fromLatin1("localhost") || url.host() == QString::fromLatin1("127.0.0.1") || url.host() == QString::fromLatin1("::") ) { -+ return false; -+ } -+ if ( dcopClient()->call( "kded", "networkstatus", "status()", - params, replyType, reply ) && (replyType == "int") ) - { - int result; -@@ -2210,6 +2212,11 @@ bool HTTPProtocol::httpOpen() - // Conditional cache hit. (Validate) - } - -+ if (bCacheOnly && bOffline) -+ { -+ error( ERR_OFFLINE_MODE, m_request.url.url() ); -+ return false; -+ } - if (bCacheOnly) - { - error( ERR_DOES_NOT_EXIST, m_request.url.url() ); -@@ -2217,7 +2224,7 @@ bool HTTPProtocol::httpOpen() - } - if (bOffline) - { -- error( ERR_COULD_NOT_CONNECT, m_request.url.url() ); -+ error( ERR_OFFLINE_MODE, m_request.url.url() ); - return false; - } - } -Index: kio/kio/global.cpp -=================================================================== ---- kio/kio/global.cpp.orig -+++ kio/kio/global.cpp -@@ -408,6 +408,9 @@ KIO_EXPORT QString KIO::buildErrorString - case KIO::ERR_POST_DENIED: - result = i18n( "Access to restricted port in POST denied."); - break; -+ case KIO::ERR_OFFLINE_MODE: -+ result = i18n( "Could not access %1.\nOffline mode active.").arg( errorText ); -+ break; - default: - result = i18n( "Unknown error code %1\n%2\nPlease send a full bug report at http://bugs.kde.org." ).arg( errorCode ).arg( errorText ); - break; -Index: kio/kio/global.h -=================================================================== ---- kio/kio/global.h.orig -+++ kio/kio/global.h -@@ -244,8 +244,10 @@ namespace KIO - ERR_UPGRADE_REQUIRED = 64, // A transport upgrade is required to access this - // object. For instance, TLS is demanded by - // the server in order to continue. -- ERR_POST_DENIED = 65 // Issued when trying to POST data to a certain Ports -+ ERR_POST_DENIED = 65, // Issued when trying to POST data to a certain Ports - // see job.cpp -+ ERR_OFFLINE_MODE = 66 // Used when an app is in offline mode and a -+ // requested document is unavailable. - }; - - /** diff --git a/opensuse/core/tdelibs/kdemm-20050330.tar.bz2 b/opensuse/core/tdelibs/kdemm-20050330.tar.bz2 deleted file mode 100644 index e71e379e4..000000000 Binary files a/opensuse/core/tdelibs/kdemm-20050330.tar.bz2 and /dev/null differ diff --git a/opensuse/core/tdelibs/kdemm-filepreview.diff b/opensuse/core/tdelibs/kdemm-filepreview.diff deleted file mode 100644 index 227dc39ec..000000000 --- a/opensuse/core/tdelibs/kdemm-filepreview.diff +++ /dev/null @@ -1,40 +0,0 @@ -Index: interfaces/kmediaplayer/kfileaudiopreview/Makefile.am -=================================================================== ---- interfaces/kmediaplayer/kfileaudiopreview/Makefile.am.orig -+++ interfaces/kmediaplayer/kfileaudiopreview/Makefile.am -@@ -1,11 +1,11 @@ --INCLUDES = -I$(top_srcdir)/interfaces/ -I$(top_srcdir)/arts/kde -I$(includedir)/arts $(all_includes) -+INCLUDES = -I$(top_srcdir)/interfaces/ $(all_includes) - METASOURCES = AUTO - - kde_module_LTLIBRARIES = kfileaudiopreview.la - - kfileaudiopreview_la_SOURCES = kfileaudiopreview.cpp - kfileaudiopreview_la_LDFLAGS = $(all_libraries) $(KDE_RPATH) -module -avoid-version -no-undefined --kfileaudiopreview_la_LIBADD = $(top_builddir)/interfaces/kmediaplayer/libkmediaplayer.la $(top_builddir)/arts/kde/libartskde.la $(LIB_KIO) -+kfileaudiopreview_la_LIBADD = $(top_builddir)/interfaces/kmediaplayer/libkmediaplayer.la $(top_builddir)/kdemm/libkdemm.la $(LIB_KIO) - - noinst_HEADERS = kfileaudiopreview.h - -Index: interfaces/kmediaplayer/kfileaudiopreview/kfileaudiopreview.cpp -=================================================================== ---- interfaces/kmediaplayer/kfileaudiopreview/kfileaudiopreview.cpp.orig -+++ interfaces/kmediaplayer/kfileaudiopreview/kfileaudiopreview.cpp -@@ -13,7 +13,7 @@ - #include - #include - --#include -+#include - - #include - -@@ -58,7 +58,7 @@ KFileAudioPreview::KFileAudioPreview( QW - { - KGlobal::locale()->insertCatalogue("kfileaudiopreview"); - -- QStringList formats = KDE::PlayObjectFactory::mimeTypes(); -+ QStringList formats = KDE::Multimedia::Factory::self()->playableMimeTypes(); - // ### - QStringList::ConstIterator it = formats.begin(); - for ( ; it != formats.end(); ++it ) diff --git a/opensuse/core/tdelibs/kdemm.diff b/opensuse/core/tdelibs/kdemm.diff deleted file mode 100644 index 3d1e3d925..000000000 --- a/opensuse/core/tdelibs/kdemm.diff +++ /dev/null @@ -1,669 +0,0 @@ -Index: arts/knotify/knotify.cpp -=================================================================== ---- arts/knotify/knotify.cpp.orig -+++ arts/knotify/knotify.cpp -@@ -5,6 +5,7 @@ - 2000 Matthias Ettrich (ettrich@kde.org) - 2000 Waldo Bastian - 2000-2003 Carsten Pfeiffer -+ 2004 Allan Sandfeld Jensen - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by -@@ -26,21 +27,12 @@ - #include - #include - --#include --#ifndef WITHOUT_ARTS --// aRts headers --#include --#include --#include --#include --#include --#endif -- - // QT headers - #include - #include - #include - #include -+#include - - // KDE headers - #include -@@ -80,15 +72,11 @@ public: - QString externalPlayer; - KProcess *externalPlayerProc; - --#ifndef WITHOUT_ARTS -- QPtrList playObjects; -- QMap playObjectEventMap; -- KAudioManagerPlay *audioManager; --#endif -+ QMap playObjectEventMap; - int externalPlayerEventId; - - bool useExternal; -- bool useArts; -+ bool useKDEMM; - int volume; - QTimer *playTimer; - bool inStartup; -@@ -106,12 +94,13 @@ extern "C"{ - KDE_EXPORT int kdemain(int argc, char **argv) - { - KAboutData aboutdata("knotify", I18N_NOOP("KNotify"), -- "3.0", I18N_NOOP("KDE Notification Server"), -+ "4.0", I18N_NOOP("KDE Notification Server"), - KAboutData::License_GPL, "(C) 1997-2003, KDE Developers"); - aboutdata.addAuthor("Carsten Pfeiffer",I18N_NOOP("Current Maintainer"),"pfeiffer@kde.org"); - aboutdata.addAuthor("Christian Esken",0,"esken@kde.org"); - aboutdata.addAuthor("Stefan Westerfeld",I18N_NOOP("Sound support"),"stefan@space.twc.de"); - aboutdata.addAuthor("Charles Samuels",I18N_NOOP("Previous Maintainer"),"charles@kde.org"); -+ aboutdata.addAuthor("Allan Sandfeld Jensen",I18N_NOOP("Conversion to KDEMM"),"kde@carewolf.com"); - - KCmdLineArgs::init( argc, argv, &aboutdata ); - KUniqueApplication::addCmdLineOptions(); -@@ -126,145 +115,36 @@ KDE_EXPORT int kdemain(int argc, char ** - KUniqueApplication app; - app.disableSessionManagement(); - -- // KNotify is started on KDE startup and on demand (using -- // KNotifClient::startDaemon()) whenever a KNotify event occurs. Especially -- // KWin may fire many events (e.g. when a window pops up). When we have -- // problems with aRts or the installation, we might get an infinite loop -- // of knotify crashing, popping up the crashhandler window and kwin firing -- // another event, starting knotify again... -- // We try to prevent this by tracking our startup and offer options to -- // abort this. -- --#ifndef WITHOUT_ARTS -- KConfigGroup config( KGlobal::config(), "StartProgress" ); -- KConfig artsKCMConfig( "kcmartsrc" ); -- artsKCMConfig.setGroup( "Arts" ); -- bool useArts = artsKCMConfig.readBoolEntry( "StartServer", true ); -- if (useArts) -- useArts = config.readBoolEntry( "Use Arts", useArts ); -- bool ok = config.readBoolEntry( "Arts Init", true ); -- -- if ( useArts && !ok ) -- { -- if ( KMessageBox::questionYesNo( -- 0L, -- i18n("During the previous startup, KNotify crashed while creating " -- "Arts::Dispatcher. Do you want to try again or disable " -- "aRts sound output?\n\n" -- "If you choose to disable aRts output now, you can re-enable " -- "it later or select an alternate sound player " -- "in the System Notifications control panel."), -- i18n("KNotify Problem"), -- i18n("&Try Again"), -- i18n("D&isable aRts Output"), -- "KNotifyStartProgress", -- 0 /* don't call KNotify :) */ -- ) -- == KMessageBox::No ) -- { -- useArts = false; -- } -- } -- -- // when ArtsDispatcher crashes, we know it the next start. -- config.writeEntry( "Arts Init", false ); -- config.writeEntry( "Use Arts", useArts ); -- config.sync(); -- -- KArtsDispatcher *dispatcher = 0; -- if ( useArts ) -- { -- dispatcher = new KArtsDispatcher; -- soundServer = new KArtsServer; -- } -- -- // ok, seemed to work. -- config.writeEntry("Arts Init", useArts ); -- config.sync(); -- -- ok = config.readBoolEntry( "KNotify Init", true ); -- if ( useArts && !ok ) -- { -- if ( KMessageBox::questionYesNo( -- 0L, -- i18n("During the previous startup, KNotify crashed while instantiating " -- "KNotify. Do you want to try again or disable " -- "aRts sound output?\n\n" -- "If you choose to disable aRts output now, you can re-enable " -- "it later or select an alternate sound player " -- "in the System Notifications control panel."), -- i18n("KNotify Problem"), -- i18n("&Try Again"), -- i18n("D&isable aRts Output"), -- "KNotifyStartProgress", -- 0 /* don't call KNotify :) */ -- ) -- == KMessageBox::No ) -- { -- useArts = false; -- delete soundServer; -- soundServer = 0L; -- delete dispatcher; -- dispatcher = 0L; -- } -- } -- -- // when KNotify instantiation crashes, we know it the next start. -- config.writeEntry( "KNotify Init", false ); -- config.writeEntry( "Use Arts", useArts ); -- config.sync(); -- - // start notify service -- KNotify *notify = new KNotify( useArts ); -- -- config.writeEntry( "KNotify Init", true ); -- config.sync(); -- --#else -- -- // start notify service, without aRts -- KNotify *notify = new KNotify( false ); -- --#endif -+ KNotify notify( true ); - - app.dcopClient()->setDefaultObject( "Notify" ); - app.dcopClient()->setDaemonMode( true ); - // kdDebug() << "knotify starting" << endl; - - int ret = app.exec(); -- delete notify; --#ifndef WITHOUT_ARTS -- delete soundServer; -- delete dispatcher; --#endif - return ret; - } - }// end extern "C" - --KNotify::KNotify( bool useArts ) -+KNotify::KNotify( bool useKDEMM ) - : QObject(), DCOPObject("Notify") - { - d = new KNotifyPrivate; - d->globalEvents = new KConfig("knotify/eventsrc", true, false, "data"); - d->globalConfig = new KConfig("knotify.eventsrc", true, false); - d->externalPlayerProc = 0; -- d->useArts = useArts; -- d->inStartup = true; --#ifndef WITHOUT_ARTS -- d->playObjects.setAutoDelete(true); -- d->audioManager = 0; -- if( useArts ) -- { -- connect( soundServer, SIGNAL( restartedServer() ), this, SLOT( restartedArtsd() ) ); -- restartedArtsd(); //started allready need to initialize d->audioManager -- } --#endif -+ d->useKDEMM = useKDEMM; - -- d->volume = 100; -+ d->inStartup = 0; -+ d->volume = 100; - - d->playTimer = 0; - - loadConfig(); -+ -+ connect ( this, SIGNAL(deletePlayObject(KDE::Multimedia::SimplePlayer*)), -+ SLOT(objectDeleter(KDE::Multimedia::SimplePlayer*)) ); - } - - KNotify::~KNotify() -@@ -272,12 +152,9 @@ KNotify::~KNotify() - reconfigure(); - - #ifndef WITHOUT_ARTS -- d->playObjects.clear(); -- - delete d->globalEvents; - delete d->globalConfig; - delete d->externalPlayerProc; -- delete d->audioManager; - #endif - delete d; - } -@@ -293,7 +170,7 @@ void KNotify::loadConfig() { - // try to locate a suitable player if none is configured - if ( d->externalPlayer.isEmpty() ) { - QStringList players; -- players << "wavplay" << "aplay" << "auplay"; -+ players << "wavplay" << "aplay" << "auplay" << "artsplay" << "akodeplay"; - QStringList::Iterator it = players.begin(); - while ( d->externalPlayer.isEmpty() && it != players.end() ) { - d->externalPlayer = KStandardDirs::findExe( *it ); -@@ -456,9 +333,9 @@ bool KNotify::notifyBySound( const QStri - if ( soundFile.isEmpty() ) - soundFile = locate( "sound", sound ); - } -- if ( soundFile.isEmpty() || isPlaying( soundFile ) ) -+ if ( soundFile.isEmpty() ) - { -- soundFinished( eventId, soundFile.isEmpty() ? NoSoundFile : FileAlreadyPlaying ); -+ soundFinished( eventId, NoSoundFile ); - return false; - } - -@@ -466,64 +343,18 @@ bool KNotify::notifyBySound( const QStri - // kdDebug() << "KNotify::notifyBySound - trying to play file " << soundFile << endl; - - if (!external) { -- //If we disabled using aRts, just return, -- //(If we don't, we'll blow up accessing the null soundServer) -- if (!d->useArts) -+ //If we disabled audio, just return, -+ if (!d->useKDEMM) - { - soundFinished( eventId, NoSoundSupport ); - return false; - } - --#ifndef WITHOUT_ARTS -- // play sound finally -- while( d->playObjects.count()>5 ) -- abortFirstPlayObject(); -- -- KDE::PlayObjectFactory factory(soundServer->server()); -- if( d->audioManager ) -- factory.setAudioManagerPlay( d->audioManager ); - KURL soundURL; - soundURL.setPath(soundFile); -- KDE::PlayObject *playObject = factory.createPlayObject(soundURL, false); -- -- if (playObject->isNull()) -- { -- soundFinished( eventId, NoSoundSupport ); -- delete playObject; -- return false; -- } -- -- if ( d->volume != 100 ) -- { -- // It works to access the playObject immediately because we don't allow -- // non-file URLs for sounds. -- Arts::StereoVolumeControl volumeControl = Arts::DynamicCast(soundServer->server().createObject("Arts::StereoVolumeControl")); -- Arts::PlayObject player = playObject->object(); -- Arts::Synth_AMAN_PLAY ap = d->audioManager->amanPlay(); -- if( ! volumeControl.isNull() && ! player.isNull() && ! ap.isNull() ) -- { -- volumeControl.scaleFactor( d->volume/100.0 ); -- -- ap.stop(); -- Arts::disconnect( player, "left", ap, "left" ); -- Arts::disconnect( player, "right", ap, "right" ); -- -- ap.start(); -- volumeControl.start(); -- -- Arts::connect(player,"left",volumeControl,"inleft"); -- Arts::connect(player,"right",volumeControl,"inright"); -- -- Arts::connect(volumeControl,"outleft",ap,"left"); -- Arts::connect(volumeControl,"outright",ap,"right"); -- -- player._addChild( volumeControl, "volume" ); -- } -- } -- -- playObject->play(); -- d->playObjects.append( playObject ); -+ KDE::Multimedia::SimplePlayer* playObject = new KDE::Multimedia::SimplePlayer( this ); - d->playObjectEventMap.insert( playObject, eventId ); -+ playObject->play( soundURL ); - - if ( !d->playTimer ) - { -@@ -532,8 +363,7 @@ bool KNotify::notifyBySound( const QStri - } - if ( !d->playTimer->isActive() ) - d->playTimer->start( 1000 ); --#endif -- return true; -+ return playObject->isPlaying(); - - } else if(!d->externalPlayer.isEmpty()) { - // use an external player to play the sound -@@ -686,58 +516,39 @@ void KNotify::setVolume( int volume ) - d->volume = volume; - } - -+void KNotify::slotPlayerProcessExited( KProcess *proc ) -+{ -+ soundFinished( d->externalPlayerEventId, -+ (proc->normalExit() && proc->exitStatus() == 0) ? PlayedOK : Unknown ); -+} -+ -+ - void KNotify::playTimeout() - { --#ifndef WITHOUT_ARTS -- for ( QPtrListIterator< KDE::PlayObject > it(d->playObjects); *it;) -+qDebug("KNotify::playTimeout"); -+ for( QMap< KDE::Multimedia::SimplePlayer*, int >::Iterator it = d->playObjectEventMap.begin(); -+ it != d->playObjectEventMap.end(); -+ ) - { -- QPtrListIterator< KDE::PlayObject > current = it; -+ QMap< KDE::Multimedia::SimplePlayer*, int >::Iterator current = it; - ++it; -- if ( (*current)->state() != Arts::posPlaying ) -+ KDE::Multimedia::SimplePlayer* playObject = current.key(); -+ if ( !playObject->isPlaying() || playObject->totalTime() <= 0 ) // may be "playing" even if there's an error - { -- QMap::Iterator eit = d->playObjectEventMap.find( *current ); -- if ( eit != d->playObjectEventMap.end() ) -- { -- soundFinished( *eit, PlayedOK ); -- d->playObjectEventMap.remove( eit ); -- } -- d->playObjects.remove( current ); -+ soundFinished( *current, PlayedOK ); -+ d->playObjectEventMap.remove( current ); -+ disconnect( playObject, SIGNAL( finished() ) ); -+ playObject->stop(); -+ emit deletePlayObject(playObject); - } - } -- if ( !d->playObjects.count() ) -+ if ( !d->playObjectEventMap.count() ) - d->playTimer->stop(); --#endif - } - --bool KNotify::isPlaying( const QString& soundFile ) const -+void KNotify::objectDeleter( KDE::Multimedia::SimplePlayer *playObject ) - { --#ifndef WITHOUT_ARTS -- for ( QPtrListIterator< KDE::PlayObject > it(d->playObjects); *it; ++it) -- { -- if ( (*it)->mediaName() == soundFile ) -- return true; -- } --#endif -- return false; --} -- --void KNotify::slotPlayerProcessExited( KProcess *proc ) --{ -- soundFinished( d->externalPlayerEventId, -- (proc->normalExit() && proc->exitStatus() == 0) ? PlayedOK : Unknown ); --} -- --void KNotify::abortFirstPlayObject() --{ --#ifndef WITHOUT_ARTS -- QMap::Iterator it = d->playObjectEventMap.find( d->playObjects.getFirst() ); -- if ( it != d->playObjectEventMap.end() ) -- { -- soundFinished( it.data(), Aborted ); -- d->playObjectEventMap.remove( it ); -- } -- d->playObjects.removeFirst(); --#endif -+ delete playObject; - } - - void KNotify::soundFinished( int eventId, PlayingFinishedStatus reason ) -@@ -780,16 +591,6 @@ WId KNotify::checkWinId( const QString & - return senderWinId; - } - --void KNotify::restartedArtsd() --{ --#ifndef WITHOUT_ARTS -- delete d->audioManager; -- d->audioManager = new KAudioManagerPlay( soundServer ); -- d->audioManager->setTitle( i18n( "KDE System Notifications" ) ); -- d->audioManager->setAutoRestoreID( "KNotify Aman Play" ); --#endif --} -- - void KNotify::sessionReady() - { - if( d->inStartup && !d->startupEvents.isEmpty()) -Index: arts/knotify/knotify.h -=================================================================== ---- arts/knotify/knotify.h.orig -+++ arts/knotify/knotify.h -@@ -24,9 +24,10 @@ - #include - #include - -+#include -+ - class KNotifyPrivate; - class KProcess; --class KConfig; - - class KNotify : public QObject, public DCOPObject - { -@@ -76,19 +77,16 @@ private: - bool notifyByStderr(const QString &text); - bool notifyByPassivePopup(const QString &text, const QString &appName, - KConfig* eventsFile, WId winId ); -- bool notifyByExecute(const QString &command, -- const QString& event, -- const QString& fromApp, -+ bool notifyByExecute(const QString &command, -+ const QString& event, -+ const QString& fromApp, - const QString& text, - int winId, - int eventId ); -- bool notifyByTaskbar( WId winId ); -- -- bool isPlaying( const QString& soundFile ) const; -- -- void soundFinished( int eventId, PlayingFinishedStatus reason ); -- void abortFirstPlayObject(); -- -+ bool notifyByTaskbar( WId winId ); -+ -+ void soundFinished( int eventId, PlayingFinishedStatus reason ); -+ - WId checkWinId( const QString& appName, WId senderWinId ); - - /** -@@ -97,9 +95,13 @@ private: - bool isGlobal(const QString &eventname); - - private slots: -- void playTimeout(); -- void slotPlayerProcessExited( KProcess *proc ); -- void restartedArtsd(); -+ void playTimeout(); -+ void slotPlayerProcessExited( KProcess *proc ); -+ void objectDeleter( KDE::Multimedia::SimplePlayer* ); -+ -+signals: -+ void deletePlayObject( KDE::Multimedia::SimplePlayer* ); -+ - - private: - KNotifyPrivate* d; -Index: arts/knotify/Makefile.am -=================================================================== ---- arts/knotify/Makefile.am.orig -+++ arts/knotify/Makefile.am -@@ -3,12 +3,13 @@ INCLUDES= -I$(top_srcdir)/arts/kde -I$(i - - ####### Files - --kde_module_LTLIBRARIES = knotify.la -+#kde_module_LTLIBRARIES = knotify.la -+bin_PROGRAMS = -+lib_LTLIBRARIES = -+kdeinit_LTLIBRARIES = knotify.la - - knotify_la_SOURCES = knotify.cpp knotify.skel --if include_ARTS --knotify_la_LIBADD = -lsoundserver_idl -lqtmcop $(LIB_KDEUI) $(top_builddir)/arts/kde/libartskde.la --endif -+knotify_la_LIBADD = $(LIB_KDEUI) $(top_builddir)/kdemm/libkdemm.la - knotify_la_LDFLAGS = $(all_libraries) -module -avoid-version - knotify_la_METASOURCES = AUTO - -Index: kdemm/channel.h -=================================================================== ---- kdemm/channel.h.orig -+++ kdemm/channel.h -@@ -83,7 +83,7 @@ namespace Multimedia - * You can not instantiate channels yourself, use the Factory to - * create them. - */ -- Channel( const QString & name, const QString & type, Direction direction, -+ Channel( const QString & channelName, const QString & type, Direction direction, - QObject * parent = 0, const char * name = 0 ); - - private: -Index: kdemm/factory.cpp -=================================================================== ---- kdemm/factory.cpp.orig -+++ kdemm/factory.cpp -@@ -80,6 +80,7 @@ class Factory::Private - ":\n" << e << endl; - } - } -+#if 0 - if( 0 == backend ) - { - if( offers.size() == 0 ) -@@ -100,6 +101,7 @@ class Factory::Private - i18n( "Unable to use any of the available Multimedia Backends" ), details ); - } - } -+#endif - } - - Backend * backend; -Index: kdemm/simpleplayer.cpp -=================================================================== ---- kdemm/simpleplayer.cpp.orig -+++ kdemm/simpleplayer.cpp -@@ -50,10 +50,12 @@ SimplePlayer::SimplePlayer( QObject * pa - connect( Factory::self(), SIGNAL( recreateObjects() ), SLOT( recreateObjects() ) ); - d->channel = Factory::self()->createChannel( KGlobal::instance()->aboutData()->programName() ); - d->player = Factory::self()->createPlayer(); -- d->player->setOutputChannel( d->channel ); -- connect( d->player, SIGNAL( stateChanged( KDE::Multimedia::Player::State, KDE::Multimedia::Player::State ) ), -+ if ( d->player ) { -+ d->player->setOutputChannel( d->channel ); -+ connect( d->player, SIGNAL( stateChanged( KDE::Multimedia::Player::State, KDE::Multimedia::Player::State ) ), - SLOT( stateChanged( KDE::Multimedia::Player::State, KDE::Multimedia::Player::State ) ) ); -- connect( d->player, SIGNAL( finished() ), SIGNAL( finished() ) ); -+ connect( d->player, SIGNAL( finished() ), SIGNAL( finished() ) ); -+ }; - } - - SimplePlayer::~SimplePlayer() -@@ -64,6 +66,8 @@ SimplePlayer::~SimplePlayer() - - void SimplePlayer::play( const KURL & url ) - { -+ if( ! d->player ) -+ return; - if( isPaused() && url == d->url ) - { - d->player->play(); -@@ -78,51 +82,71 @@ void SimplePlayer::play( const KURL & ur - - void SimplePlayer::pause() - { -+ if( ! d->player ) -+ return; - d->player->pause(); - } - - void SimplePlayer::stop() - { -+ if( ! d->player ) -+ return; - d->player->stop(); - } - - long SimplePlayer::totalTime() const - { -+ if( ! d->player ) -+ return 0; - return d->player->totalTime(); - } - - long SimplePlayer::currentTime() const - { -+ if( ! d->player ) -+ return 0; - return d->player->currentTime(); - } - - void SimplePlayer::seek( long ms ) - { -+ if( ! d->player ) -+ return; - d->player->seek( ms ); - } - - float SimplePlayer::volume() const - { -+ if( ! d->player ) -+ return 0; - return d->channel->volume(); - } - - void SimplePlayer::setVolume( float v ) - { -+ if( ! d->player ) -+ return; - d->channel->setVolume( v ); - } - - bool SimplePlayer::isPlaying() const - { -+ if( ! d->player ) -+ return false; - return ( d->player->state() == Player::Playing ); - } - - bool SimplePlayer::isPaused() const - { -+ if( ! d->player ) -+ return false; - return ( d->player->state() == Player::Paused ); - } - - void SimplePlayer::stateChanged( Player::State ns, Player::State os ) - { -+ if( ! d->player ) -+ return; - if( os == Player::Loading && ns == Player::Stopped ) - d->player->play(); - } -@@ -135,7 +159,8 @@ void SimplePlayer::deleteYourObjects() - d->title = d->channel->channelName(); - d->type = d->channel->channelType(); - -- d->player->stop(); -+ if( d->player ) -+ d->player->stop(); - - delete d->player; - delete d->channel; -@@ -149,6 +174,9 @@ void SimplePlayer::recreateObjects() - d->channel->setVolume( d->channelvolume ); - - d->player = Factory::self()->createPlayer(); -+ if( ! d->player ) -+ return; -+ - d->player->setOutputChannel( d->channel ); - - if( d->state != Player::NoMedia ) diff --git a/opensuse/core/tdelibs/kdeprint-restart-cupsd.diff b/opensuse/core/tdelibs/kdeprint-restart-cupsd.diff index d464098eb..2fc7cccb3 100644 --- a/opensuse/core/tdelibs/kdeprint-restart-cupsd.diff +++ b/opensuse/core/tdelibs/kdeprint-restart-cupsd.diff @@ -1,32 +1,16 @@ -Index: kdeprint/cups/cupsdconf2/cupsddialog.cpp +Index: tdeprint/cups/cupsdconf2/cupsddialog.cpp =================================================================== ---- kdeprint/cups/cupsdconf2/cupsddialog.cpp.orig -+++ kdeprint/cups/cupsdconf2/cupsddialog.cpp -@@ -45,6 +45,7 @@ - #include - #include - -+#include - #include - #include - -@@ -205,15 +206,13 @@ bool CupsdDialog::restartServer(QString& - } - else +--- tdeprint/cups/cupsdconf2/cupsddialog.cpp.orig ++++ tdeprint/cups/cupsdconf2/cupsddialog.cpp +@@ -208,7 +208,10 @@ { -+ KProcess proc; bool success = false; - if (getuid() == 0 ) -- success = (::kill(serverPid, SIGHUP) == 0); -+ proc << "rccups" << "force-reload"; - else -- { -- KProcess proc; -- proc << "kdesu" << "-c" << "kill -SIGHUP " + QString::number( serverPid ); -- success = proc.start( KProcess::Block ) && proc.normalExit(); -- } -+ proc << "kdesu" << "-c" << "rccups" << "force-reload"; -+ success = proc.start( KProcess::Block ) && proc.normalExit(); + KProcess proc; +- proc << "tdesu" << "-c" << "/etc/init.d/cupsys restart"; ++ if (getuid() == 0 ) ++ proc << "rccups" << "force-reload"; ++ else ++ proc << "tdesu" << "-c" << "rccups" << "force-reload"; + success = proc.start( KProcess::Block ) && proc.normalExit(); if( !success ) msg = i18n("Unable to restart CUPS server (pid = %1)").arg(serverPid); - } diff --git a/opensuse/core/tdelibs/kdeprint-utf8.diff b/opensuse/core/tdelibs/kdeprint-utf8.diff deleted file mode 100644 index ed2ad79da..000000000 --- a/opensuse/core/tdelibs/kdeprint-utf8.diff +++ /dev/null @@ -1,13 +0,0 @@ -Index: kdeprint/cups/kmcupsmanager.cpp -=================================================================== ---- kdeprint/cups/kmcupsmanager.cpp.orig -+++ kdeprint/cups/kmcupsmanager.cpp -@@ -85,7 +85,7 @@ static int trials = 5; - // change LANG variable so that CUPS is always using - // english language: translation may only come from the PPD - // itself, or from KDE. -- setenv("LANG", "en", 1); -+ setenv("LANG", "en_US.UTF-8", 1); - } - - KMCupsManager::~KMCupsManager() diff --git a/opensuse/core/tdelibs/kdesu-settings.diff b/opensuse/core/tdelibs/kdesu-settings.diff deleted file mode 100644 index fc24c09b6..000000000 --- a/opensuse/core/tdelibs/kdesu-settings.diff +++ /dev/null @@ -1,50 +0,0 @@ -Subject: Change kdesu settings -From: Lubos Lunak -Bug: 216796 -Relates: kdelibs4/kdesu-settings.diff -Patch-upstream: never - -Change kdesu(d) password keeping timeout only to 5 minutes and enable -it by default (to match kdesu using sudo in 10.3 behaviour). -KDE3 needs a hack in KPasswordDialog for enabling it by default. - -Update: Change the timeout back to 2 hours (bnc#404521). - -Index: kdesu/defaults.h -=================================================================== ---- kdesu/defaults.h.orig -+++ kdesu/defaults.h -@@ -13,8 +13,9 @@ - #ifndef __Defaults_h_included__ - #define __Defaults_h_included__ - -+/*const int defTimeout = 120*60;*/ - const int defTimeout = 120*60; - const int defEchoMode = 0; --const int defKeep = false; -+const int defKeep = true; - - #endif -Index: kdeui/kpassdlg.cpp -=================================================================== ---- kdeui/kpassdlg.cpp.orig -+++ kdeui/kpassdlg.cpp -@@ -49,6 +49,8 @@ - - #include "kpassdlg.h" - -+#include "../kdesu/defaults.h" -+ - /* - * Password line editor. - */ -@@ -337,7 +339,8 @@ void KPasswordDialog::init() - - KConfig* const cfg = KGlobal::config(); - const KConfigGroupSaver saver(cfg, "Passwords"); -- if (m_Keep && cfg->readBoolEntry("Keep", false)) -+ bool def = ( qstrcmp( qAppName(), "kdesu" ) == 0 ? defKeep : false ); -+ if (m_Keep && cfg->readBoolEntry("Keep", def)) - ++m_Keep; - - m_pMain = new QWidget(this); diff --git a/opensuse/core/tdelibs/kdeversion.diff b/opensuse/core/tdelibs/kdeversion.diff index f9b4cc1c2..a367c7e1a 100644 --- a/opensuse/core/tdelibs/kdeversion.diff +++ b/opensuse/core/tdelibs/kdeversion.diff @@ -1,10 +1,10 @@ -Index: kdecore/kdeversion.h +Index: tdecore/tdeversion.h =================================================================== ---- kdecore/kdeversion.h.orig -+++ kdecore/kdeversion.h +--- tdecore/tdeversion.h.orig ++++ tdecore/tdeversion.h @@ -33,6 +33,8 @@ - #define KDE_IS_VERSION(a,b,c) ( KDE_VERSION >= KDE_MAKE_VERSION(a,b,c) ) + #define KDE_IS_VERSION(a,b,c) ( TDE_VERSION >= TDE_MAKE_VERSION(a,b,c) ) +#define KDELIBS_SUSE + diff --git a/opensuse/core/tdelibs/kfile-beagle.diff b/opensuse/core/tdelibs/kfile-beagle.diff deleted file mode 100644 index 467e68ed4..000000000 --- a/opensuse/core/tdelibs/kfile-beagle.diff +++ /dev/null @@ -1,42 +0,0 @@ -Index: kio/kfile/kurlbar.cpp -=================================================================== ---- kio/kfile/kurlbar.cpp.orig -+++ kio/kfile/kurlbar.cpp -@@ -605,8 +605,19 @@ void KURLBar::readItem( int i, KConfig * - if ( !url.isValid() || !KProtocolInfo::isKnownProtocol( url )) - return; // nothing we could do. - -+ QString description = config->readEntry( QString("Description_") + number ); -+ -+ if (description.isEmpty() && url.protocol()=="beagle") { -+ KIO::UDSEntry uds; -+ const KURL kurl("beagle:?beagled-status"); -+ if (!KIO::NetAccess::stat(kurl, uds)) -+ return; -+ -+ description = i18n("Desktop Search"); -+ } -+ - insertItem( url, -- config->readEntry( QString("Description_") + number ), -+ description, - applicationLocal, - config->readEntry( QString("Icon_") + number ), - static_cast( -Index: kio/kfile/kfiledialog.cpp -=================================================================== ---- kio/kfile/kfiledialog.cpp.orig -+++ kio/kfile/kfiledialog.cpp -@@ -1165,6 +1165,12 @@ void KFileDialog::urlEntered(const KURL& - d->pathCombo->setURL( url ); - } - -+ if (url.protocol()=="beagle" && url.path()=="/") { -+ d->pathCombo->setEditText("beagle:/<"+i18n("search term")+">"); -+ d->pathCombo->lineEdit()->setSelection(8,255); -+ d->pathCombo->setFocus(); -+ } -+ - locationEdit->blockSignals( true ); - locationEdit->setCurrentItem( 0 ); - if ( d->keepLocation ) diff --git a/opensuse/core/tdelibs/kickoff-drop-shadow.diff b/opensuse/core/tdelibs/kickoff-drop-shadow.diff deleted file mode 100644 index e4c7befc2..000000000 --- a/opensuse/core/tdelibs/kickoff-drop-shadow.diff +++ /dev/null @@ -1,177 +0,0 @@ -Index: kdefx/kstyle.cpp -=================================================================== ---- kdefx/kstyle.cpp.orig -+++ kdefx/kstyle.cpp -@@ -31,6 +31,7 @@ - - #include - #include -+#include - #include - #include - #include -@@ -79,7 +80,7 @@ namespace - QWidget* w1; - QWidget* w2; - }; -- typedef QMap ShadowMap; -+ typedef QMap ShadowMap; - static ShadowMap *_shadowMap = 0; - QSingleCleanupHandler cleanupShadowMap; - ShadowMap &shadowMap() { -@@ -113,8 +114,13 @@ namespace - - const double shadow_strip[4] = - { 0.565, 0.675, 0.835, 0.945 }; --} - -+ static bool useDropShadow(QWidget* w) -+ { -+ return w && w->metaObject() && -+ w->metaObject()->findProperty("KStyleMenuDropShadow") != -1; -+ } -+} - - namespace - { -@@ -128,12 +134,12 @@ class TransparencyHandler : public QObje - - protected: - void blendToColor(const QColor &col); -- void blendToPixmap(const QColorGroup &cg, const QPopupMenu* p); -+ void blendToPixmap(const QColorGroup &cg, const QWidget* p); - #ifdef HAVE_XRENDER -- void XRenderBlendToPixmap(const QPopupMenu* p); -+ void XRenderBlendToPixmap(const QWidget* p); - #endif -- void createShadowWindows(const QPopupMenu* p); -- void removeShadowWindows(const QPopupMenu* p); -+ void createShadowWindows(const QWidget* p); -+ void removeShadowWindows(const QWidget* p); - void rightShadow(QImage& dst); - void bottomShadow(QImage& dst); - private: -@@ -256,8 +262,16 @@ void KStyle::polish( QWidget* widget ) - widget->installEventFilter(this); - } - } --} -+ if (widget->isTopLevel()) -+ { -+ if (!d->menuHandler && useDropShadow(widget)) -+ d->menuHandler = new TransparencyHandler(this, Disabled, 1.0, false); - -+ if (d->menuHandler && useDropShadow(widget)) -+ widget->installEventFilter(d->menuHandler); -+ } -+} -+ - - void KStyle::unPolish( QWidget* widget ) - { -@@ -267,8 +281,10 @@ void KStyle::unPolish( QWidget* widget ) - QFrame::Shape shape = frame->frameShape(); - if (shape == QFrame::ToolBarPanel || shape == QFrame::MenuBarPanel) - widget->removeEventFilter(this); -- } -+ } - } -+ if (widget->isTopLevel() && d->menuHandler && useDropShadow(widget)) -+ widget->removeEventFilter(d->menuHandler); - } - - -@@ -1997,7 +2013,7 @@ void TransparencyHandler::bottomShadow(Q - } - - // Create a shadow of thickness 4. --void TransparencyHandler::createShadowWindows(const QPopupMenu* p) -+void TransparencyHandler::createShadowWindows(const QWidget* p) - { - #ifdef Q_WS_X11 - int x2 = p->x()+p->width(); -@@ -2044,7 +2060,7 @@ void TransparencyHandler::createShadowWi - #endif - } - --void TransparencyHandler::removeShadowWindows(const QPopupMenu* p) -+void TransparencyHandler::removeShadowWindows(const QWidget* p) - { - #ifdef Q_WS_X11 - ShadowMap::iterator it = shadowMap().find(p); -@@ -2070,7 +2086,7 @@ bool TransparencyHandler::eventFilter( Q - // Copyright (C) 2000 Daniel M. Duley - - // Added 'fake' menu shadows <04-Jul-2002> -- Karol -- QPopupMenu* p = (QPopupMenu*)object; -+ QWidget* p = (QWidget*)object; - QEvent::Type et = event->type(); - - if (et == QEvent::Show) -@@ -2109,13 +2125,23 @@ bool TransparencyHandler::eventFilter( Q - // * shadows after duplicate show events. - // * TODO : determine real cause for duplicate events - // * till 20021005 -- if (dropShadow && p->width() > 16 && p->height() > 16 && !shadowMap().contains( p )) -+ if ((dropShadow || useDropShadow(p)) -+ && p->width() > 16 && p->height() > 16 && !shadowMap().contains( p )) - createShadowWindows(p); - } -+ else if (et == QEvent::Resize && p->isShown() && p->isTopLevel()) -+ { -+ // Handle drop shadow -+ if (dropShadow || useDropShadow(p)) -+ { -+ removeShadowWindows(p); -+ createShadowWindows(p); -+ } -+ } - else if (et == QEvent::Hide) - { - // Handle drop shadow -- if (dropShadow) -+ if (dropShadow || useDropShadow(p)) - removeShadowWindows(p); - - // Handle translucency -@@ -2140,7 +2166,7 @@ void TransparencyHandler::blendToColor(c - } - - --void TransparencyHandler::blendToPixmap(const QColorGroup &cg, const QPopupMenu* p) -+void TransparencyHandler::blendToPixmap(const QColorGroup &cg, const QWidget* p) - { - if (opacity < 0.0 || opacity > 1.0) - return; -@@ -2153,7 +2179,10 @@ void TransparencyHandler::blendToPixmap( - return; - - // Allow styles to define the blend pixmap - allows for some interesting effects. -- kstyle->renderMenuBlendPixmap( blendPix, cg, p ); -+ if (::qt_cast(p)) -+ kstyle->renderMenuBlendPixmap( blendPix, cg, ::qt_cast(p) ); -+ else -+ blendPix.fill(cg.button()); // Just tint as the default behavior - - QImage blendImg = blendPix.convertToImage(); - QImage backImg = pix.convertToImage(); -@@ -2166,13 +2195,17 @@ void TransparencyHandler::blendToPixmap( - // Here we go, use XRender in all its glory. - // NOTE: This is actually a bit slower than the above routines - // on non-accelerated displays. -- Karol. --void TransparencyHandler::XRenderBlendToPixmap(const QPopupMenu* p) -+void TransparencyHandler::XRenderBlendToPixmap(const QWidget* p) - { - KPixmap renderPix; - renderPix.resize( pix.width(), pix.height() ); - - // Allow styles to define the blend pixmap - allows for some interesting effects. -- kstyle->renderMenuBlendPixmap( renderPix, p->colorGroup(), p ); -+ if (::qt_cast(p)) -+ kstyle->renderMenuBlendPixmap( renderPix, p->colorGroup(), -+ ::qt_cast(p) ); -+ else -+ renderPix.fill(p->colorGroup().button()); // Just tint as the default behavior - - Display* dpy = qt_xdisplay(); - Pixmap alphaPixmap; diff --git a/opensuse/core/tdelibs/kimproxy-warning.diff b/opensuse/core/tdelibs/kimproxy-warning.diff deleted file mode 100644 index 0731ebf4b..000000000 --- a/opensuse/core/tdelibs/kimproxy-warning.diff +++ /dev/null @@ -1,13 +0,0 @@ -Index: interfaces/kimproxy/library/kimproxy.cpp -=================================================================== ---- interfaces/kimproxy/library/kimproxy.cpp.orig -+++ interfaces/kimproxy/library/kimproxy.cpp -@@ -204,7 +204,7 @@ KIMProxy::KIMProxy( DCOPClient* dc ) : D - - // FIXME: make this work when the sender object id is set to KIMIFace - if ( !connectDCOPSignal( 0, 0, method, method, false ) ) -- KMessageBox::information( 0, QString( "Couldn't connect DCOP signal.\nWon't receive any status notifications!" ) ); -+ kdWarning() << "Couldn't connect DCOP signal. Won't receive any status notifications!" << endl; - } - - KIMProxy::~KIMProxy( ) diff --git a/opensuse/core/tdelibs/kmimelist.diff b/opensuse/core/tdelibs/kmimelist.diff deleted file mode 100644 index 484523f25..000000000 --- a/opensuse/core/tdelibs/kmimelist.diff +++ /dev/null @@ -1,81 +0,0 @@ -Index: kded/Makefile.am -=================================================================== ---- kded/Makefile.am.orig -+++ kded/Makefile.am -@@ -36,12 +36,16 @@ kbuildsycoca_la_SOURCES = kbuildsycoca.c - kctimefactory.cpp \ - vfolder_menu.cpp - --bin_PROGRAMS = kdontchangethehostname kde-menu -+bin_PROGRAMS = kdontchangethehostname kde-menu kmimelist - - kdontchangethehostname_LDFLAGS = $(all_libraries) $(KDE_RPATH) - kdontchangethehostname_LDADD = $(LIB_KDECORE) - kdontchangethehostname_SOURCES = khostname.cpp - -+kmimelist_LDFLAGS = $(all_libraries) $(KDE_RPATH) -+kmimelist_LDADD = ../kio/libkio.la -+kmimelist_SOURCES = kmimelist.cpp -+ - kde_menu_LDFLAGS = $(all_libraries) $(KDE_RPATH) - kde_menu_LDADD = $(LIB_KIO) - kde_menu_SOURCES = kde-menu.cpp -Index: kded/kmimelist.cpp -=================================================================== ---- /dev/null -+++ kded/kmimelist.cpp -@@ -0,0 +1,54 @@ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include -+ -+#include -+ -+int main(int argc, char *argv[]) -+{ -+ KApplication k(argc,argv,"blurb",false); -+ -+ KMimeType::List mtl = KMimeType::allMimeTypes( ); -+ assert( mtl.count() ); -+ qDebug( "Found %d mime types.", mtl.count() ); -+ QValueListIterator it(mtl.begin()); -+ KServiceTypeProfile::OfferList ol; -+ -+ for (; it != mtl.end(); ++it) -+ { -+ { -+ // Application -+ printf( "APP:%s:", (*it)->name().latin1() ); -+ ol = KServiceTypeProfile::offers((*it)->name(), "Application"); -+ QValueListIterator it2(ol.begin()); -+ for (; it2 != ol.end(); ++it2) { -+ if ((*it2).allowAsDefault()) -+ printf( " %s", (*it2).service()->desktopEntryPath().ascii() ); -+ -+ } -+ printf( "\n" ); -+ } -+ -+ { -+ // Embedded -+ printf( "PART:%s:", (*it)->name().latin1() ); -+ ol = KServiceTypeProfile::offers((*it)->name(), "KParts/ReadOnlyPart"); -+ QValueListIterator it2(ol.begin()); -+ for (; it2 != ol.end(); ++it2) { -+ if ((*it2).allowAsDefault()) -+ printf( " %s", (*it2).service()->desktopEntryPath().ascii() ); -+ -+ } -+ printf( "\n" ); -+ } -+ } -+} -+ diff --git a/opensuse/core/tdelibs/kremoteencoding-utf8.diff b/opensuse/core/tdelibs/kremoteencoding-utf8.diff deleted file mode 100644 index 74600a0f4..000000000 --- a/opensuse/core/tdelibs/kremoteencoding-utf8.diff +++ /dev/null @@ -1,28 +0,0 @@ -Index: kio/kio/kremoteencoding.cpp -=================================================================== ---- kio/kio/kremoteencoding.cpp.orig -+++ kio/kio/kremoteencoding.cpp -@@ -53,7 +53,7 @@ QCString KRemoteEncoding::encode(const Q - QCString result = codec->fromUnicode(name); - if (codec->toUnicode(result) != name) - return name.latin1(); -- -+ - return result; - } - -@@ -80,11 +80,13 @@ void KRemoteEncoding::setEncoding(const - - if (name) - codec = QTextCodec::codecForName(name); -+ else -+ codec = QTextCodec::codecForMib( 106 ); // fallback to UTF-8 - - if (codec == 0L) - codec = QTextCodec::codecForMib(1); - -- kdDebug() << k_funcinfo << "setting encoding " << codec->name() -+ kdDebug() << k_funcinfo << "setting encoding " << codec->name() - << " for name=" << name << endl; - } - diff --git a/opensuse/core/tdelibs/ktip-icon-hack.diff b/opensuse/core/tdelibs/ktip-icon-hack.diff deleted file mode 100644 index 4812646d1..000000000 --- a/opensuse/core/tdelibs/ktip-icon-hack.diff +++ /dev/null @@ -1,56 +0,0 @@ -Index: kdeui/ktip.cpp -=================================================================== ---- kdeui/ktip.cpp.orig -+++ kdeui/ktip.cpp -@@ -367,24 +367,47 @@ void KTipDialog::showMultiTip(QWidget *p - mInstance->raise(); - } - -+static QString fixTip(QString tip) -+{ -+ QRegExp iconRegExp(""); -+ iconRegExp.setMinimal(true); -+ if (iconRegExp.search(tip)>-1) { -+ QString iconName = iconRegExp.cap(1); -+ if (!iconName.isEmpty()) -+ if (KGlobal::dirs()->findResource("icon", iconName).isEmpty()) -+ tip.replace("crystalsvg","hicolor"); -+ } -+ -+ return tip; -+} -+ - void KTipDialog::prevTip() - { - mDatabase->prevTip(); -- mTipText->setText(QString::fromLatin1( -+ QString currentTip = QString::fromLatin1( - "%3") - .arg(mTextColor.name()) - .arg(mBaseColor.name()) -- .arg(i18n(mDatabase->tip().utf8()))); -+ .arg(i18n(mDatabase->tip().utf8())); -+ -+ -+ currentTip = fixTip(currentTip); -+ mTipText->setText(currentTip); - mTipText->setContentsPos(0, 0); - } - - void KTipDialog::nextTip() - { - mDatabase->nextTip(); -- mTipText->setText(QString::fromLatin1("%3") -+ QString currentTip = QString::fromLatin1( -+ "%3") - .arg(mTextColor.name()) - .arg(mBaseColor.name()) -- .arg(i18n(mDatabase->tip().utf8()))); -+ .arg(i18n(mDatabase->tip().utf8())); -+ -+ -+ currentTip = fixTip(currentTip); -+ mTipText->setText(currentTip); - mTipText->setContentsPos(0, 0); - } - diff --git a/opensuse/core/tdelibs/kwalletd-try-open.diff b/opensuse/core/tdelibs/kwalletd-try-open.diff deleted file mode 100644 index 547f8192d..000000000 --- a/opensuse/core/tdelibs/kwalletd-try-open.diff +++ /dev/null @@ -1,81 +0,0 @@ -Index: kio/misc/kwalletd/kwalletd.cpp -=================================================================== ---- kio/misc/kwalletd/kwalletd.cpp.orig -+++ kio/misc/kwalletd/kwalletd.cpp -@@ -355,6 +355,44 @@ int KWalletD::doTransactionOpen(const QC - return rc; - } - -+int KWalletD::tryOpen(const QString& wallet, const QCString& password) -+{ -+ if (isOpen(wallet)) -+ return 0; -+ -+ if (_tryOpenBlocked.isActive()) { -+ kdDebug() << "tryOpen is active.." << endl; -+ return -1; -+ } -+ -+ if (!KWallet::Backend::exists(wallet)) -+ return -2; -+ -+ KWallet::Backend *b = new KWallet::Backend(wallet, false /*isPath*/); -+ int rc = b->open(QByteArray().duplicate(password, strlen(password))); -+ if (rc == 0) { -+ _wallets.insert(rc = generateHandle(), b); -+ _passwords[wallet] = password; -+ b->ref(); -+ _tryOpenBlocked.stop(); -+ QByteArray data; -+ QDataStream ds(data, IO_WriteOnly); -+ ds << wallet; -+ emitDCOPSignal("walletOpened(QString)", data); -+ } -+ else { -+ delete b; -+ // make sure that we're not bombed with a dictionary attack -+ _tryOpenBlocked.start (30 * 1000, true /*single shot*/); -+ if (++_failed > 5) { -+ _failed = 0; -+ QTimer::singleShot(0, this, SLOT(notifyFailures())); -+ } -+ -+ rc = -1; -+ } -+ return rc; -+} - - int KWalletD::internalOpen(const QCString& appid, const QString& wallet, bool isPath, WId w, bool modal) { - int rc = -1; -Index: kio/misc/kwalletd/kwalletd.h -=================================================================== ---- kio/misc/kwalletd/kwalletd.h.orig -+++ kio/misc/kwalletd/kwalletd.h -@@ -26,6 +26,7 @@ - #include - #include - #include -+#include - #include - #include "kwalletbackend.h" - -@@ -51,8 +52,10 @@ class KWalletD : public KDEDModule { - - // Open and unlock the wallet - virtual int open(const QString& wallet, uint wId); -- -+ // Open and unlock the wallet -+ virtual int tryOpen(const QString& wallet, const QCString& passwd); - // Open and unlock the wallet with this path -+ - virtual int openPath(const QString& path, uint wId); - - // Asynchronous open - must give the object to return the handle -@@ -186,6 +189,7 @@ class KWalletD : public KDEDModule { - int _idleTime; - QMap _implicitAllowMap, _implicitDenyMap; - KTimeout *_timeouts; -+ QTimer _tryOpenBlocked; - - QPtrList _transactions; - QGuardedPtr< QWidget > activeDialog; diff --git a/opensuse/core/tdelibs/light_v_2_scrollbar_patch.patch b/opensuse/core/tdelibs/light_v_2_scrollbar_patch.patch deleted file mode 100644 index e4ad1dd81..000000000 --- a/opensuse/core/tdelibs/light_v_2_scrollbar_patch.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -ur kdelibs-3.5.10.orig/kstyles/light/lightstyle-v2.cpp kdelibs-3.5.10/kstyles/light/lightstyle-v2.cpp ---- kdelibs-3.5.10.orig/kstyles/light/lightstyle-v2.cpp 2006-03-17 13:19:10.000000000 +0300 -+++ kdelibs-3.5.10/kstyles/light/lightstyle-v2.cpp 2011-05-07 23:30:18.000000000 +0400 -@@ -501,12 +501,14 @@ - p->drawLine(r.topLeft(), r.topRight()); - p->setPen(cg.background()); - p->drawLine(r.left(), r.top() + 1, r.right(), r.top() + 1); -- fr.addCoords(0, 2, 0, 0); -+ p->drawLine(r.left(), r.bottom(), r.right(), r.bottom()); -+ fr.addCoords(0, 2, 0, -1); - } else { - p->drawLine(r.topLeft(), r.bottomLeft()); - p->setPen(cg.background()); - p->drawLine(r.left() + 1, r.top(), r.left() + 1, r.bottom()); -- fr.addCoords(2, 0, 0, 0); -+ p->drawLine(r.right(), r.top(), r.right(), r.bottom()); -+ fr.addCoords(2, 0, -1, 0); - } - - p->fillRect(fr, cg.brush((flags & Style_Down) ? -@@ -523,11 +525,13 @@ - if (flags & Style_Horizontal) { - p->drawLine(r.topLeft(), r.topRight()); - p->setPen(cg.background()); -+ p->drawLine(r.left(), r.bottom(), r.right(), r.bottom()); - p->drawLine(r.left(), r.top() + 1, r.right(), r.top() + 1); - fr.addCoords(0, 2, 0, -1); - } else { - p->drawLine(r.topLeft(), r.bottomLeft()); - p->setPen(cg.background()); -+ p->drawLine(r.right(), r.top(), r.right(), r.bottom()); - p->drawLine(r.left() + 1, r.top(), r.left() + 1, r.bottom()); - fr.addCoords(2, 0, -1, 0); - } diff --git a/opensuse/core/tdelibs/limit-max-image-size.diff b/opensuse/core/tdelibs/limit-max-image-size.diff deleted file mode 100644 index 6a01bf063..000000000 --- a/opensuse/core/tdelibs/limit-max-image-size.diff +++ /dev/null @@ -1,28 +0,0 @@ -Index: kapplication.cpp -=================================================================== -RCS file: /home/kde/kdelibs/kdecore/kapplication.cpp,v -retrieving revision 1.670 -diff -u -p -r1.670 kapplication.cpp ---- kdecore/kapplication.cpp 22 Jul 2004 16:50:04 -0000 1.670 -+++ kdecore/kapplication.cpp 16 Aug 2004 20:31:02 -0000 -@@ -43,6 +43,7 @@ - #include - #include - #include -+#include - #ifndef QT_NO_SQL - #include - #endif -@@ -1975,6 +1976,12 @@ void KApplication::propagateSettings(Set - KConfigBase* config = KGlobal::config(); - KConfigGroupSaver saver( config, "KDE" ); - -+#ifdef QT_HAVE_MAX_IMAGE_SIZE -+ QSize maxImageSize(4096, 4096); -+ maxImageSize = config->readSizeEntry("MaxImageSize", &maxImageSize); -+ QImage::setMaxImageSize(maxImageSize); -+#endif -+ - int num = config->readNumEntry("CursorBlinkRate", QApplication::cursorFlashTime()); - if ((num != 0) && (num < 200)) - num = 200; diff --git a/opensuse/core/tdelibs/lpoptions-cups-1.2.diff b/opensuse/core/tdelibs/lpoptions-cups-1.2.diff deleted file mode 100644 index aa3f5d5b6..000000000 --- a/opensuse/core/tdelibs/lpoptions-cups-1.2.diff +++ /dev/null @@ -1,28 +0,0 @@ -Index: kdeprint/kmvirtualmanager.cpp -=================================================================== ---- kdeprint/kmvirtualmanager.cpp.orig -+++ kdeprint/kmvirtualmanager.cpp -@@ -179,7 +179,7 @@ void KMVirtualManager::setAsDefault(KMPr - - void KMVirtualManager::refresh() - { -- QFileInfo fi(QDir::homeDirPath() + QFile::decodeName("/.lpoptions")); -+ QFileInfo fi(QDir::homeDirPath() + QFile::decodeName("/.cups/lpoptions")); - QFileInfo fi2(QFile::decodeName("/etc/cups/lpoptions")); - - // if root, then only use global file: trick -> use twice the same file -@@ -301,7 +301,13 @@ void KMVirtualManager::triggerSave() - filename = QFile::decodeName("/etc/cups/lpoptions"); - } - else -- filename = QDir::homeDirPath() + QFile::decodeName("/.lpoptions"); -+ { -+ QDir cupsDir(QDir::home().absPath()+"/.cups"); -+ if (!cupsDir.exists()) -+ cupsDir.mkdir(QDir::home().absPath()+"/.cups"); -+ filename = QDir::homeDirPath() + QFile::decodeName("/.cups/lpoptions"); -+ } -+ - if (!filename.isEmpty()) - { - saveFile(filename); diff --git a/opensuse/core/tdelibs/mimetype-changes.diff b/opensuse/core/tdelibs/mimetype-changes.diff deleted file mode 100644 index ea47629b8..000000000 --- a/opensuse/core/tdelibs/mimetype-changes.diff +++ /dev/null @@ -1,36 +0,0 @@ -Index: mimetypes/application/x-rpm.desktop -=================================================================== ---- mimetypes/application/x-rpm.desktop.orig -+++ mimetypes/application/x-rpm.desktop -@@ -1,4 +1,5 @@ - [Desktop Entry] -+X-KDE-AutoEmbed=true - Type=MimeType - MimeType=application/x-rpm - Icon=rpm -Index: mimetypes/application/x-ogg.desktop -=================================================================== ---- mimetypes/application/x-ogg.desktop.orig -+++ mimetypes/application/x-ogg.desktop -@@ -4,7 +4,7 @@ - # application/ogg "inherits" from it, so that apps associated with x-ogg can open ogg files. - Type=MimeType - MimeType=application/x-ogg --Icon=multimedia -+Icon=sound - Comment=Ogg Multimedia - Comment[ar]=وسائط Ogg متعددة - Comment[az]=Ogg Multimediya -Index: mimetypes/application/ogg.desktop -=================================================================== ---- mimetypes/application/ogg.desktop.orig -+++ mimetypes/application/ogg.desktop -@@ -1,7 +1,7 @@ - [Desktop Entry] - Type=MimeType - MimeType=application/ogg --Icon=multimedia -+Icon=sound - Patterns=*.ogg;*.OGG; - # Previous name of this mimetype - X-KDE-IsAlso=application/x-ogg diff --git a/opensuse/core/tdelibs/mozilla-sliders.patch b/opensuse/core/tdelibs/mozilla-sliders.patch deleted file mode 100644 index 004b0fd36..000000000 --- a/opensuse/core/tdelibs/mozilla-sliders.patch +++ /dev/null @@ -1,19 +0,0 @@ -Index: kdefx/kstyle.cpp -=================================================================== ---- kdefx/kstyle.cpp.orig -+++ kdefx/kstyle.cpp -@@ -2210,6 +2210,14 @@ void TransparencyHandler::XRenderBlendTo - void KStyle::virtual_hook( int, void* ) - { /*BASE::virtual_hook( id, data );*/ } - -+// HACK for gtk-qt-engine -+ -+KDE_EXPORT extern "C" -+void kde_kstyle_set_scrollbar_type_windows( void* style ) -+{ -+ ((KStyle*)style)->setScrollBarType( KStyle::WindowsStyleScrollBar ); -+} -+ - // vim: set noet ts=4 sw=4: - // kate: indent-width 4; replace-tabs off; tab-width 4; space-indent off; - diff --git a/opensuse/core/tdelibs/networkstatus.diff b/opensuse/core/tdelibs/networkstatus.diff deleted file mode 100644 index d7b4e8c89..000000000 --- a/opensuse/core/tdelibs/networkstatus.diff +++ /dev/null @@ -1,6006 +0,0 @@ -Index: networkstatus/connectionmanager.cpp -=================================================================== ---- /dev/null -+++ networkstatus/connectionmanager.cpp -@@ -0,0 +1,171 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include -+#include -+#include -+ -+#include "connectionmanager.h" -+#include "connectionmanager_p.h" -+ -+// Connection manager itself -+ConnectionManager::ConnectionManager( QObject * parent, const char * name ) : DCOPObject( "ConnectionManager" ), QObject( parent, name ), d( new ConnectionManagerPrivate( this ) ) -+{ -+ d->service = new NetworkStatusIface_stub( kapp->dcopClient(), "kded", "networkstatus" ); -+ -+ connectDCOPSignal( "kded", "networkstatus", "statusChange(int)", "slotStatusChanged(int)", false ); -+ -+ initialise(); -+} -+ -+ConnectionManager::~ConnectionManager() -+{ -+ delete d; -+} -+ -+ConnectionManager *ConnectionManager::s_self = 0L; -+ -+ConnectionManager *ConnectionManager::self() -+{ -+ static KStaticDeleter deleter; -+ if(!s_self) -+ deleter.setObject( s_self, new ConnectionManager( 0, "connection_manager" ) ); -+ return s_self; -+} -+ -+void ConnectionManager::initialise() -+{ -+ // determine initial state and set the state object accordingly. -+ d->status = ( NetworkStatus::Status )d->service->status(); -+} -+ -+NetworkStatus::Status ConnectionManager::status() -+{ -+ return d->status; -+} -+ -+void ConnectionManager::slotStatusChanged( int status ) -+{ -+ d->status = ( NetworkStatus::Status )status; -+ switch ( status ) { -+ case NetworkStatus::NoNetworks: -+ break; -+ case NetworkStatus::Unreachable: -+ break; -+ case NetworkStatus::OfflineDisconnected: -+ case NetworkStatus::OfflineFailed: -+ case NetworkStatus::ShuttingDown: -+ case NetworkStatus::Offline: -+ case NetworkStatus::Establishing: -+ if ( d->disconnectPolicy == Managed ) { -+ emit d->disconnected(); -+ } else if ( d->disconnectPolicy == OnNextChange ) { -+ setDisconnectPolicy( Manual ); -+ emit d->disconnected(); -+ } -+ break; -+ case NetworkStatus::Online: -+ if ( d->disconnectPolicy == Managed ) { -+ emit d->connected(); -+ } else if ( d->disconnectPolicy == OnNextChange ) { -+ setConnectPolicy( Manual ); -+ emit d->connected(); -+ } -+ break; -+ default: -+ kdDebug() << k_funcinfo << "Unrecognised status code!" << endl; -+ } -+ emit statusChanged( d->status ); -+} -+ -+ConnectionManager::ConnectionPolicy ConnectionManager::connectPolicy() const -+{ -+ return d->connectPolicy; -+} -+ -+void ConnectionManager::setConnectPolicy( ConnectionManager::ConnectionPolicy policy ) -+{ -+ d->connectPolicy = policy; -+} -+ -+ConnectionManager::ConnectionPolicy ConnectionManager::disconnectPolicy() const -+{ -+ return d->disconnectPolicy; -+} -+ -+void ConnectionManager::setDisconnectPolicy( ConnectionManager::ConnectionPolicy policy ) -+{ -+ d->disconnectPolicy = policy; -+} -+ -+void ConnectionManager::setManualConnectionPolicies() -+{ -+ d->connectPolicy = ConnectionManager::Manual; -+ d->disconnectPolicy = ConnectionManager::Manual; -+} -+ -+void ConnectionManager::setManagedConnectionPolicies() -+{ -+ d->connectPolicy = ConnectionManager::Managed; -+ d->disconnectPolicy = ConnectionManager::Managed; -+} -+ -+void ConnectionManager::registerConnectSlot( QObject * receiver, const char * member ) -+{ -+ d->connectReceiver = receiver; -+ d->connectSlot = member; -+ connect( d, SIGNAL( connected() ), receiver, member ); -+} -+ -+void ConnectionManager::forgetConnectSlot() -+{ -+ disconnect( d, SIGNAL( connected() ), d->connectReceiver, d->connectSlot ); -+ d->connectReceiver = 0; -+ d->connectSlot = 0; -+} -+ -+bool ConnectionManager::isConnectSlotRegistered() const -+{ -+ return ( d->connectSlot != 0 ); -+} -+ -+void ConnectionManager::registerDisconnectSlot( QObject * receiver, const char * member ) -+{ -+ d->disconnectReceiver = receiver; -+ d->disconnectSlot = member; -+ connect( d, SIGNAL( disconnected() ), receiver, member ); -+} -+ -+void ConnectionManager::forgetDisconnectSlot() -+{ -+ disconnect( d, SIGNAL( disconnected() ), d->disconnectReceiver, d->disconnectSlot ); -+ d->disconnectReceiver = 0; -+ d->disconnectSlot = 0; -+} -+ -+bool ConnectionManager::isDisconnectSlotRegistered() const -+{ -+ return ( d->disconnectSlot != 0 ); -+} -+ -+#include "connectionmanager.moc" -+ -Index: networkstatus/connectionmanager.h -=================================================================== ---- /dev/null -+++ networkstatus/connectionmanager.h -@@ -0,0 +1,167 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef KDE_CONNECTION_MANAGER_H -+#define KDE_CONNECTION_MANAGER_H -+ -+#include -+#include -+ -+#include -+ -+class ConnectionManagerPrivate; -+ -+class KDE_EXPORT ConnectionManager : public QObject, virtual public DCOPObject -+{ -+Q_OBJECT -+K_DCOP -+k_dcop: -+ void slotStatusChanged( int status ); -+public: -+ /** -+ * This defines application policy in response to networking connect/disconnect events -+ * Manual - the app only disconnects when the user does so -+ * OnNextChange - the app should connect or disconnect the next time the network changes state, thereafter -+ * Manual -+ * Managed - the app should disconnect when the ConnectionManager thinks the system is -+ * offline -+ */ -+ enum ConnectionPolicy { Manual, OnNextChange, Managed }; -+ /** -+ * Set a policy to manage the application's connect behaviour -+ */ -+ void setConnectPolicy( ConnectionPolicy ); -+ /** -+ * Retrieve a policy managing the application's connect behaviour -+ */ -+ ConnectionPolicy connectPolicy() const; -+ -+ /** -+ * Set a policy to manage the application's disconnect behaviour -+ */ -+ void setDisconnectPolicy( ConnectionPolicy ); -+ -+ /** -+ * Retrieve a policy managing the application's disconnect behaviour -+ */ -+ ConnectionPolicy disconnectPolicy() const; -+ -+ /* -+ * We'll get logic of the form -+ * onStatusChange() { -+ * if ( ConnectionManager::self()->policy( ConnectionManager::ConnectBehaviour ) == ConnectionManager::OnNextChange || -+ * ConnectionManager::self()->policy( ConnectionManager::ConnectBehaviour ) == ConnectionManager::Managed ) -+ * { -+ * // do connect -+ * -+ * // reset the policy -+ * if ( ConnectionManager::self()->policy( ConnectionManager::ConnectBehaviour ) == ConnectionManager::OnNextChange ) -+ * ConnectionManager::self()->setPolicy( ConnectionManager::ConnectionManager, -+ * ConnectionManager::Manual ); -+ * } -+ * -+ * Do we just use the CM for policy storage, or do we try to factor the logic to implement the -+ * policy into the CM too? -+ * -+ * could signal doConnect(), then reset the policy -+ * or could register a connect slot -+ * registerConnectMethod( QObject * receiver, const char * member ); -+ * unregisterConnectMethod(); -+ * etc. -+ * -+ * The problem with automatically controlled behaviour, where policy may change as a result of a -+ * connect, is that if it is also manually altered, the CM needs to be updated. But the CM needs to -+ * be updated in any case. -+ * CM need -+ */ -+ /** -+ * Lazy-method to set Manual on both policies -+ */ -+ void setManualConnectionPolicies(); -+ /** -+ * Lazy-method to set Managed on both policies -+ */ -+ void setManagedConnectionPolicies(); -+ -+ /** -+ * Record a slot to call on a given receiving QObject when -+ * 1) the network connection is online, -+ * 2) the policy mandates that the app connect -+ * -+ * Only one slot may be registered at any one time. If a second slot is -+ * registered, the first slot is forgotten -+ * @param receiver the QObject where the slot is located -+ * @param member the slot to call. Set up member using the SLOT() macro. -+ */ -+ void registerConnectSlot( QObject * receiver, const char * member ); -+ -+ /** -+ * Forget any connect slot previously registered -+ */ -+ void forgetConnectSlot(); -+ -+ /** -+ * Has any slot been registered to be called on connect? -+ */ -+ bool isConnectSlotRegistered() const; -+ -+ /** -+ * Record a slot to call on a given receiving QObject when -+ * 1) the network connection goes offline (in any way ), -+ * 2) the policy mandates that the app disconnect -+ * -+ * Only one slot may be registered at any one time. If a second slot is -+ * registered, the first slot is forgotten -+ * @param receiver the QObject where the slot is located -+ * @param member the slot to call. Set up member using the SLOT() macro. -+ */ -+ void registerDisconnectSlot( QObject * receiver, const char * member ); -+ -+ /** -+ * Forget any disconnect slot previously registered -+ */ -+ void forgetDisconnectSlot(); -+ -+ /** -+ * Has any slot been registered to be called on disconnect? -+ */ -+ bool isDisconnectSlotRegistered() const; -+ -+ /// existing API -+ -+ static ConnectionManager* self(); -+ virtual ~ConnectionManager(); -+ NetworkStatus::Status status(); -+signals: -+ // signal that the network for a hostname is up/down -+ void statusChanged( NetworkStatus::Status status ); -+private: -+ // sets up internal state -+ void initialise(); -+ // reread the desktop status from the daemon and update internal state -+ ConnectionManager( QObject *parent, const char * name ); -+ ConnectionManagerPrivate * d; -+ static ConnectionManager * s_self; -+}; -+ -+#endif -+ -Index: networkstatus/connectionmanager_p.cpp -=================================================================== ---- /dev/null -+++ networkstatus/connectionmanager_p.cpp -@@ -0,0 +1,13 @@ -+#include "connectionmanager_p.h" -+ -+ConnectionManagerPrivate::ConnectionManagerPrivate(QObject * parent, const char * name ) : QObject( parent, name ), service( 0 ), connectPolicy( ConnectionManager::Managed ), -+ disconnectPolicy( ConnectionManager::Managed ), connectReceiver( 0 ), connectSlot( 0 ), -+ disconnectReceiver( 0 ), disconnectSlot( 0 ) -+{ -+} -+ -+ConnectionManagerPrivate::~ConnectionManagerPrivate() -+{ -+} -+ -+#include "connectionmanager_p.moc" -Index: networkstatus/connectionmanager_p.h -=================================================================== ---- /dev/null -+++ networkstatus/connectionmanager_p.h -@@ -0,0 +1,55 @@ -+/* This file is part of the KDE project -+ Copyright (C) 2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef CONNECTIONMANAGERPRIVATE_H -+#define CONNECTIONMANAGERPRIVATE_H -+ -+#include -+ -+#include "connectionmanager.h" -+#include "networkstatuscommon.h" -+#include "networkstatusiface_stub.h" -+ -+ -+// ConnectionManager's private parts -+class ConnectionManagerPrivate : public QObject -+{ -+Q_OBJECT -+ friend class ConnectionManager; -+public: -+ ConnectionManagerPrivate( QObject * parent = 0, const char * name = 0); -+ ~ConnectionManagerPrivate(); -+ // this holds the currently active state -+ NetworkStatus::Status status; -+ NetworkStatusIface_stub * service; -+ ConnectionManager::ConnectionPolicy connectPolicy; -+ ConnectionManager::ConnectionPolicy disconnectPolicy; -+ QObject * connectReceiver; -+ const char * connectSlot; -+ QObject * disconnectReceiver; -+ const char * disconnectSlot; -+signals: -+ void connected(); -+ void disconnected(); -+}; -+ -+#endif -Index: networkstatus/Makefile.am -=================================================================== ---- /dev/null -+++ networkstatus/Makefile.am -@@ -0,0 +1,45 @@ -+#SUBDIRS = networkstatustray -+ -+METASOURCES = AUTO -+ -+INCLUDES = -I$(top_srcdir)/kded -I$(top_srcdir) $(all_includes) -+ -+kde_module_LTLIBRARIES = kded_networkstatus.la -+ -+kded_networkstatus_la_SOURCES = networkstatus.cpp networkstatus.skel \ -+ network.cpp -+kded_networkstatus_la_LIBADD = $(LIB_KDECORE) $(LIB_KIO) ./libnetworkstatus.la -+kded_networkstatus_la_LDFLAGS = $(all_libraries) -module -avoid-version -+ -+servicesdir = $(kde_servicesdir)/kded -+ -+services_DATA = networkstatus.desktop -+ -+lib_LTLIBRARIES = libnetworkstatus.la libconnectionmanager.la -+ -+libnetworkstatus_la_LIBADD = $(LIB_KDECORE) -+libnetworkstatus_la_LDFLAGS = $(all_libraries) -+libnetworkstatus_la_SOURCES = networkstatuscommon.cpp -+ -+libconnectionmanager_la_LIBADD = $(LIB_KDECORE) libnetworkstatus.la -+libconnectionmanager_la_LDFLAGS = $(all_libraries) -+libconnectionmanager_la_SOURCES = connectionmanager.cpp connectionmanager_p.cpp networkstatusindicator.cpp connectionmanager.skel networkstatusiface.stub -+ -+noinst_PROGRAMS = networkstatustestservice networkstatustestclient managedconnectiontestclient -+ -+networkstatustestservice_LDFLAGS = $(all_libraries) -+networkstatustestservice_LDADD = $(LIB_KFILE) libnetworkstatus.la -+networkstatustestservice_SOURCES = testservice.cpp testserviceview.ui networkstatusiface.stub -+ -+networkstatustestclient_LDFLAGS = $(all_libraries) -+networkstatustestclient_LDADD = $(LIB_KFILE) libnetworkstatus.la libconnectionmanager.la -+networkstatustestclient_SOURCES = testclient.cpp testclientview.ui -+ -+managedconnectiontestclient_LDFLAGS = $(all_libraries) -+managedconnectiontestclient_LDADD = $(LIB_KFILE) libnetworkstatus.la libconnectionmanager.la -+managedconnectiontestclient_SOURCES = testclient2.cpp testclientview.ui -+ -+noinst_HEADERS = network.h testservice.h testclient.h -+ -+include_HEADERS = networkstatuscommon.h connectionmanager.h networkstatusindicator.h \ -+ networkstatusiface.h -Index: networkstatus/network.cpp -=================================================================== ---- /dev/null -+++ networkstatus/network.cpp -@@ -0,0 +1,62 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include -+ -+#include "network.h" -+ -+Network::Network( NetworkStatus::Properties properties ) -+ : m_name( properties.name ), m_status( properties.status ), m_service( properties.service ) -+{ -+} -+ -+void Network::setStatus( NetworkStatus::Status status ) -+{ -+ m_status = status; -+} -+ -+NetworkStatus::Status Network::status() -+{ -+ return m_status; -+} -+ -+void Network::setName( const QString& name ) -+{ -+ m_name = name; -+} -+ -+QString Network::name() -+{ -+ return m_name; -+} -+ -+QString Network::service() -+{ -+ return m_service; -+} -+ -+void Network::setService( const QString& service ) -+{ -+ m_service = service; -+} -+ -+// vim: sw=4 ts=4 -Index: networkstatus/network.h -=================================================================== ---- /dev/null -+++ networkstatus/network.h -@@ -0,0 +1,60 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef NETWORKSTATUS_NETWORK_H -+#define NETWORKSTATUS_NETWORK_H -+ -+#include "networkstatuscommon.h" -+ -+class Network -+{ -+public: -+ Network( const QString name ); -+ Network( NetworkStatus::Properties properties ); -+ /** -+ * Update the status of this network -+ */ -+ void setStatus( NetworkStatus::Status status ); -+ /** -+ * The connection status of this network -+ */ -+ NetworkStatus::Status status(); -+ /** -+ * The name of this network -+ */ -+ QString name(); -+ void setName( const QString& name ); -+ /** -+ * Returns the service owning this network -+ */ -+ QString service(); -+ void setService( const QString& service ); -+ -+private: -+ Network( const Network & ); -+ QString m_name; -+ NetworkStatus::Status m_status; -+ QString m_service; -+}; -+ -+#endif -+// vim: sw=4 ts=4 -Index: networkstatus/networkstatuscommon.cpp -=================================================================== ---- /dev/null -+++ networkstatus/networkstatuscommon.cpp -@@ -0,0 +1,76 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include "networkstatuscommon.h" -+ -+QDataStream & operator<< ( QDataStream & s, const NetworkStatus::Properties p ) -+{ -+ s << p.name; -+ s << (int)p.status; -+ s << p.service; -+ return s; -+} -+ -+QDataStream & operator>> ( QDataStream & s, NetworkStatus::Properties &p ) -+{ -+ int status; -+ s >> p.name; -+ s >> status; -+ p.status = (NetworkStatus::Status)status; -+ s >> p.service; -+ return s; -+} -+ -+namespace NetworkStatus -+{ -+ QString toString( NetworkStatus::Status st ) -+ { -+ QString str; -+ switch ( st ) { -+ case NetworkStatus::NoNetworks: -+ str = "NoNetworks"; -+ break; -+ case NetworkStatus::Unreachable: -+ str = "Unreachable"; -+ break; -+ case NetworkStatus::OfflineDisconnected: -+ str = "OfflineDisconnected"; -+ break; -+ case NetworkStatus::OfflineFailed: -+ str = "OfflineFailed"; -+ break; -+ case NetworkStatus::ShuttingDown: -+ str = "ShuttingDown"; -+ break; -+ case NetworkStatus::Offline: -+ str = "Offline"; -+ break; -+ case NetworkStatus::Establishing: -+ str = "Establishing"; -+ break; -+ case NetworkStatus::Online: -+ str = "Online"; -+ break; -+ } -+ return str; -+ } -+} // namespace NetworkStatus -Index: networkstatus/networkstatuscommon.h -=================================================================== ---- /dev/null -+++ networkstatus/networkstatuscommon.h -@@ -0,0 +1,52 @@ -+/* This file is part of kdepim -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef NETWORKSTATUS_COMMON_H -+#define NETWORKSTATUS_COMMON_H -+ -+#include -+ -+namespace NetworkStatus -+{ -+ enum Status { NoNetworks = 1, Unreachable, OfflineDisconnected, OfflineFailed, ShuttingDown, Offline, Establishing, Online }; -+ enum RequestResult { RequestAccepted = 1, Connected, UserRefused, Unavailable }; -+ enum UnusedDemandPolicy { All, User, None, Permanent }; -+ -+ // BINARY COMPATIBILITY ALERT BEGIN !!!! -+ struct Properties -+ { -+ QString name; -+ Status status; -+ UnusedDemandPolicy unused1; -+ QCString service; -+ bool unused3; -+ QStringList unused4; -+ }; -+ // BINARY COMPATIBILITY ALERT END !!!! -+ -+ QString toString( Status st ); -+} -+ -+QDataStream & operator>> ( QDataStream & s, NetworkStatus::Properties &p ); -+QDataStream & operator<< ( QDataStream & s, const NetworkStatus::Properties p ); -+ -+#endif -Index: networkstatus/networkstatus.cpp -=================================================================== ---- /dev/null -+++ networkstatus/networkstatus.cpp -@@ -0,0 +1,163 @@ -+/* This file is part of kdepim -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include "networkstatus.h" -+ -+#include -+ -+#include -+#include -+#include -+ -+#include "network.h" -+#include -+ -+extern "C" { -+ KDE_EXPORT KDEDModule* create_networkstatus( const QCString& obj ) -+ { -+ return new NetworkStatusModule( obj ); -+ } -+} -+ -+// INTERNALLY USED STRUCTS AND TYPEDEFS -+ -+typedef QMap< QString, Network * > NetworkMap; -+ -+class NetworkStatusModule::Private -+{ -+public: -+ NetworkMap networks; -+ NetworkStatus::Status status; -+}; -+ -+// CTORS/DTORS -+ -+NetworkStatusModule::NetworkStatusModule( const QCString & obj ) : KDEDModule( obj ), d( new Private ) -+{ -+ d->status = NetworkStatus::NoNetworks; -+ connect( kapp->dcopClient(), SIGNAL( applicationRemoved( const QCString& ) ) , this, SLOT( unregisteredFromDCOP( const QCString& ) ) ); -+ // connect( kapp->dcopClient(), SIGNAL( applicationRegistered( const QCString& ) ) , this, SLOT( registeredToDCOP( const QCString& ) ) ); -+} -+ -+NetworkStatusModule::~NetworkStatusModule() -+{ -+ NetworkMap::ConstIterator it; -+ const NetworkMap::ConstIterator end = d->networks.end(); -+ -+ for ( it = d->networks.begin(); it != end; ++it ) { -+ delete ( *it ); -+ } -+ -+ delete d; -+} -+ -+// CLIENT INTERFACE -+ -+QStringList NetworkStatusModule::networks() -+{ -+ kdDebug() << k_funcinfo << " contains " << d->networks.count() << " networks" << endl; -+ return d->networks.keys(); -+} -+ -+int NetworkStatusModule::status() -+{ -+ kdDebug() << k_funcinfo << " status: " << (int)d->status << endl; -+ return (int)d->status; -+} -+ -+//protected: -+ -+void NetworkStatusModule::updateStatus() -+{ -+ NetworkStatus::Status bestStatus = NetworkStatus::NoNetworks; -+ const NetworkStatus::Status oldStatus = d->status; -+ -+ NetworkMap::ConstIterator it; -+ const NetworkMap::ConstIterator end = d->networks.end(); -+ for ( it = d->networks.begin(); it != end; ++it ) { -+ if ( ( *it )->status() > bestStatus ) -+ bestStatus = ( *it )->status(); -+ } -+ d->status = bestStatus; -+ -+ if ( oldStatus != d->status ) { -+ statusChange( (int)d->status ); -+ } -+} -+ -+void NetworkStatusModule::unregisteredFromDCOP( const QCString & appId ) -+{ -+ // unregister and delete any networks owned by a service that has just unregistered -+ NetworkMap::Iterator it = d->networks.begin(); -+ const NetworkMap::Iterator end = d->networks.end(); -+ while (it != d->networks.end()) -+ { -+ if ( ( *it )->service() == QString( appId ) ) -+ { -+ NetworkMap::Iterator toRemove = it++; -+ delete *toRemove; -+ d->networks.remove( toRemove ); -+ updateStatus(); -+ continue; -+ } -+ ++it; -+ } -+} -+ -+// SERVICE INTERFACE // -+void NetworkStatusModule::setNetworkStatus( const QString & networkName, int st ) -+{ -+ kdDebug() << k_funcinfo << networkName << ", " << st << endl; -+ NetworkStatus::Status changedStatus = (NetworkStatus::Status)st; -+ Network * net = 0; -+ NetworkMap::Iterator it = d->networks.find( networkName ); -+ if ( it != d->networks.end() ) { -+ net = (*it); -+ net->setStatus( changedStatus ); -+ updateStatus(); -+ } -+ else -+ kdDebug() << " No network named '" << networkName << "' found." << endl; -+} -+ -+void NetworkStatusModule::registerNetwork( const NetworkStatus::Properties properties ) -+{ -+ kdDebug() << k_funcinfo << properties.name << ", with status " << properties.status << endl; -+ -+ d->networks.insert( properties.name, new Network( properties ) ); -+ updateStatus(); -+} -+ -+void NetworkStatusModule::unregisterNetwork( const QString & networkName ) -+{ -+ kdDebug() << k_funcinfo << networkName << endl; -+ -+ NetworkMap::Iterator it = d->networks.find( networkName ); -+ if ( it != d->networks.end() ) { -+ delete *it; -+ d->networks.remove( it ); -+ } -+ updateStatus(); -+} -+ -+#include "networkstatus.moc" -+// vim: set noet sw=4 ts=4: -Index: networkstatus/networkstatus.desktop -=================================================================== ---- /dev/null -+++ networkstatus/networkstatus.desktop -@@ -0,0 +1,98 @@ -+[Desktop Entry] -+Encoding=UTF-8 -+Name=Network Status Daemon -+Name[af]=Netwerk status bediener -+Name[ar]=مراقب القرص و التنفيذ لحالة الشبكة -+Name[bg]=Демон за състояние на мрежата -+Name[ca]=Dimoni de l'estat de la xarxa -+Name[cs]=Démon stavu sítě -+Name[da]=Netværkstatusdæmon -+Name[de]=Überwachung des Netzwerkstatus -+Name[el]=Δαίμονας κατάστασης δικτύου -+Name[es]=Daemon de estado de la red -+Name[et]=Võrguoleku deemon -+Name[eu]=Sarearen egoera deabrua -+Name[fa]=شبح وضعیت شبکه -+Name[fi]=Verkkotilan tarkkailija -+Name[fr]=Suivi de l'état du réseau -+Name[fy]=Netwurktastândaemon -+Name[gl]=Daemon do Estado da Rede -+Name[hu]=Hálózati állapotjelző szolgáltatás -+Name[is]=Netstöðupúki -+Name[it]=Demone dello stato della rete -+Name[ja]=ネットワークステータスデーモン -+Name[kk]=Желі күйінің қызметі -+Name[km]=ដេមិន​ស្ថានភាព​បណ្ដាញ -+Name[lt]=Tinklo statuso tarnyba -+Name[mk]=Даемон за мрежен статус -+Name[ms]=Daemon Berstatus Rangkaian -+Name[nb]=Statusnisse for nettverket -+Name[nds]=Nettwarkstatus-Dämoon -+Name[ne]=सञ्जाल स्थिति डेइमन -+Name[nl]=Netwerkstatusdaemon -+Name[nn]=Statusnisse for nettverket -+Name[pl]=Usługa stanu sieci -+Name[pt]=Servidor de Estado de Rede -+Name[pt_BR]=Daemon de Status da Rede -+Name[ru]=Служба состояния сети -+Name[sk]=Daemon stavu siete -+Name[sl]=Demon za omrežno stanje -+Name[sr]=Демон за статус мреже -+Name[sr@Latn]=Demon za status mreže -+Name[sv]=Nätverksstatusdemon -+Name[ta]=வலைப்பின்னல் நிலை டெமான் -+Name[tr]=Ağ Durum İzleyici -+Name[uk]=Демон стану мережі -+Name[zh_CN]=网络状态守护程序 -+Name[zh_TW]=網路狀態守護程式 -+Comment=Tracks status of network interfaces and provides notification to applications using the network. -+Comment[af]=Hou tred van die status van netwerk intervlakke en verskaf kennisgewings na programme wat die netwerk gebruik. -+Comment[bg]=Следене на състоянието на мрежата и предаване на информацията на програмите, които имат нужда -+Comment[ca]=Controla l'estat de les interfícies de xarxa i proporciona notificacions a les aplicacions que usen la xarxa. -+Comment[cs]=Zjiš'tuje stav síťových rozhraní a upozorňuje v případě přístupu aplikací k síti. -+Comment[da]=Sporer status af netværksgrænseflade og sørger for meddelelser til programmer der bruger netværket. -+Comment[de]=Überprüft den Netzwerk-Status und benachrichtigt anfragende Anwendungen -+Comment[el]=Παρακολουθεί την κατάσταση του δικτύου και παρέχει ειδοποιήσεις σε εφαρμογές που χρησιμοποιούν το δίκτυο. -+Comment[es]=Sigue la pista de las interfaces de red y proporciona notificaciones a las aplicaciones que están usando la red. -+Comment[et]=Jälgib võrguliideste olekut ja annab sellest võrgu vahendusel rakendustele teada. -+Comment[eu]=Sare interfazeen egoera jarraitzen du eta sarea darabilten aplikazioei jakinarazten die. -+Comment[fa]=وضعیت واسطهای شبکه را شیار داده و با استفاده از شبکه، برای کاربردها اخطار فراهم می‌کند. -+Comment[fi]=Tarkkailee verkkoliitäntöjen tilaa ja varoittaa verkkoa käyttäviä sovelluksia. -+Comment[fr]=Surveille l'état des interfaces réseaux et fournit des notifications aux applications qui utilisent le réseau -+Comment[fy]=Hâldt de tastân by fan de Netwurkynterfaces en hâldt dêr de tapassings fan op de hichte. -+Comment[gl]=Monitoriza o estado das interfaces de rede e fornece notificacións ás aplicacións que usen a rede. -+Comment[hu]=Figyeli a hálózati csatolók állapotát és értesítési lehetőséget biztosít hálózati alkalmazások számára. -+Comment[is]=Fylgist með stöðu netkorta og sendir tilkynningar til forrita sem nota netið. -+Comment[it]=Controlla lo stato delle interfacce di rete e fornisce notifiche alle applicazioni che usano al rete. -+Comment[ja]=ネットワークインターフェースの状態を追跡し、ネットワークを用いるアプリケーションに通知します -+Comment[kk]=Желі интерфейстерінің күйін бақылап, желіні қолданатын бағдарламаларын құлақтандыру қызметі. -+Comment[km]=តាមដាន​ស្ថានភាព​របស់​ចំណុច​ប្រទាក់​បណ្ដាញ ព្រម​ទាំង​ផ្ដល់​នូវ​ការ​ជូនដំណឹង​ទៅ​កម្មវិធី ដែល​ប្រើ​បណ្ដាញ ។ -+Comment[lt]=Seka tinklo sąsajų būseną ir informuoja apie jas programas, naudojančias tinklą -+Comment[mk]=Го следи статусот на мрежните интерфејси и дава известувања на апликациите што ја користат мрежата. -+Comment[ms]=Menjejak status antara muka rangkaian dan memberitahu aplikasi yang menggunakan rangkaian tersebut. -+Comment[nb]=Overvåker status for nettverksgrensesnitt og varsler programmer som bruker nettverket. -+Comment[nds]=Överwacht den Tostand vun Nettwark-Koppelsteden un sendt Narichten na Programmen, de dat Nettwark bruukt. -+Comment[ne]=सञ्जाल इन्टरफेसको स्थिति ट्र्याक गर्दछ र सञ्जाल प्रयोग गरेर अनुप्रयोगमा जानकारी उपलब्ध गराउछ । -+Comment[nl]=Houdt de status bij van de netwerkinterfaces en houdt daar de toepassingen van op de hoogte. -+Comment[nn]=Overvakar status for nettverksgrensesnitt og varslar program som brukar nettverket. -+Comment[pl]=Śledzi stan interfejsów sieciowych i powiadamia programy używające sieci. -+Comment[pt]=Vigia o estado das interfaces de rede e avisa as aplicações que utilizam a rede. -+Comment[pt_BR]=Controla o status das interfaces de rede e fornece notificações para aplicativos utilizando a rede. -+Comment[ru]=Служба отслеживания состояния сетевых интерфейсов и обращения приложений к сети. -+Comment[sk]=Sleduje stav sieťových rozhraní a poskytuje upozornenia aplikáciám používajúcim sieť. -+Comment[sl]=Sledi stanju omrežnim vmesnikom in omogoča obvestila programom, ki uporabljajo omrežje -+Comment[sr]=Прати статус мрежних интерфејса и пружа обавештења програмима који користе мрежу. -+Comment[sr@Latn]=Prati status mrežnih interfejsa i pruža obaveštenja programima koji koriste mrežu. -+Comment[sv]=Bevakar status för nätverksgränssnitt och tillhandahåller underrättelser till program som använder nätverket. -+Comment[ta]=வலைப்பின்னலைப் பயன்படுத்தி வலைப்பின்னல் இடைமுகங்களின் நிலையை கண்காணிக்கிறது மற்றும் பயன்பாடுகளுக்கு அறிவிப்பை வழங்குகிறது. -+Comment[uk]=Слідкує за станом інтерфейсів мережі і сповіщає програми, які користуються мережею. -+Comment[zh_CN]=跟踪网卡的状态并为应用程序提供使用网络的通知。 -+Comment[zh_TW]=追蹤網路介面的狀態,並提供使用網路的應用程式的通知。 -+Type=Service -+ServiceTypes=KDEDModule -+X-KDE-ModuleType=Library -+X-KDE-Library=networkstatus -+X-KDE-FactoryName=networkstatus -+X-KDE-Kded-autoload=true -+X-KDE-Kded-load-on-demand=true -+ -Index: networkstatus/networkstatus.h -=================================================================== ---- /dev/null -+++ networkstatus/networkstatus.h -@@ -0,0 +1,66 @@ -+/* This file is part of kdepim -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef KDED_NETWORKSTATUS_H -+#define KDED_NETWORKSTATUS_H -+ -+#include -+ -+#include "networkstatuscommon.h" -+#include "network.h" -+ -+class NetworkStatusModule : virtual public KDEDModule -+{ -+Q_OBJECT -+K_DCOP -+public: -+ NetworkStatusModule( const QCString& obj ); -+ ~NetworkStatusModule(); -+k_dcop: -+ // Client interface -+ QStringList networks(); -+ int status(); -+ // Service interface -+ void setNetworkStatus( const QString & networkName, int status ); -+ void registerNetwork( NetworkStatus::Properties properties ); -+ void unregisterNetwork( const QString & networkName ); -+k_dcop_signals: -+ /** -+ * A status change occurred affecting the overall connectivity -+ * @param status The new status -+ */ -+ void statusChange( int status ); -+protected slots: -+ //void registeredToDCOP( const QCString& appId ); -+ void unregisteredFromDCOP( const QCString& appId ); -+ -+protected: -+ // recalculate cached status -+ void updateStatus(); -+ -+private: -+ class Private; -+ Private *d; -+}; -+ -+#endif -+// vim: sw=4 ts=4 -Index: networkstatus/networkstatusiface.h -=================================================================== ---- /dev/null -+++ networkstatus/networkstatusiface.h -@@ -0,0 +1,50 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef KDED_NETWORKSTATUSIFACE_H -+#define KDED_NETWORKSTATUSIFACE_H -+ -+#include -+#include -+ -+#include "networkstatuscommon.h" -+ -+class NetworkStatusIface : virtual public DCOPObject -+{ -+K_DCOP -+k_dcop: -+ // Client interface -+ virtual QStringList networks() = 0; -+ virtual int status() = 0; -+ // Service interface -+ virtual void setNetworkStatus( const QString & networkName, int status ) = 0; -+ virtual void registerNetwork( NetworkStatus::Properties properties ) = 0; -+ virtual void unregisterNetwork( const QString & networkName ) = 0 ; -+k_dcop_signals: -+ /** -+ * A status change occurred affecting the overall connectivity -+ * @param status The new status -+ */ -+ virtual void statusChange( int status ) = 0; -+}; -+#endif -+// vim: sw=4 ts=4 -Index: networkstatus/networkstatusindicator.cpp -=================================================================== ---- /dev/null -+++ networkstatus/networkstatusindicator.cpp -@@ -0,0 +1,64 @@ -+/* This file is part of the KDE project -+ Copyright (C) 2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include -+#include -+#include -+#include -+ -+#include "connectionmanager.h" -+ -+#include "networkstatusindicator.h" -+ -+StatusBarNetworkStatusIndicator::StatusBarNetworkStatusIndicator( -+ QWidget * parent, const char * name ) : QHBox( parent, name )/*, d( new StatusBarNetworkStatusIndicatorPrivate )*/ -+{ -+ setMargin( 2 ); -+ setSpacing( 1 ); -+ QLabel * label = new QLabel( this, "offlinemodelabel" ); -+ label->setPixmap( SmallIcon("connect_no") ); -+ QToolTip::add( label, i18n( "The desktop is offline" ) ); -+ -+ connect( ConnectionManager::self(), SIGNAL( statusChanged( NetworkStatus::Status ) ), -+ SLOT( networkStatusChanged( NetworkStatus::Status) ) ); -+ -+} -+ -+void StatusBarNetworkStatusIndicator::init() -+{ -+ networkStatusChanged( ConnectionManager::self()->status()); -+} -+ -+StatusBarNetworkStatusIndicator::~StatusBarNetworkStatusIndicator() -+{ -+} -+ -+void StatusBarNetworkStatusIndicator::networkStatusChanged( NetworkStatus::Status status ) -+{ -+ if ( status == NetworkStatus::Online || status == NetworkStatus::NoNetworks ) { -+ hide(); -+ } else { -+ show(); -+ } -+} -+ -+#include "networkstatusindicator.moc" -Index: networkstatus/networkstatusindicator.h -=================================================================== ---- /dev/null -+++ networkstatus/networkstatusindicator.h -@@ -0,0 +1,42 @@ -+/* This file is part of the KDE project -+ Copyright (C) 2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef KDE_NETWORKSTATUS_INDICATOR_H -+#define KDE_NETWORKSTATUS_INDICATOR_H -+ -+#include -+#include -+#include -+ -+class StatusBarNetworkStatusIndicator : public QHBox -+{ -+Q_OBJECT -+public: -+ StatusBarNetworkStatusIndicator( QWidget * parent, const char * name ); -+ virtual ~StatusBarNetworkStatusIndicator(); -+ void init(); -+protected slots: -+ void networkStatusChanged( NetworkStatus::Status status ); -+}; -+ -+#endif -+ -Index: networkstatus/networkstatus.kdevelop -=================================================================== ---- /dev/null -+++ networkstatus/networkstatus.kdevelop -@@ -0,0 +1,108 @@ -+ -+ -+ -+ Will Stephenson -+ wstephenson@suse.de -+ $VERSION$ -+ KDevKDEAutoProject -+ C++ -+ -+ Qt -+ KDE -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ false -+ false -+ -+ -+ *.o,*.lo,CVS -+ false -+ -+ -+ -+ -+ ada -+ ada_bugs_gcc -+ bash -+ bash_bugs -+ clanlib -+ fortran_bugs_gcc -+ gnome1 -+ gnustep -+ gtk -+ gtk_bugs -+ haskell -+ haskell_bugs_ghc -+ java_bugs_gcc -+ java_bugs_sun -+ opengl -+ pascal_bugs_fp -+ php -+ php_bugs -+ perl -+ perl_bugs -+ python -+ python_bugs -+ ruby -+ ruby_bugs -+ sdl -+ stl -+ sw -+ w3c-dom-level2-html -+ w3c-svg -+ w3c-uaag10 -+ wxwidgets_bugs -+ -+ -+ qmake User Guide -+ -+ -+ -+ -+ libtool -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ executable -+ -+ -+ kded_networkstatus.la -+ -+ -+ -+ -+ -+ true -+ true -+ true -+ false -+ true -+ true -+ true -+ 250 -+ 400 -+ 250 -+ -+ -+ -Index: networkstatus/README.statetransition -=================================================================== ---- /dev/null -+++ networkstatus/README.statetransition -@@ -0,0 +1,29 @@ -+This table defines the actions to be taken on state transition. -+ -+TODO: potentially add extra states OnlineReading and OnlineWriting -+ -+ NEW -+ |Offline | Online | -+---+---+----------------+---------------+ -+ | | |N|set online | -+ | | |L|reload | -+ | O | |C|resources | -+ | F | +---------------+ -+ | F | |L|set online | -+O | | |C|reload res. | -+L | | | |write res. | -+D +---+----------------+---------------+ -+ | |N|set offline | | -+ | |C| | | -+ | | | | | -+ | O +---------------+| | -+ | N |U|set offline | | -+ | |W|write locally | | -+ | |C|(subject to | | -+ | | | save policy)| | -+---+---+----------------+---------------+ -+LC = Local changes exist -+NLC = No local changes exist -+UWC = Unsaved changes exist -+NC = no changes exist -+ -Index: networkstatus/.svn/dir-prop-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/dir-prop-base -@@ -0,0 +1,11 @@ -+K 10 -+svn:ignore -+V 83 -+Makefile -+Makefile.in -+Makefile.calls.in -+Makefile.rules.in -+*_skel.cpp -+*.kidl -+Doxyfile -+END -Index: networkstatus/.svn/entries -=================================================================== ---- /dev/null -+++ networkstatus/.svn/entries -@@ -0,0 +1,342 @@ -+8 -+ -+dir -+712059 -+svn+ssh://mueller@svn.kde.org/home/kde/branches/work/~wstephens/kdelibs/networkstatus -+svn+ssh://mueller@svn.kde.org/home/kde -+ -+ -+ -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+has-props -+ -+svn:special svn:externals svn:needs-lock -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+283d02a7-25f6-0310-bc7c-ecb5cbfe19da -+ -+network.h -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+034300313451d5b6a95bff1022861227 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+has-props -+ -+networkstatusindicator.h -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+bbc7c6ea3b8da983d477d53556e39dd0 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+ -+connectionmanager.h -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+7992e623b84fd99f9ff17c613a7269a3 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+has-props -+ -+testservice.cpp -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+527dc95a7ae39d565bd29d5fe59de31a -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+has-props -+ -+testclient2.cpp -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+c426585cf5d9e3f4b06adcaff0a3ef32 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+ -+networkstatus.h -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+8ca1d871b31d5840e2e3d24da4693f1d -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+has-props -+ -+testclientview.ui -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+8f63eb3db978c53143417ad33d45076b -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+ -+testservice.h -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+2b5693b2e174ebf96e460a52cfcf9739 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+has-props -+ -+testclient2.h -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+3b9f645e56a92014b7a6547c5bc88527 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+ -+README.statetransition -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+0091b6bdce4abe1e1260bf2a4cce984f -+2005-02-11T15:15:30.000000Z -+388364 -+wstephens -+has-props -+ -+networkstatuscommon.cpp -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+1516e99224ce850fb6d134346fd9d074 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+has-props -+ -+connectionmanager_p.cpp -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+07e9643c6cdb39d28abc9c8992bcab23 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+ -+networkstatuscommon.h -+file -+712062 -+ -+ -+ -+2007-09-13T13:10:21.000000Z -+a4f22eecd7d0a0fdcc78c9c31d5f14fd -+2007-09-13T13:12:05.866586Z -+712062 -+mueller -+has-props -+ -+testclient.cpp -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+d932143bab5c7985bc48e64e2bf0c227 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+ -+connectionmanager_p.h -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+34ed7e34d50ae4b36342a6cc250ad386 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+ -+testclient.h -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+67d3671e5fbeb51a333550f52ec34294 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+ -+networkstatus.kdevelop -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+64e6cd906f82dad6a3c70a8dd7e69c3c -+2005-01-24T08:48:57.000000Z -+381869 -+wstephens -+has-props -+ -+networkstatus.desktop -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+1bc32c39d8c6ed9c63e6fdc1b3d34aba -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+has-props -+ -+testserviceview.ui -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+f8883c2425f16054c8cfd99a6c288000 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+ -+Makefile.am -+file -+712061 -+ -+ -+ -+2007-09-13T13:10:11.000000Z -+70d1b224f8edc970fbdf2f4af63282f0 -+2007-09-13T13:11:26.289844Z -+712061 -+mueller -+has-props -+ -+network.cpp -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+1f481f54f0161b8a65d00753d6397904 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+has-props -+ -+networkstatusindicator.cpp -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+243176eca79394c0e2a763b1e56a0690 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+ -+networkstatusiface.h -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+285a14008068eb0cd26e3af2bb8fbb92 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+ -+connectionmanager.cpp -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+922d360b2e43b6b35f56c0d97ab1afa9 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+has-props -+ -+networkstatus.cpp -+file -+ -+ -+ -+ -+2007-09-13T13:09:10.000000Z -+433313b5f03259de305b6d722c0251e5 -+2007-08-06T09:06:39.201606Z -+696919 -+wstephens -+has-props -+ -Index: networkstatus/.svn/format -=================================================================== ---- /dev/null -+++ networkstatus/.svn/format -@@ -0,0 +1 @@ -+8 -Index: networkstatus/.svn/prop-base/connectionmanager.cpp.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/prop-base/connectionmanager.cpp.svn-base -@@ -0,0 +1,13 @@ -+K 13 -+svn:eol-style -+V 6 -+native -+K 12 -+svn:keywords -+V 23 -+Author Date Id Revision -+K 13 -+svn:mime-type -+V 13 -+text/x-c++src -+END -Index: networkstatus/.svn/prop-base/connectionmanager.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/prop-base/connectionmanager.h.svn-base -@@ -0,0 +1,13 @@ -+K 13 -+svn:eol-style -+V 6 -+native -+K 12 -+svn:keywords -+V 23 -+Author Date Id Revision -+K 13 -+svn:mime-type -+V 11 -+text/x-chdr -+END -Index: networkstatus/.svn/prop-base/Makefile.am.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/prop-base/Makefile.am.svn-base -@@ -0,0 +1,13 @@ -+K 13 -+svn:eol-style -+V 6 -+native -+K 12 -+svn:keywords -+V 23 -+Author Date Id Revision -+K 13 -+svn:mime-type -+V 9 -+text/x-am -+END -Index: networkstatus/.svn/prop-base/network.cpp.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/prop-base/network.cpp.svn-base -@@ -0,0 +1,13 @@ -+K 13 -+svn:eol-style -+V 6 -+native -+K 12 -+svn:keywords -+V 23 -+Author Date Id Revision -+K 13 -+svn:mime-type -+V 13 -+text/x-c++src -+END -Index: networkstatus/.svn/prop-base/network.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/prop-base/network.h.svn-base -@@ -0,0 +1,13 @@ -+K 13 -+svn:eol-style -+V 6 -+native -+K 12 -+svn:keywords -+V 23 -+Author Date Id Revision -+K 13 -+svn:mime-type -+V 11 -+text/x-chdr -+END -Index: networkstatus/.svn/prop-base/networkstatuscommon.cpp.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/prop-base/networkstatuscommon.cpp.svn-base -@@ -0,0 +1,13 @@ -+K 13 -+svn:eol-style -+V 6 -+native -+K 12 -+svn:keywords -+V 23 -+Author Date Id Revision -+K 13 -+svn:mime-type -+V 13 -+text/x-c++src -+END -Index: networkstatus/.svn/prop-base/networkstatuscommon.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/prop-base/networkstatuscommon.h.svn-base -@@ -0,0 +1,13 @@ -+K 13 -+svn:eol-style -+V 6 -+native -+K 12 -+svn:keywords -+V 23 -+Author Date Id Revision -+K 13 -+svn:mime-type -+V 11 -+text/x-chdr -+END -Index: networkstatus/.svn/prop-base/networkstatus.cpp.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/prop-base/networkstatus.cpp.svn-base -@@ -0,0 +1,13 @@ -+K 13 -+svn:eol-style -+V 6 -+native -+K 12 -+svn:keywords -+V 23 -+Author Date Id Revision -+K 13 -+svn:mime-type -+V 13 -+text/x-c++src -+END -Index: networkstatus/.svn/prop-base/networkstatus.desktop.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/prop-base/networkstatus.desktop.svn-base -@@ -0,0 +1,13 @@ -+K 13 -+svn:eol-style -+V 6 -+native -+K 12 -+svn:keywords -+V 23 -+Author Date Id Revision -+K 13 -+svn:mime-type -+V 14 -+text/x-desktop -+END -Index: networkstatus/.svn/prop-base/networkstatus.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/prop-base/networkstatus.h.svn-base -@@ -0,0 +1,13 @@ -+K 13 -+svn:eol-style -+V 6 -+native -+K 12 -+svn:keywords -+V 23 -+Author Date Id Revision -+K 13 -+svn:mime-type -+V 11 -+text/x-chdr -+END -Index: networkstatus/.svn/prop-base/networkstatus.kdevelop.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/prop-base/networkstatus.kdevelop.svn-base -@@ -0,0 +1,5 @@ -+K 12 -+svn:keywords -+V 23 -+Author Date Id Revision -+END -Index: networkstatus/.svn/prop-base/README.statetransition.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/prop-base/README.statetransition.svn-base -@@ -0,0 +1,5 @@ -+K 12 -+svn:keywords -+V 23 -+Author Date Id Revision -+END -Index: networkstatus/.svn/prop-base/testservice.cpp.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/prop-base/testservice.cpp.svn-base -@@ -0,0 +1,13 @@ -+K 13 -+svn:eol-style -+V 6 -+native -+K 12 -+svn:keywords -+V 23 -+Author Date Id Revision -+K 13 -+svn:mime-type -+V 13 -+text/x-c++src -+END -Index: networkstatus/.svn/prop-base/testservice.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/prop-base/testservice.h.svn-base -@@ -0,0 +1,13 @@ -+K 13 -+svn:eol-style -+V 6 -+native -+K 12 -+svn:keywords -+V 23 -+Author Date Id Revision -+K 13 -+svn:mime-type -+V 11 -+text/x-chdr -+END -Index: networkstatus/.svn/text-base/connectionmanager.cpp.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/connectionmanager.cpp.svn-base -@@ -0,0 +1,171 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include -+#include -+#include -+ -+#include "connectionmanager.h" -+#include "connectionmanager_p.h" -+ -+// Connection manager itself -+ConnectionManager::ConnectionManager( QObject * parent, const char * name ) : DCOPObject( "ConnectionManager" ), QObject( parent, name ), d( new ConnectionManagerPrivate( this ) ) -+{ -+ d->service = new NetworkStatusIface_stub( kapp->dcopClient(), "kded", "networkstatus" ); -+ -+ connectDCOPSignal( "kded", "networkstatus", "statusChange(int)", "slotStatusChanged(int)", false ); -+ -+ initialise(); -+} -+ -+ConnectionManager::~ConnectionManager() -+{ -+ delete d; -+} -+ -+ConnectionManager *ConnectionManager::s_self = 0L; -+ -+ConnectionManager *ConnectionManager::self() -+{ -+ static KStaticDeleter deleter; -+ if(!s_self) -+ deleter.setObject( s_self, new ConnectionManager( 0, "connection_manager" ) ); -+ return s_self; -+} -+ -+void ConnectionManager::initialise() -+{ -+ // determine initial state and set the state object accordingly. -+ d->status = ( NetworkStatus::Status )d->service->status(); -+} -+ -+NetworkStatus::Status ConnectionManager::status() -+{ -+ return d->status; -+} -+ -+void ConnectionManager::slotStatusChanged( int status ) -+{ -+ d->status = ( NetworkStatus::Status )status; -+ switch ( status ) { -+ case NetworkStatus::NoNetworks: -+ break; -+ case NetworkStatus::Unreachable: -+ break; -+ case NetworkStatus::OfflineDisconnected: -+ case NetworkStatus::OfflineFailed: -+ case NetworkStatus::ShuttingDown: -+ case NetworkStatus::Offline: -+ case NetworkStatus::Establishing: -+ if ( d->disconnectPolicy == Managed ) { -+ emit d->disconnected(); -+ } else if ( d->disconnectPolicy == OnNextChange ) { -+ setDisconnectPolicy( Manual ); -+ emit d->disconnected(); -+ } -+ break; -+ case NetworkStatus::Online: -+ if ( d->disconnectPolicy == Managed ) { -+ emit d->connected(); -+ } else if ( d->disconnectPolicy == OnNextChange ) { -+ setConnectPolicy( Manual ); -+ emit d->connected(); -+ } -+ break; -+ default: -+ kdDebug() << k_funcinfo << "Unrecognised status code!" << endl; -+ } -+ emit statusChanged( d->status ); -+} -+ -+ConnectionManager::ConnectionPolicy ConnectionManager::connectPolicy() const -+{ -+ return d->connectPolicy; -+} -+ -+void ConnectionManager::setConnectPolicy( ConnectionManager::ConnectionPolicy policy ) -+{ -+ d->connectPolicy = policy; -+} -+ -+ConnectionManager::ConnectionPolicy ConnectionManager::disconnectPolicy() const -+{ -+ return d->disconnectPolicy; -+} -+ -+void ConnectionManager::setDisconnectPolicy( ConnectionManager::ConnectionPolicy policy ) -+{ -+ d->disconnectPolicy = policy; -+} -+ -+void ConnectionManager::setManualConnectionPolicies() -+{ -+ d->connectPolicy = ConnectionManager::Manual; -+ d->disconnectPolicy = ConnectionManager::Manual; -+} -+ -+void ConnectionManager::setManagedConnectionPolicies() -+{ -+ d->connectPolicy = ConnectionManager::Managed; -+ d->disconnectPolicy = ConnectionManager::Managed; -+} -+ -+void ConnectionManager::registerConnectSlot( QObject * receiver, const char * member ) -+{ -+ d->connectReceiver = receiver; -+ d->connectSlot = member; -+ connect( d, SIGNAL( connected() ), receiver, member ); -+} -+ -+void ConnectionManager::forgetConnectSlot() -+{ -+ disconnect( d, SIGNAL( connected() ), d->connectReceiver, d->connectSlot ); -+ d->connectReceiver = 0; -+ d->connectSlot = 0; -+} -+ -+bool ConnectionManager::isConnectSlotRegistered() const -+{ -+ return ( d->connectSlot != 0 ); -+} -+ -+void ConnectionManager::registerDisconnectSlot( QObject * receiver, const char * member ) -+{ -+ d->disconnectReceiver = receiver; -+ d->disconnectSlot = member; -+ connect( d, SIGNAL( disconnected() ), receiver, member ); -+} -+ -+void ConnectionManager::forgetDisconnectSlot() -+{ -+ disconnect( d, SIGNAL( disconnected() ), d->disconnectReceiver, d->disconnectSlot ); -+ d->disconnectReceiver = 0; -+ d->disconnectSlot = 0; -+} -+ -+bool ConnectionManager::isDisconnectSlotRegistered() const -+{ -+ return ( d->disconnectSlot != 0 ); -+} -+ -+#include "connectionmanager.moc" -+ -Index: networkstatus/.svn/text-base/connectionmanager.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/connectionmanager.h.svn-base -@@ -0,0 +1,167 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef KDE_CONNECTION_MANAGER_H -+#define KDE_CONNECTION_MANAGER_H -+ -+#include -+#include -+ -+#include -+ -+class ConnectionManagerPrivate; -+ -+class KDE_EXPORT ConnectionManager : public QObject, virtual public DCOPObject -+{ -+Q_OBJECT -+K_DCOP -+k_dcop: -+ void slotStatusChanged( int status ); -+public: -+ /** -+ * This defines application policy in response to networking connect/disconnect events -+ * Manual - the app only disconnects when the user does so -+ * OnNextChange - the app should connect or disconnect the next time the network changes state, thereafter -+ * Manual -+ * Managed - the app should disconnect when the ConnectionManager thinks the system is -+ * offline -+ */ -+ enum ConnectionPolicy { Manual, OnNextChange, Managed }; -+ /** -+ * Set a policy to manage the application's connect behaviour -+ */ -+ void setConnectPolicy( ConnectionPolicy ); -+ /** -+ * Retrieve a policy managing the application's connect behaviour -+ */ -+ ConnectionPolicy connectPolicy() const; -+ -+ /** -+ * Set a policy to manage the application's disconnect behaviour -+ */ -+ void setDisconnectPolicy( ConnectionPolicy ); -+ -+ /** -+ * Retrieve a policy managing the application's disconnect behaviour -+ */ -+ ConnectionPolicy disconnectPolicy() const; -+ -+ /* -+ * We'll get logic of the form -+ * onStatusChange() { -+ * if ( ConnectionManager::self()->policy( ConnectionManager::ConnectBehaviour ) == ConnectionManager::OnNextChange || -+ * ConnectionManager::self()->policy( ConnectionManager::ConnectBehaviour ) == ConnectionManager::Managed ) -+ * { -+ * // do connect -+ * -+ * // reset the policy -+ * if ( ConnectionManager::self()->policy( ConnectionManager::ConnectBehaviour ) == ConnectionManager::OnNextChange ) -+ * ConnectionManager::self()->setPolicy( ConnectionManager::ConnectionManager, -+ * ConnectionManager::Manual ); -+ * } -+ * -+ * Do we just use the CM for policy storage, or do we try to factor the logic to implement the -+ * policy into the CM too? -+ * -+ * could signal doConnect(), then reset the policy -+ * or could register a connect slot -+ * registerConnectMethod( QObject * receiver, const char * member ); -+ * unregisterConnectMethod(); -+ * etc. -+ * -+ * The problem with automatically controlled behaviour, where policy may change as a result of a -+ * connect, is that if it is also manually altered, the CM needs to be updated. But the CM needs to -+ * be updated in any case. -+ * CM need -+ */ -+ /** -+ * Lazy-method to set Manual on both policies -+ */ -+ void setManualConnectionPolicies(); -+ /** -+ * Lazy-method to set Managed on both policies -+ */ -+ void setManagedConnectionPolicies(); -+ -+ /** -+ * Record a slot to call on a given receiving QObject when -+ * 1) the network connection is online, -+ * 2) the policy mandates that the app connect -+ * -+ * Only one slot may be registered at any one time. If a second slot is -+ * registered, the first slot is forgotten -+ * @param receiver the QObject where the slot is located -+ * @param member the slot to call. Set up member using the SLOT() macro. -+ */ -+ void registerConnectSlot( QObject * receiver, const char * member ); -+ -+ /** -+ * Forget any connect slot previously registered -+ */ -+ void forgetConnectSlot(); -+ -+ /** -+ * Has any slot been registered to be called on connect? -+ */ -+ bool isConnectSlotRegistered() const; -+ -+ /** -+ * Record a slot to call on a given receiving QObject when -+ * 1) the network connection goes offline (in any way ), -+ * 2) the policy mandates that the app disconnect -+ * -+ * Only one slot may be registered at any one time. If a second slot is -+ * registered, the first slot is forgotten -+ * @param receiver the QObject where the slot is located -+ * @param member the slot to call. Set up member using the SLOT() macro. -+ */ -+ void registerDisconnectSlot( QObject * receiver, const char * member ); -+ -+ /** -+ * Forget any disconnect slot previously registered -+ */ -+ void forgetDisconnectSlot(); -+ -+ /** -+ * Has any slot been registered to be called on disconnect? -+ */ -+ bool isDisconnectSlotRegistered() const; -+ -+ /// existing API -+ -+ static ConnectionManager* self(); -+ virtual ~ConnectionManager(); -+ NetworkStatus::Status status(); -+signals: -+ // signal that the network for a hostname is up/down -+ void statusChanged( NetworkStatus::Status status ); -+private: -+ // sets up internal state -+ void initialise(); -+ // reread the desktop status from the daemon and update internal state -+ ConnectionManager( QObject *parent, const char * name ); -+ ConnectionManagerPrivate * d; -+ static ConnectionManager * s_self; -+}; -+ -+#endif -+ -Index: networkstatus/.svn/text-base/connectionmanager_p.cpp.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/connectionmanager_p.cpp.svn-base -@@ -0,0 +1,13 @@ -+#include "connectionmanager_p.h" -+ -+ConnectionManagerPrivate::ConnectionManagerPrivate(QObject * parent, const char * name ) : QObject( parent, name ), service( 0 ), connectPolicy( ConnectionManager::Managed ), -+ disconnectPolicy( ConnectionManager::Managed ), connectReceiver( 0 ), connectSlot( 0 ), -+ disconnectReceiver( 0 ), disconnectSlot( 0 ) -+{ -+} -+ -+ConnectionManagerPrivate::~ConnectionManagerPrivate() -+{ -+} -+ -+#include "connectionmanager_p.moc" -Index: networkstatus/.svn/text-base/connectionmanager_p.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/connectionmanager_p.h.svn-base -@@ -0,0 +1,55 @@ -+/* This file is part of the KDE project -+ Copyright (C) 2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef CONNECTIONMANAGERPRIVATE_H -+#define CONNECTIONMANAGERPRIVATE_H -+ -+#include -+ -+#include "connectionmanager.h" -+#include "networkstatuscommon.h" -+#include "networkstatusiface_stub.h" -+ -+ -+// ConnectionManager's private parts -+class ConnectionManagerPrivate : public QObject -+{ -+Q_OBJECT -+ friend class ConnectionManager; -+public: -+ ConnectionManagerPrivate( QObject * parent = 0, const char * name = 0); -+ ~ConnectionManagerPrivate(); -+ // this holds the currently active state -+ NetworkStatus::Status status; -+ NetworkStatusIface_stub * service; -+ ConnectionManager::ConnectionPolicy connectPolicy; -+ ConnectionManager::ConnectionPolicy disconnectPolicy; -+ QObject * connectReceiver; -+ const char * connectSlot; -+ QObject * disconnectReceiver; -+ const char * disconnectSlot; -+signals: -+ void connected(); -+ void disconnected(); -+}; -+ -+#endif -Index: networkstatus/.svn/text-base/Makefile.am.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/Makefile.am.svn-base -@@ -0,0 +1,45 @@ -+#SUBDIRS = networkstatustray -+ -+METASOURCES = AUTO -+ -+INCLUDES = -I$(top_srcdir)/kded -I$(top_srcdir) $(all_includes) -+ -+kde_module_LTLIBRARIES = kded_networkstatus.la -+ -+kded_networkstatus_la_SOURCES = networkstatus.cpp networkstatus.skel \ -+ network.cpp -+kded_networkstatus_la_LIBADD = $(LIB_KDECORE) $(LIB_KIO) ./libnetworkstatus.la -+kded_networkstatus_la_LDFLAGS = $(all_libraries) -module -avoid-version -+ -+servicesdir = $(kde_servicesdir)/kded -+ -+services_DATA = networkstatus.desktop -+ -+lib_LTLIBRARIES = libnetworkstatus.la libconnectionmanager.la -+ -+libnetworkstatus_la_LIBADD = $(LIB_KDECORE) -+libnetworkstatus_la_LDFLAGS = $(all_libraries) -+libnetworkstatus_la_SOURCES = networkstatuscommon.cpp -+ -+libconnectionmanager_la_LIBADD = $(LIB_KDECORE) libnetworkstatus.la -+libconnectionmanager_la_LDFLAGS = $(all_libraries) -+libconnectionmanager_la_SOURCES = connectionmanager.cpp connectionmanager_p.cpp networkstatusindicator.cpp connectionmanager.skel networkstatusiface.stub -+ -+noinst_PROGRAMS = networkstatustestservice networkstatustestclient managedconnectiontestclient -+ -+networkstatustestservice_LDFLAGS = $(all_libraries) -+networkstatustestservice_LDADD = $(LIB_KFILE) libnetworkstatus.la -+networkstatustestservice_SOURCES = testservice.cpp testserviceview.ui networkstatusiface.stub -+ -+networkstatustestclient_LDFLAGS = $(all_libraries) -+networkstatustestclient_LDADD = $(LIB_KFILE) libnetworkstatus.la libconnectionmanager.la -+networkstatustestclient_SOURCES = testclient.cpp testclientview.ui -+ -+managedconnectiontestclient_LDFLAGS = $(all_libraries) -+managedconnectiontestclient_LDADD = $(LIB_KFILE) libnetworkstatus.la libconnectionmanager.la -+managedconnectiontestclient_SOURCES = testclient2.cpp testclientview.ui -+ -+noinst_HEADERS = network.h testservice.h testclient.h -+ -+include_HEADERS = networkstatuscommon.h connectionmanager.h networkstatusindicator.h \ -+ networkstatusiface.h -Index: networkstatus/.svn/text-base/network.cpp.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/network.cpp.svn-base -@@ -0,0 +1,62 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include -+ -+#include "network.h" -+ -+Network::Network( NetworkStatus::Properties properties ) -+ : m_name( properties.name ), m_status( properties.status ), m_service( properties.service ) -+{ -+} -+ -+void Network::setStatus( NetworkStatus::Status status ) -+{ -+ m_status = status; -+} -+ -+NetworkStatus::Status Network::status() -+{ -+ return m_status; -+} -+ -+void Network::setName( const QString& name ) -+{ -+ m_name = name; -+} -+ -+QString Network::name() -+{ -+ return m_name; -+} -+ -+QString Network::service() -+{ -+ return m_service; -+} -+ -+void Network::setService( const QString& service ) -+{ -+ m_service = service; -+} -+ -+// vim: sw=4 ts=4 -Index: networkstatus/.svn/text-base/network.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/network.h.svn-base -@@ -0,0 +1,60 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef NETWORKSTATUS_NETWORK_H -+#define NETWORKSTATUS_NETWORK_H -+ -+#include "networkstatuscommon.h" -+ -+class Network -+{ -+public: -+ Network( const QString name ); -+ Network( NetworkStatus::Properties properties ); -+ /** -+ * Update the status of this network -+ */ -+ void setStatus( NetworkStatus::Status status ); -+ /** -+ * The connection status of this network -+ */ -+ NetworkStatus::Status status(); -+ /** -+ * The name of this network -+ */ -+ QString name(); -+ void setName( const QString& name ); -+ /** -+ * Returns the service owning this network -+ */ -+ QString service(); -+ void setService( const QString& service ); -+ -+private: -+ Network( const Network & ); -+ QString m_name; -+ NetworkStatus::Status m_status; -+ QString m_service; -+}; -+ -+#endif -+// vim: sw=4 ts=4 -Index: networkstatus/.svn/text-base/networkstatuscommon.cpp.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/networkstatuscommon.cpp.svn-base -@@ -0,0 +1,76 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include "networkstatuscommon.h" -+ -+QDataStream & operator<< ( QDataStream & s, const NetworkStatus::Properties p ) -+{ -+ s << p.name; -+ s << (int)p.status; -+ s << p.service; -+ return s; -+} -+ -+QDataStream & operator>> ( QDataStream & s, NetworkStatus::Properties &p ) -+{ -+ int status; -+ s >> p.name; -+ s >> status; -+ p.status = (NetworkStatus::Status)status; -+ s >> p.service; -+ return s; -+} -+ -+namespace NetworkStatus -+{ -+ QString toString( NetworkStatus::Status st ) -+ { -+ QString str; -+ switch ( st ) { -+ case NetworkStatus::NoNetworks: -+ str = "NoNetworks"; -+ break; -+ case NetworkStatus::Unreachable: -+ str = "Unreachable"; -+ break; -+ case NetworkStatus::OfflineDisconnected: -+ str = "OfflineDisconnected"; -+ break; -+ case NetworkStatus::OfflineFailed: -+ str = "OfflineFailed"; -+ break; -+ case NetworkStatus::ShuttingDown: -+ str = "ShuttingDown"; -+ break; -+ case NetworkStatus::Offline: -+ str = "Offline"; -+ break; -+ case NetworkStatus::Establishing: -+ str = "Establishing"; -+ break; -+ case NetworkStatus::Online: -+ str = "Online"; -+ break; -+ } -+ return str; -+ } -+} // namespace NetworkStatus -Index: networkstatus/.svn/text-base/networkstatuscommon.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/networkstatuscommon.h.svn-base -@@ -0,0 +1,52 @@ -+/* This file is part of kdepim -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef NETWORKSTATUS_COMMON_H -+#define NETWORKSTATUS_COMMON_H -+ -+#include -+ -+namespace NetworkStatus -+{ -+ enum Status { NoNetworks = 1, Unreachable, OfflineDisconnected, OfflineFailed, ShuttingDown, Offline, Establishing, Online }; -+ enum RequestResult { RequestAccepted = 1, Connected, UserRefused, Unavailable }; -+ enum UnusedDemandPolicy { All, User, None, Permanent }; -+ -+ // BINARY COMPATIBILITY ALERT BEGIN !!!! -+ struct Properties -+ { -+ QString name; -+ Status status; -+ UnusedDemandPolicy unused1; -+ QCString service; -+ bool unused3; -+ QStringList unused4; -+ }; -+ // BINARY COMPATIBILITY ALERT END !!!! -+ -+ QString toString( Status st ); -+} -+ -+QDataStream & operator>> ( QDataStream & s, NetworkStatus::Properties &p ); -+QDataStream & operator<< ( QDataStream & s, const NetworkStatus::Properties p ); -+ -+#endif -Index: networkstatus/.svn/text-base/networkstatus.cpp.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/networkstatus.cpp.svn-base -@@ -0,0 +1,162 @@ -+/* This file is part of kdepim -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include "networkstatus.h" -+ -+#include -+ -+#include -+#include -+#include -+ -+#include "network.h" -+#include -+ -+extern "C" { -+ KDE_EXPORT KDEDModule* create_networkstatus( const QCString& obj ) -+ { -+ return new NetworkStatusModule( obj ); -+ } -+} -+ -+// INTERNALLY USED STRUCTS AND TYPEDEFS -+ -+typedef QMap< QString, Network * > NetworkMap; -+ -+class NetworkStatusModule::Private -+{ -+public: -+ NetworkMap networks; -+ NetworkStatus::Status status; -+}; -+ -+// CTORS/DTORS -+ -+NetworkStatusModule::NetworkStatusModule( const QCString & obj ) : KDEDModule( obj ), d( new Private ) -+{ -+ d->status = NetworkStatus::NoNetworks; -+ connect( kapp->dcopClient(), SIGNAL( applicationRemoved( const QCString& ) ) , this, SLOT( unregisteredFromDCOP( const QCString& ) ) ); -+ // connect( kapp->dcopClient(), SIGNAL( applicationRegistered( const QCString& ) ) , this, SLOT( registeredToDCOP( const QCString& ) ) ); -+} -+ -+NetworkStatusModule::~NetworkStatusModule() -+{ -+ NetworkMap::ConstIterator it; -+ const NetworkMap::ConstIterator end = d->networks.end(); -+ -+ for ( it = d->networks.begin(); it != end; ++it ) { -+ delete ( *it ); -+ } -+ -+ delete d; -+} -+ -+// CLIENT INTERFACE -+ -+QStringList NetworkStatusModule::networks() -+{ -+ kdDebug() << k_funcinfo << " contains " << d->networks.count() << " networks" << endl; -+ return d->networks.keys(); -+} -+ -+int NetworkStatusModule::status() -+{ -+ kdDebug() << k_funcinfo << " status: " << (int)d->status << endl; -+ return (int)d->status; -+} -+ -+//protected: -+ -+void NetworkStatusModule::updateStatus() -+{ -+ NetworkStatus::Status bestStatus = NetworkStatus::NoNetworks; -+ const NetworkStatus::Status oldStatus = d->status; -+ -+ NetworkMap::ConstIterator it; -+ const NetworkMap::ConstIterator end = d->networks.end(); -+ for ( it = d->networks.begin(); it != end; ++it ) { -+ if ( ( *it )->status() > bestStatus ) -+ bestStatus = ( *it )->status(); -+ } -+ d->status = bestStatus; -+ -+ if ( oldStatus != d->status ) { -+ statusChange( (int)d->status ); -+ } -+} -+ -+void NetworkStatusModule::unregisteredFromDCOP( const QCString & appId ) -+{ -+ // unregister and delete any networks owned by a service that has just unregistered -+ NetworkMap::Iterator it; -+ const NetworkMap::Iterator end = d->networks.end(); -+ for ( it = d->networks.begin(); it != end; ++it ) -+ { -+ if ( ( *it )->service() == QString( appId ) ) -+ { -+ NetworkMap::Iterator toRemove = it; -+ Network * removedNet = *toRemove; -+ d->networks.remove( toRemove ); -+ updateStatus(); -+ delete removedNet; -+ } -+ } -+} -+ -+// SERVICE INTERFACE // -+void NetworkStatusModule::setNetworkStatus( const QString & networkName, int st ) -+{ -+ kdDebug() << k_funcinfo << networkName << ", " << st << endl; -+ NetworkStatus::Status changedStatus = (NetworkStatus::Status)st; -+ Network * net = 0; -+ NetworkMap::Iterator it = d->networks.find( networkName ); -+ if ( it != d->networks.end() ) { -+ net = (*it); -+ net->setStatus( changedStatus ); -+ updateStatus(); -+ } -+ else -+ kdDebug() << " No network named '" << networkName << "' found." << endl; -+} -+ -+void NetworkStatusModule::registerNetwork( const NetworkStatus::Properties properties ) -+{ -+ kdDebug() << k_funcinfo << properties.name << ", with status " << properties.status << endl; -+ -+ d->networks.insert( properties.name, new Network( properties ) ); -+ updateStatus(); -+} -+ -+void NetworkStatusModule::unregisterNetwork( const QString & networkName ) -+{ -+ kdDebug() << k_funcinfo << networkName << endl; -+ -+ NetworkMap::Iterator it = d->networks.find( networkName ); -+ if ( it != d->networks.end() ) { -+ delete *it; -+ d->networks.remove( it ); -+ } -+ updateStatus(); -+} -+ -+#include "networkstatus.moc" -+// vim: set noet sw=4 ts=4: -Index: networkstatus/.svn/text-base/networkstatus.desktop.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/networkstatus.desktop.svn-base -@@ -0,0 +1,98 @@ -+[Desktop Entry] -+Encoding=UTF-8 -+Name=Network Status Daemon -+Name[af]=Netwerk status bediener -+Name[ar]=مراقب القرص و التنفيذ لحالة الشبكة -+Name[bg]=Демон за състояние на мрежата -+Name[ca]=Dimoni de l'estat de la xarxa -+Name[cs]=Démon stavu sítě -+Name[da]=Netværkstatusdæmon -+Name[de]=Überwachung des Netzwerkstatus -+Name[el]=Δαίμονας κατάστασης δικτύου -+Name[es]=Daemon de estado de la red -+Name[et]=Võrguoleku deemon -+Name[eu]=Sarearen egoera deabrua -+Name[fa]=شبح وضعیت شبکه -+Name[fi]=Verkkotilan tarkkailija -+Name[fr]=Suivi de l'état du réseau -+Name[fy]=Netwurktastândaemon -+Name[gl]=Daemon do Estado da Rede -+Name[hu]=Hálózati állapotjelző szolgáltatás -+Name[is]=Netstöðupúki -+Name[it]=Demone dello stato della rete -+Name[ja]=ネットワークステータスデーモン -+Name[kk]=Желі күйінің қызметі -+Name[km]=ដេមិន​ស្ថានភាព​បណ្ដាញ -+Name[lt]=Tinklo statuso tarnyba -+Name[mk]=Даемон за мрежен статус -+Name[ms]=Daemon Berstatus Rangkaian -+Name[nb]=Statusnisse for nettverket -+Name[nds]=Nettwarkstatus-Dämoon -+Name[ne]=सञ्जाल स्थिति डेइमन -+Name[nl]=Netwerkstatusdaemon -+Name[nn]=Statusnisse for nettverket -+Name[pl]=Usługa stanu sieci -+Name[pt]=Servidor de Estado de Rede -+Name[pt_BR]=Daemon de Status da Rede -+Name[ru]=Служба состояния сети -+Name[sk]=Daemon stavu siete -+Name[sl]=Demon za omrežno stanje -+Name[sr]=Демон за статус мреже -+Name[sr@Latn]=Demon za status mreže -+Name[sv]=Nätverksstatusdemon -+Name[ta]=வலைப்பின்னல் நிலை டெமான் -+Name[tr]=Ağ Durum İzleyici -+Name[uk]=Демон стану мережі -+Name[zh_CN]=网络状态守护程序 -+Name[zh_TW]=網路狀態守護程式 -+Comment=Tracks status of network interfaces and provides notification to applications using the network. -+Comment[af]=Hou tred van die status van netwerk intervlakke en verskaf kennisgewings na programme wat die netwerk gebruik. -+Comment[bg]=Следене на състоянието на мрежата и предаване на информацията на програмите, които имат нужда -+Comment[ca]=Controla l'estat de les interfícies de xarxa i proporciona notificacions a les aplicacions que usen la xarxa. -+Comment[cs]=Zjiš'tuje stav síťových rozhraní a upozorňuje v případě přístupu aplikací k síti. -+Comment[da]=Sporer status af netværksgrænseflade og sørger for meddelelser til programmer der bruger netværket. -+Comment[de]=Überprüft den Netzwerk-Status und benachrichtigt anfragende Anwendungen -+Comment[el]=Παρακολουθεί την κατάσταση του δικτύου και παρέχει ειδοποιήσεις σε εφαρμογές που χρησιμοποιούν το δίκτυο. -+Comment[es]=Sigue la pista de las interfaces de red y proporciona notificaciones a las aplicaciones que están usando la red. -+Comment[et]=Jälgib võrguliideste olekut ja annab sellest võrgu vahendusel rakendustele teada. -+Comment[eu]=Sare interfazeen egoera jarraitzen du eta sarea darabilten aplikazioei jakinarazten die. -+Comment[fa]=وضعیت واسطهای شبکه را شیار داده و با استفاده از شبکه، برای کاربردها اخطار فراهم می‌کند. -+Comment[fi]=Tarkkailee verkkoliitäntöjen tilaa ja varoittaa verkkoa käyttäviä sovelluksia. -+Comment[fr]=Surveille l'état des interfaces réseaux et fournit des notifications aux applications qui utilisent le réseau -+Comment[fy]=Hâldt de tastân by fan de Netwurkynterfaces en hâldt dêr de tapassings fan op de hichte. -+Comment[gl]=Monitoriza o estado das interfaces de rede e fornece notificacións ás aplicacións que usen a rede. -+Comment[hu]=Figyeli a hálózati csatolók állapotát és értesítési lehetőséget biztosít hálózati alkalmazások számára. -+Comment[is]=Fylgist með stöðu netkorta og sendir tilkynningar til forrita sem nota netið. -+Comment[it]=Controlla lo stato delle interfacce di rete e fornisce notifiche alle applicazioni che usano al rete. -+Comment[ja]=ネットワークインターフェースの状態を追跡し、ネットワークを用いるアプリケーションに通知します -+Comment[kk]=Желі интерфейстерінің күйін бақылап, желіні қолданатын бағдарламаларын құлақтандыру қызметі. -+Comment[km]=តាមដាន​ស្ថានភាព​របស់​ចំណុច​ប្រទាក់​បណ្ដាញ ព្រម​ទាំង​ផ្ដល់​នូវ​ការ​ជូនដំណឹង​ទៅ​កម្មវិធី ដែល​ប្រើ​បណ្ដាញ ។ -+Comment[lt]=Seka tinklo sąsajų būseną ir informuoja apie jas programas, naudojančias tinklą -+Comment[mk]=Го следи статусот на мрежните интерфејси и дава известувања на апликациите што ја користат мрежата. -+Comment[ms]=Menjejak status antara muka rangkaian dan memberitahu aplikasi yang menggunakan rangkaian tersebut. -+Comment[nb]=Overvåker status for nettverksgrensesnitt og varsler programmer som bruker nettverket. -+Comment[nds]=Överwacht den Tostand vun Nettwark-Koppelsteden un sendt Narichten na Programmen, de dat Nettwark bruukt. -+Comment[ne]=सञ्जाल इन्टरफेसको स्थिति ट्र्याक गर्दछ र सञ्जाल प्रयोग गरेर अनुप्रयोगमा जानकारी उपलब्ध गराउछ । -+Comment[nl]=Houdt de status bij van de netwerkinterfaces en houdt daar de toepassingen van op de hoogte. -+Comment[nn]=Overvakar status for nettverksgrensesnitt og varslar program som brukar nettverket. -+Comment[pl]=Śledzi stan interfejsów sieciowych i powiadamia programy używające sieci. -+Comment[pt]=Vigia o estado das interfaces de rede e avisa as aplicações que utilizam a rede. -+Comment[pt_BR]=Controla o status das interfaces de rede e fornece notificações para aplicativos utilizando a rede. -+Comment[ru]=Служба отслеживания состояния сетевых интерфейсов и обращения приложений к сети. -+Comment[sk]=Sleduje stav sieťových rozhraní a poskytuje upozornenia aplikáciám používajúcim sieť. -+Comment[sl]=Sledi stanju omrežnim vmesnikom in omogoča obvestila programom, ki uporabljajo omrežje -+Comment[sr]=Прати статус мрежних интерфејса и пружа обавештења програмима који користе мрежу. -+Comment[sr@Latn]=Prati status mrežnih interfejsa i pruža obaveštenja programima koji koriste mrežu. -+Comment[sv]=Bevakar status för nätverksgränssnitt och tillhandahåller underrättelser till program som använder nätverket. -+Comment[ta]=வலைப்பின்னலைப் பயன்படுத்தி வலைப்பின்னல் இடைமுகங்களின் நிலையை கண்காணிக்கிறது மற்றும் பயன்பாடுகளுக்கு அறிவிப்பை வழங்குகிறது. -+Comment[uk]=Слідкує за станом інтерфейсів мережі і сповіщає програми, які користуються мережею. -+Comment[zh_CN]=跟踪网卡的状态并为应用程序提供使用网络的通知。 -+Comment[zh_TW]=追蹤網路介面的狀態,並提供使用網路的應用程式的通知。 -+Type=Service -+ServiceTypes=KDEDModule -+X-KDE-ModuleType=Library -+X-KDE-Library=networkstatus -+X-KDE-FactoryName=networkstatus -+X-KDE-Kded-autoload=true -+X-KDE-Kded-load-on-demand=true -+ -Index: networkstatus/.svn/text-base/networkstatus.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/networkstatus.h.svn-base -@@ -0,0 +1,66 @@ -+/* This file is part of kdepim -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef KDED_NETWORKSTATUS_H -+#define KDED_NETWORKSTATUS_H -+ -+#include -+ -+#include "networkstatuscommon.h" -+#include "network.h" -+ -+class NetworkStatusModule : virtual public KDEDModule -+{ -+Q_OBJECT -+K_DCOP -+public: -+ NetworkStatusModule( const QCString& obj ); -+ ~NetworkStatusModule(); -+k_dcop: -+ // Client interface -+ QStringList networks(); -+ int status(); -+ // Service interface -+ void setNetworkStatus( const QString & networkName, int status ); -+ void registerNetwork( NetworkStatus::Properties properties ); -+ void unregisterNetwork( const QString & networkName ); -+k_dcop_signals: -+ /** -+ * A status change occurred affecting the overall connectivity -+ * @param status The new status -+ */ -+ void statusChange( int status ); -+protected slots: -+ //void registeredToDCOP( const QCString& appId ); -+ void unregisteredFromDCOP( const QCString& appId ); -+ -+protected: -+ // recalculate cached status -+ void updateStatus(); -+ -+private: -+ class Private; -+ Private *d; -+}; -+ -+#endif -+// vim: sw=4 ts=4 -Index: networkstatus/.svn/text-base/networkstatusiface.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/networkstatusiface.h.svn-base -@@ -0,0 +1,50 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef KDED_NETWORKSTATUSIFACE_H -+#define KDED_NETWORKSTATUSIFACE_H -+ -+#include -+#include -+ -+#include "networkstatuscommon.h" -+ -+class NetworkStatusIface : virtual public DCOPObject -+{ -+K_DCOP -+k_dcop: -+ // Client interface -+ virtual QStringList networks() = 0; -+ virtual int status() = 0; -+ // Service interface -+ virtual void setNetworkStatus( const QString & networkName, int status ) = 0; -+ virtual void registerNetwork( NetworkStatus::Properties properties ) = 0; -+ virtual void unregisterNetwork( const QString & networkName ) = 0 ; -+k_dcop_signals: -+ /** -+ * A status change occurred affecting the overall connectivity -+ * @param status The new status -+ */ -+ virtual void statusChange( int status ) = 0; -+}; -+#endif -+// vim: sw=4 ts=4 -Index: networkstatus/.svn/text-base/networkstatusindicator.cpp.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/networkstatusindicator.cpp.svn-base -@@ -0,0 +1,64 @@ -+/* This file is part of the KDE project -+ Copyright (C) 2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include -+#include -+#include -+#include -+ -+#include "connectionmanager.h" -+ -+#include "networkstatusindicator.h" -+ -+StatusBarNetworkStatusIndicator::StatusBarNetworkStatusIndicator( -+ QWidget * parent, const char * name ) : QHBox( parent, name )/*, d( new StatusBarNetworkStatusIndicatorPrivate )*/ -+{ -+ setMargin( 2 ); -+ setSpacing( 1 ); -+ QLabel * label = new QLabel( this, "offlinemodelabel" ); -+ label->setPixmap( SmallIcon("connect_no") ); -+ QToolTip::add( label, i18n( "The desktop is offline" ) ); -+ -+ connect( ConnectionManager::self(), SIGNAL( statusChanged( NetworkStatus::Status ) ), -+ SLOT( networkStatusChanged( NetworkStatus::Status) ) ); -+ -+} -+ -+void StatusBarNetworkStatusIndicator::init() -+{ -+ networkStatusChanged( ConnectionManager::self()->status()); -+} -+ -+StatusBarNetworkStatusIndicator::~StatusBarNetworkStatusIndicator() -+{ -+} -+ -+void StatusBarNetworkStatusIndicator::networkStatusChanged( NetworkStatus::Status status ) -+{ -+ if ( status == NetworkStatus::Online || status == NetworkStatus::NoNetworks ) { -+ hide(); -+ } else { -+ show(); -+ } -+} -+ -+#include "networkstatusindicator.moc" -Index: networkstatus/.svn/text-base/networkstatusindicator.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/networkstatusindicator.h.svn-base -@@ -0,0 +1,42 @@ -+/* This file is part of the KDE project -+ Copyright (C) 2007 Will Stephenson -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License version 2 as published by the Free Software Foundation. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library. If not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this library -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef KDE_NETWORKSTATUS_INDICATOR_H -+#define KDE_NETWORKSTATUS_INDICATOR_H -+ -+#include -+#include -+#include -+ -+class StatusBarNetworkStatusIndicator : public QHBox -+{ -+Q_OBJECT -+public: -+ StatusBarNetworkStatusIndicator( QWidget * parent, const char * name ); -+ virtual ~StatusBarNetworkStatusIndicator(); -+ void init(); -+protected slots: -+ void networkStatusChanged( NetworkStatus::Status status ); -+}; -+ -+#endif -+ -Index: networkstatus/.svn/text-base/networkstatus.kdevelop.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/networkstatus.kdevelop.svn-base -@@ -0,0 +1,108 @@ -+ -+ -+ -+ Will Stephenson -+ wstephenson@suse.de -+ $VERSION$ -+ KDevKDEAutoProject -+ C++ -+ -+ Qt -+ KDE -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ false -+ false -+ -+ -+ *.o,*.lo,CVS -+ false -+ -+ -+ -+ -+ ada -+ ada_bugs_gcc -+ bash -+ bash_bugs -+ clanlib -+ fortran_bugs_gcc -+ gnome1 -+ gnustep -+ gtk -+ gtk_bugs -+ haskell -+ haskell_bugs_ghc -+ java_bugs_gcc -+ java_bugs_sun -+ opengl -+ pascal_bugs_fp -+ php -+ php_bugs -+ perl -+ perl_bugs -+ python -+ python_bugs -+ ruby -+ ruby_bugs -+ sdl -+ stl -+ sw -+ w3c-dom-level2-html -+ w3c-svg -+ w3c-uaag10 -+ wxwidgets_bugs -+ -+ -+ qmake User Guide -+ -+ -+ -+ -+ libtool -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ executable -+ -+ -+ kded_networkstatus.la -+ -+ -+ -+ -+ -+ true -+ true -+ true -+ false -+ true -+ true -+ true -+ 250 -+ 400 -+ 250 -+ -+ -+ -Index: networkstatus/.svn/text-base/README.statetransition.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/README.statetransition.svn-base -@@ -0,0 +1,29 @@ -+This table defines the actions to be taken on state transition. -+ -+TODO: potentially add extra states OnlineReading and OnlineWriting -+ -+ NEW -+ |Offline | Online | -+---+---+----------------+---------------+ -+ | | |N|set online | -+ | | |L|reload | -+ | O | |C|resources | -+ | F | +---------------+ -+ | F | |L|set online | -+O | | |C|reload res. | -+L | | | |write res. | -+D +---+----------------+---------------+ -+ | |N|set offline | | -+ | |C| | | -+ | | | | | -+ | O +---------------+| | -+ | N |U|set offline | | -+ | |W|write locally | | -+ | |C|(subject to | | -+ | | | save policy)| | -+---+---+----------------+---------------+ -+LC = Local changes exist -+NLC = No local changes exist -+UWC = Unsaved changes exist -+NC = no changes exist -+ -Index: networkstatus/.svn/text-base/testclient2.cpp.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/testclient2.cpp.svn-base -@@ -0,0 +1,222 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2007 Will Stephenson -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License version 2 -+ as published by the Free Software Foundation. -+ -+ This program 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 General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this program -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include -+#include -+#include -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include -+#include -+ -+#include "testclientview.h" -+#include "testclient2.h" -+ -+TestClient::TestClient() -+ : KMainWindow( 0, "ktestnetworkstatus" ), -+ m_layout( new QVBox( 0, "layout" ) ), -+ m_status( AppDisconnected ) -+{ -+ m_view = new TestClientView( this ); -+ new StatusBarNetworkStatusIndicator( m_view, "statusindicator" ); -+ // tell the KMainWindow that this is indeed the main widget -+ setCentralWidget(m_view); -+ -+ networkStatusChanged( ConnectionManager::self()->status() ); -+ appDisconnected(); -+ -+ connect( ConnectionManager::self(), SIGNAL( statusChanged( NetworkStatus::Status ) ), SLOT( networkStatusChanged( NetworkStatus::Status ) ) ); -+ ConnectionManager::self()->registerConnectSlot( this, SLOT( doConnect() ) ); -+ ConnectionManager::self()->registerDisconnectSlot( this, SLOT( doDisconnect() ) ); -+ -+ connect( m_view->connectButton, SIGNAL( clicked() ), SLOT( connectButtonClicked() ) ); -+} -+ -+TestClient::~TestClient() -+{ -+} -+ -+void TestClient::networkStatusChanged( NetworkStatus::Status status ) -+{ -+ kdDebug() << k_funcinfo << endl; -+ kdDebug() << "Networking is now: " << NetworkStatus::toString( status ) << " (" << status << ")" << endl; -+ m_view->netStatusLabel->setText( NetworkStatus::toString( status ) ); -+ m_view->netStatusLabel->setPaletteBackgroundColor( toQColor( status ) ); -+} -+ -+void TestClient::doConnect() -+{ -+ Q_ASSERT( ConnectionManager::self()->status() == NetworkStatus::Online ); -+ if ( m_status != AppConnected ) { -+ appIsConnected(); -+ } -+} -+ -+void TestClient::doDisconnect() -+{ -+ Q_ASSERT( ConnectionManager::self()->status() != NetworkStatus::Online ); -+ if ( m_status == AppConnected ) { -+ appDisconnected(); -+ } -+} -+ -+void TestClient::connectButtonClicked() -+{ -+ kdDebug() << k_funcinfo << endl; -+ if ( m_status == AppDisconnected ) { -+ switch ( ConnectionManager::self()->status() ) -+ { -+ case NetworkStatus::NoNetworks: -+ case NetworkStatus::Online: -+ appIsConnected(); -+ break; -+ default: -+ appWaiting(); -+ break; -+ } -+ } -+ else if ( m_status == AppConnected || m_status == AppWaitingForConnect ) { -+ appDisconnected(); -+ } -+} -+ -+void TestClient::appWaiting() -+{ -+ kdDebug() << k_funcinfo << endl; -+ //m_status = AppWaitingForConnect; -+ m_view->appStatusLabel->setText( "Waiting" ); -+} -+ -+void TestClient::appIsConnected() -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->connectButton->setEnabled( true ); -+ m_view->connectButton->setText( "Disconnect" ); -+ m_view->appStatusLabel->setText( "Connected" ); -+ m_status = AppConnected; -+} -+ -+void TestClient::appEstablishing() -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->netStatusLabel->setText( "Establishing" ); -+ m_view->connectButton->setEnabled( false ); -+} -+ -+void TestClient::appDisestablishing( ) -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->connectButton->setEnabled( false ); -+ m_view->appStatusLabel->setText( "Disconnected" ); -+} -+ -+void TestClient::appDisconnected( ) -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->connectButton->setEnabled( true ); -+ m_view->connectButton->setText( "Start Connect" ); -+ m_view->appStatusLabel->setText( "Disconnected" ); -+ m_status = AppDisconnected; -+} -+ -+QColor TestClient::toQColor( NetworkStatus::Status st ) -+{ -+ QColor col; -+ switch ( st ) { -+ case NetworkStatus::NoNetworks: -+ col = Qt::darkGray; -+ break; -+ case NetworkStatus::Unreachable: -+ col = Qt::darkMagenta; -+ break; -+ case NetworkStatus::OfflineDisconnected: -+ col = Qt::blue; -+ break; -+ case NetworkStatus::OfflineFailed: -+ col = Qt::darkRed; -+ break; -+ case NetworkStatus::ShuttingDown: -+ col = Qt::darkYellow; -+ break; -+ case NetworkStatus::Offline: -+ col = Qt::blue; -+ break; -+ case NetworkStatus::Establishing: -+ col = Qt::yellow; -+ break; -+ case NetworkStatus::Online: -+ col = Qt::green; -+ break; -+ } -+ return col; -+} -+//main -+static const char description[] = -+ I18N_NOOP("Test Client for Network Status kded module"); -+ -+static const char version[] = "v0.1"; -+ -+static KCmdLineOptions options[] = -+{ -+ KCmdLineLastOption -+}; -+ -+int main(int argc, char **argv) -+{ -+ KAboutData about("KNetworkStatusTestClient", I18N_NOOP("knetworkstatustestclient"), version, description, KAboutData::License_GPL, "(C) 2007 Will Stephenson", 0, 0, "wstephenson@kde.org"); -+ about.addAuthor( "Will Stephenson", 0, "wstephenson@kde.org" ); -+ KCmdLineArgs::init(argc, argv, &about); -+ KCmdLineArgs::addCmdLineOptions(options); -+ KApplication app; -+ -+ // register ourselves as a dcop client -+ app.dcopClient()->registerAs(app.name(), false); -+ -+ KCmdLineArgs *args = KCmdLineArgs::parsedArgs(); -+ if (args->count() == 0) -+ { -+ TestClient *widget = new TestClient; -+ widget->show(); -+ } -+ else -+ { -+ int i = 0; -+ for (; i < args->count(); i++) -+ { -+ TestClient *widget = new TestClient; -+ widget->show(); -+ } -+ } -+ args->clear(); -+ -+ return app.exec(); -+} -+ -+#include "testclient2.moc" -+ -Index: networkstatus/.svn/text-base/testclient2.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/testclient2.h.svn-base -@@ -0,0 +1,82 @@ -+/* This file is part of kdepim. -+ -+ Copyright (C) 2007 Will Stephenson -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License as published by -+ the Free Software Foundation; either version 2 of the License, or -+ (at your option) any later version. -+ -+ This program 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 General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this program -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef KTESTNETWORKSTATUS_H -+#define KTESTNETWORKSTATUS_H -+ -+#ifdef HAVE_CONFIG_H -+#include -+#endif -+ -+#include -+#include -+#include -+#include -+ -+#include "networkstatusiface_stub.h" -+ -+class TestClientView; -+ -+/** -+ * Test client that uses a ConnectionManager to change its state -+ * -+ * @short Main window class -+ * @author Will Stephenson -+ * @version 0.1 -+ */ -+class TestClient : public KMainWindow -+{ -+Q_OBJECT -+public: -+ enum AppStatus{ AppDisconnected, AppWaitingForConnect, AppConnected }; -+ /** -+ * Default Constructor -+ */ -+ TestClient(); -+ -+ /** -+ * Default Destructor -+ */ -+ virtual ~TestClient(); -+ -+private slots: -+ void networkStatusChanged( NetworkStatus::Status status ); -+ void connectButtonClicked(); -+ void doConnect(); -+ void doDisconnect(); -+private: -+ void appWaiting(); -+ void appEstablishing(); -+ void appIsConnected(); -+ void appDisestablishing(); -+ void appDisconnected(); -+ static QColor toQColor( NetworkStatus::Status ); -+private: -+ QHBox * m_layout; -+ NetworkStatusIface_stub *m_service; -+ TestClientView *m_view; -+ AppStatus m_status; // this represents the app's status not the network's status -+}; -+ -+#endif // KTESTNETWORKSTATUS_H -+ -Index: networkstatus/.svn/text-base/testclient.cpp.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/testclient.cpp.svn-base -@@ -0,0 +1,234 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2007 Will Stephenson -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License version 2 -+ as published by the Free Software Foundation. -+ -+ This program 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 General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this program -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include -+#include -+ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include "connectionmanager.h" -+#include "testclientview.h" -+#include "testclient.h" -+ -+TestClient::TestClient() -+ : KMainWindow( 0, "ktestnetworkstatus" ), -+ m_view(new TestClientView(this)), -+ m_status( AppDisconnected ) -+{ -+ // tell the KMainWindow that this is indeed the main widget -+ setCentralWidget(m_view); -+ -+ networkStatusChanged( ConnectionManager::self()->status() ); -+ appDisconnected(); -+ -+ connect( ConnectionManager::self(), SIGNAL( statusChanged( NetworkStatus::Status ) ), SLOT( networkStatusChanged( NetworkStatus::Status ) ) ); -+ -+ connect( m_view->connectButton, SIGNAL( toggled( bool ) ), SLOT( connectButtonToggled( bool ) ) ); -+} -+ -+TestClient::~TestClient() -+{ -+} -+ -+void TestClient::networkStatusChanged( NetworkStatus::Status status ) -+{ -+ kdDebug() << k_funcinfo << endl; -+//enum EnumStatus { NoNetworks = 1, Unreachable, OfflineDisconnected, OfflineFailed, ShuttingDown -+// , Offline, Establishing, Online }; -+ kdDebug() << "Networking is now: " << NetworkStatus::toString( status ) << " (" << status << ")" << endl; -+ m_view->netStatusLabel->setText( NetworkStatus::toString( status ) ); -+ m_view->netStatusLabel->setPaletteBackgroundColor( toQColor( status ) ); -+ switch ( status ) { -+ case NetworkStatus::NoNetworks: -+ break; -+ case NetworkStatus::Unreachable: -+ break; -+ case NetworkStatus::OfflineDisconnected: -+ break; -+ case NetworkStatus::OfflineFailed: -+ break; -+ case NetworkStatus::ShuttingDown: -+ if ( m_status == AppConnected ) { -+ appDisestablishing(); -+ } -+ break; -+ case NetworkStatus::Offline: -+ if ( m_status == AppConnected ) { -+ appDisconnected(); -+ } -+ break; -+ case NetworkStatus::Establishing: -+ if ( m_status == AppWaitingForConnect ) -+ appEstablishing(); -+ else if ( m_status == AppConnected ) -+ appDisconnected(); -+ break; -+ case NetworkStatus::Online: -+ if ( m_status == AppWaitingForConnect ) -+ appIsConnected(); -+ break; -+ default: -+ m_view->netStatusLabel->setText( "Unrecognised status code!" ); -+ } -+} -+ -+void TestClient::connectButtonToggled( bool on ) -+{ -+ kdDebug() << k_funcinfo << endl; -+ if ( on && m_status == AppDisconnected ) { -+ switch ( ConnectionManager::self()->status() ) -+ { -+ case NetworkStatus::NoNetworks: -+ case NetworkStatus::Online: -+ appIsConnected(); -+ break; -+ default: -+ appWaiting(); -+ break; -+ } -+ } -+ else if ( !on && m_status == AppConnected ) { -+ appDisconnected(); -+ } -+} -+ -+void TestClient::appWaiting() -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_status = AppWaitingForConnect; -+ m_view->appStatusLabel->setText( "Waiting" ); -+} -+ -+void TestClient::appIsConnected() -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->connectButton->setEnabled( true ); -+ m_view->connectButton->setText( "Disconnect" ); -+ m_view->appStatusLabel->setText( "Connected" ); -+ m_status = AppConnected; -+} -+ -+void TestClient::appEstablishing() -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->netStatusLabel->setText( "Establishing" ); -+ m_view->connectButton->setEnabled( false ); -+} -+ -+void TestClient::appDisestablishing( ) -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->connectButton->setEnabled( false ); -+ m_view->appStatusLabel->setText( "Disconnected" ); -+} -+ -+void TestClient::appDisconnected( ) -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->connectButton->setEnabled( true ); -+ m_view->connectButton->setText( "Start Connect" ); -+ m_view->appStatusLabel->setText( "Disconnected" ); -+ m_status = AppDisconnected; -+} -+ -+QColor TestClient::toQColor( NetworkStatus::Status st ) -+{ -+ QColor col; -+ switch ( st ) { -+ case NetworkStatus::NoNetworks: -+ col = Qt::darkGray; -+ break; -+ case NetworkStatus::Unreachable: -+ col = Qt::darkMagenta; -+ break; -+ case NetworkStatus::OfflineDisconnected: -+ col = Qt::blue; -+ break; -+ case NetworkStatus::OfflineFailed: -+ col = Qt::darkRed; -+ break; -+ case NetworkStatus::ShuttingDown: -+ col = Qt::darkYellow; -+ break; -+ case NetworkStatus::Offline: -+ col = Qt::blue; -+ break; -+ case NetworkStatus::Establishing: -+ col = Qt::yellow; -+ break; -+ case NetworkStatus::Online: -+ col = Qt::green; -+ break; -+ } -+ return col; -+} -+//main -+static const char description[] = -+ I18N_NOOP("Test Client for Network Status kded module"); -+ -+static const char version[] = "v0.1"; -+ -+static KCmdLineOptions options[] = -+{ -+ KCmdLineLastOption -+}; -+ -+int main(int argc, char **argv) -+{ -+ KAboutData about("KNetworkStatusTestClient", I18N_NOOP("knetworkstatustestclient"), version, description, KAboutData::License_GPL, "(C) 2007 Will Stephenson", 0, 0, "wstephenson@kde.org"); -+ about.addAuthor( "Will Stephenson", 0, "wstephenson@kde.org" ); -+ KCmdLineArgs::init(argc, argv, &about); -+ KCmdLineArgs::addCmdLineOptions(options); -+ KApplication app; -+ -+ // register ourselves as a dcop client -+ app.dcopClient()->registerAs(app.name(), false); -+ -+ KCmdLineArgs *args = KCmdLineArgs::parsedArgs(); -+ if (args->count() == 0) -+ { -+ TestClient *widget = new TestClient; -+ widget->show(); -+ } -+ else -+ { -+ int i = 0; -+ for (; i < args->count(); i++) -+ { -+ TestClient *widget = new TestClient; -+ widget->show(); -+ } -+ } -+ args->clear(); -+ -+ return app.exec(); -+} -+ -+#include "testclient.moc" -+ -Index: networkstatus/.svn/text-base/testclient.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/testclient.h.svn-base -@@ -0,0 +1,80 @@ -+/* This file is part of kdepim. -+ -+ Copyright (C) 2007 Will Stephenson -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License as published by -+ the Free Software Foundation; either version 2 of the License, or -+ (at your option) any later version. -+ -+ This program 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 General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this program -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef KTESTNETWORKSTATUS_H -+#define KTESTNETWORKSTATUS_H -+ -+#ifdef HAVE_CONFIG_H -+#include -+#endif -+ -+#include -+#include -+#include -+#include -+ -+#include "networkstatusiface_stub.h" -+ -+class TestClientView; -+ -+/** -+ * This class serves as the main window for ktestnetworkstatus. It handles the -+ * menus, toolbars, and status bars. -+ * -+ * @short Main window class -+ * @author Will Stephenson -+ * @version 0.1 -+ */ -+class TestClient : public KMainWindow -+{ -+Q_OBJECT -+public: -+ enum AppStatus{ AppDisconnected, AppWaitingForConnect, AppConnected }; -+ /** -+ * Default Constructor -+ */ -+ TestClient(); -+ -+ /** -+ * Default Destructor -+ */ -+ virtual ~TestClient(); -+ -+private slots: -+ void networkStatusChanged( NetworkStatus::Status status ); -+ void connectButtonToggled( bool on ); -+private: -+ void appWaiting(); -+ void appEstablishing(); -+ void appIsConnected(); -+ void appDisestablishing(); -+ void appDisconnected(); -+ static QColor toQColor( NetworkStatus::Status ); -+private: -+ NetworkStatusIface_stub *m_service; -+ TestClientView *m_view; -+ AppStatus m_status; // this represents the app's status not the network's status -+}; -+ -+#endif // KTESTNETWORKSTATUS_H -+ -Index: networkstatus/.svn/text-base/testclientview.ui.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/testclientview.ui.svn-base -@@ -0,0 +1,177 @@ -+ -+TestClientView -+ -+ -+ TestClientView -+ -+ -+ -+ 0 -+ 0 -+ 356 -+ 127 -+ -+ -+ -+ Form1 -+ -+ -+ -+ unnamed -+ -+ -+ -+ textLabel4 -+ -+ -+ -+ 5 -+ 5 -+ 0 -+ 0 -+ -+ -+ -+ <font size="+2"><b>Client for KDE 3 Offline Mode</b></font> -+ -+ -+ AlignVCenter -+ -+ -+ -+ -+ layout1 -+ -+ -+ -+ unnamed -+ -+ -+ -+ textLabel1 -+ -+ -+ Network status: -+ -+ -+ -+ -+ netStatusLabel -+ -+ -+ -+ 0 -+ 255 -+ 0 -+ -+ -+ -+ Panel -+ -+ -+ STATUS -+ -+ -+ AlignCenter -+ -+ -+ -+ -+ -+ -+ layout1_2 -+ -+ -+ -+ unnamed -+ -+ -+ -+ textLabel1_2 -+ -+ -+ App status: -+ -+ -+ -+ -+ appStatusLabel -+ -+ -+ -+ 0 -+ 255 -+ 0 -+ -+ -+ -+ Panel -+ -+ -+ STATUS -+ -+ -+ AlignCenter -+ -+ -+ -+ -+ -+ -+ layout2 -+ -+ -+ -+ unnamed -+ -+ -+ -+ spacer1 -+ -+ -+ Horizontal -+ -+ -+ Expanding -+ -+ -+ -+ 31 -+ 20 -+ -+ -+ -+ -+ -+ connectButton -+ -+ -+ Start Connect -+ -+ -+ false -+ -+ -+ -+ -+ spacer2 -+ -+ -+ Horizontal -+ -+ -+ Expanding -+ -+ -+ -+ 61 -+ 20 -+ -+ -+ -+ -+ -+ -+ -+ -+ -Index: networkstatus/.svn/text-base/testservice.cpp.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/testservice.cpp.svn-base -@@ -0,0 +1,219 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License version 2 -+ as published by the Free Software Foundation. -+ -+ This program 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 General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this program -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include -+#include -+#include -+#include -+ -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include "testservice.h" -+#include "testserviceview.h" -+#include "networkstatusiface_stub.h" -+ -+TestService::TestService() : KMainWindow( 0, "testservice" ), -+ m_service( new NetworkStatusIface_stub( "kded", "networkstatus" ) ), -+ m_status ( NetworkStatus::Offline ), -+ m_nextStatus( NetworkStatus::OfflineDisconnected ), -+ m_view( new TestServiceView( this ) ) -+{ -+ setCentralWidget( m_view ); -+ kapp->dcopClient()->registerAs("testservice" ); -+ -+ connect( m_view->changeCombo, SIGNAL( activated( int ) ), SLOT( changeComboActivated( int ) ) ); -+ connect( m_view->changeButton, SIGNAL( clicked() ), SLOT( changeButtonClicked() ) ); -+ -+ connect( kapp->dcopClient(), SIGNAL( applicationRegistered( const QCString& ) ), this, SLOT( registeredToDCOP( const QCString& ) ) ); -+ kapp->dcopClient()->setNotifications( true ); -+ -+ m_view->statusLabel->setText( NetworkStatus::toString( m_status ) ); -+ m_view->statusLabel->setPaletteBackgroundColor( toQColor( m_status ) ); -+ setCaption( NetworkStatus::toString( m_status ) ); -+ -+ registerService(); -+} -+ -+TestService::~TestService() -+{ -+ delete m_service; -+ delete m_view; -+} -+ -+void TestService::registerService() -+{ -+ NetworkStatus::Properties nsp; -+ nsp.name = "test_net"; -+ nsp.service = kapp->dcopClient()->appId(); -+ nsp.status = m_status; -+ m_service->registerNetwork( nsp ); -+} -+ -+void TestService::registeredToDCOP( const QCString & appId ) -+{ -+ if ( appId == "kded" ) -+ registerService(); -+} -+ -+int TestService::status( const QString & network ) -+{ -+ Q_UNUSED( network ); -+ return (int)m_status; -+} -+ -+void TestService::changeComboActivated( int index ) -+{ -+ switch ( index ) { -+ case 0 /*NetworkStatus::OfflineDisconnected*/: -+ m_nextStatus = NetworkStatus::OfflineDisconnected; -+ break; -+ case 1 /*NetworkStatus::OfflineFailed*/: -+ m_nextStatus = NetworkStatus::OfflineFailed; -+ break; -+ case 2 /*NetworkStatus::ShuttingDown*/: -+ m_nextStatus = NetworkStatus::ShuttingDown; -+ break; -+ case 3 /*NetworkStatus::Offline*/: -+ m_nextStatus = NetworkStatus::Offline; -+ break; -+ case 4 /*NetworkStatus::Establishing*/: -+ m_nextStatus = NetworkStatus::Establishing; -+ break; -+ case 5 /*NetworkStatus::Online*/: -+ m_nextStatus = NetworkStatus::Online; -+ break; -+ default: -+ kdDebug() << "Unrecognised status!" << endl; -+ Q_ASSERT( false ); -+ } -+ m_view->changeButton->setEnabled( true ); -+} -+ -+void TestService::changeButtonClicked() -+{ -+ m_view->changeButton->setEnabled( false ); -+ m_status = m_nextStatus; -+ m_service->setNetworkStatus( "test_net", ( int )m_status ); -+ m_view->statusLabel->setText( NetworkStatus::toString( m_status ) ); -+ m_view->statusLabel->setPaletteBackgroundColor( toQColor( m_status ) ); -+ setCaption( NetworkStatus::toString( m_status ) ); -+} -+ -+int TestService::establish( const QString & network ) -+{ -+ Q_UNUSED( network ); -+ m_status = NetworkStatus::Establishing; -+ m_service->setNetworkStatus( "test_net", (int)m_status ); -+ m_nextStatus = NetworkStatus::Online; -+ QTimer::singleShot( 5000, this, SLOT( slotStatusChange() ) ); -+ return (int)NetworkStatus::RequestAccepted; -+} -+ -+int TestService::shutdown( const QString & network ) -+{ -+ Q_UNUSED( network ); -+ m_status = NetworkStatus::ShuttingDown; -+ m_service->setNetworkStatus( "test_net", (int)m_status ); -+ m_nextStatus = NetworkStatus::Offline; -+ QTimer::singleShot( 5000, this, SLOT( slotStatusChange() ) ); -+ return (int)NetworkStatus::RequestAccepted; -+} -+ -+void TestService::simulateFailure() -+{ -+ m_status = NetworkStatus::OfflineFailed; -+ m_service->setNetworkStatus( "test_net", (int)m_status ); -+} -+ -+void TestService::simulateDisconnect() -+{ -+ m_status = NetworkStatus::OfflineDisconnected; -+ m_service->setNetworkStatus( "test_net", (int)m_status ); -+} -+ -+void TestService::slotStatusChange() -+{ -+ m_status = m_nextStatus; -+ m_service->setNetworkStatus( "test_net", (int)m_status ); -+} -+ -+QColor TestService::toQColor( NetworkStatus::Status st ) -+{ -+ QColor col; -+ switch ( st ) { -+ case NetworkStatus::NoNetworks: -+ col = Qt::darkGray; -+ break; -+ case NetworkStatus::Unreachable: -+ col = Qt::darkMagenta; -+ break; -+ case NetworkStatus::OfflineDisconnected: -+ col = Qt::blue; -+ break; -+ case NetworkStatus::OfflineFailed: -+ col = Qt::darkRed; -+ break; -+ case NetworkStatus::ShuttingDown: -+ col = Qt::darkYellow; -+ break; -+ case NetworkStatus::Offline: -+ col = Qt::blue; -+ break; -+ case NetworkStatus::Establishing: -+ col = Qt::yellow; -+ break; -+ case NetworkStatus::Online: -+ col = Qt::green; -+ break; -+ } -+ return col; -+} -+ -+static const char description[] = -+ I18N_NOOP("Test Service for Network Status kded module"); -+ -+static const char version[] = "v0.1"; -+ -+static KCmdLineOptions options[] = -+{ -+ KCmdLineLastOption -+}; -+ -+int main( int argc, char** argv ) -+{ -+ KAboutData about("KNetworkStatusTestService", I18N_NOOP("knetworkstatustestservice"), version, description, KAboutData::License_GPL, "(C) 2007 Will Stephenson", 0, 0, "wstephenson@kde.org"); -+ about.addAuthor( "Will Stephenson", 0, "wstephenson@kde.org" ); -+ KCmdLineArgs::init(argc, argv, &about); -+ KCmdLineArgs::addCmdLineOptions(options); -+ KApplication app; -+ -+ TestService * test = new TestService; -+ test->show(); -+ return app.exec(); -+} -+ -+#include "testservice.moc" -Index: networkstatus/.svn/text-base/testservice.h.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/testservice.h.svn-base -@@ -0,0 +1,60 @@ -+/* This file is part of kdepim. -+ -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License as published by -+ the Free Software Foundation; either version 2 of the License, or -+ (at your option) any later version. -+ -+ This program 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 General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this program -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef _TEST_NETWORKSTATUS_SERVICE_H -+#define _TEST_NETWORKSTATUS_SERVICE_H -+ -+#include -+ -+#include "networkstatuscommon.h" -+ -+class NetworkStatusIface_stub; -+class TestServiceView; -+ -+class TestService : public KMainWindow { -+Q_OBJECT -+public: -+ TestService(); -+ virtual ~TestService(); -+ int status( const QString & network ); -+ int establish( const QString & network ); -+ int shutdown( const QString & network ); -+ void simulateFailure(); -+ void simulateDisconnect(); -+protected slots: -+ void changeComboActivated( int index ); -+ void registeredToDCOP( const QCString& appId ); -+ -+ void changeButtonClicked(); -+ -+ void slotStatusChange(); -+private: -+ void registerService(); -+ static QColor toQColor( NetworkStatus::Status ); -+ NetworkStatusIface_stub * m_service; -+ NetworkStatus::Status m_status; -+ NetworkStatus::Status m_nextStatus; -+ TestServiceView * m_view; -+}; -+ -+#endif -Index: networkstatus/.svn/text-base/testserviceview.ui.svn-base -=================================================================== ---- /dev/null -+++ networkstatus/.svn/text-base/testserviceview.ui.svn-base -@@ -0,0 +1,181 @@ -+ -+TestServiceView -+ -+ -+ TestServiceView -+ -+ -+ -+ 0 -+ 0 -+ 367 -+ 132 -+ -+ -+ -+ Form1 -+ -+ -+ -+ unnamed -+ -+ -+ -+ textLabel4 -+ -+ -+ <font size="+2"><b>Service for KDE 3 Offline Mode</b></font> -+ -+ -+ AlignVCenter -+ -+ -+ -+ -+ layout2 -+ -+ -+ -+ unnamed -+ -+ -+ -+ textLabel1 -+ -+ -+ Status: -+ -+ -+ -+ -+ statusLabel -+ -+ -+ -+ 0 -+ 255 -+ 0 -+ -+ -+ -+ StyledPanel -+ -+ -+ STATUS -+ -+ -+ AlignCenter -+ -+ -+ -+ -+ -+ -+ layout3 -+ -+ -+ -+ unnamed -+ -+ -+ -+ textLabel3 -+ -+ -+ Change to: -+ -+ -+ -+ -+ -+ Offline Disconnected -+ -+ -+ -+ -+ Offline Failed -+ -+ -+ -+ -+ Shutting Down -+ -+ -+ -+ -+ Offline -+ -+ -+ -+ -+ Establishing -+ -+ -+ -+ -+ Online -+ -+ -+ -+ changeCombo -+ -+ -+ -+ -+ -+ -+ layout1 -+ -+ -+ -+ unnamed -+ -+ -+ -+ spacer1 -+ -+ -+ Horizontal -+ -+ -+ Expanding -+ -+ -+ -+ 51 -+ 20 -+ -+ -+ -+ -+ -+ changeButton -+ -+ -+ Do change -+ -+ -+ -+ -+ spacer2 -+ -+ -+ Horizontal -+ -+ -+ Expanding -+ -+ -+ -+ 41 -+ 20 -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -Index: networkstatus/testclient2.cpp -=================================================================== ---- /dev/null -+++ networkstatus/testclient2.cpp -@@ -0,0 +1,222 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2007 Will Stephenson -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License version 2 -+ as published by the Free Software Foundation. -+ -+ This program 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 General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this program -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include -+#include -+#include -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include -+#include -+ -+#include "testclientview.h" -+#include "testclient2.h" -+ -+TestClient::TestClient() -+ : KMainWindow( 0, "ktestnetworkstatus" ), -+ m_layout( new QVBox( 0, "layout" ) ), -+ m_status( AppDisconnected ) -+{ -+ m_view = new TestClientView( this ); -+ new StatusBarNetworkStatusIndicator( m_view, "statusindicator" ); -+ // tell the KMainWindow that this is indeed the main widget -+ setCentralWidget(m_view); -+ -+ networkStatusChanged( ConnectionManager::self()->status() ); -+ appDisconnected(); -+ -+ connect( ConnectionManager::self(), SIGNAL( statusChanged( NetworkStatus::Status ) ), SLOT( networkStatusChanged( NetworkStatus::Status ) ) ); -+ ConnectionManager::self()->registerConnectSlot( this, SLOT( doConnect() ) ); -+ ConnectionManager::self()->registerDisconnectSlot( this, SLOT( doDisconnect() ) ); -+ -+ connect( m_view->connectButton, SIGNAL( clicked() ), SLOT( connectButtonClicked() ) ); -+} -+ -+TestClient::~TestClient() -+{ -+} -+ -+void TestClient::networkStatusChanged( NetworkStatus::Status status ) -+{ -+ kdDebug() << k_funcinfo << endl; -+ kdDebug() << "Networking is now: " << NetworkStatus::toString( status ) << " (" << status << ")" << endl; -+ m_view->netStatusLabel->setText( NetworkStatus::toString( status ) ); -+ m_view->netStatusLabel->setPaletteBackgroundColor( toQColor( status ) ); -+} -+ -+void TestClient::doConnect() -+{ -+ Q_ASSERT( ConnectionManager::self()->status() == NetworkStatus::Online ); -+ if ( m_status != AppConnected ) { -+ appIsConnected(); -+ } -+} -+ -+void TestClient::doDisconnect() -+{ -+ Q_ASSERT( ConnectionManager::self()->status() != NetworkStatus::Online ); -+ if ( m_status == AppConnected ) { -+ appDisconnected(); -+ } -+} -+ -+void TestClient::connectButtonClicked() -+{ -+ kdDebug() << k_funcinfo << endl; -+ if ( m_status == AppDisconnected ) { -+ switch ( ConnectionManager::self()->status() ) -+ { -+ case NetworkStatus::NoNetworks: -+ case NetworkStatus::Online: -+ appIsConnected(); -+ break; -+ default: -+ appWaiting(); -+ break; -+ } -+ } -+ else if ( m_status == AppConnected || m_status == AppWaitingForConnect ) { -+ appDisconnected(); -+ } -+} -+ -+void TestClient::appWaiting() -+{ -+ kdDebug() << k_funcinfo << endl; -+ //m_status = AppWaitingForConnect; -+ m_view->appStatusLabel->setText( "Waiting" ); -+} -+ -+void TestClient::appIsConnected() -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->connectButton->setEnabled( true ); -+ m_view->connectButton->setText( "Disconnect" ); -+ m_view->appStatusLabel->setText( "Connected" ); -+ m_status = AppConnected; -+} -+ -+void TestClient::appEstablishing() -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->netStatusLabel->setText( "Establishing" ); -+ m_view->connectButton->setEnabled( false ); -+} -+ -+void TestClient::appDisestablishing( ) -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->connectButton->setEnabled( false ); -+ m_view->appStatusLabel->setText( "Disconnected" ); -+} -+ -+void TestClient::appDisconnected( ) -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->connectButton->setEnabled( true ); -+ m_view->connectButton->setText( "Start Connect" ); -+ m_view->appStatusLabel->setText( "Disconnected" ); -+ m_status = AppDisconnected; -+} -+ -+QColor TestClient::toQColor( NetworkStatus::Status st ) -+{ -+ QColor col; -+ switch ( st ) { -+ case NetworkStatus::NoNetworks: -+ col = Qt::darkGray; -+ break; -+ case NetworkStatus::Unreachable: -+ col = Qt::darkMagenta; -+ break; -+ case NetworkStatus::OfflineDisconnected: -+ col = Qt::blue; -+ break; -+ case NetworkStatus::OfflineFailed: -+ col = Qt::darkRed; -+ break; -+ case NetworkStatus::ShuttingDown: -+ col = Qt::darkYellow; -+ break; -+ case NetworkStatus::Offline: -+ col = Qt::blue; -+ break; -+ case NetworkStatus::Establishing: -+ col = Qt::yellow; -+ break; -+ case NetworkStatus::Online: -+ col = Qt::green; -+ break; -+ } -+ return col; -+} -+//main -+static const char description[] = -+ I18N_NOOP("Test Client for Network Status kded module"); -+ -+static const char version[] = "v0.1"; -+ -+static KCmdLineOptions options[] = -+{ -+ KCmdLineLastOption -+}; -+ -+int main(int argc, char **argv) -+{ -+ KAboutData about("KNetworkStatusTestClient", I18N_NOOP("knetworkstatustestclient"), version, description, KAboutData::License_GPL, "(C) 2007 Will Stephenson", 0, 0, "wstephenson@kde.org"); -+ about.addAuthor( "Will Stephenson", 0, "wstephenson@kde.org" ); -+ KCmdLineArgs::init(argc, argv, &about); -+ KCmdLineArgs::addCmdLineOptions(options); -+ KApplication app; -+ -+ // register ourselves as a dcop client -+ app.dcopClient()->registerAs(app.name(), false); -+ -+ KCmdLineArgs *args = KCmdLineArgs::parsedArgs(); -+ if (args->count() == 0) -+ { -+ TestClient *widget = new TestClient; -+ widget->show(); -+ } -+ else -+ { -+ int i = 0; -+ for (; i < args->count(); i++) -+ { -+ TestClient *widget = new TestClient; -+ widget->show(); -+ } -+ } -+ args->clear(); -+ -+ return app.exec(); -+} -+ -+#include "testclient2.moc" -+ -Index: networkstatus/testclient2.h -=================================================================== ---- /dev/null -+++ networkstatus/testclient2.h -@@ -0,0 +1,82 @@ -+/* This file is part of kdepim. -+ -+ Copyright (C) 2007 Will Stephenson -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License as published by -+ the Free Software Foundation; either version 2 of the License, or -+ (at your option) any later version. -+ -+ This program 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 General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this program -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef KTESTNETWORKSTATUS_H -+#define KTESTNETWORKSTATUS_H -+ -+#ifdef HAVE_CONFIG_H -+#include -+#endif -+ -+#include -+#include -+#include -+#include -+ -+#include "networkstatusiface_stub.h" -+ -+class TestClientView; -+ -+/** -+ * Test client that uses a ConnectionManager to change its state -+ * -+ * @short Main window class -+ * @author Will Stephenson -+ * @version 0.1 -+ */ -+class TestClient : public KMainWindow -+{ -+Q_OBJECT -+public: -+ enum AppStatus{ AppDisconnected, AppWaitingForConnect, AppConnected }; -+ /** -+ * Default Constructor -+ */ -+ TestClient(); -+ -+ /** -+ * Default Destructor -+ */ -+ virtual ~TestClient(); -+ -+private slots: -+ void networkStatusChanged( NetworkStatus::Status status ); -+ void connectButtonClicked(); -+ void doConnect(); -+ void doDisconnect(); -+private: -+ void appWaiting(); -+ void appEstablishing(); -+ void appIsConnected(); -+ void appDisestablishing(); -+ void appDisconnected(); -+ static QColor toQColor( NetworkStatus::Status ); -+private: -+ QHBox * m_layout; -+ NetworkStatusIface_stub *m_service; -+ TestClientView *m_view; -+ AppStatus m_status; // this represents the app's status not the network's status -+}; -+ -+#endif // KTESTNETWORKSTATUS_H -+ -Index: networkstatus/testclient.cpp -=================================================================== ---- /dev/null -+++ networkstatus/testclient.cpp -@@ -0,0 +1,234 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2007 Will Stephenson -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License version 2 -+ as published by the Free Software Foundation. -+ -+ This program 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 General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this program -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include -+#include -+ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include "connectionmanager.h" -+#include "testclientview.h" -+#include "testclient.h" -+ -+TestClient::TestClient() -+ : KMainWindow( 0, "ktestnetworkstatus" ), -+ m_view(new TestClientView(this)), -+ m_status( AppDisconnected ) -+{ -+ // tell the KMainWindow that this is indeed the main widget -+ setCentralWidget(m_view); -+ -+ networkStatusChanged( ConnectionManager::self()->status() ); -+ appDisconnected(); -+ -+ connect( ConnectionManager::self(), SIGNAL( statusChanged( NetworkStatus::Status ) ), SLOT( networkStatusChanged( NetworkStatus::Status ) ) ); -+ -+ connect( m_view->connectButton, SIGNAL( toggled( bool ) ), SLOT( connectButtonToggled( bool ) ) ); -+} -+ -+TestClient::~TestClient() -+{ -+} -+ -+void TestClient::networkStatusChanged( NetworkStatus::Status status ) -+{ -+ kdDebug() << k_funcinfo << endl; -+//enum EnumStatus { NoNetworks = 1, Unreachable, OfflineDisconnected, OfflineFailed, ShuttingDown -+// , Offline, Establishing, Online }; -+ kdDebug() << "Networking is now: " << NetworkStatus::toString( status ) << " (" << status << ")" << endl; -+ m_view->netStatusLabel->setText( NetworkStatus::toString( status ) ); -+ m_view->netStatusLabel->setPaletteBackgroundColor( toQColor( status ) ); -+ switch ( status ) { -+ case NetworkStatus::NoNetworks: -+ break; -+ case NetworkStatus::Unreachable: -+ break; -+ case NetworkStatus::OfflineDisconnected: -+ break; -+ case NetworkStatus::OfflineFailed: -+ break; -+ case NetworkStatus::ShuttingDown: -+ if ( m_status == AppConnected ) { -+ appDisestablishing(); -+ } -+ break; -+ case NetworkStatus::Offline: -+ if ( m_status == AppConnected ) { -+ appDisconnected(); -+ } -+ break; -+ case NetworkStatus::Establishing: -+ if ( m_status == AppWaitingForConnect ) -+ appEstablishing(); -+ else if ( m_status == AppConnected ) -+ appDisconnected(); -+ break; -+ case NetworkStatus::Online: -+ if ( m_status == AppWaitingForConnect ) -+ appIsConnected(); -+ break; -+ default: -+ m_view->netStatusLabel->setText( "Unrecognised status code!" ); -+ } -+} -+ -+void TestClient::connectButtonToggled( bool on ) -+{ -+ kdDebug() << k_funcinfo << endl; -+ if ( on && m_status == AppDisconnected ) { -+ switch ( ConnectionManager::self()->status() ) -+ { -+ case NetworkStatus::NoNetworks: -+ case NetworkStatus::Online: -+ appIsConnected(); -+ break; -+ default: -+ appWaiting(); -+ break; -+ } -+ } -+ else if ( !on && m_status == AppConnected ) { -+ appDisconnected(); -+ } -+} -+ -+void TestClient::appWaiting() -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_status = AppWaitingForConnect; -+ m_view->appStatusLabel->setText( "Waiting" ); -+} -+ -+void TestClient::appIsConnected() -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->connectButton->setEnabled( true ); -+ m_view->connectButton->setText( "Disconnect" ); -+ m_view->appStatusLabel->setText( "Connected" ); -+ m_status = AppConnected; -+} -+ -+void TestClient::appEstablishing() -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->netStatusLabel->setText( "Establishing" ); -+ m_view->connectButton->setEnabled( false ); -+} -+ -+void TestClient::appDisestablishing( ) -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->connectButton->setEnabled( false ); -+ m_view->appStatusLabel->setText( "Disconnected" ); -+} -+ -+void TestClient::appDisconnected( ) -+{ -+ kdDebug() << k_funcinfo << endl; -+ m_view->connectButton->setEnabled( true ); -+ m_view->connectButton->setText( "Start Connect" ); -+ m_view->appStatusLabel->setText( "Disconnected" ); -+ m_status = AppDisconnected; -+} -+ -+QColor TestClient::toQColor( NetworkStatus::Status st ) -+{ -+ QColor col; -+ switch ( st ) { -+ case NetworkStatus::NoNetworks: -+ col = Qt::darkGray; -+ break; -+ case NetworkStatus::Unreachable: -+ col = Qt::darkMagenta; -+ break; -+ case NetworkStatus::OfflineDisconnected: -+ col = Qt::blue; -+ break; -+ case NetworkStatus::OfflineFailed: -+ col = Qt::darkRed; -+ break; -+ case NetworkStatus::ShuttingDown: -+ col = Qt::darkYellow; -+ break; -+ case NetworkStatus::Offline: -+ col = Qt::blue; -+ break; -+ case NetworkStatus::Establishing: -+ col = Qt::yellow; -+ break; -+ case NetworkStatus::Online: -+ col = Qt::green; -+ break; -+ } -+ return col; -+} -+//main -+static const char description[] = -+ I18N_NOOP("Test Client for Network Status kded module"); -+ -+static const char version[] = "v0.1"; -+ -+static KCmdLineOptions options[] = -+{ -+ KCmdLineLastOption -+}; -+ -+int main(int argc, char **argv) -+{ -+ KAboutData about("KNetworkStatusTestClient", I18N_NOOP("knetworkstatustestclient"), version, description, KAboutData::License_GPL, "(C) 2007 Will Stephenson", 0, 0, "wstephenson@kde.org"); -+ about.addAuthor( "Will Stephenson", 0, "wstephenson@kde.org" ); -+ KCmdLineArgs::init(argc, argv, &about); -+ KCmdLineArgs::addCmdLineOptions(options); -+ KApplication app; -+ -+ // register ourselves as a dcop client -+ app.dcopClient()->registerAs(app.name(), false); -+ -+ KCmdLineArgs *args = KCmdLineArgs::parsedArgs(); -+ if (args->count() == 0) -+ { -+ TestClient *widget = new TestClient; -+ widget->show(); -+ } -+ else -+ { -+ int i = 0; -+ for (; i < args->count(); i++) -+ { -+ TestClient *widget = new TestClient; -+ widget->show(); -+ } -+ } -+ args->clear(); -+ -+ return app.exec(); -+} -+ -+#include "testclient.moc" -+ -Index: networkstatus/testclient.h -=================================================================== ---- /dev/null -+++ networkstatus/testclient.h -@@ -0,0 +1,80 @@ -+/* This file is part of kdepim. -+ -+ Copyright (C) 2007 Will Stephenson -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License as published by -+ the Free Software Foundation; either version 2 of the License, or -+ (at your option) any later version. -+ -+ This program 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 General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this program -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef KTESTNETWORKSTATUS_H -+#define KTESTNETWORKSTATUS_H -+ -+#ifdef HAVE_CONFIG_H -+#include -+#endif -+ -+#include -+#include -+#include -+#include -+ -+#include "networkstatusiface_stub.h" -+ -+class TestClientView; -+ -+/** -+ * This class serves as the main window for ktestnetworkstatus. It handles the -+ * menus, toolbars, and status bars. -+ * -+ * @short Main window class -+ * @author Will Stephenson -+ * @version 0.1 -+ */ -+class TestClient : public KMainWindow -+{ -+Q_OBJECT -+public: -+ enum AppStatus{ AppDisconnected, AppWaitingForConnect, AppConnected }; -+ /** -+ * Default Constructor -+ */ -+ TestClient(); -+ -+ /** -+ * Default Destructor -+ */ -+ virtual ~TestClient(); -+ -+private slots: -+ void networkStatusChanged( NetworkStatus::Status status ); -+ void connectButtonToggled( bool on ); -+private: -+ void appWaiting(); -+ void appEstablishing(); -+ void appIsConnected(); -+ void appDisestablishing(); -+ void appDisconnected(); -+ static QColor toQColor( NetworkStatus::Status ); -+private: -+ NetworkStatusIface_stub *m_service; -+ TestClientView *m_view; -+ AppStatus m_status; // this represents the app's status not the network's status -+}; -+ -+#endif // KTESTNETWORKSTATUS_H -+ -Index: networkstatus/testclientview.ui -=================================================================== ---- /dev/null -+++ networkstatus/testclientview.ui -@@ -0,0 +1,177 @@ -+ -+TestClientView -+ -+ -+ TestClientView -+ -+ -+ -+ 0 -+ 0 -+ 356 -+ 127 -+ -+ -+ -+ Form1 -+ -+ -+ -+ unnamed -+ -+ -+ -+ textLabel4 -+ -+ -+ -+ 5 -+ 5 -+ 0 -+ 0 -+ -+ -+ -+ <font size="+2"><b>Client for KDE 3 Offline Mode</b></font> -+ -+ -+ AlignVCenter -+ -+ -+ -+ -+ layout1 -+ -+ -+ -+ unnamed -+ -+ -+ -+ textLabel1 -+ -+ -+ Network status: -+ -+ -+ -+ -+ netStatusLabel -+ -+ -+ -+ 0 -+ 255 -+ 0 -+ -+ -+ -+ Panel -+ -+ -+ STATUS -+ -+ -+ AlignCenter -+ -+ -+ -+ -+ -+ -+ layout1_2 -+ -+ -+ -+ unnamed -+ -+ -+ -+ textLabel1_2 -+ -+ -+ App status: -+ -+ -+ -+ -+ appStatusLabel -+ -+ -+ -+ 0 -+ 255 -+ 0 -+ -+ -+ -+ Panel -+ -+ -+ STATUS -+ -+ -+ AlignCenter -+ -+ -+ -+ -+ -+ -+ layout2 -+ -+ -+ -+ unnamed -+ -+ -+ -+ spacer1 -+ -+ -+ Horizontal -+ -+ -+ Expanding -+ -+ -+ -+ 31 -+ 20 -+ -+ -+ -+ -+ -+ connectButton -+ -+ -+ Start Connect -+ -+ -+ false -+ -+ -+ -+ -+ spacer2 -+ -+ -+ Horizontal -+ -+ -+ Expanding -+ -+ -+ -+ 61 -+ 20 -+ -+ -+ -+ -+ -+ -+ -+ -+ -Index: networkstatus/testservice.cpp -=================================================================== ---- /dev/null -+++ networkstatus/testservice.cpp -@@ -0,0 +1,219 @@ -+/* This file is part of kdepim. -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License version 2 -+ as published by the Free Software Foundation. -+ -+ This program 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 General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this program -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#include -+#include -+#include -+#include -+ -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include "testservice.h" -+#include "testserviceview.h" -+#include "networkstatusiface_stub.h" -+ -+TestService::TestService() : KMainWindow( 0, "testservice" ), -+ m_service( new NetworkStatusIface_stub( "kded", "networkstatus" ) ), -+ m_status ( NetworkStatus::Offline ), -+ m_nextStatus( NetworkStatus::OfflineDisconnected ), -+ m_view( new TestServiceView( this ) ) -+{ -+ setCentralWidget( m_view ); -+ kapp->dcopClient()->registerAs("testservice" ); -+ -+ connect( m_view->changeCombo, SIGNAL( activated( int ) ), SLOT( changeComboActivated( int ) ) ); -+ connect( m_view->changeButton, SIGNAL( clicked() ), SLOT( changeButtonClicked() ) ); -+ -+ connect( kapp->dcopClient(), SIGNAL( applicationRegistered( const QCString& ) ), this, SLOT( registeredToDCOP( const QCString& ) ) ); -+ kapp->dcopClient()->setNotifications( true ); -+ -+ m_view->statusLabel->setText( NetworkStatus::toString( m_status ) ); -+ m_view->statusLabel->setPaletteBackgroundColor( toQColor( m_status ) ); -+ setCaption( NetworkStatus::toString( m_status ) ); -+ -+ registerService(); -+} -+ -+TestService::~TestService() -+{ -+ delete m_service; -+ delete m_view; -+} -+ -+void TestService::registerService() -+{ -+ NetworkStatus::Properties nsp; -+ nsp.name = "test_net"; -+ nsp.service = kapp->dcopClient()->appId(); -+ nsp.status = m_status; -+ m_service->registerNetwork( nsp ); -+} -+ -+void TestService::registeredToDCOP( const QCString & appId ) -+{ -+ if ( appId == "kded" ) -+ registerService(); -+} -+ -+int TestService::status( const QString & network ) -+{ -+ Q_UNUSED( network ); -+ return (int)m_status; -+} -+ -+void TestService::changeComboActivated( int index ) -+{ -+ switch ( index ) { -+ case 0 /*NetworkStatus::OfflineDisconnected*/: -+ m_nextStatus = NetworkStatus::OfflineDisconnected; -+ break; -+ case 1 /*NetworkStatus::OfflineFailed*/: -+ m_nextStatus = NetworkStatus::OfflineFailed; -+ break; -+ case 2 /*NetworkStatus::ShuttingDown*/: -+ m_nextStatus = NetworkStatus::ShuttingDown; -+ break; -+ case 3 /*NetworkStatus::Offline*/: -+ m_nextStatus = NetworkStatus::Offline; -+ break; -+ case 4 /*NetworkStatus::Establishing*/: -+ m_nextStatus = NetworkStatus::Establishing; -+ break; -+ case 5 /*NetworkStatus::Online*/: -+ m_nextStatus = NetworkStatus::Online; -+ break; -+ default: -+ kdDebug() << "Unrecognised status!" << endl; -+ Q_ASSERT( false ); -+ } -+ m_view->changeButton->setEnabled( true ); -+} -+ -+void TestService::changeButtonClicked() -+{ -+ m_view->changeButton->setEnabled( false ); -+ m_status = m_nextStatus; -+ m_service->setNetworkStatus( "test_net", ( int )m_status ); -+ m_view->statusLabel->setText( NetworkStatus::toString( m_status ) ); -+ m_view->statusLabel->setPaletteBackgroundColor( toQColor( m_status ) ); -+ setCaption( NetworkStatus::toString( m_status ) ); -+} -+ -+int TestService::establish( const QString & network ) -+{ -+ Q_UNUSED( network ); -+ m_status = NetworkStatus::Establishing; -+ m_service->setNetworkStatus( "test_net", (int)m_status ); -+ m_nextStatus = NetworkStatus::Online; -+ QTimer::singleShot( 5000, this, SLOT( slotStatusChange() ) ); -+ return (int)NetworkStatus::RequestAccepted; -+} -+ -+int TestService::shutdown( const QString & network ) -+{ -+ Q_UNUSED( network ); -+ m_status = NetworkStatus::ShuttingDown; -+ m_service->setNetworkStatus( "test_net", (int)m_status ); -+ m_nextStatus = NetworkStatus::Offline; -+ QTimer::singleShot( 5000, this, SLOT( slotStatusChange() ) ); -+ return (int)NetworkStatus::RequestAccepted; -+} -+ -+void TestService::simulateFailure() -+{ -+ m_status = NetworkStatus::OfflineFailed; -+ m_service->setNetworkStatus( "test_net", (int)m_status ); -+} -+ -+void TestService::simulateDisconnect() -+{ -+ m_status = NetworkStatus::OfflineDisconnected; -+ m_service->setNetworkStatus( "test_net", (int)m_status ); -+} -+ -+void TestService::slotStatusChange() -+{ -+ m_status = m_nextStatus; -+ m_service->setNetworkStatus( "test_net", (int)m_status ); -+} -+ -+QColor TestService::toQColor( NetworkStatus::Status st ) -+{ -+ QColor col; -+ switch ( st ) { -+ case NetworkStatus::NoNetworks: -+ col = Qt::darkGray; -+ break; -+ case NetworkStatus::Unreachable: -+ col = Qt::darkMagenta; -+ break; -+ case NetworkStatus::OfflineDisconnected: -+ col = Qt::blue; -+ break; -+ case NetworkStatus::OfflineFailed: -+ col = Qt::darkRed; -+ break; -+ case NetworkStatus::ShuttingDown: -+ col = Qt::darkYellow; -+ break; -+ case NetworkStatus::Offline: -+ col = Qt::blue; -+ break; -+ case NetworkStatus::Establishing: -+ col = Qt::yellow; -+ break; -+ case NetworkStatus::Online: -+ col = Qt::green; -+ break; -+ } -+ return col; -+} -+ -+static const char description[] = -+ I18N_NOOP("Test Service for Network Status kded module"); -+ -+static const char version[] = "v0.1"; -+ -+static KCmdLineOptions options[] = -+{ -+ KCmdLineLastOption -+}; -+ -+int main( int argc, char** argv ) -+{ -+ KAboutData about("KNetworkStatusTestService", I18N_NOOP("knetworkstatustestservice"), version, description, KAboutData::License_GPL, "(C) 2007 Will Stephenson", 0, 0, "wstephenson@kde.org"); -+ about.addAuthor( "Will Stephenson", 0, "wstephenson@kde.org" ); -+ KCmdLineArgs::init(argc, argv, &about); -+ KCmdLineArgs::addCmdLineOptions(options); -+ KApplication app; -+ -+ TestService * test = new TestService; -+ test->show(); -+ return app.exec(); -+} -+ -+#include "testservice.moc" -Index: networkstatus/testservice.h -=================================================================== ---- /dev/null -+++ networkstatus/testservice.h -@@ -0,0 +1,60 @@ -+/* This file is part of kdepim. -+ -+ Copyright (C) 2005,2007 Will Stephenson -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License as published by -+ the Free Software Foundation; either version 2 of the License, or -+ (at your option) any later version. -+ -+ This program 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 General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -+ -+ As a special exception, permission is given to link this program -+ with any edition of Qt, and distribute the resulting executable, -+ without including the source code for Qt in the source distribution. -+*/ -+ -+#ifndef _TEST_NETWORKSTATUS_SERVICE_H -+#define _TEST_NETWORKSTATUS_SERVICE_H -+ -+#include -+ -+#include "networkstatuscommon.h" -+ -+class NetworkStatusIface_stub; -+class TestServiceView; -+ -+class TestService : public KMainWindow { -+Q_OBJECT -+public: -+ TestService(); -+ virtual ~TestService(); -+ int status( const QString & network ); -+ int establish( const QString & network ); -+ int shutdown( const QString & network ); -+ void simulateFailure(); -+ void simulateDisconnect(); -+protected slots: -+ void changeComboActivated( int index ); -+ void registeredToDCOP( const QCString& appId ); -+ -+ void changeButtonClicked(); -+ -+ void slotStatusChange(); -+private: -+ void registerService(); -+ static QColor toQColor( NetworkStatus::Status ); -+ NetworkStatusIface_stub * m_service; -+ NetworkStatus::Status m_status; -+ NetworkStatus::Status m_nextStatus; -+ TestServiceView * m_view; -+}; -+ -+#endif -Index: networkstatus/testserviceview.ui -=================================================================== ---- /dev/null -+++ networkstatus/testserviceview.ui -@@ -0,0 +1,181 @@ -+ -+TestServiceView -+ -+ -+ TestServiceView -+ -+ -+ -+ 0 -+ 0 -+ 367 -+ 132 -+ -+ -+ -+ Form1 -+ -+ -+ -+ unnamed -+ -+ -+ -+ textLabel4 -+ -+ -+ <font size="+2"><b>Service for KDE 3 Offline Mode</b></font> -+ -+ -+ AlignVCenter -+ -+ -+ -+ -+ layout2 -+ -+ -+ -+ unnamed -+ -+ -+ -+ textLabel1 -+ -+ -+ Status: -+ -+ -+ -+ -+ statusLabel -+ -+ -+ -+ 0 -+ 255 -+ 0 -+ -+ -+ -+ StyledPanel -+ -+ -+ STATUS -+ -+ -+ AlignCenter -+ -+ -+ -+ -+ -+ -+ layout3 -+ -+ -+ -+ unnamed -+ -+ -+ -+ textLabel3 -+ -+ -+ Change to: -+ -+ -+ -+ -+ -+ Offline Disconnected -+ -+ -+ -+ -+ Offline Failed -+ -+ -+ -+ -+ Shutting Down -+ -+ -+ -+ -+ Offline -+ -+ -+ -+ -+ Establishing -+ -+ -+ -+ -+ Online -+ -+ -+ -+ changeCombo -+ -+ -+ -+ -+ -+ -+ layout1 -+ -+ -+ -+ unnamed -+ -+ -+ -+ spacer1 -+ -+ -+ Horizontal -+ -+ -+ Expanding -+ -+ -+ -+ 51 -+ 20 -+ -+ -+ -+ -+ -+ changeButton -+ -+ -+ Do change -+ -+ -+ -+ -+ spacer2 -+ -+ -+ Horizontal -+ -+ -+ Expanding -+ -+ -+ -+ 41 -+ 20 -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ diff --git a/opensuse/core/tdelibs/no-debug-by-default.diff b/opensuse/core/tdelibs/no-debug-by-default.diff index 5b1440970..75aed886d 100644 --- a/opensuse/core/tdelibs/no-debug-by-default.diff +++ b/opensuse/core/tdelibs/no-debug-by-default.diff @@ -1,8 +1,6 @@ -Index: kdecore/kdebug.cpp -=================================================================== ---- kdecore/kdebug.cpp.orig -+++ kdecore/kdebug.cpp -@@ -170,7 +170,7 @@ static KStaticDeleter pcd +--- tdecore/kdebug.cpp.orig 2011-12-11 18:54:28.986987249 +0100 ++++ tdecore/kdebug.cpp 2011-12-11 19:00:22.478987207 +0100 +@@ -170,7 +170,7 @@ static KStaticDeleter dcopsd; static KDebugDCOPIface* kDebugDCOPIface = 0; @@ -11,22 +9,23 @@ Index: kdecore/kdebug.cpp { if ( !kDebug_data ) { -@@ -205,40 +205,46 @@ static void kDebugBackend( unsigned shor +@@ -205,41 +205,46 @@ if ( KGlobal::_instance ) kDebug_data->aAreaName = KGlobal::instance()->instanceName(); } +} - int nPriority = 0; -- QString aCaption; +- TQString aCaption; - - /* Determine output */ +- +static short kDebugAreaOutput(unsigned short nLevel, unsigned int nArea) +{ + kDebugInitBackend (nArea); - ++ + /* Determine output */ - QString key; + TQString key; switch( nLevel ) { case KDEBUG_INFO: @@ -53,7 +52,8 @@ Index: kdecore/kdebug.cpp break; } -- short nOutput = kDebug_data->config ? kDebug_data->config->readNumEntry(key, 2) : 2; +- // if no output mode is specified default to no debug output +- short nOutput = kDebug_data->config ? kDebug_data->config->readNumEntry(key, 4) : 4; + return kDebug_data->config ? kDebug_data->config->readNumEntry(key, 4) : 4; +} + @@ -69,14 +69,14 @@ Index: kdecore/kdebug.cpp + + short nOutput = kDebugAreaOutput(nLevel, nArea); - // If the application doesn't have a QApplication object it can't use + // If the application doesn't have a TQApplication object it can't use // a messagebox. -@@ -247,6 +253,32 @@ static void kDebugBackend( unsigned shor +@@ -248,6 +253,32 @@ else if ( nOutput == 4 && nLevel != KDEBUG_FATAL ) return; + int nPriority = 0; -+ QString aCaption; ++ TQString aCaption; + switch( nLevel ) + { + case KDEBUG_INFO: @@ -104,10 +104,10 @@ Index: kdecore/kdebug.cpp const int BUFSIZE = 4096; char buf[BUFSIZE]; if ( !kDebug_data->aAreaName.isEmpty() ) { -@@ -314,13 +346,25 @@ static void kDebugBackend( unsigned shor +@@ -315,13 +346,25 @@ } - kdbgstream &perror( kdbgstream &s) { return s << QString::fromLocal8Bit(strerror(errno)); } + kdbgstream &perror( kdbgstream &s) { return s << TQString(TQString::fromLocal8Bit(strerror(errno))); } -kdbgstream kdDebug(int area) { return kdbgstream(area, KDEBUG_INFO); } -kdbgstream kdDebug(bool cond, int area) { if (cond) return kdbgstream(area, KDEBUG_INFO); else return kdbgstream(0, 0, false); } +kdbgstream kdDebug(int area) { return kdbgstream(area, KDEBUG_INFO, kDebugAreaEnabled(KDEBUG_INFO, area)); } @@ -134,7 +134,7 @@ Index: kdecore/kdebug.cpp kdbgstream kdFatal(int area) { return kdbgstream("FATAL: ", area, KDEBUG_FATAL); } kdbgstream kdFatal(bool cond, int area) { if (cond) return kdbgstream("FATAL: ", area, KDEBUG_FATAL); else return kdbgstream(0,0,false); } -@@ -331,9 +375,10 @@ kdbgstream::kdbgstream(kdbgstream &str) +@@ -332,9 +375,10 @@ } void kdbgstream::flush() { @@ -144,15 +144,15 @@ Index: kdecore/kdebug.cpp - kDebugBackend( level, area, output.local8Bit().data() ); + if (print) + kDebugBackend( level, area, output.local8Bit().data() ); - output = QString::null; + output = TQString::null; } -@@ -349,7 +394,7 @@ kdbgstream &kdbgstream::form(const char +@@ -350,7 +394,7 @@ } kdbgstream::~kdbgstream() { - if (!output.isEmpty()) { + if (print && !output.isEmpty()) { fprintf(stderr, "ASSERT: debug output not ended with \\n\n"); - fprintf(stderr, "%s", kdBacktrace().latin1()); - *this << "\n"; + TQString backtrace = kdBacktrace(); + if (backtrace.ascii() != NULL) { diff --git a/opensuse/core/tdelibs/no-progress-for-beagle-status-query.diff b/opensuse/core/tdelibs/no-progress-for-beagle-status-query.diff deleted file mode 100644 index 4d9ae1a84..000000000 --- a/opensuse/core/tdelibs/no-progress-for-beagle-status-query.diff +++ /dev/null @@ -1,13 +0,0 @@ -Index: kio/kio/netaccess.cpp -=================================================================== ---- kio/kio/netaccess.cpp.orig -+++ kio/kio/netaccess.cpp -@@ -337,7 +337,7 @@ bool NetAccess::statInternal( const KURL - QWidget* window ) - { - bJobOK = true; // success unless further error occurs -- KIO::StatJob * job = KIO::stat( url, !url.isLocalFile() ); -+ KIO::StatJob * job = KIO::stat( url, !url.isLocalFile() && !url.url().startsWith("beagle:?") ); - job->setWindow (window); - job->setDetails( details ); - job->setSide( source ); diff --git a/opensuse/core/tdelibs/noauto-package.diff b/opensuse/core/tdelibs/noauto-package.diff index 9eec14ab3..78ec57da5 100644 --- a/opensuse/core/tdelibs/noauto-package.diff +++ b/opensuse/core/tdelibs/noauto-package.diff @@ -9,5 +9,5 @@ Index: configure.in.in -AM_INIT_AUTOMAKE(@MODULENAME@, @VERSION@) dnl searches for some needed programs +AM_INIT_AUTOMAKE("kdelibs", @VERSION@) dnl searches for some needed programs - AC_PROG_INSTALL + AM_MAINTAINER_MODE diff --git a/opensuse/core/tdelibs/oom_score_adj.patch b/opensuse/core/tdelibs/oom_score_adj.patch deleted file mode 100644 index f7a929f3f..000000000 --- a/opensuse/core/tdelibs/oom_score_adj.patch +++ /dev/null @@ -1,36 +0,0 @@ -Index: kdelibs-3.5.10/kinit/start_kdeinit.c -=================================================================== ---- kdelibs-3.5.10.orig/kinit/start_kdeinit.c -+++ kdelibs-3.5.10/kinit/start_kdeinit.c -@@ -44,11 +44,30 @@ static int set_protection( pid_t pid, in - { - char buf[ 1024 ]; - int procfile; -+ struct stat st; -+ -+ /* Newer kernels (noticed in 2.6.36) */ -+ sprintf( buf, "/proc/%d/oom_score_adj", pid ); -+ if ( lstat (buf, &st) == 0) { -+ if( !enable ) { -+ /* Be paranoid and check that the pid we got from the pipe -+ belongs to this user. */ -+ if( st.st_uid != getuid()) -+ return 0; -+ } -+ procfile = open(buf, O_WRONLY); -+ if( enable ) -+ write( procfile, "-300", sizeof( "-300" )); -+ else -+ write( procfile, "0", sizeof( "0" )); -+ close( procfile ); -+ return 1; -+ } -+ - sprintf( buf, "/proc/%d/stat", pid ); - if( !enable ) { - /* Be paranoid and check that the pid we got from the pipe - belongs to this user. */ -- struct stat st; - if( lstat( buf, &st ) < 0 || st.st_uid != getuid()) - return 0; - } diff --git a/opensuse/core/tdelibs/patch-mimetype-iconnames.diff b/opensuse/core/tdelibs/patch-mimetype-iconnames.diff deleted file mode 100644 index 6874162ae..000000000 --- a/opensuse/core/tdelibs/patch-mimetype-iconnames.diff +++ /dev/null @@ -1,39 +0,0 @@ -Index: mimetypes/application/vnd.oasis.opendocument.formula.desktop -=================================================================== ---- mimetypes/application/vnd.oasis.opendocument.formula.desktop.orig -+++ mimetypes/application/vnd.oasis.opendocument.formula.desktop -@@ -2,7 +2,7 @@ - Type=MimeType - MimeType=application/vnd.oasis.opendocument.formula - Patterns=*.odf;*.ODF --Icon=formula -+Icon=kformula_kfo - Comment=OASIS OpenDocument Formula - Comment[af]=OASIS Oop Dokument formule - Comment[be]=Формула OASIS OpenDocument -Index: mimetypes/application/vnd.sun.xml.base.desktop -=================================================================== ---- mimetypes/application/vnd.sun.xml.base.desktop.orig -+++ mimetypes/application/vnd.sun.xml.base.desktop -@@ -67,7 +67,7 @@ Comment[vi]=Cơ sở dữ liệu OpenOff - Comment[zh_CN]=OpenOffice.org 数据库 - Comment[zh_HK]=OpenOffice.org 資料庫 - Comment[zh_TW]=OpenOffice.org 資料庫 --Icon=spreadsheet -+Icon=database - Type=MimeType - Patterns=*.odb;*.ODB; - MimeType=application/vnd.sun.xml.base -Index: mimetypes/text/rtf.desktop -=================================================================== ---- mimetypes/text/rtf.desktop.orig -+++ mimetypes/text/rtf.desktop -@@ -77,7 +77,7 @@ Comment[wa]=Documint RTF - Comment[zh_CN]=RTF 文档 - Comment[zh_HK]=RTF 文件 - Comment[zh_TW]=RTF 文件 --Icon=wordprocessing -+Icon=rtf - Type=MimeType - Patterns=*.rtf;*.RTF; - [Property::X-KDE-text] diff --git a/opensuse/core/tdelibs/prefer_distribution_settings.dif b/opensuse/core/tdelibs/prefer_distribution_settings.dif index 655788807..ecea91d8f 100644 --- a/opensuse/core/tdelibs/prefer_distribution_settings.dif +++ b/opensuse/core/tdelibs/prefer_distribution_settings.dif @@ -1,13 +1,13 @@ -Index: kdecore/kstandarddirs.cpp +Index: tdecore/kstandarddirs.cpp =================================================================== ---- kdecore/kstandarddirs.cpp.orig -+++ kdecore/kstandarddirs.cpp -@@ -1290,6 +1290,8 @@ void KStandardDirs::addKDEDefaults() +--- tdecore/kstandarddirs.cpp.orig ++++ tdecore/kstandarddirs.cpp +@@ -1303,6 +1303,8 @@ void KStandardDirs::addKDEDefaults() } } -+ kdedirList.append("/etc/opt/kde3"); ++ tdedirList.append("/etc/opt/tde"); + - #ifndef Q_OS_WIN //no default KDEDIR on win32 defined - kdedirList.append(KDEDIR); + #ifndef Q_OS_WIN //no default TDEDIR on win32 defined + tdedirList.append(TDEDIR); #endif diff --git a/opensuse/core/tdelibs/printpreview.patch b/opensuse/core/tdelibs/printpreview.patch deleted file mode 100644 index ef3de21a4..000000000 --- a/opensuse/core/tdelibs/printpreview.patch +++ /dev/null @@ -1,14 +0,0 @@ -Index: kdeprint/kprintpreview.cpp -=================================================================== ---- kdeprint/kprintpreview.cpp.orig -+++ kdeprint/kprintpreview.cpp -@@ -108,6 +108,9 @@ static KLibFactory* componentFactory() - { - kdDebug(500) << "kdeprint: querying trader for 'application/postscript' service" << endl; - KLibFactory *factory(0); -+ factory = KLibLoader::self()->factory("libkghostviewpart"); -+ if( factory ) -+ return factory; - KTrader::OfferList offers = KTrader::self()->query(QString::fromLatin1("application/postscript"), QString::fromLatin1("KParts/ReadOnlyPart"), QString::null, QString::null); - for (KTrader::OfferList::ConstIterator it = offers.begin(); it != offers.end(); ++it) - { diff --git a/opensuse/core/tdelibs/r874968-ebay-crash.diff b/opensuse/core/tdelibs/r874968-ebay-crash.diff deleted file mode 100644 index 44dfb6eb4..000000000 --- a/opensuse/core/tdelibs/r874968-ebay-crash.diff +++ /dev/null @@ -1,24 +0,0 @@ -Index: khtml/rendering/table_layout.cpp -=================================================================== ---- khtml/rendering/table_layout.cpp.orig -+++ khtml/rendering/table_layout.cpp -@@ -297,7 +297,8 @@ void FixedTableLayout::layout() - #endif - for ( int i = 0; available > 0 && i < nEffCols; i++ ) { - if ( width[i].isPercent() ) { -- int w = base * width[i].value() / totalPercent; -+ // totalPercent may be 0 below if all %-width specifed are 0%. (#172557) -+ int w = totalPercent ? base * width[i].value() / totalPercent : 0; - available -= w; - calcWidth[i] = w; - } -@@ -313,7 +314,8 @@ void FixedTableLayout::layout() - - for ( int i = 0; available > 0 && i < nEffCols; i++ ) { - if ( width[i].isVariable() ) { -- int w = available / totalVariable; -+ // totalVariable may be 0 below if all the variable widths specified are 0. -+ int w = totalVariable ? available / totalVariable : 0; - available -= w; - calcWidth[i] = w; - totalVariable--; diff --git a/opensuse/core/tdelibs/rubberband-selection.diff b/opensuse/core/tdelibs/rubberband-selection.diff deleted file mode 100644 index d2b75f17c..000000000 --- a/opensuse/core/tdelibs/rubberband-selection.diff +++ /dev/null @@ -1,380 +0,0 @@ -Index: kdefx/kstyle.cpp -=================================================================== ---- kdefx/kstyle.cpp.orig -+++ kdefx/kstyle.cpp -@@ -154,6 +154,7 @@ struct KStylePrivate - bool menuAltKeyNavigation : 1; - bool menuDropShadow : 1; - bool sloppySubMenus : 1; -+ bool semiTransparentRubberband : 1; - int popupMenuDelay; - float menuOpacity; - -@@ -187,6 +188,7 @@ KStyle::KStyle( KStyleFlags flags, KStyl - d->menuAltKeyNavigation = settings.readBoolEntry("/KStyle/Settings/MenuAltKeyNavigation", true); - d->scrollablePopupmenus = settings.readBoolEntry("/KStyle/Settings/ScrollablePopupMenus", false); - d->menuDropShadow = settings.readBoolEntry("/KStyle/Settings/MenuDropShadow", false); -+ d->semiTransparentRubberband = settings.readBoolEntry("/KStyle/Settings/SemiTransparentRubberband", false); - d->menuHandler = NULL; - - if (useMenuTransparency) { -@@ -553,7 +555,57 @@ void KStyle::drawPrimitive( PrimitiveEle - else - // General handle, probably a kicker applet handle. - drawKStylePrimitive( KPE_GeneralHandle, p, widget, r, cg, flags, opt ); -- -+#if QT_VERSION >= 0x030300 -+#ifdef HAVE_XRENDER -+ } else if ( d->semiTransparentRubberband && pe == QStyle::PE_RubberBand ) { -+ QRect rect = r.normalize(); -+ QPoint point; -+ point = p->xForm( point ); -+ -+ static XRenderColor clr = { 0, 0, 0, 0 }; -+ static unsigned long fillColor = 0; -+ if ( fillColor != cg.highlight().rgb() ) { -+ fillColor = cg.highlight().rgb(); -+ -+ unsigned long color = fillColor << 8 | 0x40; -+ -+ int red = (color >> 24) & 0xff; -+ int green = (color >> 16) & 0xff; -+ int blue = (color >> 8) & 0xff; -+ int alpha = (color >> 0) & 0xff; -+ -+ red = red * alpha / 255; -+ green = green * alpha / 255; -+ blue = blue * alpha / 255; -+ -+ clr.red = (red << 8) + red; -+ clr.green = (green << 8) + green; -+ clr.blue = (blue << 8) + blue; -+ clr.alpha = (alpha << 8) + alpha; -+ } -+ -+ XRenderFillRectangle( -+ p->device()->x11Display(), -+ PictOpOver, -+ p->device()->x11RenderHandle(), -+ &clr, -+ rect.x() + point.x(), -+ rect.y() + point.y(), -+ rect.width(), -+ rect.height() ); -+ -+ p->save(); -+ p->setRasterOp( Qt::CopyROP ); -+ p->setPen( QPen( cg.highlight().dark( 160 ), 1 ) ); -+ p->setBrush( NoBrush ); -+ p->drawRect( -+ rect.x() + point.x(), -+ rect.y() + point.y(), -+ rect.width(), -+ rect.height() ); -+ p->restore(); -+#endif -+#endif - } else - QCommonStyle::drawPrimitive( pe, p, r, cg, flags, opt ); - } -Index: kdeui/kiconview.cpp -=================================================================== ---- kdeui/kiconview.cpp.orig -+++ kdeui/kiconview.cpp -@@ -548,7 +548,7 @@ void KIconViewItem::calcRect( const QStr - r = m_wordWrap->boundingRect(); - - int realWidth = QMAX( QMIN( r.width() + 4, tw ), fm->width( "X" ) ); -- itemTextRect.setWidth( realWidth ); -+ itemTextRect.setWidth( realWidth + 4 ); - itemTextRect.setHeight( r.height() ); - - int w = 0; int h = 0; int y = 0; -@@ -699,11 +699,13 @@ void KIconViewItem::paintPixmap( QPainte - - void KIconViewItem::paintText( QPainter *p, const QColorGroup &cg ) - { -- int textX = textRect( false ).x() + 2; -+ int textX = textRect( false ).x() + 4; - int textY = textRect( false ).y(); - - if ( isSelected() ) { -- p->fillRect( textRect( false ), cg.highlight() ); -+ p->setBrush(QBrush(cg.highlight())); -+ p->setPen(QPen(cg.highlight())); -+ p->drawRoundRect( textRect( false ) ,1000/textRect(false).width(),1000/textRect(false).height() ); - p->setPen( QPen( cg.highlightedText() ) ); - } else { - if ( iconView()->itemTextBackground() != NoBrush ) -Index: kdeui/kjanuswidget.cpp -=================================================================== ---- kdeui/kjanuswidget.cpp.orig -+++ kdeui/kjanuswidget.cpp -@@ -49,16 +49,19 @@ class KJanusWidget::IconListItem : publi - { - public: - IconListItem( QListBox *listbox, const QPixmap &pixmap, -- const QString &text ); -+ const QString &text ); - virtual int height( const QListBox *lb ) const; - virtual int width( const QListBox *lb ) const; - int expandMinimumWidth( int width ); -+ void highlight( bool erase ); - - protected: - const QPixmap &defaultPixmap(); - void paint( QPainter *painter ); -- -+ - private: -+ void paintContents( QPainter *painter ); -+ - QPixmap mPixmap; - int mMinimumWidth; - }; -@@ -141,6 +144,8 @@ KJanusWidget::KJanusWidget( QWidget *par - - mIconList->verticalScrollBar()->installEventFilter( this ); - connect( mIconList, SIGNAL(selectionChanged()), SLOT(slotShowPage())); -+ connect( mIconList, SIGNAL(onItem(QListBoxItem *)), SLOT(slotOnItem(QListBoxItem *))); -+ - hbox->addSpacing( KDialog::marginHint() ); - page = new QFrame( this ); - hbox->addWidget( page, 10 ); -@@ -259,7 +264,7 @@ void KJanusWidget::slotReopen( QListView - } - - QFrame *KJanusWidget::addPage( const QString &itemName, const QString &header, -- const QPixmap &pixmap ) -+ const QPixmap &pixmap ) - { - QStringList items; - items << itemName; -@@ -269,8 +274,8 @@ QFrame *KJanusWidget::addPage( const QSt - - - QVBox *KJanusWidget::addVBoxPage( const QStringList &items, -- const QString &header, -- const QPixmap &pixmap ) -+ const QString &header, -+ const QPixmap &pixmap ) - { - if( !mValid ) - { -@@ -721,6 +726,12 @@ void KJanusWidget::slotItemClicked(QList - it->setOpen(!it->isOpen()); - } - -+// hack because qt does not support Q_OBJECT in nested classes -+void KJanusWidget::slotOnItem(QListBoxItem *qitem) -+{ -+ mIconList->slotOnItem( qitem ); -+} -+ - void KJanusWidget::setFocus() - { - if( !mValid ) { return; } -@@ -929,11 +940,11 @@ bool KJanusWidget::eventFilter( QObject - KJanusWidget::IconListBox::IconListBox( QWidget *parent, const char *name, - WFlags f ) - :KListBox( parent, name, f ), mShowAll(false), mHeightValid(false), -- mWidthValid(false) -+ mWidthValid(false), -+ mOldItem(0) - { - } - -- - void KJanusWidget::IconListBox::updateMinimumHeight() - { - if( mShowAll && !mHeightValid ) -@@ -995,6 +1006,45 @@ void KJanusWidget::IconListBox::setShowA - } - - -+void KJanusWidget::IconListBox::leaveEvent( QEvent *ev ) -+{ -+ KListBox::leaveEvent( ev ); -+ -+ if ( mOldItem && !mOldItem->isSelected() ) -+ { -+ ((KJanusWidget::IconListItem *) mOldItem)->highlight( true ); -+ mOldItem = 0; -+ } -+} -+ -+// hack because qt does not support Q_OBJECT in nested classes -+void KJanusWidget::IconListBox::slotOnItem(QListBoxItem *qitem) -+{ -+ KListBox::slotOnItem( qitem ); -+ -+ if ( qitem == mOldItem ) -+ { -+ return; -+ } -+ -+ if ( mOldItem && !mOldItem->isSelected() ) -+ { -+ ((KJanusWidget::IconListItem *) mOldItem)->highlight( true ); -+ } -+ -+ KJanusWidget::IconListItem *item = dynamic_cast< KJanusWidget::IconListItem * >( qitem ); -+ if ( item && !item->isSelected() ) -+ { -+ item->highlight( false ); -+ mOldItem = item; -+ } -+ else -+ { -+ mOldItem = 0; -+ } -+} -+ -+ - - KJanusWidget::IconListItem::IconListItem( QListBox *listbox, const QPixmap &pixmap, - const QString &text ) -@@ -1006,6 +1056,7 @@ KJanusWidget::IconListItem::IconListItem - mPixmap = defaultPixmap(); - } - setText( text ); -+ setCustomHighlighting( true ); - mMinimumWidth = 0; - } - -@@ -1017,6 +1068,36 @@ int KJanusWidget::IconListItem::expandMi - } - - -+void KJanusWidget::IconListItem::highlight( bool erase ) -+{ -+ QRect r = listBox()->itemRect( this ); -+ r.addCoords( 1, 1, -1, -1 ); -+ -+ QPainter p( listBox()->viewport() ); -+ p.setClipRegion( r ); -+ -+ const QColorGroup &cg = listBox()->colorGroup(); -+ if ( erase ) -+ { -+ p.setPen( cg.base() ); -+ p.setBrush( cg.base() ); -+ p.drawRect( r ); -+ } -+ else -+ { -+ p.setBrush( cg.highlight().light( 120 ) ); -+ p.drawRect( r ); -+ -+ p.setPen( cg.highlight().dark( 140 ) ); -+ p.drawRect( r ); -+ } -+ -+ p.setPen( cg.foreground() ); -+ p.translate( r.x() - 1, r.y() - 1 ); -+ paintContents( &p ); -+} -+ -+ - const QPixmap &KJanusWidget::IconListItem::defaultPixmap() - { - static QPixmap *pix=0; -@@ -1044,15 +1125,34 @@ const QPixmap &KJanusWidget::IconListIte - - void KJanusWidget::IconListItem::paint( QPainter *painter ) - { -+ QRect itemPaintRegion( listBox()->itemRect( this ) ); -+ QRect r( 1, 1, itemPaintRegion.width() - 2, itemPaintRegion.height() - 2); -+ -+ if ( isSelected() ) -+ { -+ painter->eraseRect( r ); -+ -+ painter->save(); -+ painter->setPen( listBox()->colorGroup().highlight().dark( 160 ) ); -+ painter->drawRect( r ); -+ painter->restore(); -+ } -+ -+ paintContents( painter ); -+} -+ -+ -+void KJanusWidget::IconListItem::paintContents( QPainter *painter ) -+{ - QFontMetrics fm = painter->fontMetrics(); - int ht = fm.boundingRect( 0, 0, 0, 0, Qt::AlignCenter, text() ).height(); - int wp = mPixmap.width(); - int hp = mPixmap.height(); -+ painter->drawPixmap( (mMinimumWidth - wp) / 2, 5, mPixmap ); - -- painter->drawPixmap( (mMinimumWidth-wp)/2, 5, mPixmap ); - if( !text().isEmpty() ) - { -- painter->drawText( 0, hp+7, mMinimumWidth, ht, Qt::AlignCenter, text() ); -+ painter->drawText( 1, hp + 7, mMinimumWidth - 2, ht, Qt::AlignCenter, text() ); - } - } - -@@ -1082,6 +1182,7 @@ int KJanusWidget::IconListItem::width( c - void KJanusWidget::virtual_hook( int, void* ) - { /*BASE::virtual_hook( id, data );*/ } - -+ - // TODO: In TreeList, if the last child of a node is removed, and there is no corrsponding widget for that node, allow the caller to - // delete the node. - void KJanusWidget::removePage( QWidget *page ) -@@ -1129,6 +1230,7 @@ void KJanusWidget::removePage( QWidget * - } - } - -+ - QString KJanusWidget::pageTitle(int index) const - { - if (!d || !d->mIntToTitle.contains(index)) -@@ -1137,6 +1239,7 @@ QString KJanusWidget::pageTitle(int inde - return d->mIntToTitle[index]; - } - -+ - QWidget *KJanusWidget::pageWidget(int index) const - { - if (!d || !d->mIntToPage.contains(index)) -Index: kdeui/kjanuswidget.h -=================================================================== ---- kdeui/kjanuswidget.h.orig -+++ kdeui/kjanuswidget.h -@@ -71,6 +71,8 @@ class KDEUI_EXPORT KJanusWidget : public - private: - class IconListBox : public KListBox - { -+ friend class KJanusWidget; -+ - public: - IconListBox( QWidget *parent=0, const char *name=0, WFlags f=0 ); - void updateMinimumHeight(); -@@ -79,10 +81,15 @@ class KDEUI_EXPORT KJanusWidget : public - void invalidateWidth(); - void setShowAll( bool showAll ); - -+ protected: -+ void slotOnItem( QListBoxItem *item ); -+ virtual void leaveEvent( QEvent * ); -+ - private: - bool mShowAll; - bool mHeightValid; - bool mWidthValid; -+ QListBoxItem *mOldItem; - }; - - public: -@@ -558,6 +565,8 @@ class KDEUI_EXPORT KJanusWidget : public - private slots: - bool slotShowPage(); - void slotFontChanged(); -+ -+ void slotOnItem(QListBoxItem *item); - void slotItemClicked(QListViewItem *it); - void pageGone(QObject *obj); // signal from the added page's "destroyed" signal - void slotReopen(QListViewItem *item); diff --git a/opensuse/core/tdelibs/show-distribution.diff b/opensuse/core/tdelibs/show-distribution.diff deleted file mode 100644 index 6906ed0a4..000000000 --- a/opensuse/core/tdelibs/show-distribution.diff +++ /dev/null @@ -1,21 +0,0 @@ -Index: kdeui/kaboutdialog.cpp -=================================================================== ---- kdeui/kaboutdialog.cpp.orig -+++ kdeui/kaboutdialog.cpp -@@ -40,6 +40,7 @@ - #include - #include - #include -+#include - - //MOC_SKIP_BEGIN - template class QPtrList; -@@ -702,7 +703,7 @@ void KAboutContainerBase::setProduct( co - kdDebug(291) << "no kapp" << endl; - - const QString msg1 = i18n("%1 %2 (Using KDE %3)").arg(appName).arg(version). -- arg(QString::fromLatin1(KDE_VERSION_STRING)); -+ arg(QString::fromLatin1(KDE_VERSION_STRING) + " " + QString::fromLatin1(KDE_DISTRIBUTION_TEXT)); - const QString msg2 = !year.isEmpty() ? i18n("%1 %2, %3").arg('').arg(year). - arg(author) : QString::fromLatin1(""); - diff --git a/opensuse/core/tdelibs/silence.diff b/opensuse/core/tdelibs/silence.diff deleted file mode 100644 index 7dbbbb997..000000000 --- a/opensuse/core/tdelibs/silence.diff +++ /dev/null @@ -1,13 +0,0 @@ -Index: kded/kbuildservicefactory.cpp -=================================================================== ---- kded/kbuildservicefactory.cpp.orig -+++ kded/kbuildservicefactory.cpp -@@ -158,7 +158,7 @@ KBuildServiceFactory::saveOfferList(QDat - KServiceType::Ptr serviceType = KServiceType::serviceType(*it); - if (!serviceType) - { -- kdWarning() << "'"<< service->desktopEntryPath() << "' specifies undefined mimetype/servicetype '"<< (*it) << "'" << endl; -+ kdDebug() << "'"<< service->desktopEntryPath() << "' specifies undefined mimetype/servicetype '"<< (*it) << "'" << endl; - continue; - } - serviceTypes.append(serviceType); diff --git a/opensuse/core/tdelibs/smooth-scrolling.diff b/opensuse/core/tdelibs/smooth-scrolling.diff deleted file mode 100644 index b369a6146..000000000 --- a/opensuse/core/tdelibs/smooth-scrolling.diff +++ /dev/null @@ -1,267 +0,0 @@ -Index: khtml/khtmlview.cpp -=================================================================== ---- khtml/khtmlview.cpp.orig -+++ khtml/khtmlview.cpp -@@ -151,6 +151,9 @@ public: - - KHTMLViewPrivate() - : underMouse( 0 ), underMouseNonShared( 0 ), visibleWidgets( 107 ) -+#ifndef NO_SMOOTH_SCROLL_HACK -+ , dx(0), dy(0), ddx(0), ddy(0), rdx(0), rdy(0), scrolling(false) -+#endif - { - #ifndef KHTML_NO_CARET - m_caretViewContext = 0; -@@ -396,6 +399,17 @@ public: - short m_mouseScroll_byY; - QTimer *m_mouseScrollTimer; - QWidget *m_mouseScrollIndicator; -+#ifndef NO_SMOOTH_SCROLL_HACK -+ QTimer timer2; -+ int dx; -+ int dy; -+ // Step size * 16 and residual to avoid huge difference between 1px/step and 2px/step -+ int ddx; -+ int ddy; -+ int rdx; -+ int rdy; -+ bool scrolling; -+#endif - }; - - #ifndef QT_NO_TOOLTIP -@@ -504,6 +518,11 @@ KHTMLView::KHTMLView( KHTMLPart *part, Q - init(); - - viewport()->show(); -+#ifndef NO_SMOOTH_SCROLL_HACK -+#define timer timer2 -+ connect(&d->timer, SIGNAL(timeout()), this, SLOT(scrollTick())); -+#undef timer -+#endif - } - - KHTMLView::~KHTMLView() -@@ -1544,7 +1563,7 @@ void KHTMLView::keyPressEvent( QKeyEvent - case Key_Down: - case Key_J: - if (!d->scrollTimerId || d->scrollSuspended) -- scrollBy( 0, 10 ); -+ scrollBy( 0, 10 * _ke->count() ); - if (d->scrollTimerId) - d->newScrollTimer(this, 0); - break; -@@ -1559,7 +1578,7 @@ void KHTMLView::keyPressEvent( QKeyEvent - case Key_Up: - case Key_K: - if (!d->scrollTimerId || d->scrollSuspended) -- scrollBy( 0, -10 ); -+ scrollBy( 0, -10 * _ke->count()); - if (d->scrollTimerId) - d->newScrollTimer(this, 0); - break; -@@ -1572,14 +1591,14 @@ void KHTMLView::keyPressEvent( QKeyEvent - case Key_Right: - case Key_L: - if (!d->scrollTimerId || d->scrollSuspended) -- scrollBy( 10, 0 ); -+ scrollBy( 10 * _ke->count(), 0 ); - if (d->scrollTimerId) - d->newScrollTimer(this, 0); - break; - case Key_Left: - case Key_H: - if (!d->scrollTimerId || d->scrollSuspended) -- scrollBy( -10, 0 ); -+ scrollBy( -10 * _ke->count(), 0 ); - if (d->scrollTimerId) - d->newScrollTimer(this, 0); - break; -@@ -1712,8 +1731,16 @@ void KHTMLView::keyReleaseEvent(QKeyEven - d->scrollSuspendPreActivate = false; - if( _ke->key() == Key_Shift && d->scrollSuspendPreActivate && _ke->state() == Qt::ShiftButton - && !(KApplication::keyboardMouseState() & Qt::ShiftButton)) -+ { - if (d->scrollTimerId) -- d->scrollSuspended = !d->scrollSuspended; -+ { -+ d->scrollSuspended = !d->scrollSuspended; -+#ifndef NO_SMOOTH_SCROLL_HACK -+ if( d->scrollSuspended ) -+ stopScrolling(); -+#endif -+ } -+ } - - if (d->accessKeysEnabled) - { -@@ -3259,7 +3286,11 @@ void KHTMLView::viewportWheelEvent(QWhee - else - { - d->scrollBarMoved = true; -+#ifndef NO_SMOOTH_SCROLL_HACK -+ scrollViewWheelEvent( e ); -+#else - QScrollView::viewportWheelEvent( e ); -+#endif - - QMouseEvent *tempEvent = new QMouseEvent( QEvent::MouseMove, QPoint(-1,-1), QPoint(-1,-1), Qt::NoButton, e->state() ); - emit viewportMouseMoveEvent ( tempEvent ); -@@ -4462,4 +4493,117 @@ void KHTMLView::moveCaretToLineEnd() - - #endif // KHTML_NO_CARET - -+#ifndef NO_SMOOTH_SCROLL_HACK -+#define timer timer2 -+ -+// All scrolls must be completed within 240ms of last keypress -+static const int SCROLL_TIME = 240; -+// Each step is 20 ms == 50 frames/second -+static const int SCROLL_TICK = 20; -+ -+void KHTMLView::scrollBy(int dx, int dy) -+{ -+ KConfigGroup cfg( KGlobal::config(), "KDE" ); -+ if( !cfg.readBoolEntry( "SmoothScrolling", true )) { -+ QScrollView::scrollBy( dx, dy ); -+ return; -+ } -+ // scrolling destination -+ int full_dx = d->dx + dx; -+ int full_dy = d->dy + dy; -+ -+ // scrolling speed -+ int ddx = 0; -+ int ddy = 0; -+ -+ int steps = SCROLL_TIME/SCROLL_TICK; -+ -+ ddx = (full_dx*16)/steps; -+ ddy = (full_dy*16)/steps; -+ -+ // don't go under 1px/step -+ if (ddx > 0 && ddx < 16) ddx = 16; -+ if (ddy > 0 && ddy < 16) ddy = 16; -+ if (ddx < 0 && ddx > -16) ddx = -16; -+ if (ddy < 0 && ddy > -16) ddy = -16; -+ -+ d->dx = full_dx; -+ d->dy = full_dy; -+ d->ddx = ddx; -+ d->ddy = ddy; -+ -+ if (!d->scrolling) { -+ scrollTick(); -+ startScrolling(); -+ } -+} -+ -+void KHTMLView::scrollTick() { -+ if (d->dx == 0 && d->dy == 0) { -+ stopScrolling(); -+ return; -+ } -+ -+ int tddx = d->ddx + d->rdx; -+ int tddy = d->ddy + d->rdy; -+ -+ int ddx = tddx / 16; -+ int ddy = tddy / 16; -+ d->rdx = tddx % 16; -+ d->rdy = tddy % 16; -+ -+ if (d->dx > 0 && ddx > d->dx) ddx = d->dx; -+ else -+ if (d->dx < 0 && ddx < d->dx) ddx = d->dx; -+ -+ if (d->dy > 0 && ddy > d->dy) ddy = d->dy; -+ else -+ if (d->dy < 0 && ddy < d->dy) ddy = d->dy; -+ -+ d->dx -= ddx; -+ d->dy -= ddy; -+ -+// QScrollView::setContentsPos( contentsX() + ddx, contentsY() + ddy); -+ kapp->syncX(); -+ QScrollView::scrollBy(ddx, ddy); -+// Unaccelerated X can get seriously overloaded by scrolling and for some reason -+// will send KeyPress events only infrequently. This should help to reduce -+// the load. -+ kapp->syncX(); -+} -+ -+void KHTMLView::startScrolling() -+{ -+ d->scrolling = true; -+ d->timer.start(SCROLL_TICK, false); -+} -+ -+void KHTMLView::stopScrolling() -+{ -+ d->timer.stop(); -+ d->dx = d->dy = 0; -+ d->scrolling = false; -+} -+ -+// Overloaded from QScrollView and QScrollBar -+void KHTMLView::scrollViewWheelEvent( QWheelEvent *e ) -+{ -+ int pageStep = verticalScrollBar()->pageStep(); -+ int lineStep = verticalScrollBar()->lineStep(); -+ int step = QMIN( QApplication::wheelScrollLines()*lineStep, pageStep ); -+ if ( ( e->state() & ControlButton ) || ( e->state() & ShiftButton ) ) -+ step = pageStep; -+ -+ if(e->orientation() == Horizontal) -+ scrollBy(-((e->delta()*step)/120), 0); -+ else if(e->orientation() == Vertical) -+ scrollBy(0,-((e->delta()*step)/120)); -+ -+ e->accept(); -+} -+ -+#undef timer -+ -+#endif // NO_SMOOTH_SCROLL_HACK -+ - #undef DEBUG_CARETMODE -Index: khtml/khtmlview.h -=================================================================== ---- khtml/khtmlview.h.orig -+++ khtml/khtmlview.h -@@ -181,6 +181,11 @@ signals: - void hideAccessKeys(); - void repaintAccessKeys(); - void findAheadActive( bool ); -+//#define NO_SMOOTH_SCROLL_HACK -+#ifndef NO_SMOOTH_SCROLL_HACK -+public slots: -+ void scrollBy(int dx, int dy); -+#endif - - protected: - void clear(); -@@ -211,9 +216,23 @@ protected: - void contentsContextMenuEvent ( QContextMenuEvent *_ce ); - void doAutoScroll(); - void timerEvent ( QTimerEvent * ); -+ -+#ifndef NO_SMOOTH_SCROLL_HACK -+ void startScrolling(); -+ void stopScrolling(); -+#ifndef QT_NO_WHEELEVENT -+ void scrollViewWheelEvent( QWheelEvent* e ); -+#endif -+#endif -+ - protected slots: - void slotPaletteChanged(); - void slotScrollBarMoved(); -+#ifndef NO_SMOOTH_SCROLL_HACK -+ void scrollTick(); -+#else -+ void scrollTick() {}; // moc cannot handle #if -+#endif - - private slots: - void tripleClickTimeout(); diff --git a/opensuse/core/tdelibs/spellcheck-default-utf8.diff b/opensuse/core/tdelibs/spellcheck-default-utf8.diff deleted file mode 100644 index e663bdc69..000000000 --- a/opensuse/core/tdelibs/spellcheck-default-utf8.diff +++ /dev/null @@ -1,26 +0,0 @@ -Index: kdeui/ksconfig.cpp -=================================================================== ---- kdeui/ksconfig.cpp.orig -+++ kdeui/ksconfig.cpp -@@ -187,7 +187,7 @@ KSpellConfig::readGlobalSettings() - setRunTogether ( kc->readNumEntry("KSpell_RunTogether", 0) ); - setDictionary ( kc->readEntry("KSpell_Dictionary") ); - setDictFromList ( kc->readNumEntry("KSpell_DictFromList", false) ); -- setEncoding ( kc->readNumEntry ("KSpell_Encoding", KS_E_ASCII) ); -+ setEncoding ( kc->readNumEntry ("KSpell_Encoding", KS_E_UTF8) ); - setClient ( kc->readNumEntry ("KSpell_Client", KS_CLIENT_ISPELL) ); - - return true; -Index: kdeui/ksyntaxhighlighter.cpp -=================================================================== ---- kdeui/ksyntaxhighlighter.cpp.orig -+++ kdeui/ksyntaxhighlighter.cpp -@@ -551,7 +551,7 @@ QString KDictSpellingHighlighter::spellK - key += '/'; - key += QString::number( config->readNumEntry( "KSpell_DictFromList", false )); - key += '/'; -- key += QString::number( config->readNumEntry( "KSpell_Encoding", KS_E_ASCII )); -+ key += QString::number( config->readNumEntry( "KSpell_Encoding", KS_E_UTF8 )); - key += '/'; - key += QString::number( config->readNumEntry( "KSpell_Client", KS_CLIENT_ISPELL )); - return key; diff --git a/opensuse/core/tdelibs/stat-on-media.diff b/opensuse/core/tdelibs/stat-on-media.diff deleted file mode 100644 index c8f25a9c8..000000000 --- a/opensuse/core/tdelibs/stat-on-media.diff +++ /dev/null @@ -1,14 +0,0 @@ -Index: kio/kio/kdirwatch.cpp -=================================================================== ---- kio/kio/kdirwatch.cpp.orig -+++ kio/kio/kdirwatch.cpp -@@ -743,7 +743,8 @@ bool KDirWatchPrivate::useINotify( Entry - - bool KDirWatchPrivate::useStat(Entry* e) - { -- if (KIO::probably_slow_mounted(e->path)) -+ if ( e->path.startsWith("/media/") || (e->path == "/media") -+ || (KIO::probably_slow_mounted(e->path)) ) - useFreq(e, m_nfsPollInterval); - else - useFreq(e, m_PollInterval); diff --git a/opensuse/core/tdelibs/tdelibs-devel-doc.spec b/opensuse/core/tdelibs/tdelibs-devel-doc.spec index f92476488..cef0e454a 100644 --- a/opensuse/core/tdelibs/tdelibs-devel-doc.spec +++ b/opensuse/core/tdelibs/tdelibs-devel-doc.spec @@ -26,12 +26,12 @@ License: GPLv2+ Group: Documentation/HTML BuildRoot: %{_tmppath}/%{name}-%{version}-build Summary: Additional Package Documentation -Version: R13.99 +Version: 3.5.12.99 Release: 1 %define tdelibs_patch_level b BuildArch: noarch Requires: tdelibs qt3-devel-doc -Source0: tdelibs-%{version}.tar.bz2 +Source0: kdelibs-%{version}.tar.bz2 Source1: create-kdeapi Source4: api_docu_description @@ -50,7 +50,7 @@ Authors: %prep echo %suse_version -%setup -q -n tdelibs-%{version} +%setup -q -n kdelibs-%{version} %build %if %is_plus diff --git a/opensuse/core/tdelibs/tdelibs.spec b/opensuse/core/tdelibs/tdelibs.spec index 314ae8d5d..074343f57 100644 --- a/opensuse/core/tdelibs/tdelibs.spec +++ b/opensuse/core/tdelibs/tdelibs.spec @@ -19,7 +19,7 @@ Name: tdelibs -BuildRequires: OpenEXR-devel arts arts-devel aspell-devel cups-devel fam-devel flac-devel krb5-devel +BuildRequires: OpenEXR-devel arts-devel aspell-devel cups-devel fam-devel flac-devel krb5-devel BuildRequires: libart_lgpl-devel libidn-devel libsndfile libtiff-devel BuildRequires: libxslt-devel openldap2-devel pcre-devel libtqt4-devel sgml-skel BuildRequires: db-devel libacl-devel libattr-devel unsermake update-desktop-files utempter @@ -34,7 +34,7 @@ Summary: Trinity Base Libraries Version: R13.99 Release: 1 Provides: kups keramik tdelibs-cups tdelibs-33addons tdepim-networkstatus -Provides: kdelibs3_base = 3.3 +Provides: kdelibs3_base = 3.5.13 Requires: libtqt4 >= %( echo `rpm -q --queryformat '%{VERSION}' libtqt4`) Requires: openssl tdelibs-default-style Requires: hicolor-icon-theme @@ -44,15 +44,35 @@ Source0: %{name}-%{version}.tar.bz2 Source3: baselibs.conf Source4: api_docu_description Source6: tderc -# svn export svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/kde-common/admin -Source8: admin.tar.bz2 Source9: cr16-filesys-file_broken.png -Source10: kdemm-20050330.tar.bz2 Source11: 10888-bt.tar.gz Source12: mimetype-icons.tar.bz2 Source14: vnd.openxmlformats-officedocument.wordprocessingml.document.desktop Source15: vnd.openxmlformats-officedocument.presentationml.presentation.desktop Source16: vnd.openxmlformats-officedocument.spreadsheetml.sheet.desktop +Patch1: kdeversion.diff +Patch5: applications.menu-fallback.diff +Patch10: disable-idn-support.diff +Patch15: add-suse-translations.diff +Patch16: kde3rc.dif +Patch27: noauto-package.diff +Patch29: prefer_distribution_settings.dif +Patch50: fix-gnome-help-support.diff +Patch950: fix-gnome-help-support_legacy.diff +Patch52: kdeprint-restart-cupsd.diff +Patch56: fix-dcopidlng-within-kdelibs-build.diff +Patch65: integrate-global-pixmaps-new.diff +Patch66: integrate-global-pixmaps-10.1.diff +Patch105: kdelibs3-hicolor-scalable-sizes.patch +Patch127: x-jar-desktop.diff +Patch129: default-useragent.diff +Patch132: no-debug-by-default.diff +Patch133: flash-player-non-oss.diff +Patch153: bug-382959_kabc_fix_vcardparser.patch +Patch157: ignore-inline-menu.diff +Patch162: arts-acinclude.patch +Patch205: kdelibs-3.5.10-cve-2009-2537-select-length.patch +Patch210: kdelibs-3.5.10-kio.patch %description This package contains tdelibs, one of the basic packages of the Trinity @@ -118,9 +138,45 @@ to develop applications that require these. %prep echo %suse_version %setup -q -tar xfvj %SOURCE10 -rm -rf admin -bunzip2 -cd %{SOURCE8} | tar xfv - --exclude=.cvsignore --exclude=CVS +%patch1 +%patch5 +#%patch10 +%patch15 +#%patch16 +%patch27 +%patch29 +%if %suse_version > 1020 +%patch50 +%else +%patch950 +%endif +%patch52 +%patch56 +%if %suse_version > 1010 +%patch65 +%else +%if %suse_version > 1000 +%patch66 +%else +%patch65 +%endif +%endif +%if %suse_version < 1030 +%patch105 -p 1 +%endif +%patch127 +%patch129 +#%patch132 +%if %suse_version > 1020 +%patch133 +%endif +%patch153 +%if %suse_version > 1110 +%patch157 +%endif +%patch162 -p1 +%patch205 -p1 +%patch210 -p1 tar xfvj %SOURCE12 # @@ -134,7 +190,7 @@ sed 's,#define KDE_VERSION_STRING "\(.*\)",#define KDE_VERSION_STRING "\1 \\"rel #UNSERMAKE=yes make -f admin/Makefile.common cvs %build -export PATH=$PWD/admin/:$PATH +#export PATH=$PWD/admin/:$PATH FINAL="--enable-final" CFLAGS="$CFLAGS -fno-strict-aliasing" CXXFLAGS="$CXXFLAGS -fno-strict-aliasing" @@ -160,12 +216,6 @@ CXXFLAGS="$CXXFLAGS -fno-strict-aliasing" EXTRA_FLAGS="-DCMAKE_SKIP_RPATH=OFF -DKDE_MALLOC_FULL=OFF -DKDE_MALLOC=OFF -DSSL_INSTALL_DIR=/usr/ssl -DPCSC_INSTALL_DIR=/usr -DENABLE_DNOFIFY=ON" -# -DKDE_DISTRIBUTION=\"$DISTRI\" - -# %if %is_plus -# -DENABLE_DNOFIFY=ON \ -# %endif - %cmake_tde -d build -- $EXTRA_FLAGS %make_tde -d build @@ -371,6 +421,7 @@ mv -v %{buildroot}/%{_tde_sharedir}/cmake/tdelibs.cmake %{buildroot}/%{_datadir} %dir %{_tde_includedir} %dir %{_tde_sharedir} %dir %{_tde_configkcfgdir} +%_mandir/man*/* %{_tde_bindir}/checkXML %{_tde_bindir}/dcop %{_tde_bindir}/dcopclient @@ -390,7 +441,7 @@ mv -v %{buildroot}/%{_tde_sharedir}/cmake/tdelibs.cmake %{buildroot}/%{_datadir} %{_tde_bindir}/tdeinit* %{_tde_bindir}/start_tdeinit %{_tde_bindir}/start_tdeinit_wrapper -%{_tde_bindir}/kde-config +%{_tde_bindir}/tde-config %{_tde_bindir}/kde-menu %{_tde_bindir}/tdesu_stub %{_tde_bindir}/kdontchangethehostname @@ -400,6 +451,7 @@ mv -v %{buildroot}/%{_tde_sharedir}/cmake/tdelibs.cmake %{buildroot}/%{_datadir} %{_tde_bindir}/klauncher %{_tde_bindir}/kmailservice %{_tde_bindir}/ktradertest +%{_tde_bindir}/knotify %{_tde_bindir}/kstartupconfig %{_tde_bindir}/kdostartupconfig %verify(not mode) %{_tde_bindir}/kpac_dhcp_helper @@ -522,6 +574,8 @@ mv -v %{buildroot}/%{_tde_sharedir}/cmake/tdelibs.cmake %{buildroot}/%{_datadir} %dir %{_tde_sharedir} %dir %{_tde_applicationsdir} %ghost %{_tde_applicationsdir}/mimeinfo.cache +%dir %{_tde_datadir}/konqueror +%dir %{_tde_datadir}/konqueror/servicemenus %{_tde_datadir}/konqueror/servicemenus/isoservice.desktop %files arts @@ -542,10 +596,12 @@ mv -v %{buildroot}/%{_tde_sharedir}/cmake/tdelibs.cmake %{buildroot}/%{_datadir} %{_tde_bindir}/dcopidl* %{_tde_bindir}/kmimelist %{_tde_bindir}/preparetips +%{_tde_bindir}/ksvgtopng %{_tde_bindir}/kunittestmodrunner #%{_tde_bindir}/MISC %{_tde_includedir}/* %{_tde_datadir}/dcopidlng +%{_tde_datadir}/kdelibs/admin %{_tde_libdir}/libartskde.la %{_tde_libdir}/libkunittest.la %{_tde_libdir}/libkunittest.so @@ -562,8 +618,6 @@ mv -v %{buildroot}/%{_tde_sharedir}/cmake/tdelibs.cmake %{buildroot}/%{_datadir} %{_tde_libdir}/libkabc.la %{_tde_libdir}/libkabc_ldapkio.la %{_tde_libdir}/libkabc_ldapkio.so -%{_tde_libdir}/libkabc_net.la -%{_tde_libdir}/libkabc_net.so %{_tde_libdir}/libkabc.so %{_tde_libdir}/libkatepartinterfaces.la %{_tde_libdir}/libkatepartinterfaces.so diff --git a/opensuse/core/tdelibs/tdelibs.spec.old b/opensuse/core/tdelibs/tdelibs.spec.old deleted file mode 100644 index ca1a72b7b..000000000 --- a/opensuse/core/tdelibs/tdelibs.spec.old +++ /dev/null @@ -1,826 +0,0 @@ -# -# spec file for package tdelibs -# -# Copyright (c) 2011 the Trinity Project (opensuse). -# -# All modifications and additions to the file contributed by third parties -# remain the property of their copyright owners, unless otherwise agreed -# upon. The license for this file, and modifications and additions to the -# file, is the same license as for the pristine package itself (unless the -# license for the pristine package is not an Open Source License, in which -# case the license is the MIT License). An "Open Source License" is a -# license that conforms to the Open Source Definition (Version 1.9) -# published by the Open Source Initiative. - -# Please submit bugfixes or comments via http://bugs.trinitydesktop.org/ -# - -# norootforbuild - - -Name: tdelibs -BuildRequires: OpenEXR-devel arts-devel aspell-devel cups-devel fam-devel flac-devel krb5-devel -BuildRequires: libart_lgpl-devel libidn-devel libsndfile libtiff-devel -BuildRequires: libxslt-devel openldap2-devel pcre-devel libtqt4-devel sgml-skel -BuildRequires: db-devel libacl-devel libattr-devel unsermake update-desktop-files utempter -BuildRequires: unzip -BuildRequires: avahi-compat-mDNSResponder-devel fdupes libbz2-devel libjasper-devel -BuildRequires: libdrm-devel tde-filesystem cmake -URL: http://www.trinitydesktop.org/ -License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ -Group: System/GUI/TDE -BuildRoot: %{_tmppath}/%{name}-%{version}-build -Summary: Trinity Base Libraries -Version: R13.99 -Release: 1 -Provides: kups keramik tdelibs-cups tdelibs-33addons tdepim-networkstatus -Provides: kdelibs3_base = 3.3 -Requires: libtqt4 >= %( echo `rpm -q --queryformat '%{VERSION}' libtqt4`) -Requires: openssl tdelibs-default-style -Requires: hicolor-icon-theme -Recommends: ispell enscript -Requires: sudo -Source0: %{name}-%{version}.tar.bz2 -Source3: baselibs.conf -Source4: api_docu_description -Source6: tderc -# svn export svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/kde-common/admin -Source8: admin.tar.bz2 -Source9: cr16-filesys-file_broken.png -Source10: kdemm-20050330.tar.bz2 -Source11: 10888-bt.tar.gz -Source12: mimetype-icons.tar.bz2 -Source14: vnd.openxmlformats-officedocument.wordprocessingml.document.desktop -Source15: vnd.openxmlformats-officedocument.presentationml.presentation.desktop -Source16: vnd.openxmlformats-officedocument.spreadsheetml.sheet.desktop -Patch0: 3_5_BRANCH.diff -Patch1: kdeversion.diff -Patch2: admin.diff -Patch3: show-distribution.diff -Patch5: applications.menu-fallback.diff -Patch7: stat-on-media.diff -Patch8: kmimelist.diff -Patch9: x-kde-InitialPreference.diff -Patch10: disable-idn-support.diff -Patch11: silence.diff -Patch12: smooth-scrolling.diff -Patch13: rubberband-selection.diff -Patch15: add-suse-translations.diff -Patch16: kde3rc.dif -Patch17: artwork.diff -Patch26: mimetype-changes.diff -Patch27: noauto-package.diff -Patch29: prefer_distribution_settings.dif -Patch34: allow-man-setgid.diff -Patch40: clever-menu.diff -Patch43: fileshare.diff -Patch44: fontconfig-reverse-lookup.diff -Patch45: limit-max-image-size.diff -Patch50: fix-gnome-help-support.diff -Patch950: fix-gnome-help-support_legacy.diff -Patch52: kdeprint-restart-cupsd.diff -Patch54: kdemm.diff -Patch55: fix-kdemm-build.diff -Patch56: fix-dcopidlng-within-kdelibs-build.diff -Patch57: kdemm-filepreview.diff -Patch60: fix-qxembed.diff -Patch65: integrate-global-pixmaps-new.diff -Patch66: integrate-global-pixmaps-10.1.diff -Patch70: ktip-icon-hack.diff -Patch80: CATALOG.kdelibs3.diff -Patch81: xml-catalog.diff -Patch83: kdelibs3-gcc-4.1-miscompile.diff -Patch85: desktop-translations.diff -Patch86: use-xauthlocalhostname.diff -Patch88: mozilla-sliders.patch -Patch89: kdeprint-utf8.diff -Patch90: kimproxy-warning.diff -Patch95: kdelibs_networkstatus_branch2.diff -Patch97: autostart-spec.diff -Patch105: kdelibs3-hicolor-scalable-sizes.patch -Patch106: use-mediamanager.diff -Patch108: patch-mimetype-iconnames.diff -Patch109: fix-kerberos-printing.diff -Patch110: printpreview.patch -Patch111: kfile-beagle.diff -Patch112: xinerama.patch -Patch113: kremoteencoding-utf8.diff -Patch114: no-progress-for-beagle-status-query.diff -Patch117: kickoff-drop-shadow.diff -Patch122: disable-samba-dialog-without-smb.diff -Patch123: lpoptions-cups-1.2.diff -Patch124: spellcheck-default-utf8.diff -Patch125: kde4-applications.diff -Patch126: avahi-pidfile.diff -Patch127: x-jar-desktop.diff -Patch128: google-mail.diff -Patch129: default-useragent.diff -Patch130: kwalletd-try-open.diff -Patch131: textcompletion-editor.diff -Patch132: no-debug-by-default.diff -Patch133: flash-player-non-oss.diff -Patch134: bundle-locale-help.diff -Patch149: networkstatus.diff -Patch150: kdesu-settings.diff -Patch152: bug-399296_ftphandling-fix.diff -Patch153: bug-382959_kabc_fix_vcardparser.patch -Patch154: r874968-ebay-crash.diff -Patch155: gcc44.diff -Patch156: fix-macmenu.patch -Patch157: ignore-inline-menu.diff -Patch158: bnc557126.diff -Patch159: xmlhttprequest_3.x.diff -Patch160: kdecode_fakes_include.diff -Patch161: gcc45.diff -Patch162: arts-acinclude.patch -Patch163: kdelibs-3.5.10-ossl-1.x.patch -Patch164: light_v_2_scrollbar_patch.patch - -Patch201: kdelibs-3.5.4-CVE-2009-1690.patch -Patch203: kdelibs-3.5.10-latex-syntax-kile-2.0.3.patch -Patch204: kdelibs-3.5.10-CVE-2009-2702.patch -Patch205: kdelibs-3.5.10-cve-2009-2537-select-length.patch -Patch206: kdelibs-3.5.10-cve-2009-1725.patch -Patch207: kdelibs-3.5.10-cve-2009-1698.patch - -Patch210: kdelibs-3.5.10-kio.patch -Patch211: oom_score_adj.patch -Patch212: kcontrol_crash_patch.diff - -%description -This package contains tdelibs, one of the basic packages of the Trinity -Desktop Environment. It contains the necessary libraries for the Trinity -desktop. - -This package is absolutely necessary for using TDE. - -%package arts -License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ -Summary: TDE aRts support -Group: System/GUI/TDE -Provides: tdelibs:/opt/tde/bin/artsmessage -Requires: arts >= %( echo `rpm -q --queryformat '%{VERSION}' arts`) -Recommends: tdemultimedia-arts - -%description arts -This package contains bindings and gui elements for using aRts sound -daemon. - -%package default-style -License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ -Summary: The default TDE style -Group: System/GUI/TDE -Provides: tdelibs:/opt/tde/%_lib/libkdefx.so.4 - -%description default-style -This package contains the Plastik widget style and libkdefx. It only -depends on TQt, not the KDE libraries. - -%package doc -License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ -Summary: Documentation for TDE Base Libraries -Group: System/GUI/TDE -Provides: tdelibs:/opt/tde/share/apps/ksgmltools2 -Provides: tdelibs_doc -Requires: sgml-skel libxml2 -%define regcat /usr/bin/sgml-register-catalog -PreReq: %{regcat} /usr/bin/xmlcatalog /usr/bin/edit-xml-catalog -PreReq: sed grep awk - -%description doc -This package contains the core environment and templates for the Trinity -help system. - -%package devel -License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ -# usefiles /opt/tde/bin/dcopidl /opt/tde/bin/dcopidl2cpp /opt/tde/bin/kdb2html /opt/tde/bin/preparetips -Requires: libtqt4-devel libvorbis-devel tdelibs = %version autoconf automake libxslt-devel libxml2-devel libart_lgpl-devel libjpeg-devel tde-filesystem -# next line from tde-devel-packages macro -Requires: tdelibs-doc libtiff-devel openssl-devel update-desktop-files -Requires: libdrm-devel dbus-1-tqt-devel -Requires: libattr-devel libacl-devel -Requires: tdelibs-arts -Summary: Trinity Base Package: Build Environment -Group: System/GUI/TDE -Requires: fam-devel pcre-devel libidn-devel arts-devel - -%description devel -This package contains all necessary include files and libraries needed -to develop applications that require these. - -%prep - echo %suse_version -%setup -q -%patch0 -%patch1 -%patch3 -%patch5 -%patch7 -%patch10 -%patch11 -%patch12 -%patch13 -%patch15 -%patch16 -%patch17 -%patch26 -%patch27 -%patch29 -#%patch43 -#disable it because of BIC -#%patch45 -%if %suse_version > 1020 -%patch50 -%else -%patch950 -%endif -%patch52 -%patch34 -%patch44 -%patch40 -%patch8 -%patch9 -tar xfvj %SOURCE10 -# TODO! -%patch54 -%patch55 -%patch56 -%patch57 -%patch60 -# 10.2 goes back to the version without suseadds -%if %suse_version > 1010 -%patch65 -%else -%if %suse_version > 1000 -%patch66 -%else -%patch65 -%endif -%endif -%patch70 -rm -rf admin -bunzip2 -cd %{SOURCE8} | tar xfv - --exclude=.cvsignore --exclude=CVS -install -m 755 %{SOURCE2} admin -%patch2 -%patch80 -p 1 -%patch81 -%if %suse_version > 1000 -%patch83 -%endif -%patch85 -%patch86 -%patch88 -%patch89 -%patch90 -%patch95 -%patch97 -%if %suse_version < 1030 -%patch105 -p 1 -%endif -%patch106 -%patch108 -%patch109 -%patch110 -%patch111 -%patch112 -%patch113 -%patch114 -%patch117 -%patch122 -%if %suse_version > 1010 -%patch123 -%endif -%patch124 -%patch125 -%patch126 -%patch127 -%patch128 -%patch129 -%patch130 -%patch131 -%patch132 -%if %suse_version > 1020 -%patch133 -%patch134 -%endif -%patch149 -%patch150 -%patch152 -%patch153 -%patch154 -%patch155 -%patch156 -%if %suse_version > 1110 -%patch157 -%endif -%patch158 -%patch159 -%patch160 -%patch161 -%patch162 -p1 -%patch163 -p1 -%patch164 -p1 -%patch201 -p1 -%patch203 -p1 -%patch204 -p1 -%patch205 -p1 -%patch206 -%patch207 -p1 -%patch210 -p1 -%patch211 -p1 -%patch212 - -tar xfvj %SOURCE12 -# -# define KDE version exactly -# -myrelease=$(echo %release | cut -d. -f-1) -sed 's,#define KDE_VERSION_STRING "\(.*\)",#define KDE_VERSION_STRING "\1 \\"release '$myrelease'\\"",' kdecore/kdeversion.h > kdecore/kdeversion.h_ && mv kdecore/kdeversion.h_ kdecore/kdeversion.h -# -# create build enviroment -# -#UNSERMAKE=yes make -f admin/Makefile.common cvs - -%build -export PATH=$PWD/admin/:$PATH -FINAL="--enable-final" -CFLAGS="$CFLAGS -fno-strict-aliasing" -CXXFLAGS="$CXXFLAGS -fno-strict-aliasing" - -# common_options and do_make have been obsoleted by tde-filesystem - - export path_sudo=/usr/bin/sudo - # - # define the distribution exactly - # - test -e /.buildenv && . /.buildenv -%if %is_plus - # supplementary package - DISTRI="openSUSE $BUILD_DISTRIBUTION_VERSION UNSUPPORTED" -%else - # official build on released and maintained products - DISTRI="openSUSE $BUILD_DISTRIBUTION_VERSION" -%endif - sed 's,#define KDE_VERSION_STRING "\(.*\)",#define KDE_VERSION_STRING "\1 '"$ADD_VERSION"'",' kdecore/kdeversion.h > kdecore/kdeversion.h_ && mv kdecore/kdeversion.h_ kdecore/kdeversion.h - # find MIT kerberos - export PATH=/usr/lib/mit/bin:$PATH - # fast-malloc is not needed anymore - -%cmake_tde -d build -- \ - -DCMAKE_SKIP_RPATH=OFF \ - -DKDE_MALLOC_FULL=OFF \ - -DKDE_MALLOC=OFF \ - -DKDE_DISTRIBUTION="$DISTRI" \ - -DSSL_INSTALL_DIR=/usr/ssl \ - -DPCSC_INSTALL_DIR=/usr \ - %if %is_plus - -DENABLE_DNOFIFY=ON \ - %endif - -%make_tde -d build - -# -xmlcatbin=/usr/bin/xmlcatalog -# CATALOG=docbook-simple.xml -# $xmlcatbin --noout --create $CATALOG -# $xmlcatbin --noout --add "public" \ -# "-//OASIS//DTD Simplified DocBook XML V1.0//EN" \ -# "file://%{xml_mod_dtd_dir}/sdocbook.dtd" $CATALOG -# $xmlcatbin --noout --add "system" \ -# "http://www.oasis-open.org/docbook/xml/simple/1.0/sdocbook.dtd" \ -# "file://%{xml_mod_dtd_dir}/sdocbook.dtd" $CATALOG -%define FOR_ROOT_CAT for-catalog-%{name}-%{version}.xml -CATALOG=%{_tde_prefix}/share/apps/ksgmltools2/customization/catalog.xml -rm -f %{FOR_ROOT_CAT}.tmp -$xmlcatbin --noout --create %{FOR_ROOT_CAT}.tmp -# $xmlcatbin --noout --add "delegateSystem" \ -# "http://www.oasis-open.org/docbook/xml/simple/" \ -# "file:///$CATALOG" %{FOR_ROOT_CAT}.tmp -$xmlcatbin --noout --add "delegatePublic" \ - "-//KDE//DTD DocBook XML V4.2" \ - "file://$CATALOG" %{FOR_ROOT_CAT}.tmp -$xmlcatbin --noout --add "delegatePublic" \ - "-//KDE//ELEMENTS" \ - "file://$CATALOG" %{FOR_ROOT_CAT}.tmp -$xmlcatbin --noout --add "delegatePublic" \ - "-//KDE//ENTITIES" \ - "file://$CATALOG" %{FOR_ROOT_CAT}.tmp -# Create tag -sed '/ -/<\/catalog/i\ - ' \ - %{FOR_ROOT_CAT}.tmp > %{FOR_ROOT_CAT} - -%install - %makeinstall_tde -d build - mkdir -p $RPM_BUILD_ROOT/%{_tde_configkcfgdir} - install -D %SOURCE9 $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/16x16/filesystems/file_broken.png - mv $RPM_BUILD_ROOT/etc/xdg/menus/applications.menu \ - $RPM_BUILD_ROOT/etc/xdg/menus/applications.menu.kde - # - # lib64 compatibility symlink - # -%ifarch x86_64 ppc64 s390x mips64 sparc64 - mkdir -p $RPM_BUILD_ROOT/%{_tde_prefix}/lib/kde3/ - ln -sf ../../lib64/kde3/plugins \ - $RPM_BUILD_ROOT/%{_tde_prefix}/lib/kde3/plugins-lib64 -%endif - # - # add missing directories - # - for i in Applications Development Editors Edutainment Games Graphics Internet Multimedia Office Settings System Toys Utilities WordProcessing; do - install -d -m 0755 $RPM_BUILD_ROOT/%{_tde_appsdir}/$i - done - rm -f locale.list - for i in $(find /usr/share/locale -mindepth 1 -maxdepth 1 -type d | sed 's:/usr/share/locale/::'); do - install -d -m 755 $RPM_BUILD_ROOT/%{_tde_locale}/$i - install -d -m 755 $RPM_BUILD_ROOT/%{_tde_locale}/$i/LC_MESSAGES - install -d -m 755 $RPM_BUILD_ROOT/%{_tde_htmldir}/$i - echo "%lang($i) %doc %{_tde_locale}/$i" >> locale.list - done - %suse_update_desktop_file kresources X-KDE-settings-desktop - # unlike with other modules, tde_post_install shouldn't - # be put at the end of %install - %tde_post_install - # now create a filesystem layer - for theme in hicolor locolor; do - for j in actions apps filesystems mimetypes; do - for i in 16 22 32 48 64 128; do - install -d -m 0755 $RPM_BUILD_ROOT/%{_tde_icondir}/${theme}/${i}x${i}/${j} - done - install -d -m 0755 $RPM_BUILD_ROOT/%{_tde_icondir}/${theme}/scalable/${j} - done - done - install -d -m 0755 $RPM_BUILD_ROOT/etc/%{_tde_libdir} - install -d -m 0755 $RPM_BUILD_ROOT/etc/%{_tde_configdir} - install -d -m 0755 $RPM_BUILD_ROOT/%{_tde_datadir}/kdelibs/ - install -m 0644 %SOURCE6 $RPM_BUILD_ROOT/etc/ - rm -f $RPM_BUILD_ROOT/%{_tde_libdir}/libkdeinit_*.la - # - # add additional icon path (not needed anymore? we use cmake) - # - #mkdir -p ${RPM_BUILD_ROOT}/%{_tde_datadir}/kdelibs - #rm -f admin/*.orig - #cp -a admin ${RPM_BUILD_ROOT}/%{_tde_datadir}/kdelibs/ - # This is not needed on SUSE Linux! - Marcus Meissner - rm $RPM_BUILD_ROOT/%{_tde_bindir}/kgrantpty - # - # our version is in kdebase3 - # - rm -f $RPM_BUILD_ROOT/%{_tde_bindir}/fileshare* - # - # no sources for man pages - # - rm -f $RPM_BUILD_ROOT/%{_tde_htmldir}/en/kdelibs/man-* - # - # install BitTorrent icons - # - tar xfvz %SOURCE11 - for i in 16x16 22x22 32x32 48x48 64x64 128x128 ; do - install -m 0644 bt/$i/mimetypes/bt.png \ - $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/$i/mimetypes/torrent.png - done - cp CATALOG.%{name} catalog.xml ${RPM_BUILD_ROOT}/%{_tde_datadir}/ksgmltools2/customization/ - mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/xml - cp %{FOR_ROOT_CAT} ${RPM_BUILD_ROOT}%{_sysconfdir}/xml -# rm -f $RPM_BUILD_ROOT/%{_tde_libdir}/libkdefakes.la -# rm -f $RPM_BUILD_ROOT/%{_tde_libdir}/libkjava.la -rm -f $RPM_BUILD_ROOT/%{_tde_icondir}/hicolor/index.theme - # .desktop files in kdeaccessibility3 require the kttsd icon - for i in {16x16,22x22,32x32,48x48,64x64,128x128,scalable}; do mv $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/$i/apps/kttsd.* $RPM_BUILD_ROOT/%{_tde_icondir}/hicolor/$i/apps/;done - install -m 0644 %SOURCE14 $RPM_BUILD_ROOT/%{_tde_mimedir}/application/ - install -m 0644 %SOURCE15 $RPM_BUILD_ROOT/%{_tde_mimedir}/application/ - install -m 0644 %SOURCE16 $RPM_BUILD_ROOT/%{_tde_mimedir}/application/ - # fix bnc#396153 - for i in 16x16 22x22 32x32 48x48 64x64 128x128; do - ln -s %{_tde_icondir}/crystalsvg/$i/filesystems/network.png $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/$i/filesystems/preferences-system-network.png - ln -s %{_tde_icondir}/crystalsvg/$i/filesystems/desktop.png $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/$i/filesystems/preferences-desktop.png - done - chmod a-x $RPM_BUILD_ROOT/%{_tde_icondir}/crystalsvg/16x16/filesystems/file_broken.png - %fdupes -s $RPM_BUILD_ROOT - mkdir -p $RPM_BUILD_ROOT/etc/%{_tde_applicationsdir} - touch $RPM_BUILD_ROOT/etc/%{_tde_applicationsdir}/mimeinfo.cache - mkdir -p $RPM_BUILD_ROOT/%{_tde_applicationsdir} - touch $RPM_BUILD_ROOT/%{_tde_applicationsdir}/mimeinfo.cache -# Create /etc/ld.so.conf.d/kdelibs3.conf -mkdir -p $RPM_BUILD_ROOT/etc/ld.so.conf.d -cat > $RPM_BUILD_ROOT/etc/ld.so.conf.d/tdelibs.conf </dev/null 2>&1 - fi - if [ -x /usr/bin/edit-xml-catalog ]; then - edit-xml-catalog --group --catalog /etc/xml/suse-catalog.xml \ - --add /etc/xml/%{FOR_ROOT_CAT} - fi - -%postun doc - if [ "$1" = "0" -a -x %{regcat} ]; then - %{regcat} -r %{_tde_datadir}/ksgmltools2/customization/CATALOG.%{name} >/dev/null 2>&1 - fi - # remove entries only on removal of file - if [ ! -f %{xml_sysconf_dir}/%{FOR_ROOT_CAT} -a -x /usr/bin/edit-xml-catalog ] ; then - edit-xml-catalog --group --catalog /etc/xml/suse-catalog.xml \ - --del %{name}-%{version} - fi - exit 0 - -%clean - rm -rf ${RPM_BUILD_ROOT} - -%files default-style -%defattr(-,root,root) -%doc AUTHORS COPYING COPYING.BSD COPYING.LIB NAMING README -%{_tde_libdir}/libkdefx.so.* -%{_tde_libdir}/kde3/plugins/styles/plastik.* - -%files -%defattr(-,root,root) -%doc AUTHORS COPYING COPYING.BSD COPYING.LIB NAMING README -/etc/ld.so.conf.d/tdelibs.conf -%dir /etc/%{_tde_prefix} -%dir %{_tde_prefix} -%dir %{_tde_bindir} -%dir %{_tde_includedir} -%dir %{_tde_sharedir} -%dir %{_tde_configkcfgdir} -%_mandir/man*/* -%{_tde_bindir}/checkXML -%{_tde_bindir}/dcop -%{_tde_bindir}/dcopclient -%{_tde_bindir}/dcopfind -%{_tde_bindir}/dcopobject -%{_tde_bindir}/dcopref -%{_tde_bindir}/dcops* -%{_tde_bindir}/dcopquit -%{_tde_bindir}/imagetops -%{_tde_bindir}/ka* -%{_tde_bindir}/kbuildsycoca -%{_tde_bindir}/kco* -%{_tde_bindir}/kcmshell -%{_tde_bindir}/kded -%{_tde_bindir}/kdeinit* -%{_tde_bindir}/start_kdeinit -%{_tde_bindir}/start_kdeinit_wrapper -%{_tde_bindir}/kde-config -%{_tde_bindir}/kde-menu -%{_tde_bindir}/kdesu_stub -%{_tde_bindir}/kdontchangethehostname -%{_tde_bindir}/kfile -%{_tde_bindir}/ki* -%{_tde_bindir}/kfmexec -%{_tde_bindir}/klauncher -%{_tde_bindir}/kmailservice -%{_tde_bindir}/ktradertest -%{_tde_bindir}/knotify -%{_tde_bindir}/kstartupconfig -%{_tde_bindir}/kdostartupconfig -%verify(not mode) %{_tde_bindir}/kpac_dhcp_helper -%{_tde_bindir}/ksendbugmail -%{_tde_bindir}/kshell -%{_tde_bindir}/ktelnetservice -%{_tde_bindir}/kwrapper -%{_tde_bindir}/lnusertemp -%{_tde_bindir}/make_driver_db_lpr -%{_tde_bindir}/khotnewstuff -%{_tde_bindir}/makekdewidgets -%dir %{_tde_libdir} -%dir %{_tde_libdir}/kde3 -%{_tde_libdir}/kde3/dcopserver.* -%{_tde_libdir}/kde3/kaddprinterwizard.* -%{_tde_libdir}/kde3/kbuildsycoca.* -%{_tde_libdir}/kde3/kcmshell.* -%{_tde_libdir}/kde3/kcm_kresources.* -%{_tde_libdir}/kde3/kconf_update.* -%{_tde_libdir}/kde3/kcookiejar.* -%{_tde_libdir}/kde3/kded.* -%{_tde_libdir}/kde3/kded_proxyscout.* -%{_tde_libdir}/kde3/kfileaudiopreview.* -%{_tde_libdir}/kde3/klauncher.* -%{_tde_libdir}/kde3/knotify.* -%{_tde_libdir}/kde3/kabc* -%{_tde_libdir}/kde3/kbzip2filter.* -%{_tde_libdir}/kde3/kded_k* -%{_tde_libdir}/kde3/kdeprint_ext.* -%{_tde_libdir}/kde3/kdeprint_lp* -%{_tde_libdir}/kde3/kdeprint_rlpr.* -%{_tde_libdir}/kde3/kdeprint_tool_escputil.* -%{_tde_libdir}/kde3/kgzipfilter.* -%{_tde_libdir}/kde3/khtmlimagepart.* -%{_tde_libdir}/kde3/ki* -%{_tde_libdir}/kde3/kjavaappletviewer.* -%{_tde_libdir}/kde3/ktexteditor_* -%{_tde_libdir}/kde3/libk* -%{_tde_libdir}/kde3/kspell_* -%{_tde_libdir}/kde3/kstyle_plastik_config.* -%{_tde_libdir}/kde3/kstyle_highcontrast_config.* -%{_tde_libdir}/kde3/libshellscript.* -%exclude %{_tde_libdir}/kde3/plugins/styles/plastik.* -%{_tde_libdir}/kde3/plugins -%{_tde_libdir}/libDCOP.so.* -%exclude %{_tde_libdir}/libkdefx.so.* -%{_tde_libdir}/libk*.so.* -%{_tde_libdir}/libvcard.so.* -%{_tde_libdir}/libkdeinit*.so -%{_tde_libdir}/libnetworkstatus.so.* -%{_tde_libdir}/libconnectionmanager.so.* -%{_tde_libdir}/kde3/kded_networkstatus.* -%{_tde_appsdir} -%dir %{_tde_datadir} -%{_tde_datadir}/LICENSES -%{_tde_datadir}/ka* -%{_tde_datadir}/kc* -%dir %{_tde_datadir}/kdeprint -%{_tde_datadir}/kdeprint/apsdriver* -%{_tde_datadir}/kdeprint/filters -%{_tde_datadir}/kdeprint/icons -%{_tde_datadir}/kdeprint/lprngtooldriver1 -%{_tde_datadir}/kdeprint/pics -%dir %{_tde_datadir}/kdeprint/plugins -%{_tde_datadir}/kdeprint/plugins/ext.print -%{_tde_datadir}/kdeprint/plugins/lp*.print -%{_tde_datadir}/kdeprint/plugins/rlpr.print -%{_tde_datadir}/kdeprint/s* -%{_tde_datadir}/kdeprint/t* -%{_tde_datadir}/kdeui -%{_tde_datadir}/kdewidgets -%{_tde_datadir}/khtml -%{_tde_datadir}/kio_uiserver -%{_tde_datadir}/kjava -%{_tde_datadir}/knotify -%{_tde_datadir}/kssl -%{_tde_datadir}/kstyle -%{_tde_datadir}/ktexteditor_* -%{_tde_datadir}/proxyscout -%{_tde_datadir}/knewstuff -%{_tde_sharedir}/autostart -%{_tde_configdir} -%{_tde_sharedir}/emoticons -%{_tde_icondir}/icons -%{_tde_locale}/locale -%{_tde_mimedir}/mimelnk -%{_tde_sharedir}/service* -%config /etc/tderc -%{_tde_applicationsdir} -%{_tde_bindir}/cupsd* -%{_tde_bindir}/make_driver_db_cups -%{_tde_libdir}/kde3/kdeprint_cups.* -%{_tde_libdir}/kde3/cupsdconf.* -%{_tde_datadir}/kdeprint/cups* -%{_tde_datadir}/kdeprint/kde_logo.png -%{_tde_datadir}/kdeprint/plugins/cups.print -%{_tde_datadir}/kdeprint/preview* -%ifarch x86_64 ppc64 s390x mips64 sparc64 -%dir %{_tde_prefix}/lib -%dir %{_tde_prefix}/lib/kde3 -%{_tde_prefix}/lib/kde3/plugins-lib64 -%endif -/etc/xdg/menus -%dir /etc/%{_tde_prefix} -%dir /etc/%{_tde_sharedir} -%dir /etc/%{_tde_applicationsdir} -%ghost /etc/%{_tde_applicationsdir}/mimeinfo.cache -%dir %{_tde_prefix} -%dir %{_tde_sharedir} -%dir %{_tde_applicationsdir} -%ghost %{_tde_applicationsdir}/mimeinfo.cache - - -%files arts -%defattr(-,root,root) -%{_tde_bindir}/artsmessage -%{_tde_libdir}/libartskde.so.* - -%files doc -%defattr(-,root,root) -%doc %{_tde_docdir} -%{_tde_bindir}/meinproc -%{_tde_datadir}/ksgmltools2 -%config %{_sysconfdir}/xml/%{FOR_ROOT_CAT} - -%files devel -%defattr(-,root,root) -%dir %{_tde_datadir}/kdelibs -%{_tde_bindir}/dcopidl* -%{_tde_bindir}/kmimelist -%{_tde_bindir}/preparetips -%{_tde_bindir}/ksvgtopng -%{_tde_bindir}/kunittestmodrunner -#%{_tde_bindir}/MISC -%{_tde_includedir}/* -%{_tde_datadir}/dcopidlng -%{_tde_datadir}/kdelibs/admin -%{_tde_libdir}/libartskde.la -%{_tde_libdir}/libkunittest.la -%{_tde_libdir}/libkunittest.so -%{_tde_libdir}/libartskde.so -%{_tde_libdir}/libDCOP.so -%{_tde_libdir}/libvcard.so -%{_tde_libdir}/libvcard.la -%{_tde_libdir}/libDCOP.la -%{_tde_libdir}/lib*.a -%{_tde_libdir}/libkabc_dir.la -%{_tde_libdir}/libkabc_dir.so -%{_tde_libdir}/libkabc_file.la -%{_tde_libdir}/libkabc_file.so -%{_tde_libdir}/libkabc.la -%{_tde_libdir}/libkabc_ldapkio.la -%{_tde_libdir}/libkabc_ldapkio.so -%{_tde_libdir}/libkabc.so -%{_tde_libdir}/libkatepartinterfaces.la -%{_tde_libdir}/libkatepartinterfaces.so -%{_tde_libdir}/libkdecore.la -%{_tde_libdir}/libkdecore.so -%{_tde_libdir}/libkdefakes.la -%{_tde_libdir}/libkdefakes.so -%{_tde_libdir}/libkdefx.la -%{_tde_libdir}/libkdefx.so -%{_tde_libdir}/libkdemm.la -%{_tde_libdir}/libkdemm.so -%{_tde_libdir}/libkdeprint.la -%{_tde_libdir}/libkdeprint_management.la -%{_tde_libdir}/libkdeprint_management.so -%{_tde_libdir}/libkdeprint.so -%{_tde_libdir}/libkdesasl.la -%{_tde_libdir}/libkdesasl.so -%{_tde_libdir}/libkdesu.la -%{_tde_libdir}/libkdesu.so -%{_tde_libdir}/libkdeui.la -%{_tde_libdir}/libkdeui.so -%{_tde_libdir}/libkdnssd.la -%{_tde_libdir}/libkdnssd.so -%{_tde_libdir}/libkhtml.la -%{_tde_libdir}/libkhtml.so -%{_tde_libdir}/libkimproxy.la -%{_tde_libdir}/libkimproxy.so -%{_tde_libdir}/libkio.la -%{_tde_libdir}/libkio.so -%{_tde_libdir}/libkjava.la -%{_tde_libdir}/libkjava.so -%{_tde_libdir}/libkjs.la -%{_tde_libdir}/libkjs.so -%{_tde_libdir}/libkmdi2.la -%{_tde_libdir}/libkmdi2.so -%{_tde_libdir}/libkmdi.la -%{_tde_libdir}/libkmdi.so -%{_tde_libdir}/libkmediaplayer.la -%{_tde_libdir}/libkmediaplayer.so -%{_tde_libdir}/libkmid.la -%{_tde_libdir}/libkmid.so -%{_tde_libdir}/libknewstuff.la -%{_tde_libdir}/libknewstuff.so -%{_tde_libdir}/libkntlm.la -%{_tde_libdir}/libkntlm.so -%{_tde_libdir}/libkparts.la -%{_tde_libdir}/libkparts.so -%{_tde_libdir}/libkresources.la -%{_tde_libdir}/libkresources.so -%{_tde_libdir}/libkscreensaver.la -%{_tde_libdir}/libkscreensaver.so -%{_tde_libdir}/libkscript.la -%{_tde_libdir}/libkscript.so -%{_tde_libdir}/libkspell2.la -%{_tde_libdir}/libkspell2.so -%{_tde_libdir}/libkspell.la -%{_tde_libdir}/libkspell.so -%{_tde_libdir}/libktexteditor.la -%{_tde_libdir}/libktexteditor.so -%{_tde_libdir}/libkutils.la -%{_tde_libdir}/libkutils.so -%{_tde_libdir}/libkwalletbackend.la -%{_tde_libdir}/libkwalletbackend.so -%{_tde_libdir}/libkwalletclient.la -%{_tde_libdir}/libkwalletclient.so -%{_tde_libdir}/libnetworkstatus.la -%{_tde_libdir}/libnetworkstatus.so -%{_tde_libdir}/libconnectionmanager.la -%{_tde_libdir}/libconnectionmanager.so - -%changelog diff --git a/opensuse/core/tdelibs/textcompletion-editor.diff b/opensuse/core/tdelibs/textcompletion-editor.diff deleted file mode 100644 index d14776149..000000000 --- a/opensuse/core/tdelibs/textcompletion-editor.diff +++ /dev/null @@ -1,344 +0,0 @@ -Index: khtml/khtmlview.h -=================================================================== ---- khtml/khtmlview.h.orig -+++ khtml/khtmlview.h -@@ -314,6 +314,7 @@ private: - QStringList formCompletionItems(const QString &name) const; - void clearCompletionHistory(const QString& name); - void addFormCompletionItem(const QString &name, const QString &value); -+ void removeFormCompletionItem(const QString &name, const QString &value); - - void addNonPasswordStorableSite( const QString& host ); - bool nonPasswordStorableSite( const QString& host ) const; -Index: khtml/khtmlview.cpp -=================================================================== ---- khtml/khtmlview.cpp.orig -+++ khtml/khtmlview.cpp -@@ -3088,6 +3088,16 @@ void KHTMLView::addFormCompletionItem(co - d->formCompletions->writeEntry(name, items); - } - -+void KHTMLView::removeFormCompletionItem(const QString &name, const QString &value) -+{ -+ if (!m_part->settings()->isFormCompletionEnabled()) -+ return; -+ -+ QStringList items = formCompletionItems(name); -+ if (items.remove(value)) -+ d->formCompletions->writeEntry(name, items); -+} -+ - void KHTMLView::addNonPasswordStorableSite(const QString& host) - { - if (!d->formCompletions) { -Index: khtml/rendering/render_form.h -=================================================================== ---- khtml/rendering/render_form.h.orig -+++ khtml/rendering/render_form.h -@@ -272,10 +272,12 @@ private slots: - void spellCheckerMisspelling( const QString &text, const QStringList &, unsigned int pos); - void spellCheckerCorrected( const QString &, const QString &, unsigned int ); - void spellCheckerFinished(); -+ void slotRemoveFromHistory( const QString & ); - - private: - enum LineEditMenuID { -- ClearHistory -+ ClearHistory, -+ EditHistory - }; - DOM::HTMLInputElementImpl* m_input; - KHTMLView* m_view; -Index: khtml/rendering/render_form.cpp -=================================================================== ---- khtml/rendering/render_form.cpp.orig -+++ khtml/rendering/render_form.cpp -@@ -385,7 +385,9 @@ QPopupMenu *LineEditWidget::createPopupM - - if (m_input->autoComplete()) { - popup->insertSeparator(); -- int id = popup->insertItem( SmallIconSet("history_clear"), i18n("Clear &History"), ClearHistory ); -+ int id = popup->insertItem( SmallIconSet("edit"), i18n("&Edit History..."), EditHistory ); -+ popup->setItemEnabled( id, (compObj() && !compObj()->isEmpty()) ); -+ id = popup->insertItem( SmallIconSet("history_clear"), i18n("Clear &History"), ClearHistory ); - popup->setItemEnabled( id, (compObj() && !compObj()->isEmpty()) ); - } - -@@ -409,11 +411,25 @@ void LineEditWidget::extendedMenuActivat - m_view->clearCompletionHistory(m_input->name().string()); - if (compObj()) - compObj()->clear(); -+ case EditHistory: -+ { -+ KHistoryComboEditor dlg( compObj() ? compObj()->items() : QStringList(), this ); -+ connect( &dlg, SIGNAL( removeFromHistory(const QString&) ), SLOT( slotRemoveFromHistory(const QString&)) ); -+ dlg.exec(); -+ } - default: - break; - } - } - -+void LineEditWidget::slotRemoveFromHistory(const QString &entry) -+{ -+ m_view->removeFormCompletionItem(m_input->name().string(), entry); -+ if (compObj()) -+ compObj()->removeItem(entry); -+} -+ -+ - bool LineEditWidget::event( QEvent *e ) - { - if (KLineEdit::event(e)) -Index: kdeui/kcombobox.h -=================================================================== ---- kdeui/kcombobox.h.orig -+++ kdeui/kcombobox.h -@@ -24,8 +24,15 @@ - - #include - #include -+#include -+#include -+#include -+#include -+#include - - #include -+#include -+#include - - class QListBoxItem; - class QPopupMenu; -@@ -669,6 +676,12 @@ public: - */ - void reset() { slotReset(); } - -+ /** -+ * When enabling it you have to connect to "removed" signal and save changes -+ */ -+ void setHistoryEditorEnabled( bool enable ); -+ bool isHistoryEditorEnabled() const; -+ - public slots: - /** - * Adds an item to the end of the history list and to the completion list. -@@ -702,6 +715,8 @@ signals: - */ - void cleared(); - -+ void removed( const QString& item ); -+ - protected: - /** - * Handling key-events, the shortcuts to rotate the items. -@@ -741,10 +756,17 @@ private slots: - void slotClear(); - - /** -+ * Called from the popupmenu, -+ */ -+ void slotEdit(); -+ -+ /** - * Appends our own context menu entry. - */ - void addContextMenuItems( QPopupMenu* ); - -+ void slotRemoveFromHistory( const QString & ); -+ - private: - void init( bool useCompletion ); - void rotateUp(); -@@ -774,6 +796,30 @@ private: - KHistoryComboPrivate* const d; - }; - -+class KDEUI_EXPORT KHistoryComboEditor : public KDialogBase -+{ -+ Q_OBJECT -+ -+public: -+ KHistoryComboEditor( const QStringList& entries, QWidget *parent = 0L ); -+ ~KHistoryComboEditor(); -+ -+signals: -+ void removeFromHistory( const QString& ); -+ -+protected slots: -+ virtual void slotUser1(); // User1 is "Delete Entry" button -+ void slotSelectionChanged( QListViewItem * item ); -+ -+protected: -+ virtual void virtual_hook( int id, void* data ); -+ -+private: -+ KListView *m_pListView; -+ -+ class KHistoryComboEditorPrivate; -+ KHistoryComboEditorPrivate* const d; -+}; - - #endif - -Index: kdeui/kcombobox.cpp -=================================================================== ---- kdeui/kcombobox.cpp.orig -+++ kdeui/kcombobox.cpp -@@ -29,6 +29,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -343,10 +344,22 @@ void KComboBox::lineEditDeleted() - // ********************************************************************* - // ********************************************************************* - -+class KHistoryCombo::KHistoryComboPrivate -+{ -+public: -+ KHistoryComboPrivate() : bHistoryEditorEnabled(false) -+ { -+ } -+ ~KHistoryComboPrivate() -+ { -+ } -+ -+ bool bHistoryEditorEnabled; -+}; - - // we are always read-write - KHistoryCombo::KHistoryCombo( QWidget *parent, const char *name ) -- : KComboBox( true, parent, name ), d(0) -+ : KComboBox( true, parent, name ), d(new KHistoryComboPrivate) - { - init( true ); // using completion - } -@@ -354,7 +367,7 @@ KHistoryCombo::KHistoryCombo( QWidget *p - // we are always read-write - KHistoryCombo::KHistoryCombo( bool useCompletion, - QWidget *parent, const char *name ) -- : KComboBox( true, parent, name ), d(0) -+ : KComboBox( true, parent, name ), d(new KHistoryComboPrivate) - { - init( useCompletion ); - } -@@ -441,6 +454,10 @@ void KHistoryCombo::addContextMenuItems( - if ( menu ) - { - menu->insertSeparator(); -+ if (d->bHistoryEditorEnabled) { -+ int idedit = menu->insertItem( SmallIconSet("edit"), i18n("&Edit History..."), this, SLOT( slotEdit()) ); -+ menu->setItemEnabled(idedit, count()); -+ } - int id = menu->insertItem( SmallIconSet("history_clear"), i18n("Clear &History"), this, SLOT( slotClear())); - if (!count()) - menu->setItemEnabled(id, false); -@@ -677,10 +694,104 @@ void KHistoryCombo::slotClear() - emit cleared(); - } - -+void KHistoryCombo::slotEdit() -+{ -+ KHistoryComboEditor dlg( historyItems(), this ); -+ connect( &dlg, SIGNAL( removeFromHistory(const QString&) ), SLOT( slotRemoveFromHistory(const QString&)) ); -+ dlg.exec(); -+} -+ -+void KHistoryCombo::slotRemoveFromHistory(const QString &entry) -+{ -+ removeFromHistory(entry); -+ emit removed(entry); -+} -+ -+void KHistoryCombo::setHistoryEditorEnabled( bool enable ) -+{ -+ d->bHistoryEditorEnabled = enable; -+} -+ -+bool KHistoryCombo::isHistoryEditorEnabled() const -+{ -+ return d->bHistoryEditorEnabled; -+} -+ - void KComboBox::virtual_hook( int id, void* data ) - { KCompletionBase::virtual_hook( id, data ); } - - void KHistoryCombo::virtual_hook( int id, void* data ) - { KComboBox::virtual_hook( id, data ); } - -+void KHistoryComboEditor::virtual_hook( int id, void* data ) -+{ KDialogBase::virtual_hook( id, data ); } -+ -+KHistoryComboEditor::KHistoryComboEditor( const QStringList& entries, QWidget *parent ) -+: KDialogBase( parent, "khistorycomboeditor", true, i18n( "History Editor" ), -+ KDialogBase::Close | KDialogBase::User1, KDialogBase::User1, true, -+ KGuiItem( i18n( "&Delete Entry" ), "editdelete") ), d(0) -+{ -+ QVBox* box = new QVBox( this ); -+ box->setSpacing( KDialog::spacingHint() ); -+ setMainWidget( box ); -+ -+ new QLabel( i18n( "This dialog allows you to delete unwanted history items." ), box ); -+ -+ // Add searchline -+ QHBox* searchbox = new QHBox( box ); -+ searchbox->setSpacing( KDialog::spacingHint() ); -+ -+ QToolButton *clearSearch = new QToolButton(searchbox); -+ clearSearch->setTextLabel(i18n("Clear Search"), true); -+ clearSearch->setIconSet(SmallIconSet(QApplication::reverseLayout() ? "clear_left" : "locationbar_erase")); -+ QLabel* slbl = new QLabel(i18n("&Search:"), searchbox); -+ KListViewSearchLine* listViewSearch = new KListViewSearchLine(searchbox); -+ slbl->setBuddy(listViewSearch); -+ connect(clearSearch, SIGNAL(pressed()), listViewSearch, SLOT(clear())); -+ -+ // Add ListView -+ m_pListView = new KListView( box ); -+ listViewSearch->setListView(m_pListView); -+ m_pListView->setAllColumnsShowFocus(true); -+ m_pListView->header()->hide(); -+ m_pListView->addColumn(""); -+ m_pListView->setRenameable( 0 ); -+ -+ box->setStretchFactor( m_pListView, 1 ); -+ -+ QStringList newlist = entries; -+ for ( QStringList::Iterator it = newlist.begin(); it != newlist.end(); ++it ) { -+ new QListViewItem( m_pListView, *it ); -+ } -+ -+ m_pListView->setMinimumSize( m_pListView->sizeHint() ); -+ -+ connect( m_pListView, SIGNAL( selectionChanged( QListViewItem * ) ), -+ this, SLOT( slotSelectionChanged( QListViewItem * ) ) ); -+ -+ enableButton( KDialogBase::User1, false ); -+ -+ resize( sizeHint() ); -+} -+ -+KHistoryComboEditor::~KHistoryComboEditor() -+{ -+} -+ -+void KHistoryComboEditor::slotUser1() // Delete button -+{ -+ QListViewItem *item = m_pListView->selectedItem(); -+ -+ if ( item ) { -+ emit removeFromHistory( item->text(0) ); -+ m_pListView->takeItem( item ); -+ enableButton( KDialogBase::User1, false ); -+ } -+} -+ -+void KHistoryComboEditor::slotSelectionChanged( QListViewItem * item ) -+{ -+ enableButton( KDialogBase::User1, item ); -+} -+ - #include "kcombobox.moc" diff --git a/opensuse/core/tdelibs/use-mediamanager.diff b/opensuse/core/tdelibs/use-mediamanager.diff deleted file mode 100644 index 007c40bd0..000000000 --- a/opensuse/core/tdelibs/use-mediamanager.diff +++ /dev/null @@ -1,44 +0,0 @@ -Index: kioslave/file/file.cc -=================================================================== ---- kioslave/file/file.cc.orig -+++ kioslave/file/file.cc -@@ -69,6 +69,7 @@ - #include - #include - -+#include - #include - #include - #include -@@ -1609,6 +1610,31 @@ void FileProtocol::unmount( const QStrin - #endif /* HAVE_VOLMGT */ - - err = testLogFile( tmp ); -+ -+ if (err.contains("fstab") || err.contains("root")) { -+ QString olderr; -+ err = QString::null; -+ -+ DCOPRef d("kded", "mediamanager"); -+ d.setDCOPClient ( dcopClient() ); -+ DCOPReply reply = d.call("properties", _point); -+ QString udi; -+ -+ if ( reply.isValid() ) { -+ QStringList list = reply; -+ if (list.size()) -+ udi = list[0]; -+ } -+ -+ if (!udi.isEmpty()) -+ reply = d.call("unmount", udi); -+ -+ if (udi.isEmpty() || !reply.isValid()) -+ err = olderr; -+ else if (reply.isValid()) -+ reply.get(err); -+ } -+ - if ( err.isEmpty() ) - finished(); - else diff --git a/opensuse/core/tdelibs/use-xauthlocalhostname.diff b/opensuse/core/tdelibs/use-xauthlocalhostname.diff deleted file mode 100644 index 42ef39b9c..000000000 --- a/opensuse/core/tdelibs/use-xauthlocalhostname.diff +++ /dev/null @@ -1,240 +0,0 @@ -Index: kinit/wrapper.c -=================================================================== ---- kinit/wrapper.c.orig -+++ kinit/wrapper.c -@@ -164,7 +164,9 @@ static int openSocket() - sock_file[strlen(sock_file)-1] = 0; - - strncat(sock_file, "/socket-", MAX_SOCK_FILE - strlen(sock_file)); -- if (gethostname(sock_file+strlen(sock_file), MAX_SOCK_FILE - strlen(sock_file) - 1) != 0) -+ if( getenv("XAUTHLOCALHOSTNAME")) -+ strncat(sock_file, getenv("XAUTHLOCALHOSTNAME"), MAX_SOCK_FILE - strlen(sock_file) - 1); -+ else if (gethostname(sock_file+strlen(sock_file), MAX_SOCK_FILE - strlen(sock_file) - 1) != 0) - { - perror("Warning: Could not determine hostname: "); - return -1; -Index: kinit/lnusertemp.c -=================================================================== ---- kinit/lnusertemp.c.orig -+++ kinit/lnusertemp.c -@@ -39,7 +39,7 @@ - - int check_tmp_dir(const char *tmp_dir); - int create_link(const char *file, const char *tmp_dir); --int build_link(const char *tmp_prefix, const char *kde_prefix); -+int build_link(const char *tmp_prefix, const char *kde_prefix, int kdehostname); - - int check_tmp_dir(const char *tmp_dir) - { -@@ -89,7 +89,7 @@ int create_link(const char *file, const - } - - --int build_link(const char *tmp_prefix, const char *kde_prefix) -+int build_link(const char *tmp_prefix, const char *kde_prefix, int kdehostname) - { - struct passwd *pw_ent; - char kde_tmp_dir[PATH_MAX+1]; -@@ -157,10 +157,21 @@ int build_link(const char *tmp_prefix, c - } - - strncat(kde_tmp_dir, kde_prefix, PATH_MAX - strlen(kde_tmp_dir)); -- if (gethostname(kde_tmp_dir+strlen(kde_tmp_dir), PATH_MAX - strlen(kde_tmp_dir) - 1) != 0) -+ -+ if( kdehostname ) -+ { -+ if( getenv("XAUTHLOCALHOSTNAME")) -+ strncat(kde_tmp_dir+strlen(kde_tmp_dir), getenv("XAUTHLOCALHOSTNAME"), PATH_MAX - strlen(kde_tmp_dir) - 1); -+ else -+ return 0; -+ } -+ else - { -- perror("Aborting. Could not determine hostname: "); -- exit(255); -+ if (gethostname(kde_tmp_dir+strlen(kde_tmp_dir), PATH_MAX - strlen(kde_tmp_dir) - 1) != 0) -+ { -+ perror("Could not determine hostname: "); -+ return 1; -+ } - } - kde_tmp_dir[sizeof(kde_tmp_dir)-1] = '\0'; - -@@ -266,7 +277,9 @@ int main(int argc, char **argv) - kde_prefix = "/cache-"; - } - -- res = build_link(tmp_prefix, kde_prefix); -+ res = build_link(tmp_prefix, kde_prefix, 1); -+ if( build_link(tmp_prefix, kde_prefix, 0)) -+ res = 1; - - free(tmp_prefix); - -Index: kdecore/kstandarddirs.cpp -=================================================================== ---- kdecore/kstandarddirs.cpp.orig -+++ kdecore/kstandarddirs.cpp -@@ -719,7 +719,10 @@ void KStandardDirs::createSpecialResourc - { - char hostname[256]; - hostname[0] = 0; -- gethostname(hostname, 255); -+ if( getenv("XAUTHLOCALHOSTNAME")) -+ strlcpy(hostname, getenv("XAUTHLOCALHOSTNAME"), 255 ); -+ else -+ gethostname(hostname, 255); - QString dir = QString("%1%2-%3").arg(localkdedir()).arg(type).arg(hostname); - char link[1024]; - link[1023] = 0; -Index: kdecore/kcrash.cpp -=================================================================== ---- kdecore/kcrash.cpp.orig -+++ kdecore/kcrash.cpp -@@ -466,7 +466,9 @@ static int openSocket() - sock_file[strlen(sock_file)-1] = 0; - - strncat(sock_file, "/socket-", MAX_SOCK_FILE - strlen(sock_file)); -- if (gethostname(sock_file+strlen(sock_file), MAX_SOCK_FILE - strlen(sock_file) - 1) != 0) -+ if( getenv("XAUTHLOCALHOSTNAME")) -+ strncat(sock_file, getenv("XAUTHLOCALHOSTNAME"), MAX_SOCK_FILE - strlen(sock_file) - 1); -+ else if (gethostname(sock_file+strlen(sock_file), MAX_SOCK_FILE - strlen(sock_file) - 1) != 0) - { - perror("Warning: Could not determine hostname: "); - return -1; -Index: dcop/dcopserver_shutdown.c -=================================================================== ---- dcop/dcopserver_shutdown.c.orig -+++ dcop/dcopserver_shutdown.c -@@ -95,7 +95,9 @@ static void getDCOPFile(char *dcop_file, - strncat(dcop_file, "/.DCOPserver_", n); - n -= strlen("/.DCOPserver_"); - -- if (gethostname(dcop_file+strlen(dcop_file), n) != 0) -+ if (getenv("XAUTHLOCALHOSTNAME")) -+ strncat(dcop_file+strlen(dcop_file), getenv("XAUTHLOCALHOSTNAME"), n); -+ else if (gethostname(dcop_file+strlen(dcop_file), n) != 0) - { - perror("Error. Could not determine hostname: "); - dcop_file[0] = '\0'; -Index: dcop/dcopc.c -=================================================================== ---- dcop/dcopc.c.orig -+++ dcop/dcopc.c -@@ -684,7 +684,9 @@ dcop_connect() - } - - hostName[0] = '\0'; -- if (gethostname(hostName, sizeof(hostName))) -+ if (getenv("XAUTHLOCALHOSTNAME")) -+ strlcpy(hostName, getenv("XAUTHLOCALHOSTNAME"),sizeof(hostName)-1); -+ else if (gethostname(hostName, sizeof(hostName))) - strcpy(hostName, "localhost"); - else - hostName[sizeof(hostName)-1] = '\0'; -Index: dcop/dcopclient.cpp -=================================================================== ---- dcop/dcopclient.cpp.orig -+++ dcop/dcopclient.cpp -@@ -277,7 +277,9 @@ static QCString dcopServerFile(const QCS - { - char hostName[256]; - hostName[0] = '\0'; -- if (gethostname(hostName, sizeof(hostName))) -+ if (getenv("XAUTHLOCALHOSTNAME")) -+ fName += getenv("XAUTHLOCALHOSTNAME"); -+ else if (gethostname(hostName, sizeof(hostName))) - { - fName += "localhost"; - } -Index: dcop/KDE-ICE/Xtranssock.c -=================================================================== ---- dcop/KDE-ICE/Xtranssock.c.orig -+++ dcop/KDE-ICE/Xtranssock.c -@@ -1444,6 +1444,7 @@ UnixHostReallyLocal (char *host) - - { - char hostnamebuf[256]; -+ char* xauthlocalname = getenv("XAUTHLOCALHOSTNAME"); - - TRANS(GetHostname) (hostnamebuf, sizeof (hostnamebuf)); - -@@ -1451,6 +1452,10 @@ UnixHostReallyLocal (char *host) - { - return (1); - } -+ else if(xauthlocalname && strcmp (xauthlocalname, host) == 0) -+ { -+ return (1); -+ } - else - { - /* -Index: kded/khostname.cpp -=================================================================== ---- kded/khostname.cpp.orig -+++ kded/khostname.cpp -@@ -111,7 +111,8 @@ static QCStringList split(const QCString - - void KHostName::changeX() - { -- QString cmd = "xauth list"; -+ const char* xauthlocalhostname = getenv("XAUTHLOCALHOSTNAME"); -+ QString cmd = "xauth -n list"; - FILE *xFile = popen(QFile::encodeName(cmd), "r"); - if (!xFile) - { -@@ -123,6 +124,7 @@ void KHostName::changeX() - char buf[1024+1]; - while (!feof(xFile)) - { -+ buf[1024]='\0'; - QCString line = fgets(buf, 1024, xFile); - if (line.length()) - line.truncate(line.length()-1); // Strip LF. -@@ -157,12 +159,17 @@ void KHostName::changeX() - QCString newNetId = newName+netId.mid(i); - QCString oldNetId = netId.left(i); - -- if(oldNetId != oldName) -- continue; -+ if(oldNetId != oldName -+ && (!xauthlocalhostname || strcmp(xauthlocalhostname, oldNetId.data()) != 0)) -+ continue; - -- cmd = "xauth remove "+KProcess::quote(netId); -- system(QFile::encodeName(cmd)); -- cmd = "xauth add "; -+ // don't nuke the xauth when XAUTHLOCALHOSTNAME points to it -+ if (!xauthlocalhostname || oldNetId != xauthlocalhostname) -+ { -+ cmd = "xauth -n remove "+KProcess::quote(netId); -+ system(QFile::encodeName(cmd)); -+ } -+ cmd = "xauth -n add "; - cmd += KProcess::quote(newNetId); - cmd += " "; - cmd += KProcess::quote(authName); -@@ -276,7 +283,10 @@ void KHostName::changeDcop() - } - } - -- // Remove old entries -+ // Remove old entries, but only if XAUTHLOCALHOSTNAME doesn't point -+ // to it -+ char* xauthlocalhostname = getenv("XAUTHLOCALHOSTNAME"); -+ if (!xauthlocalhostname || !oldNetId.contains(xauthlocalhostname)) - { - QString cmd = "iceauth remove "+KProcess::quote("netid="+oldNetId); - system(QFile::encodeName(cmd)); -@@ -368,9 +378,7 @@ int main(int argc, char **argv) - - KHostName hn; - -- if(!getenv("XAUTHLOCALHOSTNAME")) -- hn.changeX(); -- -+ hn.changeX(); - hn.changeDcop(); - hn.changeStdDirs("socket"); - hn.changeStdDirs("tmp"); diff --git a/opensuse/core/tdelibs/x-kde-InitialPreference.diff b/opensuse/core/tdelibs/x-kde-InitialPreference.diff deleted file mode 100644 index d95df7a2c..000000000 --- a/opensuse/core/tdelibs/x-kde-InitialPreference.diff +++ /dev/null @@ -1,16 +0,0 @@ -Index: kio/kio/kservice.cpp -=================================================================== ---- kio/kio/kservice.cpp.orig -+++ kio/kio/kservice.cpp -@@ -249,7 +249,10 @@ KService::init( KDesktopFile *config ) - m_bAllowAsDefault = config->readBoolEntry( "AllowDefault", true ); - entryMap.remove("AllowDefault"); - -- m_initialPreference = config->readNumEntry( "InitialPreference", 1 ); -+ m_initialPreference = config->readNumEntry( "X-KDE-InitialPreference", 1 ); -+ entryMap.remove("X-KDE-InitialPreference"); -+ if ( m_initialPreference == 1 ) -+ m_initialPreference = config->readNumEntry( "InitialPreference", 1 ); - entryMap.remove("InitialPreference"); - - // Store all additional entries in the property map. diff --git a/opensuse/core/tdelibs/xinerama.patch b/opensuse/core/tdelibs/xinerama.patch deleted file mode 100644 index dec878b40..000000000 --- a/opensuse/core/tdelibs/xinerama.patch +++ /dev/null @@ -1,543 +0,0 @@ -Index: kio/kio/krun.h -=================================================================== ---- kio/kio/krun.h.orig -+++ kio/kio/krun.h -@@ -111,6 +111,8 @@ public: - */ - KRun( const KURL& url, QWidget* window, mode_t mode = 0, - bool isLocalFile = false, bool showProgressInfo = true ); -+ KRun( const KURL& url, QWidget* window, const QCString& asn, mode_t mode = 0, -+ bool isLocalFile = false, bool showProgressInfo = true ); - - /** - * Destructor. Don't call it yourself, since a KRun object auto-deletes -@@ -210,6 +212,8 @@ public: - * @since 3.5.2 - */ - static pid_t run( const KService& _service, const KURL::List& _urls, QWidget* window, bool tempFiles = false ); -+ static pid_t run( const KService& _service, const KURL::List& _urls, QWidget* window, -+ const QCString& asn, bool tempFiles = false ); - /** - * Open a list of URLs with a certain service (application). - * -@@ -226,6 +230,8 @@ public: - /// @since 3.5.3 - /// @internal - static pid_t run( const KService& _service, const KURL::List& _urls, QWidget* window, bool tempFiles, const QString& suggestedFileName ); -+ static pid_t run( const KService& _service, const KURL::List& _urls, QWidget* window, -+ const QCString& asn, bool tempFiles, const QString& suggestedFileName ); - - /** - * Open a list of URLs with. -@@ -269,6 +275,7 @@ public: - static pid_t runURL( const KURL& _url, const QString& _mimetype ); - /// @since 3.5.3 - /// @internal -+ static pid_t runURL( const KURL& _url, const QString& _mimetype, QWidget* window, const QCString& asn, bool tempFile, bool runExecutables, const QString& suggestedFileName ); - static pid_t runURL( const KURL& _url, const QString& _mimetype, bool tempFile, bool runExecutables, const QString& suggestedFileName ); - - /** -@@ -299,6 +306,8 @@ public: - * of running command) if command was unsafe for map notification. - */ - static pid_t runCommand( const QString& cmd, const QString & execName, const QString & icon ); -+ static pid_t runCommand( const QString& cmd, const QString & execName, const QString & icon, -+ QWidget* window, const QCString& asn ); - - /** - * Display the Open-With dialog for those URLs, and run the chosen application. -@@ -438,7 +447,7 @@ protected: - virtual void virtual_hook( int id, void* data ); - - private: -- void init (const KURL& url, QWidget* window, mode_t mode, -+ void init (const KURL& url, QWidget* window, const QCString& asn, mode_t mode, - bool isLocalFile, bool showProgressInfo); - private: - class KRunPrivate; -Index: kio/kio/krun.cpp -=================================================================== ---- kio/kio/krun.cpp.orig -+++ kio/kio/krun.cpp -@@ -77,6 +77,7 @@ public: - QString m_localPath; - QString m_suggestedFileName; - QGuardedPtr m_window; -+ QCString m_asn; - }; - - pid_t KRun::runURL( const KURL& u, const QString& _mimetype ) -@@ -109,14 +110,20 @@ bool KRun::isExecutableFile( const KURL& - return false; - } - --// This is called by foundMimeType, since it knows the mimetype of the URL - pid_t KRun::runURL( const KURL& u, const QString& _mimetype, bool tempFile, bool runExecutables, const QString& suggestedFileName ) - { -+ return runURL( u, _mimetype, NULL, "", tempFile, runExecutables, suggestedFileName ); -+} -+ -+// This is called by foundMimeType, since it knows the mimetype of the URL -+pid_t KRun::runURL( const KURL& u, const QString& _mimetype, QWidget* window, const QCString& asn, -+ bool tempFile, bool runExecutables, const QString& suggestedFileName ) -+{ - bool noRun = false; - bool noAuth = false; - if ( _mimetype == "inode/directory-locked" ) - { -- KMessageBoxWrapper::error( 0L, -+ KMessageBoxWrapper::error( window, - i18n("Unable to enter %1.\nYou do not have access rights to this location.").arg(u.htmlURL()) ); - return 0; - } -@@ -133,7 +140,7 @@ pid_t KRun::runURL( const KURL& u, const - { - QString path = u.path(); - shellQuote( path ); -- return (KRun::runCommand(path)); // just execute the url as a command -+ return (KRun::runCommand(path, QString::null, QString::null, window, asn)); // just execute the url as a command - // ## TODO implement deleting the file if tempFile==true - } - else -@@ -155,14 +162,14 @@ pid_t KRun::runURL( const KURL& u, const - - if ( noRun ) - { -- KMessageBox::sorry( 0L, -+ KMessageBox::sorry( window, - i18n("The file %1 is an executable program. " - "For safety it will not be started.").arg(u.htmlURL())); - return 0; - } - if ( noAuth ) - { -- KMessageBoxWrapper::error( 0L, -+ KMessageBoxWrapper::error( window, - i18n("You do not have permission to run %1.").arg(u.htmlURL()) ); - return 0; - } -@@ -182,7 +189,7 @@ pid_t KRun::runURL( const KURL& u, const - return displayOpenWithDialog( lst, tempFile, suggestedFileName ); - } - -- return KRun::run( *offer, lst, 0 /*window*/, tempFile, suggestedFileName ); -+ return KRun::run( *offer, lst, window, asn, tempFile, suggestedFileName ); - } - - bool KRun::displayOpenWithDialog( const KURL::List& lst ) -@@ -536,13 +543,13 @@ QString KRun::binaryName( const QString - } - - static pid_t runCommandInternal( KProcess* proc, const KService* service, const QString& binName, -- const QString &execName, const QString & iconName ) -+ const QString &execName, const QString & iconName, QWidget* window, QCString asn ) - { - if (service && !service->desktopEntryPath().isEmpty() - && !KDesktopFile::isAuthorizedDesktopFile( service->desktopEntryPath() )) - { - kdWarning() << "No authorization to execute " << service->desktopEntryPath() << endl; -- KMessageBox::sorry(0, i18n("You are not authorized to execute this file.")); -+ KMessageBox::sorry(window, i18n("You are not authorized to execute this file.")); - return 0; - } - QString bin = KRun::binaryName( binName, true ); -@@ -550,10 +557,10 @@ static pid_t runCommandInternal( KProces - bool silent; - QCString wmclass; - KStartupInfoId id; -- bool startup_notify = KRun::checkStartupNotify( binName, service, &silent, &wmclass ); -+ bool startup_notify = ( asn != "0" && KRun::checkStartupNotify( binName, service, &silent, &wmclass )); - if( startup_notify ) - { -- id.initId(); -+ id.initId( asn ); - id.setupStartupEnv(); - KStartupInfoData data; - data.setHostname(); -@@ -572,6 +579,8 @@ static pid_t runCommandInternal( KProces - if( silent ) - data.setSilent( KStartupInfoData::Yes ); - data.setDesktop( KWin::currentDesktop()); -+ if( window ) -+ data.setLaunchedBy( window->winId()); - KStartupInfo::sendStartup( id, data ); - } - pid_t pid = KProcessRunner::run( proc, binName, id ); -@@ -635,7 +644,8 @@ bool KRun::checkStartupNotify( const QSt - return true; - } - --static pid_t runTempService( const KService& _service, const KURL::List& _urls, bool tempFiles, const QString& suggestedFileName ) -+static pid_t runTempService( const KService& _service, const KURL::List& _urls, QWidget* window, -+ const QCString& asn, bool tempFiles, const QString& suggestedFileName ) - { - if (!_urls.isEmpty()) { - kdDebug(7010) << "runTempService: first url " << _urls.first().url() << endl; -@@ -654,7 +664,7 @@ static pid_t runTempService( const KServ - { - KURL::List singleUrl; - singleUrl.append(*it); -- runTempService( _service, singleUrl, tempFiles, suggestedFileName ); -+ runTempService( _service, singleUrl, window, "", tempFiles, suggestedFileName ); - } - KURL::List singleUrl; - singleUrl.append(_urls.first()); -@@ -673,7 +683,7 @@ static pid_t runTempService( const KServ - proc->setWorkingDirectory(_service.path()); - - return runCommandInternal( proc, &_service, KRun::binaryName( _service.exec(), false ), -- _service.name(), _service.icon() ); -+ _service.name(), _service.icon(), window, asn ); - } - - // WARNING: don't call this from processDesktopExec, since klauncher uses that too... -@@ -734,11 +744,22 @@ pid_t KRun::run( const KService& _servic - - pid_t KRun::run( const KService& _service, const KURL::List& _urls, QWidget* window, bool tempFiles ) - { -- return run( _service, _urls, window, tempFiles, QString::null ); -+ return run( _service, _urls, window, "", tempFiles, QString::null ); -+} -+ -+pid_t KRun::run( const KService& _service, const KURL::List& _urls, QWidget* window, const QCString& asn, bool tempFiles ) -+{ -+ return run( _service, _urls, window, asn, tempFiles, QString::null ); - } - - pid_t KRun::run( const KService& _service, const KURL::List& _urls, QWidget* window, bool tempFiles, const QString& suggestedFileName ) - { -+ return run( _service, _urls, window, "", tempFiles, suggestedFileName ); -+} -+ -+pid_t KRun::run( const KService& _service, const KURL::List& _urls, QWidget* window, const QCString& asn, -+ bool tempFiles, const QString& suggestedFileName ) -+{ - if (!_service.desktopEntryPath().isEmpty() && - !KDesktopFile::isAuthorizedDesktopFile( _service.desktopEntryPath())) - { -@@ -759,7 +780,7 @@ pid_t KRun::run( const KService& _servic - - if ( tempFiles || _service.desktopEntryPath().isEmpty() || !suggestedFileName.isEmpty() ) - { -- return runTempService(_service, _urls, tempFiles, suggestedFileName); -+ return runTempService(_service, _urls, window, asn, tempFiles, suggestedFileName); - } - - kdDebug(7010) << "KRun::run " << _service.desktopEntryPath() << endl; -@@ -773,9 +794,25 @@ pid_t KRun::run( const KService& _servic - - QString error; - int pid = 0; -- -+ -+ QCString myasn = asn; -+ // startServiceByDesktopPath() doesn't take QWidget*, add it to the startup info now -+ if( window != NULL ) -+ { -+ if( myasn.isEmpty()) -+ myasn = KStartupInfo::createNewStartupId(); -+ if( myasn != "0" ) -+ { -+ KStartupInfoId id; -+ id.initId( myasn ); -+ KStartupInfoData data; -+ data.setLaunchedBy( window->winId()); -+ KStartupInfo::sendChange( id, data ); -+ } -+ } -+ - int i = KApplication::startServiceByDesktopPath( -- _service.desktopEntryPath(), urls.toStringList(), &error, 0L, &pid -+ _service.desktopEntryPath(), urls.toStringList(), &error, 0L, &pid, myasn - ); - - if (i != 0) -@@ -800,33 +837,47 @@ pid_t KRun::run( const QString& _exec, c - - pid_t KRun::runCommand( QString cmd ) - { -- return KRun::runCommand( cmd, QString::null, QString::null ); -+ return KRun::runCommand( cmd, QString::null, QString::null, NULL, "" ); - } - - pid_t KRun::runCommand( const QString& cmd, const QString &execName, const QString & iconName ) - { -+ return KRun::runCommand( cmd, execName, iconName, NULL, "" ); -+} -+ -+pid_t KRun::runCommand( const QString& cmd, const QString &execName, const QString & iconName, -+ QWidget* window, const QCString& asn ) -+{ - kdDebug(7010) << "runCommand " << cmd << "," << execName << endl; - KProcess * proc = new KProcess; - proc->setUseShell(true); - *proc << cmd; - KService::Ptr service = KService::serviceByDesktopName( binaryName( execName, true ) ); -- return runCommandInternal( proc, service.data(), binaryName( execName, false ), execName, iconName ); -+ return runCommandInternal( proc, service.data(), binaryName( execName, false ), execName, iconName, -+ window, asn ); - } - - KRun::KRun( const KURL& url, mode_t mode, bool isLocalFile, bool showProgressInfo ) - :m_timer(0,"KRun::timer") - { -- init (url, 0, mode, isLocalFile, showProgressInfo); -+ init (url, 0, "", mode, isLocalFile, showProgressInfo); - } - - KRun::KRun( const KURL& url, QWidget* window, mode_t mode, bool isLocalFile, - bool showProgressInfo ) - :m_timer(0,"KRun::timer") - { -- init (url, window, mode, isLocalFile, showProgressInfo); -+ init (url, window, "", mode, isLocalFile, showProgressInfo); -+} -+ -+KRun::KRun( const KURL& url, QWidget* window, const QCString& asn, mode_t mode, bool isLocalFile, -+ bool showProgressInfo ) -+ :m_timer(0,"KRun::timer") -+{ -+ init (url, window, asn, mode, isLocalFile, showProgressInfo); - } - --void KRun::init ( const KURL& url, QWidget* window, mode_t mode, bool isLocalFile, -+void KRun::init ( const KURL& url, QWidget* window, const QCString& asn, mode_t mode, bool isLocalFile, - bool showProgressInfo ) - { - m_bFault = false; -@@ -842,6 +893,7 @@ void KRun::init ( const KURL& url, QWidg - d = new KRunPrivate; - d->m_runExecutables = true; - d->m_window = window; -+ d->m_asn = asn; - setEnableExternalBrowser(true); - - // Start the timer. This means we will return to the event -@@ -942,7 +994,7 @@ void KRun::init() - KService::Ptr service = KService::serviceByStorageId( exec ); - if (service) - { -- run( *service, urls ); -+ run( *service, urls, d->m_window, d->m_asn ); - ok = true; - } - } -@@ -1235,7 +1287,7 @@ void KRun::foundMimeType( const QString& - { - KURL::List lst; - lst.append( m_strURL ); -- m_bFinished = KRun::run( *serv, lst ); -+ m_bFinished = KRun::run( *serv, lst, d->m_window, d->m_asn ); - /// Note: the line above means that if that service failed, we'll - /// go to runURL to maybe find another service, even though a dialog - /// box was displayed. That's good if runURL tries another service, -@@ -1250,7 +1302,7 @@ void KRun::foundMimeType( const QString& - m_strURL.setPath( d->m_localPath ); - } - -- if (!m_bFinished && KRun::runURL( m_strURL, type, false, d->m_runExecutables, d->m_suggestedFileName )){ -+ if (!m_bFinished && KRun::runURL( m_strURL, type, d->m_window, d->m_asn, false, d->m_runExecutables, d->m_suggestedFileName )){ - m_bFinished = true; - } - else{ -Index: kdecore/kstartupinfo.cpp -=================================================================== ---- kdecore/kstartupinfo.cpp.orig -+++ kdecore/kstartupinfo.cpp -@@ -1109,7 +1109,7 @@ unsigned long KStartupInfoId::timestamp( - struct KStartupInfoDataPrivate - { - KStartupInfoDataPrivate() : desktop( 0 ), wmclass( "" ), hostname( "" ), -- silent( KStartupInfoData::Unknown ), timestamp( -1U ), screen( -1 ) {} -+ silent( KStartupInfoData::Unknown ), timestamp( -1U ), screen( -1 ), xinerama( -1 ), launched_by( 0 ) {} - QString bin; - QString name; - QString description; -@@ -1121,6 +1121,8 @@ struct KStartupInfoDataPrivate - KStartupInfoData::TriState silent; - unsigned long timestamp; - int screen; -+ int xinerama; -+ WId launched_by; - }; - - QString KStartupInfoData::to_text() const -@@ -1151,6 +1153,10 @@ QString KStartupInfoData::to_text() cons - ret += QString::fromLatin1( " TIMESTAMP=%1" ).arg( d->timestamp ); - if( d->screen != -1 ) - ret += QString::fromLatin1( " SCREEN=%1" ).arg( d->screen ); -+ if( d->xinerama != -1 ) -+ ret += QString::fromLatin1( " XINERAMA=%1" ).arg( d->xinerama ); -+ if( d->launched_by != 0 ) -+ ret += QString::fromLatin1( " LAUNCHED_BY=%1" ).arg( d->launched_by ); - return ret; - } - -@@ -1169,6 +1175,8 @@ KStartupInfoData::KStartupInfoData( cons - const QString silent_str = QString::fromLatin1( "SILENT=" ); - const QString timestamp_str = QString::fromLatin1( "TIMESTAMP=" ); - const QString screen_str = QString::fromLatin1( "SCREEN=" ); -+ const QString xinerama_str = QString::fromLatin1( "XINERAMA=" ); -+ const QString launched_by_str = QString::fromLatin1( "LAUNCHED_BY=" ); - for( QStringList::Iterator it = items.begin(); - it != items.end(); - ++it ) -@@ -1199,6 +1207,10 @@ KStartupInfoData::KStartupInfoData( cons - d->timestamp = get_unum( *it ); - else if( ( *it ).startsWith( screen_str )) - d->screen = get_num( *it ); -+ else if( ( *it ).startsWith( xinerama_str )) -+ d->xinerama = get_num( *it ); -+ else if( ( *it ).startsWith( launched_by_str )) -+ d->launched_by = get_num( *it ); - } - } - -@@ -1242,6 +1254,10 @@ void KStartupInfoData::update( const KSt - d->timestamp = data_P.timestamp(); - if( data_P.screen() != -1 ) - d->screen = data_P.screen(); -+ if( data_P.xinerama() != -1 && xinerama() != -1 ) // don't overwrite -+ d->xinerama = data_P.xinerama(); -+ if( data_P.launchedBy() != 0 && launchedBy() != 0 ) // don't overwrite -+ d->launched_by = data_P.launchedBy(); - } - - KStartupInfoData::KStartupInfoData() -@@ -1412,6 +1428,26 @@ int KStartupInfoData::screen() const - return d->screen; - } - -+void KStartupInfoData::setXinerama( int xinerama ) -+ { -+ d->xinerama = xinerama; -+ } -+ -+int KStartupInfoData::xinerama() const -+ { -+ return d->xinerama; -+ } -+ -+void KStartupInfoData::setLaunchedBy( WId window ) -+ { -+ d->launched_by = window; -+ } -+ -+WId KStartupInfoData::launchedBy() const -+ { -+ return d->launched_by; -+ } -+ - static - long get_num( const QString& item_P ) - { -Index: kdecore/netwm_def.h -=================================================================== ---- kdecore/netwm_def.h.orig -+++ kdecore/netwm_def.h -@@ -610,6 +610,7 @@ public: - WM2WindowRole = 1<<11, ///< @since 3.3 - WM2ClientMachine = 1<<12, ///< @since 3.3 - WM2ShowingDesktop = 1<<13, ///< @since 3.5 -+ WM2FullPlacement = 1<<14, - WM2DesktopLayout = 1<<15 ///< @since 3.5.8 - }; - -Index: kdecore/netwm.cpp -=================================================================== ---- kdecore/netwm.cpp.orig -+++ kdecore/netwm.cpp -@@ -145,6 +145,9 @@ static Atom net_wm_state_stays_on_top = - // used to determine whether application window is managed or not - static Atom xa_wm_state = 0; - -+// ability flags -+static Atom net_wm_full_placement = 0; -+ - static Bool netwm_atoms_created = False; - const unsigned long netwm_sendevent_mask = (SubstructureRedirectMask| - SubstructureNotifyMask); -@@ -236,7 +239,7 @@ static int wcmp(const void *a, const voi - } - - --static const int netAtomCount = 84; -+static const int netAtomCount = 85; - static void create_atoms(Display *d) { - static const char * const names[netAtomCount] = - { -@@ -330,7 +333,9 @@ static void create_atoms(Display *d) { - "_KDE_NET_WM_TEMPORARY_RULES", - - "WM_STATE", -- "WM_PROTOCOLS" -+ "WM_PROTOCOLS", -+ -+ "_NET_WM_FULL_PLACEMENT" - }; - - Atom atoms[netAtomCount], *atomsp[netAtomCount] = -@@ -425,7 +430,9 @@ static void create_atoms(Display *d) { - &kde_net_wm_temporary_rules, - - &xa_wm_state, -- &wm_protocols -+ &wm_protocols, -+ -+ &net_wm_full_placement - }; - - assert( !netwm_atoms_created ); -@@ -1355,6 +1362,8 @@ void NETRootInfo::setSupported() { - - if (p->properties[ PROTOCOLS2 ] & WM2KDETemporaryRules) - atoms[pnum++] = kde_net_wm_temporary_rules; -+ if (p->properties[ PROTOCOLS2 ] & WM2FullPlacement) -+ atoms[pnum++] = net_wm_full_placement; - - XChangeProperty(p->display, p->root, net_supported, XA_ATOM, 32, - PropModeReplace, (unsigned char *) atoms, pnum); -@@ -1587,6 +1596,8 @@ void NETRootInfo::updateSupportedPropert - - else if( atom == kde_net_wm_temporary_rules ) - p->properties[ PROTOCOLS2 ] |= WM2KDETemporaryRules; -+ else if( atom == net_wm_full_placement ) -+ p->properties[ PROTOCOLS2 ] |= WM2FullPlacement; - } - - extern Time qt_x_user_time; -Index: kdecore/kstartupinfo.h -=================================================================== ---- kdecore/kstartupinfo.h.orig -+++ kdecore/kstartupinfo.h -@@ -635,6 +635,30 @@ class KDECORE_EXPORT KStartupInfoData - * This is usually not necessary to set, as it's set by default to qt_xscreen(). - */ - void setScreen( int screen ); -+ -+ /** -+ * The Xinerama screen for the startup notification, -1 if unknown. -+ */ -+ int xinerama() const; -+ -+ /** -+ * Sets the Xinerama screen for the startup notification ( i.e. the screeen on which -+ * the starting application should appear ). -+ * @param xinerama the Xinerama screen for the startup notification -+ */ -+ void setXinerama( int xinerama ); -+ -+ /** -+ * The toplevel window of the application that caused this startup notification, -+ * 0 if unknown. -+ */ -+ WId launchedBy() const; -+ -+ /** -+ * Sets the toplevel window of the application that caused this startup notification. -+ * @param window window ID of the toplevel window that is responsible for this startup -+ */ -+ void setLaunchedBy( WId window ); - - /** - * Updates the notification data from the given data. Some data, such as the desktop diff --git a/opensuse/core/tdelibs/xml-catalog.diff b/opensuse/core/tdelibs/xml-catalog.diff deleted file mode 100644 index 0abaefec2..000000000 --- a/opensuse/core/tdelibs/xml-catalog.diff +++ /dev/null @@ -1,44 +0,0 @@ -Index: catalog.xml -=================================================================== ---- /dev/null -+++ catalog.xml -@@ -0,0 +1,39 @@ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ diff --git a/opensuse/core/tdelibs/xmlhttprequest_3.x.diff b/opensuse/core/tdelibs/xmlhttprequest_3.x.diff deleted file mode 100644 index 822a8870b..000000000 --- a/opensuse/core/tdelibs/xmlhttprequest_3.x.diff +++ /dev/null @@ -1,47 +0,0 @@ -http://www.kde.org/info/security/advisory-20091027-1.txt - -Index: xmlhttprequest.cpp -=================================================================== ---- khtml/ecma/xmlhttprequest.cpp (revision 954808) -+++ khtml/ecma/xmlhttprequest.cpp (working copy) -@@ -342,17 +342,17 @@ - { - aborted = false; - -+ const QString protocol = url.protocol().lower(); -+ // Abandon the request when the protocol is other than "http", -+ // instead of blindly doing a KIO::get on other protocols like file:/. -+ if (!protocol.startsWith("http") && !protocol.startsWith("webdav")) -+ { -+ abort(); -+ return; -+ } -+ - if (method == "post") { -- QString protocol = url.protocol().lower(); - -- // Abondon the request when the protocol is other than "http", -- // instead of blindly changing it to a "get" request. -- if (!protocol.startsWith("http") && !protocol.startsWith("webdav")) -- { -- abort(); -- return; -- } -- - // FIXME: determine post encoding correctly by looking in headers - // for charset. - QByteArray buf; -@@ -763,11 +763,11 @@ - if (obj.isValid() && obj.inherits(&DOMDocument::info)) { - DOM::Node docNode = static_cast(obj.imp())->toNode(); - DOM::DocumentImpl *doc = static_cast(docNode.handle()); -- -+ - try { - body = doc->toString().string(); - // FIXME: also need to set content type, including encoding! -- -+ - } catch(DOM::DOMException& e) { - Object err = Error::create(exec, GeneralError, "Exception serializing document"); - exec->setException(err); -- cgit v1.2.3