├── .git-blame-ignore-revs ├── .gitignore ├── .gitlab-ci.yml ├── .kde-ci.yml ├── CMakeLists.txt ├── KDecoration3Config.cmake.in ├── LICENSES ├── CC0-1.0.txt ├── LGPL-2.1-only.txt ├── LGPL-3.0-only.txt └── LicenseRef-KDE-Accepted-LGPL.txt ├── README.md ├── autotests ├── CMakeLists.txt ├── decorationbuttontest.cpp ├── decorationtest.cpp ├── mockbridge.cpp ├── mockbridge.h ├── mockbutton.cpp ├── mockbutton.h ├── mockdecoration.cpp ├── mockdecoration.h ├── mocksettings.cpp ├── mocksettings.h ├── mockwindow.cpp ├── mockwindow.h └── shadowtest.cpp ├── doc └── KDecoration 3 porting guide.md ├── metainfo.yaml ├── po ├── ar │ └── kdecoration.po ├── ast │ └── kdecoration.po ├── az │ └── kdecoration.po ├── bg │ └── kdecoration.po ├── ca │ └── kdecoration.po ├── ca@valencia │ └── kdecoration.po ├── cs │ └── kdecoration.po ├── da │ └── kdecoration.po ├── de │ └── kdecoration.po ├── el │ └── kdecoration.po ├── en_GB │ └── kdecoration.po ├── eo │ └── kdecoration.po ├── es │ └── kdecoration.po ├── et │ └── kdecoration.po ├── eu │ └── kdecoration.po ├── fi │ └── kdecoration.po ├── fr │ └── kdecoration.po ├── gl │ └── kdecoration.po ├── he │ └── kdecoration.po ├── hi │ └── kdecoration.po ├── hu │ └── kdecoration.po ├── ia │ └── kdecoration.po ├── id │ └── kdecoration.po ├── is │ └── kdecoration.po ├── it │ └── kdecoration.po ├── ja │ └── kdecoration.po ├── ka │ └── kdecoration.po ├── ko │ └── kdecoration.po ├── lt │ └── kdecoration.po ├── lv │ └── kdecoration.po ├── ml │ └── kdecoration.po ├── nb │ └── kdecoration.po ├── nl │ └── kdecoration.po ├── nn │ └── kdecoration.po ├── pa │ └── kdecoration.po ├── pl │ └── kdecoration.po ├── pt │ └── kdecoration.po ├── pt_BR │ └── kdecoration.po ├── ro │ └── kdecoration.po ├── ru │ └── kdecoration.po ├── sa │ └── kdecoration.po ├── sk │ └── kdecoration.po ├── sl │ └── kdecoration.po ├── sv │ └── kdecoration.po ├── ta │ └── kdecoration.po ├── tr │ └── kdecoration.po ├── uk │ └── kdecoration.po ├── zh_CN │ └── kdecoration.po └── zh_TW │ └── kdecoration.po └── src ├── CMakeLists.txt ├── Messages.sh ├── decoratedwindow.cpp ├── decoratedwindow.h ├── decoration.cpp ├── decoration.h ├── decoration_p.h ├── decorationbutton.cpp ├── decorationbutton.h ├── decorationbutton_p.h ├── decorationbuttongroup.cpp ├── decorationbuttongroup.h ├── decorationbuttongroup_p.h ├── decorationdefines.h ├── decorationsettings.cpp ├── decorationsettings.h ├── decorationshadow.cpp ├── decorationshadow.h ├── decorationshadow_p.h ├── decorationthemeprovider.cpp ├── decorationthemeprovider.h ├── private ├── CMakeLists.txt ├── decoratedwindowprivate.cpp ├── decoratedwindowprivate.h ├── decorationbridge.cpp ├── decorationbridge.h ├── decorationsettingsprivate.cpp └── decorationsettingsprivate.h └── scalehelpers.h /.git-blame-ignore-revs: -------------------------------------------------------------------------------- 1 | # clang-format 2 | 2a523449997260eb1d4585a673f81477c47b9979 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .clang-format 2 | /compile_commands.json 3 | .clangd 4 | .idea 5 | /cmake-build* 6 | .cache 7 | /build* 8 | -------------------------------------------------------------------------------- /.gitlab-ci.yml: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: None 2 | # SPDX-License-Identifier: CC0-1.0 3 | 4 | include: 5 | - project: sysadmin/ci-utilities 6 | file: 7 | - /gitlab-templates/linux-qt6.yml 8 | - /gitlab-templates/freebsd-qt6.yml 9 | - /gitlab-templates/xml-lint.yml 10 | - /gitlab-templates/yaml-lint.yml 11 | - /gitlab-templates/linux-qt6-next.yml 12 | -------------------------------------------------------------------------------- /.kde-ci.yml: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: None 2 | # SPDX-License-Identifier: CC0-1.0 3 | 4 | Dependencies: 5 | - 'on': ['@all'] 6 | 'require': 7 | 'frameworks/extra-cmake-modules': '@latest-kf6' 8 | 'frameworks/ki18n': '@latest-kf6' 9 | Options: 10 | require-passing-tests-on: ['Linux', 'FreeBSD'] 11 | -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 3.16) 2 | 3 | project(decoration-api) 4 | set(PROJECT_VERSION "6.4.80") 5 | set(PROJECT_VERSION_MAJOR 6) 6 | 7 | set(QT_MIN_VERSION "6.8.0") 8 | set(KF6_MIN_VERSION "6.14.0") 9 | set(KDE_COMPILERSETTINGS_LEVEL "5.82") 10 | 11 | set(CMAKE_CXX_STANDARD 20) 12 | set(CMAKE_CXX_STANDARD_REQUIRED ON) 13 | 14 | find_package(ECM ${KF6_MIN_VERSION} REQUIRED NO_MODULE) 15 | # where to look first for cmake modules, before ${CMAKE_ROOT}/Modules/ is checked 16 | set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH} ) 17 | 18 | include(KDEInstallDirs) 19 | include(KDECompilerSettings NO_POLICY_SCOPE) 20 | include(KDECMakeSettings) 21 | include(ECMSetupVersion) 22 | include(ECMGenerateHeaders) 23 | include(ECMGenerateExportHeader) 24 | include(FeatureSummary) 25 | include(GenerateExportHeader) 26 | include(CMakePackageConfigHelpers) 27 | include(KDEClangFormat) 28 | include(KDEGitCommitHooks) 29 | include(ECMDeprecationSettings) 30 | 31 | ecm_setup_version(${PROJECT_VERSION} VARIABLE_PREFIX KDECORATION3 32 | VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kdecoration3_version.h" 33 | PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KDecoration3ConfigVersion.cmake" 34 | SOVERSION ${PROJECT_VERSION_MAJOR}) 35 | 36 | #dependencies 37 | find_package(Qt6 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS 38 | Core 39 | Gui 40 | Test 41 | ) 42 | 43 | # require at least gcc 4.8 44 | if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") 45 | if ("${CMAKE_CXX_COMPILER_VERSION}" VERSION_LESS "4.8") 46 | message(SEND_ERROR "Version ${CMAKE_CXX_COMPILER_VERSION} of the ${CMAKE_CXX_COMPILER_ID} C++ compiler is not supported. Please use version 4.8 or later.") 47 | endif() 48 | endif() 49 | 50 | set(EXCLUDE_DEPRECATED_BEFORE_AND_AT 0 CACHE STRING "Control the range of deprecated API excluded from the build [default=0].") 51 | 52 | set(KDECORATION3_INCLUDEDIR "${KDE_INSTALL_INCLUDEDIR}/KDecoration3") 53 | find_package(KF6I18n ${KF6_MIN_VERSION} CONFIG REQUIRED) 54 | 55 | ecm_set_disabled_deprecation_versions(QT 6.2.0 56 | KF 6.12.0 57 | ) 58 | 59 | add_definitions(-DQT_NO_KEYWORDS) 60 | 61 | # Subdirectories 62 | add_subdirectory(src) 63 | if(BUILD_TESTING) 64 | add_subdirectory(autotests) 65 | endif() 66 | 67 | # add clang-format target for all our real source files 68 | file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h) 69 | kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) 70 | kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT) 71 | 72 | # create a Config.cmake and a ConfigVersion.cmake file and install them 73 | set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KDecoration3") 74 | 75 | configure_package_config_file("${CMAKE_CURRENT_SOURCE_DIR}/KDecoration3Config.cmake.in" 76 | "${CMAKE_CURRENT_BINARY_DIR}/KDecoration3Config.cmake" 77 | INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR} 78 | ) 79 | 80 | install(FILES "${CMAKE_CURRENT_BINARY_DIR}/KDecoration3Config.cmake" 81 | "${CMAKE_CURRENT_BINARY_DIR}/KDecoration3ConfigVersion.cmake" 82 | DESTINATION "${CMAKECONFIG_INSTALL_DIR}" 83 | COMPONENT Devel ) 84 | 85 | install(EXPORT KDecoration3Targets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" FILE KDecoration3Targets.cmake NAMESPACE KDecoration3:: ) 86 | 87 | 88 | install(FILES ${CMAKE_CURRENT_BINARY_DIR}/kdecoration3_version.h 89 | DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF} COMPONENT Devel ) 90 | 91 | feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) 92 | 93 | ki18n_install(po) 94 | -------------------------------------------------------------------------------- /KDecoration3Config.cmake.in: -------------------------------------------------------------------------------- 1 | @PACKAGE_INIT@ 2 | 3 | include(CMakeFindDependencyMacro) 4 | find_dependency(Qt6Gui @QT_MIN_VERSION@) 5 | 6 | set(KDECORATION_PLUGIN_DIR "org.kde.kdecoration3") 7 | set(KDECORATION_KCM_PLUGIN_DIR "org.kde.kdecoration3.kcm") 8 | 9 | include("${CMAKE_CURRENT_LIST_DIR}/KDecoration3Targets.cmake") 10 | 11 | -------------------------------------------------------------------------------- /LICENSES/LicenseRef-KDE-Accepted-LGPL.txt: -------------------------------------------------------------------------------- 1 | This library is free software; you can redistribute it and/or 2 | modify it under the terms of the GNU Lesser General Public 3 | License as published by the Free Software Foundation; either 4 | version 3 of the license or (at your option) any later version 5 | that is accepted by the membership of KDE e.V. (or its successor 6 | approved by the membership of KDE e.V.), which shall act as a 7 | proxy as defined in Section 6 of version 3 of the license. 8 | 9 | This program is distributed in the hope that it will be useful, 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | GNU General Public License for more details. 13 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # KDecoration3 2 | 3 | Plugin based library to create window decorations. 4 | 5 | ## Introduction 6 | 7 | KDecoration3 is a library to create window decorations. These window decorations can be used by 8 | for example an X11 based window manager which re-parents a Client window to a window decoration 9 | frame. 10 | 11 | The library consists of two parts: 12 | * Decoration API for implementing a Decoration theme 13 | * Private API to implement the backend part (e.g. from Window Manager side) 14 | 15 | ## Providing a Decoration 16 | 17 | To provide a custom decoration one needs to create a plugin and provide an own implementation 18 | of KDecoration3::Decoration. For a framework to load and find the plugin it needs to be compiled 19 | with the proper json metadata. An example for such metadata (deco.json): 20 | 21 | ```json 22 | { 23 | "KPlugin": { 24 | "Id": "org.kde.myAweseomeDecoration", 25 | "ServiceTypes": [ 26 | "org.kde.kdecoration3" 27 | ] 28 | }, 29 | "X-KDE-ConfigModule": "kcm_name", /* comes with a configuration module */ 30 | "org.kde.kdecoration3": { 31 | "blur": false, /* blur behind not needed */ 32 | } 33 | } 34 | ``` 35 | 36 | To simplify one can use the KPluginFactory macro from the KCoreAddons framework: 37 | 38 | ```cpp 39 | K_PLUGIN_FACTORY_WITH_JSON( 40 | MyAwesomeDecorationFactory, 41 | "deco.json", 42 | registerPlugin(); 43 | ) 44 | ``` 45 | 46 | The plugin needs to get installed to `${KDE_INSTALL_PLUGINDIR}/org.kde.kdecoration3`. 47 | 48 | ## Configuring the Decoration 49 | 50 | It is possible to provide a configuration module to tweak some aspects of the decoration. This is done 51 | by creating a plugin that provides such a configuration module. 52 | 53 | The `kcmoduleName` specifies the name of the configuration module. It needs to be installed under 54 | `${KDE_INSTALL_PLUGINDIR}/org.kde.kdecoration3.kcm` so that it can be looked up. 55 | 56 | # KDecoration2 -> KDecoration3 57 | The porting guide can be found [here](docs/KDecoration 3 porting guide.md). 58 | -------------------------------------------------------------------------------- /autotests/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | include(ECMMarkAsTest) 2 | 3 | set(decorationButtonTest_SRCS 4 | mockbridge.cpp mockbridge.h 5 | mockbutton.cpp mockbutton.h 6 | mockwindow.cpp mockwindow.h 7 | mockdecoration.cpp mockdecoration.h 8 | mocksettings.cpp mocksettings.h 9 | decorationbuttontest.cpp 10 | ) 11 | add_executable(decorationButtonTest ${decorationButtonTest_SRCS}) 12 | target_link_libraries(decorationButtonTest kdecorations3 kdecorations3private Qt::Test) 13 | add_test(NAME kdecoration3-decorationButtonTest COMMAND decorationButtonTest) 14 | ecm_mark_as_test(decorationButtonTest) 15 | 16 | set(decorationTest_SRCS 17 | mockbridge.cpp mockbridge.h 18 | mockbutton.cpp mockbutton.h 19 | mockwindow.cpp mockwindow.h 20 | mockdecoration.cpp mockdecoration.h 21 | mocksettings.cpp mocksettings.h 22 | decorationtest.cpp 23 | ) 24 | add_executable(decorationTest ${decorationTest_SRCS}) 25 | target_link_libraries(decorationTest kdecorations3 kdecorations3private Qt::Test) 26 | add_test(NAME kdecoration3-decorationTest COMMAND decorationTest) 27 | ecm_mark_as_test(decorationTest) 28 | 29 | set(decorationShadowTest_SRCS 30 | shadowtest.cpp 31 | ) 32 | add_executable(decorationShadowTest ${decorationShadowTest_SRCS}) 33 | target_link_libraries(decorationShadowTest kdecorations3 Qt::Test) 34 | add_test(NAME kdecoration3-decorationShadowTest COMMAND decorationShadowTest) 35 | ecm_mark_as_test(decorationShadowTest) 36 | -------------------------------------------------------------------------------- /autotests/mockbridge.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #include "mockbridge.h" 7 | #include "mocksettings.h" 8 | #include "mockwindow.h" 9 | #include 10 | 11 | std::unique_ptr MockBridge::createClient(KDecoration3::DecoratedWindow *client, KDecoration3::Decoration *decoration) 12 | { 13 | auto ptr = std::make_unique(client, decoration); 14 | m_lastCreatedWindow = ptr.get(); 15 | return ptr; 16 | } 17 | 18 | std::unique_ptr MockBridge::settings(KDecoration3::DecorationSettings *parent) 19 | { 20 | auto ptr = std::make_unique(parent); 21 | m_lastCreatedSettings = ptr.get(); 22 | return ptr; 23 | } 24 | 25 | #include "moc_mockbridge.cpp" 26 | -------------------------------------------------------------------------------- /autotests/mockbridge.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | 8 | #include "../src/private/decorationbridge.h" 9 | #include 10 | 11 | class MockWindow; 12 | class MockSettings; 13 | 14 | class MockBridge : public KDecoration3::DecorationBridge 15 | { 16 | Q_OBJECT 17 | public: 18 | std::unique_ptr createClient(KDecoration3::DecoratedWindow *client, KDecoration3::Decoration *decoration) override; 19 | std::unique_ptr settings(KDecoration3::DecorationSettings *parent) override; 20 | 21 | MockWindow *lastCreatedWindow() const 22 | { 23 | return m_lastCreatedWindow; 24 | } 25 | MockSettings *lastCreatedSettings() const 26 | { 27 | return m_lastCreatedSettings; 28 | } 29 | 30 | private: 31 | MockWindow *m_lastCreatedWindow = nullptr; 32 | MockSettings *m_lastCreatedSettings = nullptr; 33 | }; 34 | -------------------------------------------------------------------------------- /autotests/mockbutton.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #include "mockbutton.h" 7 | 8 | MockButton::MockButton(KDecoration3::DecorationButtonType type, KDecoration3::Decoration *decoration, QObject *parent) 9 | : DecorationButton(type, decoration, parent) 10 | { 11 | } 12 | 13 | void MockButton::paint(QPainter *painter, const QRectF &repaintRegion) 14 | { 15 | Q_UNUSED(painter) 16 | Q_UNUSED(repaintRegion) 17 | } 18 | 19 | #include "moc_mockbutton.cpp" 20 | -------------------------------------------------------------------------------- /autotests/mockbutton.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | 8 | #include "../src/decorationbutton.h" 9 | 10 | class MockButton : public KDecoration3::DecorationButton 11 | { 12 | Q_OBJECT 13 | public: 14 | MockButton(KDecoration3::DecorationButtonType type, KDecoration3::Decoration *decoration, QObject *parent = nullptr); 15 | void paint(QPainter *painter, const QRectF &repaintRegion) override; 16 | }; 17 | -------------------------------------------------------------------------------- /autotests/mockdecoration.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #include "mockdecoration.h" 7 | #include "mockbridge.h" 8 | 9 | #include 10 | #include 11 | #include 12 | 13 | MockDecoration::MockDecoration(QObject *parent, const QVariantList &args) 14 | : Decoration(parent, args) 15 | { 16 | } 17 | 18 | #ifdef _MSC_VER 19 | QMap makeMap(const QString &key, const QVariant &value) 20 | { 21 | QMap ret; 22 | ret.insert(key, value); 23 | return ret; 24 | } 25 | MockDecoration::MockDecoration(MockBridge *bridge) 26 | : MockDecoration(nullptr, QVariantList({makeMap(QStringLiteral("bridge"), QVariant::fromValue(bridge))})) 27 | #else 28 | MockDecoration::MockDecoration(MockBridge *bridge) 29 | : MockDecoration(nullptr, QVariantList({QVariantMap({{QStringLiteral("bridge"), QVariant::fromValue(bridge)}})})) 30 | #endif 31 | { 32 | create(); 33 | init(); 34 | 35 | apply(nextState()->clone()); 36 | connect(this, &MockDecoration::nextStateChanged, this, [this]() { 37 | apply(nextState()->clone()); 38 | }); 39 | } 40 | 41 | bool MockDecoration::init() 42 | { 43 | return true; 44 | } 45 | 46 | void MockDecoration::paint(QPainter *painter, const QRectF &repaintRegion) 47 | { 48 | Q_UNUSED(painter) 49 | Q_UNUSED(repaintRegion) 50 | } 51 | 52 | void MockDecoration::setOpaque(bool set) 53 | { 54 | Decoration::setOpaque(set); 55 | } 56 | 57 | void MockDecoration::setBorders(const QMargins &m) 58 | { 59 | Decoration::setBorders(m); 60 | } 61 | 62 | void MockDecoration::setTitleBar(const QRect &rect) 63 | { 64 | Decoration::setTitleBar(rect); 65 | } 66 | 67 | #include "moc_mockdecoration.cpp" 68 | -------------------------------------------------------------------------------- /autotests/mockdecoration.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | 8 | #include "../src/decoration.h" 9 | 10 | class MockBridge; 11 | 12 | class MockDecoration : public KDecoration3::Decoration 13 | { 14 | Q_OBJECT 15 | public: 16 | explicit MockDecoration(QObject *parent, const QVariantList &args); 17 | explicit MockDecoration(MockBridge *bridge); 18 | bool init() override; 19 | void paint(QPainter *painter, const QRectF &repaintRegion) override; 20 | void setOpaque(bool set); 21 | using Decoration::setBorders; 22 | void setBorders(const QMargins &m); 23 | using Decoration::setTitleBar; 24 | void setTitleBar(const QRect &rect); 25 | }; 26 | -------------------------------------------------------------------------------- /autotests/mocksettings.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #include "mocksettings.h" 7 | #include "../src/decorationsettings.h" 8 | 9 | MockSettings::MockSettings(KDecoration3::DecorationSettings *parent) 10 | : DecorationSettingsPrivate(parent) 11 | { 12 | } 13 | 14 | KDecoration3::BorderSize MockSettings::borderSize() const 15 | { 16 | return KDecoration3::BorderSize::Normal; 17 | } 18 | 19 | QList MockSettings::decorationButtonsLeft() const 20 | { 21 | return QList(); 22 | } 23 | 24 | QList MockSettings::decorationButtonsRight() const 25 | { 26 | return QList(); 27 | } 28 | 29 | bool MockSettings::isAlphaChannelSupported() const 30 | { 31 | return true; 32 | } 33 | 34 | bool MockSettings::isCloseOnDoubleClickOnMenu() const 35 | { 36 | return m_closeDoubleClickOnMenu; 37 | } 38 | 39 | bool MockSettings::isOnAllDesktopsAvailable() const 40 | { 41 | return m_onAllDesktopsAvailable; 42 | } 43 | 44 | void MockSettings::setOnAllDesktopsAvailabe(bool set) 45 | { 46 | if (m_onAllDesktopsAvailable == set) { 47 | return; 48 | } 49 | m_onAllDesktopsAvailable = set; 50 | Q_EMIT decorationSettings()->onAllDesktopsAvailableChanged(m_onAllDesktopsAvailable); 51 | } 52 | 53 | void MockSettings::setCloseOnDoubleClickOnMenu(bool set) 54 | { 55 | if (m_closeDoubleClickOnMenu == set) { 56 | return; 57 | } 58 | m_closeDoubleClickOnMenu = set; 59 | Q_EMIT decorationSettings()->closeOnDoubleClickOnMenuChanged(m_closeDoubleClickOnMenu); 60 | } 61 | -------------------------------------------------------------------------------- /autotests/mocksettings.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | 8 | #include "../src/private/decorationsettingsprivate.h" 9 | 10 | class MockSettings : public KDecoration3::DecorationSettingsPrivate 11 | { 12 | public: 13 | explicit MockSettings(KDecoration3::DecorationSettings *parent); 14 | 15 | KDecoration3::BorderSize borderSize() const override; 16 | QList decorationButtonsLeft() const override; 17 | QList decorationButtonsRight() const override; 18 | bool isAlphaChannelSupported() const override; 19 | bool isCloseOnDoubleClickOnMenu() const override; 20 | bool isOnAllDesktopsAvailable() const override; 21 | 22 | void setOnAllDesktopsAvailabe(bool set); 23 | void setCloseOnDoubleClickOnMenu(bool set); 24 | 25 | private: 26 | bool m_onAllDesktopsAvailable = false; 27 | bool m_closeDoubleClickOnMenu = false; 28 | }; 29 | -------------------------------------------------------------------------------- /autotests/mockwindow.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | 8 | #include "../src/private/decoratedwindowprivate.h" 9 | 10 | #include 11 | 12 | class MockWindow : public QObject, public KDecoration3::DecoratedWindowPrivateV3 13 | { 14 | Q_OBJECT 15 | public: 16 | explicit MockWindow(KDecoration3::DecoratedWindow *client, KDecoration3::Decoration *decoration); 17 | 18 | Qt::Edges adjacentScreenEdges() const override; 19 | QString caption() const override; 20 | qreal height() const override; 21 | QIcon icon() const override; 22 | bool isActive() const override; 23 | bool isCloseable() const override; 24 | bool isKeepAbove() const override; 25 | bool isKeepBelow() const override; 26 | bool isMaximizeable() const override; 27 | bool isMaximized() const override; 28 | bool isMaximizedHorizontally() const override; 29 | bool isMaximizedVertically() const override; 30 | bool isMinimizeable() const override; 31 | bool isModal() const override; 32 | bool isMoveable() const override; 33 | bool isOnAllDesktops() const override; 34 | bool isResizeable() const override; 35 | bool isShadeable() const override; 36 | bool isShaded() const override; 37 | QPalette palette() const override; 38 | bool hasApplicationMenu() const override; 39 | bool isApplicationMenuActive() const override; 40 | bool providesContextHelp() const override; 41 | void requestClose() override; 42 | void requestContextHelp() override; 43 | void requestToggleMaximization(Qt::MouseButtons buttons) override; 44 | void requestMinimize() override; 45 | void requestShowWindowMenu(const QRect &rect) override; 46 | void requestShowApplicationMenu(const QRect &rect, int actionId) override; 47 | void requestToggleKeepAbove() override; 48 | void requestToggleKeepBelow() override; 49 | void requestToggleOnAllDesktops() override; 50 | void requestToggleShade() override; 51 | void requestShowToolTip(const QString &text) override; 52 | void requestHideToolTip() override; 53 | QSizeF size() const override; 54 | qreal width() const override; 55 | QString windowClass() const override; 56 | qreal scale() const override; 57 | qreal nextScale() const override; 58 | QString applicationMenuServiceName() const override; 59 | QString applicationMenuObjectPath() const override; 60 | void showApplicationMenu(int actionId) override; 61 | void popup(const KDecoration3::Positioner &positioner, QMenu *menu) override; 62 | 63 | void setCloseable(bool set); 64 | void setMinimizable(bool set); 65 | void setProvidesContextHelp(bool set); 66 | void setShadeable(bool set); 67 | void setMaximizable(bool set); 68 | 69 | void setWidth(int w); 70 | void setHeight(int h); 71 | 72 | Q_SIGNALS: 73 | void closeRequested(); 74 | void minimizeRequested(); 75 | void quickHelpRequested(); 76 | void menuRequested(); 77 | void applicationMenuRequested(); 78 | 79 | private: 80 | bool m_closeable = false; 81 | bool m_minimizable = false; 82 | bool m_contextHelp = false; 83 | bool m_keepAbove = false; 84 | bool m_keepBelow = false; 85 | bool m_shadeable = false; 86 | bool m_shaded = false; 87 | bool m_maximizable = false; 88 | bool m_maximizedVertically = false; 89 | bool m_maximizedHorizontally = false; 90 | bool m_onAllDesktops = false; 91 | qreal m_width = 0; 92 | qreal m_height = 0; 93 | }; 94 | -------------------------------------------------------------------------------- /doc/KDecoration 3 porting guide.md: -------------------------------------------------------------------------------- 1 | # Renames 2 | The `KDecoration2` library and namespace were renamed to `KDecoration3`. 3 | 4 | `DecoratedClient` was renamed to `DecoratedWindow` 5 | 6 | `Decoration::client()` was renamed to `Decoration::window()` 7 | 8 | # Fractional scaling 9 | All geometry has been switched from integer logical units to floating point logical units, which are snapped to the pixel grid. 10 | The pixel grid is defined by the scale factor of the window — in logical coordinates, each pixel is `1.0 / window()->scale()` large. 11 | 12 | A naive port that should make things work the same as before is to just round all geometry from the API to integers. However, to make fractional scaling work well, the decoration must snap all geometry values to the pixel grid. 13 | Currently, that only affects the border sizes, which you can snap to the pixel grid with `KDecoration3::snapToPixelGrid(value, scale)` from the `KDecoration3/scalehelpers.h` header. Note that this *may* end up snapping the value towards zero with scale factors below 100%; if you want to prevent that, take the maximum of that and the size of a single pixel: `std::max(KDecoration3::snapToPixelGrid(value, scale), KDecoration3::pixelSize(scale))`. 14 | 15 | The fractional parts of geometry and the scale factor have to be taken into account when painting as well. 16 | QPainter automatically applies scaling for you on its own, but it doesn't do a great job at it. To make it paint without blurriness or cut off parts, you need to: 17 | 1. avoid integer versions of QPainter methods. More specifically, watch out for `QPainter::setClipRect(int, int, int, int)`, as it silently clips floating point numbers. Instead, use `QPainter::setClipRect(QRectF(...))` 18 | 2. adjust the size and position of lines to be snapped to the pixel grid 19 | 20 | For example, to paint a 1px wide outline for the title bar, you can't just do 21 | ``` 22 | painter->setClipRect(titleBarRect.x(), titleBarRect.y(), titleBarRect.width(), titleBarRect.height(), Qt::IntersectClip) 23 | painter->setBrush(QPen(QColor::red, 1)); 24 | painter->paintRect(rect()); 25 | ``` 26 | because QPainter paints the line *around* the window rather than in the outermost pixels, and applies anti-aliasing on top of that. Instead, do 27 | ``` 28 | painter->setClipRect(titleBarRect, Qt::IntersectClip); 29 | const qreal width = KDecoration3::pixelSize(window()->scale()); 30 | painter->setBrush(QPen(QColor::red, width)); 31 | painter->paintRect(rect().adjusted(width / 2, width / 2, -width / 2, -width / 2)); 32 | ``` 33 | 34 | # Reacting to scale changes 35 | When the `nextScale` of the decorated window changes, the decoration needs to update the border sizes with values that are snapped to the new scale, or there may be gaps between the window content and the decoration. 36 | -------------------------------------------------------------------------------- /metainfo.yaml: -------------------------------------------------------------------------------- 1 | maintainer: graesslin 2 | fancyname: KDecoration3 3 | description: Plugin based library to create window decorations. 4 | irc: kwin 5 | mailinglist: kwin 6 | type: integration 7 | platforms: 8 | - name: Linux 9 | - name: FreeBSD 10 | portingAid: false 11 | deprecated: false 12 | release: false 13 | libraries: 14 | - cmake: KDecoration3::KDecoration 15 | cmakename: KDecoration3 16 | group: plasma 17 | 18 | public_lib: true 19 | -------------------------------------------------------------------------------- /po/ar/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # Zayed Al-Saidi , 2023. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2023-03-16 12:41+0400\n" 11 | "Last-Translator: Zayed Al-Saidi \n" 12 | "Language-Team: ar\n" 13 | "Language: ar\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " 18 | "&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "قائمة التّطبيق" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "على سطح مكتب واحد" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "على كلّ أسطح المكتب" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "صغّر" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "استعد" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "كبّر" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "أغلق" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "مساعدة السياقية" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "ألغ التظليل" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "ظلل" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "لا تبقها أسفل النوافذ الأخرى" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "أبقها أسفل النوافذ الأخرى" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "لا تبقها أعلى النوافذ الأخرى" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "أبقها أعلى النوافذ الأخرى" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "إجراءات أكثر لهذه النافذة" 100 | -------------------------------------------------------------------------------- /po/ast/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # Enol P. , 2023. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2023-05-03 23:37+0200\n" 11 | "Last-Translator: Enol P. \n" 12 | "Language-Team: \n" 13 | "Language: ast\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 23.04.0\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "" 97 | -------------------------------------------------------------------------------- /po/az/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # Xəyyam Qocayev , 2020, 2021, 2022. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2022-07-03 13:56+0400\n" 11 | "Last-Translator: Kheyyam \n" 12 | "Language-Team: Azerbaijani \n" 13 | "Language: az\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 18 | "X-Generator: Lokalize 22.04.2\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Tətbiq menyusu" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "İş masasında" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "Bütün İş Masalarında" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Kiçiltmək" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Bərpa etmək" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Tam açmaq" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Bağlamaq" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Uyğun kömək" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Kölgəsiz" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Kölgə" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "Digər pəncərələrin altında tutmamaq" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "Digər pəncərələrin altında tutmaq" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "Digər pəncərələrin üzərində tutmamaq" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "Digər pəncərələrin üzərində tutmaq" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "Bu pəncərə üçün daha çox əməllər" 100 | 101 | #~ msgid "Menu" 102 | #~ msgstr "Menyu" 103 | 104 | #~ msgid "Keep below" 105 | #~ msgstr "Aşağıda tutmaq" 106 | 107 | #~ msgid "Keep above" 108 | #~ msgstr "Yuxarıda tutmaq" 109 | -------------------------------------------------------------------------------- /po/bg/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2025 This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # SPDX-FileCopyrightText: 2022, 2025 Mincho Kondarev 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2025-05-31 10:49+0200\n" 11 | "Last-Translator: Mincho Kondarev \n" 12 | "Language-Team: Bulgarian \n" 13 | "Language: bg\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "X-Generator: Lokalize 25.07.70\n" 18 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "Меню на прозореца" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Меню на приложение" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "На един работен плот" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "На всички работни плотове" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Минимизиране" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Възстановяване" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Максимизиране" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Затваряне" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Контекстна помощ" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Разгъване" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Сгъване" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "Без задържане под другите прозорци" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "Задържане под другите прозорците" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "Без задържане над другите прозорци" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "Задържане над другите прозорци" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "Допълнителни действия за този прозорец" 100 | -------------------------------------------------------------------------------- /po/ca/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Translation of kdecoration.po to Catalan 2 | # Copyright (C) 2018-2025 This_file_is_part_of_KDE 3 | # This file is distributed under the license LGPL version 2.1 or 4 | # version 3 or later versions approved by the membership of KDE e.V. 5 | # 6 | # Josep M. Ferrer , 2018, 2025. 7 | # Empar Montoro Martín , 2019. 8 | # Antoni Bella Pérez , 2021. 9 | msgid "" 10 | msgstr "" 11 | "Project-Id-Version: kdecoration\n" 12 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 13 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 14 | "PO-Revision-Date: 2025-05-31 18:51+0200\n" 15 | "Last-Translator: Josep M. Ferrer \n" 16 | "Language-Team: Catalan \n" 17 | "Language: ca\n" 18 | "MIME-Version: 1.0\n" 19 | "Content-Type: text/plain; charset=UTF-8\n" 20 | "Content-Transfer-Encoding: 8bit\n" 21 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 22 | "X-Generator: Lokalize 22.12.3\n" 23 | "X-Accelerator-Marker: &\n" 24 | 25 | #: decorationbutton.cpp:303 26 | #, kde-format 27 | msgctxt "" 28 | "@info:tooltip The Name of the menu that appears when you click a window's " 29 | "app icon" 30 | msgid "Window menu" 31 | msgstr "Menú de finestra" 32 | 33 | #: decorationbutton.cpp:305 34 | #, kde-format 35 | msgid "Application menu" 36 | msgstr "Menú d'aplicacions" 37 | 38 | #: decorationbutton.cpp:308 39 | #, kde-format 40 | msgid "On one desktop" 41 | msgstr "A un escriptori" 42 | 43 | #: decorationbutton.cpp:310 44 | #, kde-format 45 | msgid "On all desktops" 46 | msgstr "A tots els escriptoris" 47 | 48 | #: decorationbutton.cpp:312 49 | #, kde-format 50 | msgid "Minimize" 51 | msgstr "Minimitza" 52 | 53 | #: decorationbutton.cpp:315 54 | #, kde-format 55 | msgid "Restore" 56 | msgstr "Restaura" 57 | 58 | #: decorationbutton.cpp:317 59 | #, kde-format 60 | msgid "Maximize" 61 | msgstr "Maximitza" 62 | 63 | #: decorationbutton.cpp:319 64 | #, kde-format 65 | msgid "Close" 66 | msgstr "Tanca" 67 | 68 | #: decorationbutton.cpp:321 69 | #, kde-format 70 | msgid "Context help" 71 | msgstr "Ajuda contextual" 72 | 73 | #: decorationbutton.cpp:324 74 | #, kde-format 75 | msgid "Unshade" 76 | msgstr "Desplega" 77 | 78 | #: decorationbutton.cpp:326 79 | #, kde-format 80 | msgid "Shade" 81 | msgstr "Plega" 82 | 83 | #: decorationbutton.cpp:329 84 | #, kde-format 85 | msgid "Don't keep below other windows" 86 | msgstr "No mantinguis per sota de les altres finestres" 87 | 88 | #: decorationbutton.cpp:331 89 | #, kde-format 90 | msgid "Keep below other windows" 91 | msgstr "Mantén per sota de les altres finestres" 92 | 93 | #: decorationbutton.cpp:334 94 | #, kde-format 95 | msgid "Don't keep above other windows" 96 | msgstr "No mantinguis al damunt de les altres finestres" 97 | 98 | #: decorationbutton.cpp:336 99 | #, kde-format 100 | msgid "Keep above other windows" 101 | msgstr "Mantén al damunt de les altres finestres" 102 | -------------------------------------------------------------------------------- /po/ca@valencia/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Translation of kdecoration.po to Catalan (Valencian) 2 | # Copyright (C) 2018-2025 This_file_is_part_of_KDE 3 | # This file is distributed under the license LGPL version 2.1 or 4 | # version 3 or later versions approved by the membership of KDE e.V. 5 | # 6 | # Josep M. Ferrer , 2018, 2025. 7 | # Empar Montoro Martín , 2019. 8 | # Antoni Bella Pérez , 2021. 9 | msgid "" 10 | msgstr "" 11 | "Project-Id-Version: kdecoration\n" 12 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 13 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 14 | "PO-Revision-Date: 2025-05-31 18:51+0200\n" 15 | "Last-Translator: Josep M. Ferrer \n" 16 | "Language-Team: Catalan \n" 17 | "Language: ca@valencia\n" 18 | "MIME-Version: 1.0\n" 19 | "Content-Type: text/plain; charset=UTF-8\n" 20 | "Content-Transfer-Encoding: 8bit\n" 21 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 22 | "X-Generator: Lokalize 22.12.3\n" 23 | "X-Accelerator-Marker: &\n" 24 | 25 | #: decorationbutton.cpp:303 26 | #, kde-format 27 | msgctxt "" 28 | "@info:tooltip The Name of the menu that appears when you click a window's " 29 | "app icon" 30 | msgid "Window menu" 31 | msgstr "Menú de finestra" 32 | 33 | #: decorationbutton.cpp:305 34 | #, kde-format 35 | msgid "Application menu" 36 | msgstr "Menú d'aplicacions" 37 | 38 | #: decorationbutton.cpp:308 39 | #, kde-format 40 | msgid "On one desktop" 41 | msgstr "A un escriptori" 42 | 43 | #: decorationbutton.cpp:310 44 | #, kde-format 45 | msgid "On all desktops" 46 | msgstr "A tots els escriptoris" 47 | 48 | #: decorationbutton.cpp:312 49 | #, kde-format 50 | msgid "Minimize" 51 | msgstr "Minimitza" 52 | 53 | #: decorationbutton.cpp:315 54 | #, kde-format 55 | msgid "Restore" 56 | msgstr "Restaura" 57 | 58 | #: decorationbutton.cpp:317 59 | #, kde-format 60 | msgid "Maximize" 61 | msgstr "Maximitza" 62 | 63 | #: decorationbutton.cpp:319 64 | #, kde-format 65 | msgid "Close" 66 | msgstr "Tanca" 67 | 68 | #: decorationbutton.cpp:321 69 | #, kde-format 70 | msgid "Context help" 71 | msgstr "Ajuda contextual" 72 | 73 | #: decorationbutton.cpp:324 74 | #, kde-format 75 | msgid "Unshade" 76 | msgstr "Desplega" 77 | 78 | #: decorationbutton.cpp:326 79 | #, kde-format 80 | msgid "Shade" 81 | msgstr "Plega" 82 | 83 | #: decorationbutton.cpp:329 84 | #, kde-format 85 | msgid "Don't keep below other windows" 86 | msgstr "No mantinges per davall de les altres finestres" 87 | 88 | #: decorationbutton.cpp:331 89 | #, kde-format 90 | msgid "Keep below other windows" 91 | msgstr "Mantín per davall de les altres finestres" 92 | 93 | #: decorationbutton.cpp:334 94 | #, kde-format 95 | msgid "Don't keep above other windows" 96 | msgstr "No mantinges al damunt de les altres finestres" 97 | 98 | #: decorationbutton.cpp:336 99 | #, kde-format 100 | msgid "Keep above other windows" 101 | msgstr "Mantín al damunt de les altres finestres" 102 | -------------------------------------------------------------------------------- /po/cs/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This_file_is_part_of_KDE 2 | # This file is distributed under the same license as the PACKAGE package. 3 | # Vit Pelcak , 2018, 2020, 2021. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: \n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2021-05-13 13:38+0200\n" 11 | "Last-Translator: Vit Pelcak \n" 12 | "Language-Team: Czech \n" 13 | "Language: cs\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" 18 | "X-Generator: Lokalize 21.04.0\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Nabídka aplikací" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "Na pracovní ploše" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "Na všech plochách" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Minimalizovat" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Obnovit" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Maximalizovat" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Zavřít" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Kontextová nápověda" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Rozbalit" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Sbalit" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "Neponechat pod ostatními okny" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "Ponechat pod ostatními okny" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "Neponechat nad jinými okny" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "Podržet nad jinými okny" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "Více činností pro toto okno" 100 | -------------------------------------------------------------------------------- /po/da/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This_file_is_part_of_KDE 2 | # This file is distributed under the same license as the PACKAGE package. 3 | # 4 | # Martin Schlander , 2018, 2019. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: \n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2019-05-07 13:23+0100\n" 11 | "Last-Translator: Martin Schlander \n" 12 | "Language-Team: Danish \n" 13 | "Language: da\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 2.0\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Programmenu" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "På et skrivebord" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "På alle skriveborde" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Minimér" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Genskab" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Maksimér" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Luk" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Sammenhængsafhængig hjælp" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Skyg ikke" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Skyg" 77 | 78 | #: decorationbutton.cpp:329 79 | #, fuzzy, kde-format 80 | #| msgid "Don't keep below" 81 | msgid "Don't keep below other windows" 82 | msgstr "Hold ikke under" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "" 88 | 89 | #: decorationbutton.cpp:334 90 | #, fuzzy, kde-format 91 | #| msgid "Don't keep above" 92 | msgid "Don't keep above other windows" 93 | msgstr "Hold ikke over" 94 | 95 | #: decorationbutton.cpp:336 96 | #, kde-format 97 | msgid "Keep above other windows" 98 | msgstr "" 99 | 100 | #~ msgid "Menu" 101 | #~ msgstr "Menu" 102 | 103 | #~ msgid "Keep below" 104 | #~ msgstr "Hold under" 105 | 106 | #~ msgid "Keep above" 107 | #~ msgstr "Hold over" 108 | -------------------------------------------------------------------------------- /po/de/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This_file_is_part_of_KDE 2 | # This file is distributed under the same license as the PACKAGE package. 3 | # 4 | # Frederik Schwarzer , 2018. 5 | # Burkhard Lück , 2018, 2021. 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: kdecoration\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 11 | "PO-Revision-Date: 2021-05-05 05:59+0200\n" 12 | "Last-Translator: Burkhard Lück \n" 13 | "Language-Team: German \n" 14 | "Language: de\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Anwendungsmenü" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "Auf einer Arbeitsfläche" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "Auf allen Arbeitsflächen" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Minimieren" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Wiederherstellen" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Maximieren" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Schließen" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Kontexthilfe" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Einrollen rückgängig" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Einrollen" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "Nicht hinter anderen Fenstern halten" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "Fenster im Hintergrund halten" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "Nicht vor anderen Fenstern halten" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "Fenster im Vordergrund halten" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "Weitere Aktionen für dieses Fenster" 100 | 101 | #~ msgid "Menu" 102 | #~ msgstr "Menü" 103 | 104 | #~ msgid "Keep below" 105 | #~ msgstr "Im Hintergrund halten" 106 | 107 | #~ msgid "Keep above" 108 | #~ msgstr "Im Vordergrund halten" 109 | -------------------------------------------------------------------------------- /po/el/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # Stelios , 2020, 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2021-06-14 16:27+0300\n" 11 | "Last-Translator: Stelios \n" 12 | "Language-Team: Greek \n" 13 | "Language: el\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 20.04.2\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Μενού εφαρμογής" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "Σε μία επιφάνεια εργασίας" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "Σε όλες τις επιφάνειες εργασίας" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Ελαχιστοποίηση" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Επαναφορά" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Μεγιστοποίηση" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Κλείσιμο" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Βοήθεια στο κείμενο" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Αναίρεση σκίασης" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Σκίαση" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "Να μη μείνει κάτω από άλλα παράθυρα" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "Να μείνει κάτω από άλλα παράθυρα" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "Να μη μείνει πάνω από άλλα παράθυρα" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "Να μείνει πάνω από άλλα παράθυρα" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "Περισσότερες ενέργειες για αυτό το παράθυρο" 100 | 101 | #~ msgid "Menu" 102 | #~ msgstr "Μενού" 103 | 104 | #~ msgid "Keep below" 105 | #~ msgstr "Να μείνει από κάτω" 106 | 107 | #~ msgid "Keep above" 108 | #~ msgstr "Να μείνει από πάνω" 109 | -------------------------------------------------------------------------------- /po/en_GB/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This_file_is_part_of_KDE 2 | # This file is distributed under the same license as the PACKAGE package. 3 | # 4 | # Steve Allewell , 2018, 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: \n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2021-06-12 14:20+0100\n" 11 | "Last-Translator: Steve Allewell \n" 12 | "Language-Team: British English \n" 13 | "Language: en_GB\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 21.04.1\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Application menu" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "On one desktop" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "On all desktops" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Minimise" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Restore" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Maximise" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Close" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Context help" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Unshade" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Shade" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "Do not keep below other windows" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "Keep below other windows" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "Do not keep above other windows" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "Keep above other windows" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "More actions for this window" 100 | 101 | #~ msgid "Menu" 102 | #~ msgstr "Menu" 103 | 104 | #~ msgid "Keep below" 105 | #~ msgstr "Keep below" 106 | 107 | #~ msgid "Keep above" 108 | #~ msgstr "Keep above" 109 | -------------------------------------------------------------------------------- /po/eo/kdecoration.po: -------------------------------------------------------------------------------- 1 | # translation of kdecoration.pot to Esperanto 2 | # Copyright (C) 2017 Free Software Foundation, Inc. 3 | # Oliver Kellogg , 2023. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2023-04-28 23:02+0100\n" 11 | "Last-Translator: Oliver Kellogg \n" 12 | "Language-Team: Esperanto \n" 13 | "Language: eo\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | 19 | #: decorationbutton.cpp:303 20 | #, kde-format 21 | msgctxt "" 22 | "@info:tooltip The Name of the menu that appears when you click a window's " 23 | "app icon" 24 | msgid "Window menu" 25 | msgstr "" 26 | 27 | #: decorationbutton.cpp:305 28 | #, kde-format 29 | msgid "Application menu" 30 | msgstr "Aplikaĵa menuo" 31 | 32 | #: decorationbutton.cpp:308 33 | #, kde-format 34 | msgid "On one desktop" 35 | msgstr "Sur unu labortablo" 36 | 37 | #: decorationbutton.cpp:310 38 | #, kde-format 39 | msgid "On all desktops" 40 | msgstr "Sur ĉiuj labortabloj" 41 | 42 | #: decorationbutton.cpp:312 43 | #, kde-format 44 | msgid "Minimize" 45 | msgstr "Minimumigi" 46 | 47 | #: decorationbutton.cpp:315 48 | #, kde-format 49 | msgid "Restore" 50 | msgstr "Restaŭri" 51 | 52 | #: decorationbutton.cpp:317 53 | #, kde-format 54 | msgid "Maximize" 55 | msgstr "Maksimumigi" 56 | 57 | #: decorationbutton.cpp:319 58 | #, kde-format 59 | msgid "Close" 60 | msgstr "Fermi" 61 | 62 | #: decorationbutton.cpp:321 63 | #, kde-format 64 | msgid "Context help" 65 | msgstr "Kunteksta helpo" 66 | 67 | #: decorationbutton.cpp:324 68 | #, kde-format 69 | msgid "Unshade" 70 | msgstr "Malombrigi" 71 | 72 | #: decorationbutton.cpp:326 73 | #, kde-format 74 | msgid "Shade" 75 | msgstr "Ombrigi" 76 | 77 | #: decorationbutton.cpp:329 78 | #, kde-format 79 | msgid "Don't keep below other windows" 80 | msgstr "Ne teni sub aliaj fenestroj" 81 | 82 | #: decorationbutton.cpp:331 83 | #, kde-format 84 | msgid "Keep below other windows" 85 | msgstr "Teni sub aliaj fenestroj" 86 | 87 | #: decorationbutton.cpp:334 88 | #, kde-format 89 | msgid "Don't keep above other windows" 90 | msgstr "Ne teni super aliaj fenestroj" 91 | 92 | #: decorationbutton.cpp:336 93 | #, kde-format 94 | msgid "Keep above other windows" 95 | msgstr "Teni super aliaj fenestroj" 96 | 97 | #~ msgid "More actions for this window" 98 | #~ msgstr "Pliaj agoj por ĉi tiu fenestro" 99 | -------------------------------------------------------------------------------- /po/es/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Spanish translations for kdecoration.po package. 2 | # Copyright (C) 2018-2025 This file is copyright: 3 | # This file is distributed under the same license as the kdecoration package. 4 | # Automatically generated, 2018. 5 | # 6 | # SPDX-FileCopyrightText: 2018, 2021, 2025 Eloy Cuadra 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: kdecoration\n" 10 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 11 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 12 | "PO-Revision-Date: 2025-05-31 17:10+0100\n" 13 | "Last-Translator: Eloy Cuadra \n" 14 | "Language-Team: Spanish \n" 15 | "Language: es\n" 16 | "MIME-Version: 1.0\n" 17 | "Content-Type: text/plain; charset=UTF-8\n" 18 | "Content-Transfer-Encoding: 8bit\n" 19 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 20 | "X-Generator: Lokalize 25.04.1\n" 21 | 22 | #: decorationbutton.cpp:303 23 | #, kde-format 24 | msgctxt "" 25 | "@info:tooltip The Name of the menu that appears when you click a window's " 26 | "app icon" 27 | msgid "Window menu" 28 | msgstr "Menú de la ventana" 29 | 30 | #: decorationbutton.cpp:305 31 | #, kde-format 32 | msgid "Application menu" 33 | msgstr "Menú de la aplicación" 34 | 35 | #: decorationbutton.cpp:308 36 | #, kde-format 37 | msgid "On one desktop" 38 | msgstr "En un escritorio" 39 | 40 | #: decorationbutton.cpp:310 41 | #, kde-format 42 | msgid "On all desktops" 43 | msgstr "En todos los escritorios" 44 | 45 | #: decorationbutton.cpp:312 46 | #, kde-format 47 | msgid "Minimize" 48 | msgstr "Minimizar" 49 | 50 | #: decorationbutton.cpp:315 51 | #, kde-format 52 | msgid "Restore" 53 | msgstr "Restaurar" 54 | 55 | #: decorationbutton.cpp:317 56 | #, kde-format 57 | msgid "Maximize" 58 | msgstr "Maximizar" 59 | 60 | #: decorationbutton.cpp:319 61 | #, kde-format 62 | msgid "Close" 63 | msgstr "Cerrar" 64 | 65 | #: decorationbutton.cpp:321 66 | #, kde-format 67 | msgid "Context help" 68 | msgstr "Ayuda de contexto" 69 | 70 | #: decorationbutton.cpp:324 71 | #, kde-format 72 | msgid "Unshade" 73 | msgstr "Desenrollar" 74 | 75 | #: decorationbutton.cpp:326 76 | #, kde-format 77 | msgid "Shade" 78 | msgstr "Enrollar" 79 | 80 | #: decorationbutton.cpp:329 81 | #, kde-format 82 | msgid "Don't keep below other windows" 83 | msgstr "No mantener por debajo de otras ventanas" 84 | 85 | #: decorationbutton.cpp:331 86 | #, kde-format 87 | msgid "Keep below other windows" 88 | msgstr "Mantener por debajo de otras ventanas" 89 | 90 | #: decorationbutton.cpp:334 91 | #, kde-format 92 | msgid "Don't keep above other windows" 93 | msgstr "No mantener por encima de otras ventanas" 94 | 95 | #: decorationbutton.cpp:336 96 | #, kde-format 97 | msgid "Keep above other windows" 98 | msgstr "Mantener por encima de otras ventanas" 99 | -------------------------------------------------------------------------------- /po/et/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # Marek Laane , 2019. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2019-11-08 21:30+0200\n" 11 | "Last-Translator: Marek Laane \n" 12 | "Language-Team: Estonian \n" 13 | "Language: et\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 19.08.1\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Rakenduste menüü" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "Ühel töölaual" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "Kõigil töölaudadel" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Minimeeri" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Taasta" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Maksimeeri" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Sulge" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Kontekstiabi" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Keri lahti" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Keri kokku" 77 | 78 | #: decorationbutton.cpp:329 79 | #, fuzzy, kde-format 80 | #| msgid "Don't keep below" 81 | msgid "Don't keep below other windows" 82 | msgstr "Ära hoia teiste all" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "" 88 | 89 | #: decorationbutton.cpp:334 90 | #, fuzzy, kde-format 91 | #| msgid "Don't keep above" 92 | msgid "Don't keep above other windows" 93 | msgstr "Ära hoia teiste peal" 94 | 95 | #: decorationbutton.cpp:336 96 | #, kde-format 97 | msgid "Keep above other windows" 98 | msgstr "" 99 | 100 | #~ msgid "Menu" 101 | #~ msgstr "Menüü" 102 | 103 | #~ msgid "Keep below" 104 | #~ msgstr "Hoia teiste all" 105 | 106 | #~ msgid "Keep above" 107 | #~ msgstr "Hoia teiste peal" 108 | -------------------------------------------------------------------------------- /po/eu/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Translation for kdecoration.po to Euskara/Basque (eu). 2 | # Copyright (C) 2018, Free Software Foundation, Inc. 3 | # Copyright (C) 2019-2021, This file is copyright: 4 | # This file is distributed under the same license as kdecoration package. 5 | # KDE euskaratzeko proiektuko arduraduna . 6 | # 7 | # Translators: 8 | # Iñigo Salvador Azurmendi , 2018, 2021. 9 | msgid "" 10 | msgstr "" 11 | "Project-Id-Version: kdecoration\n" 12 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 13 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 14 | "PO-Revision-Date: 2021-07-26 19:57+0200\n" 15 | "Last-Translator: Iñigo Salvador Azurmendi \n" 16 | "Language-Team: Basque \n" 17 | "Language: eu\n" 18 | "MIME-Version: 1.0\n" 19 | "Content-Type: text/plain; charset=UTF-8\n" 20 | "Content-Transfer-Encoding: 8bit\n" 21 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 22 | "X-Generator: Lokalize 21.04.3\n" 23 | 24 | #: decorationbutton.cpp:303 25 | #, kde-format 26 | msgctxt "" 27 | "@info:tooltip The Name of the menu that appears when you click a window's " 28 | "app icon" 29 | msgid "Window menu" 30 | msgstr "" 31 | 32 | #: decorationbutton.cpp:305 33 | #, kde-format 34 | msgid "Application menu" 35 | msgstr "Aplikazio-menua" 36 | 37 | #: decorationbutton.cpp:308 38 | #, kde-format 39 | msgid "On one desktop" 40 | msgstr "Mahaigain bakarrean" 41 | 42 | #: decorationbutton.cpp:310 43 | #, kde-format 44 | msgid "On all desktops" 45 | msgstr "Mahaigain guztietan" 46 | 47 | #: decorationbutton.cpp:312 48 | #, kde-format 49 | msgid "Minimize" 50 | msgstr "Minimizatu" 51 | 52 | #: decorationbutton.cpp:315 53 | #, kde-format 54 | msgid "Restore" 55 | msgstr "Lehengoratu" 56 | 57 | #: decorationbutton.cpp:317 58 | #, kde-format 59 | msgid "Maximize" 60 | msgstr "Maximizatu" 61 | 62 | #: decorationbutton.cpp:319 63 | #, kde-format 64 | msgid "Close" 65 | msgstr "Itxi" 66 | 67 | #: decorationbutton.cpp:321 68 | #, kde-format 69 | msgid "Context help" 70 | msgstr "Testuinguru-laguntza" 71 | 72 | #: decorationbutton.cpp:324 73 | #, kde-format 74 | msgid "Unshade" 75 | msgstr "Zabaldu" 76 | 77 | #: decorationbutton.cpp:326 78 | #, kde-format 79 | msgid "Shade" 80 | msgstr "Bildu" 81 | 82 | #: decorationbutton.cpp:329 83 | #, kde-format 84 | msgid "Don't keep below other windows" 85 | msgstr "Ez eutsi beste leihoen azpian" 86 | 87 | #: decorationbutton.cpp:331 88 | #, kde-format 89 | msgid "Keep below other windows" 90 | msgstr "Eutsi beste leihoen azpian" 91 | 92 | #: decorationbutton.cpp:334 93 | #, kde-format 94 | msgid "Don't keep above other windows" 95 | msgstr "Ez eutsi beste leihoen gainean" 96 | 97 | #: decorationbutton.cpp:336 98 | #, kde-format 99 | msgid "Keep above other windows" 100 | msgstr "Eutsi beste leiho batzuen gainean" 101 | 102 | #~ msgid "More actions for this window" 103 | #~ msgstr "Leiho honetarako ekintza gehiago" 104 | 105 | #~ msgid "Menu" 106 | #~ msgstr "Menua" 107 | 108 | #~ msgid "Keep below" 109 | #~ msgstr "Egon azpian" 110 | 111 | #~ msgid "Keep above" 112 | #~ msgstr "Egon gainean" 113 | -------------------------------------------------------------------------------- /po/fi/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This_file_is_part_of_KDE 2 | # This file is distributed under the same license as the PACKAGE package. 3 | # Tommi Nieminen , 2018, 2021. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: \n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2021-05-07 11:01+0300\n" 11 | "Last-Translator: Tommi Nieminen \n" 12 | "Language-Team: Finnish \n" 13 | "Language: fi\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 18 | 19 | #: decorationbutton.cpp:303 20 | #, kde-format 21 | msgctxt "" 22 | "@info:tooltip The Name of the menu that appears when you click a window's " 23 | "app icon" 24 | msgid "Window menu" 25 | msgstr "" 26 | 27 | #: decorationbutton.cpp:305 28 | #, kde-format 29 | msgid "Application menu" 30 | msgstr "Sovellusvalikko" 31 | 32 | #: decorationbutton.cpp:308 33 | #, kde-format 34 | msgid "On one desktop" 35 | msgstr "Yhdellä työpöydällä" 36 | 37 | #: decorationbutton.cpp:310 38 | #, kde-format 39 | msgid "On all desktops" 40 | msgstr "Kaikilla työpöydillä" 41 | 42 | #: decorationbutton.cpp:312 43 | #, kde-format 44 | msgid "Minimize" 45 | msgstr "Pienennä" 46 | 47 | #: decorationbutton.cpp:315 48 | #, kde-format 49 | msgid "Restore" 50 | msgstr "Palauta" 51 | 52 | #: decorationbutton.cpp:317 53 | #, kde-format 54 | msgid "Maximize" 55 | msgstr "Suurenna" 56 | 57 | #: decorationbutton.cpp:319 58 | #, kde-format 59 | msgid "Close" 60 | msgstr "Sulje" 61 | 62 | #: decorationbutton.cpp:321 63 | #, kde-format 64 | msgid "Context help" 65 | msgstr "Kontekstiohje" 66 | 67 | #: decorationbutton.cpp:324 68 | #, kde-format 69 | msgid "Unshade" 70 | msgstr "Avaa rullaus" 71 | 72 | #: decorationbutton.cpp:326 73 | #, kde-format 74 | msgid "Shade" 75 | msgstr "Rullaa" 76 | 77 | #: decorationbutton.cpp:329 78 | #, kde-format 79 | msgid "Don't keep below other windows" 80 | msgstr "Älä pidä muiden ikkunoiden alla" 81 | 82 | #: decorationbutton.cpp:331 83 | #, kde-format 84 | msgid "Keep below other windows" 85 | msgstr "Pidä muiden ikkunoiden alla" 86 | 87 | #: decorationbutton.cpp:334 88 | #, kde-format 89 | msgid "Don't keep above other windows" 90 | msgstr "Älä pidä muiden ikkunoiden yllä" 91 | 92 | #: decorationbutton.cpp:336 93 | #, kde-format 94 | msgid "Keep above other windows" 95 | msgstr "Pidä muiden ikkunoiden yllä" 96 | 97 | #~ msgid "More actions for this window" 98 | #~ msgstr "Lisää toimintoja tälle ikkunalle" 99 | 100 | #~ msgid "Menu" 101 | #~ msgstr "Valikko" 102 | 103 | #~ msgid "Keep below" 104 | #~ msgstr "Pidä alinna" 105 | 106 | #~ msgid "Keep above" 107 | #~ msgstr "Pidä ylinnä" 108 | -------------------------------------------------------------------------------- /po/fr/kdecoration.po: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: 2021, 2025 Xavier Besnard 2 | # Yoann Laissus , 2018. 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: kdecoration\n" 6 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 7 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 8 | "PO-Revision-Date: 2025-06-01 19:25+0200\n" 9 | "Last-Translator: Xavier Besnard \n" 10 | "Language-Team: French >\n" 11 | "Language: fr\n" 12 | "MIME-Version: 1.0\n" 13 | "Content-Type: text/plain; charset=UTF-8\n" 14 | "Content-Transfer-Encoding: 8bit\n" 15 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" 16 | "X-Accelerator-Marker: &\n" 17 | "X-Environment: kde\n" 18 | "X-Generator: Lokalize 25.04.1\n" 19 | "X-Text-Markup: kde4\n" 20 | 21 | #: decorationbutton.cpp:303 22 | #, kde-format 23 | msgctxt "" 24 | "@info:tooltip The Name of the menu that appears when you click a window's " 25 | "app icon" 26 | msgid "Window menu" 27 | msgstr "Menu « Fenêtre »" 28 | 29 | #: decorationbutton.cpp:305 30 | #, kde-format 31 | msgid "Application menu" 32 | msgstr "Menu d'application" 33 | 34 | #: decorationbutton.cpp:308 35 | #, kde-format 36 | msgid "On one desktop" 37 | msgstr "Sur un seul bureau" 38 | 39 | #: decorationbutton.cpp:310 40 | #, kde-format 41 | msgid "On all desktops" 42 | msgstr "Sur tous les bureaux" 43 | 44 | #: decorationbutton.cpp:312 45 | #, kde-format 46 | msgid "Minimize" 47 | msgstr "Minimiser" 48 | 49 | #: decorationbutton.cpp:315 50 | #, kde-format 51 | msgid "Restore" 52 | msgstr "Restaurer" 53 | 54 | #: decorationbutton.cpp:317 55 | #, kde-format 56 | msgid "Maximize" 57 | msgstr "Maximiser" 58 | 59 | #: decorationbutton.cpp:319 60 | #, kde-format 61 | msgid "Close" 62 | msgstr "Fermer" 63 | 64 | #: decorationbutton.cpp:321 65 | #, kde-format 66 | msgid "Context help" 67 | msgstr "Aide contextuelle" 68 | 69 | #: decorationbutton.cpp:324 70 | #, kde-format 71 | msgid "Unshade" 72 | msgstr "Enlever l'ombrage" 73 | 74 | #: decorationbutton.cpp:326 75 | #, kde-format 76 | msgid "Shade" 77 | msgstr "Ombre" 78 | 79 | #: decorationbutton.cpp:329 80 | #, kde-format 81 | msgid "Don't keep below other windows" 82 | msgstr "Ne pas conserver en dessous des autres fenêtres" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "Conserver en dessous des autres fenêtres" 88 | 89 | #: decorationbutton.cpp:334 90 | #, kde-format 91 | msgid "Don't keep above other windows" 92 | msgstr "Ne pas conserver en dessus des autres fenêtres" 93 | 94 | #: decorationbutton.cpp:336 95 | #, kde-format 96 | msgid "Keep above other windows" 97 | msgstr "Conserver en dessus des autres fenêtres" 98 | 99 | #~ msgid "More actions for this window" 100 | #~ msgstr "Plus d'actions pour cette fenêtre" 101 | 102 | #~ msgid "Menu" 103 | #~ msgstr "Menu" 104 | 105 | #~ msgid "Keep below" 106 | #~ msgstr "Conserver au-dessous " 107 | 108 | #~ msgid "Keep above" 109 | #~ msgstr "Conserver au-dessus " 110 | -------------------------------------------------------------------------------- /po/gl/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This_file_is_part_of_KDE 2 | # This file is distributed under the same license as the PACKAGE package. 3 | # Adrián Chaves (Gallaecio) , 2018, 2019, 2023. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: \n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2023-04-28 17:26+0200\n" 11 | "Last-Translator: Adrián Chaves (Gallaecio) \n" 12 | "Language-Team: Galician \n" 13 | "Language: gl\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 23.04.0\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Menú das aplicacións" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "Nun escritorio" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "En todos os escritorios" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Minimizar" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Restaurar" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Maximizar" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Pechar" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Axuda contextual" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Desenrolar" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Enrolar" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "Non manter debaixo doutras xanelas" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "Manter debaixo doutras xanelas" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "Non manter enriba doutras xanelas" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "Manter enriba doutras xanelas" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "Máis accións para esta xanela" 100 | 101 | #~ msgid "Menu" 102 | #~ msgstr "Menú" 103 | 104 | #~ msgid "Keep below" 105 | #~ msgstr "Manter debaixo" 106 | 107 | #~ msgid "Keep above" 108 | #~ msgstr "Manter enriba" 109 | -------------------------------------------------------------------------------- /po/he/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # SPDX-FileCopyrightText: 2024, 2025 Yaron Shahrabani 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2025-05-31 07:21+0300\n" 11 | "Last-Translator: Yaron Shahrabani \n" 12 | "Language-Team: צוות התרגום של KDE ישראל\n" 13 | "Language: he\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 && " 18 | "n % 10 == 0) ? 2 : 3));\n" 19 | "X-Generator: Lokalize 25.04.1\n" 20 | 21 | #: decorationbutton.cpp:303 22 | #, kde-format 23 | msgctxt "" 24 | "@info:tooltip The Name of the menu that appears when you click a window's " 25 | "app icon" 26 | msgid "Window menu" 27 | msgstr "תפריט חלון" 28 | 29 | #: decorationbutton.cpp:305 30 | #, kde-format 31 | msgid "Application menu" 32 | msgstr "תפריט היישום" 33 | 34 | #: decorationbutton.cpp:308 35 | #, kde-format 36 | msgid "On one desktop" 37 | msgstr "בשולחן עבודה אחד" 38 | 39 | #: decorationbutton.cpp:310 40 | #, kde-format 41 | msgid "On all desktops" 42 | msgstr "בכל שולחנות העבודה" 43 | 44 | #: decorationbutton.cpp:312 45 | #, kde-format 46 | msgid "Minimize" 47 | msgstr "מזעור" 48 | 49 | #: decorationbutton.cpp:315 50 | #, kde-format 51 | msgid "Restore" 52 | msgstr "שחזור" 53 | 54 | #: decorationbutton.cpp:317 55 | #, kde-format 56 | msgid "Maximize" 57 | msgstr "הגדלה" 58 | 59 | #: decorationbutton.cpp:319 60 | #, kde-format 61 | msgid "Close" 62 | msgstr "סגירה" 63 | 64 | #: decorationbutton.cpp:321 65 | #, kde-format 66 | msgid "Context help" 67 | msgstr "עזרה לפי הקשר" 68 | 69 | #: decorationbutton.cpp:324 70 | #, kde-format 71 | msgid "Unshade" 72 | msgstr "ביטול הצללה" 73 | 74 | #: decorationbutton.cpp:326 75 | #, kde-format 76 | msgid "Shade" 77 | msgstr "הצללה" 78 | 79 | #: decorationbutton.cpp:329 80 | #, kde-format 81 | msgid "Don't keep below other windows" 82 | msgstr "לא להסתיר מאחורי חלונות אחרים" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "להסתיר מאחורי חלונות אחרים" 88 | 89 | #: decorationbutton.cpp:334 90 | #, kde-format 91 | msgid "Don't keep above other windows" 92 | msgstr "לא לקדם מעל חלונות אחרים" 93 | 94 | #: decorationbutton.cpp:336 95 | #, kde-format 96 | msgid "Keep above other windows" 97 | msgstr "לקדם מעל חלונות אחרים" 98 | 99 | #~ msgid "More actions for this window" 100 | #~ msgstr "פעולות נוספות לחלון הזה" 101 | -------------------------------------------------------------------------------- /po/hi/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # Sameer Singh , 2021. 5 | # Raghavendra Kamath , 2021. 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: kdecoration\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 11 | "PO-Revision-Date: 2021-06-29 17:56+0530\n" 12 | "Last-Translator: Raghavendra Kamath \n" 13 | "Language-Team: kde-hindi\n" 14 | "Language: hi\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=(n!=1);\n" 19 | "X-Generator: Lokalize 21.04.2\n" 20 | 21 | #: decorationbutton.cpp:303 22 | #, kde-format 23 | msgctxt "" 24 | "@info:tooltip The Name of the menu that appears when you click a window's " 25 | "app icon" 26 | msgid "Window menu" 27 | msgstr "" 28 | 29 | #: decorationbutton.cpp:305 30 | #, kde-format 31 | msgid "Application menu" 32 | msgstr "अनुप्रयोग मेन्यू" 33 | 34 | #: decorationbutton.cpp:308 35 | #, kde-format 36 | msgid "On one desktop" 37 | msgstr "एक डेस्कटॉप पर" 38 | 39 | #: decorationbutton.cpp:310 40 | #, kde-format 41 | msgid "On all desktops" 42 | msgstr "सभी डेस्कटॉप पर" 43 | 44 | #: decorationbutton.cpp:312 45 | #, kde-format 46 | msgid "Minimize" 47 | msgstr "न्यूनतम" 48 | 49 | #: decorationbutton.cpp:315 50 | #, kde-format 51 | msgid "Restore" 52 | msgstr "पुरानी स्तिथी में लाऐं" 53 | 54 | #: decorationbutton.cpp:317 55 | #, kde-format 56 | msgid "Maximize" 57 | msgstr "अधिकतम" 58 | 59 | #: decorationbutton.cpp:319 60 | #, kde-format 61 | msgid "Close" 62 | msgstr "बंद करें" 63 | 64 | #: decorationbutton.cpp:321 65 | #, kde-format 66 | msgid "Context help" 67 | msgstr "प्रासंगिक सहायता" 68 | 69 | #: decorationbutton.cpp:324 70 | #, kde-format 71 | msgid "Unshade" 72 | msgstr "छाया हटाएँ" 73 | 74 | #: decorationbutton.cpp:326 75 | #, kde-format 76 | msgid "Shade" 77 | msgstr "छाया" 78 | 79 | #: decorationbutton.cpp:329 80 | #, kde-format 81 | msgid "Don't keep below other windows" 82 | msgstr "अन्य विंडो के नीचे न रखें" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "अन्य विंडो के नीचे रखें" 88 | 89 | #: decorationbutton.cpp:334 90 | #, kde-format 91 | msgid "Don't keep above other windows" 92 | msgstr "अन्य विंडो के ऊपर न रखें" 93 | 94 | #: decorationbutton.cpp:336 95 | #, kde-format 96 | msgid "Keep above other windows" 97 | msgstr "अन्य विंडो के ऊपर रखें" 98 | 99 | #~ msgid "More actions for this window" 100 | #~ msgstr "इस विंडो के लिए और क्रियाएँ" 101 | 102 | #~ msgid "Menu" 103 | #~ msgstr "मेन्यू" 104 | -------------------------------------------------------------------------------- /po/hu/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # Kristóf Kiszel , 2019. 5 | # Kristof Kiszel , 2021. 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: kdecoration\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 11 | "PO-Revision-Date: 2021-11-24 13:23+0100\n" 12 | "Last-Translator: Kristof Kiszel \n" 13 | "Language-Team: Hungarian \n" 14 | "Language: hu\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 19 | "X-Generator: Lokalize 21.08.3\n" 20 | 21 | #: decorationbutton.cpp:303 22 | #, kde-format 23 | msgctxt "" 24 | "@info:tooltip The Name of the menu that appears when you click a window's " 25 | "app icon" 26 | msgid "Window menu" 27 | msgstr "" 28 | 29 | #: decorationbutton.cpp:305 30 | #, kde-format 31 | msgid "Application menu" 32 | msgstr "Alkalmazásmenü" 33 | 34 | #: decorationbutton.cpp:308 35 | #, kde-format 36 | msgid "On one desktop" 37 | msgstr "Egy asztalon" 38 | 39 | #: decorationbutton.cpp:310 40 | #, kde-format 41 | msgid "On all desktops" 42 | msgstr "Az összes asztalra" 43 | 44 | #: decorationbutton.cpp:312 45 | #, kde-format 46 | msgid "Minimize" 47 | msgstr "Minimalizálás" 48 | 49 | #: decorationbutton.cpp:315 50 | #, kde-format 51 | msgid "Restore" 52 | msgstr "Visszaállítás" 53 | 54 | #: decorationbutton.cpp:317 55 | #, kde-format 56 | msgid "Maximize" 57 | msgstr "Maximalizálás" 58 | 59 | #: decorationbutton.cpp:319 60 | #, kde-format 61 | msgid "Close" 62 | msgstr "Bezárás" 63 | 64 | #: decorationbutton.cpp:321 65 | #, kde-format 66 | msgid "Context help" 67 | msgstr "Helyi súgó" 68 | 69 | #: decorationbutton.cpp:324 70 | #, kde-format 71 | msgid "Unshade" 72 | msgstr "Világosítás" 73 | 74 | #: decorationbutton.cpp:326 75 | #, kde-format 76 | msgid "Shade" 77 | msgstr "Árnyékolás" 78 | 79 | #: decorationbutton.cpp:329 80 | #, kde-format 81 | msgid "Don't keep below other windows" 82 | msgstr "Ne maradjon más ablakok alatt" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "Maradjon más ablakok alatt" 88 | 89 | #: decorationbutton.cpp:334 90 | #, kde-format 91 | msgid "Don't keep above other windows" 92 | msgstr "Ne maradjon más ablakok fölött" 93 | 94 | #: decorationbutton.cpp:336 95 | #, kde-format 96 | msgid "Keep above other windows" 97 | msgstr "Maradjon más ablakok fölött" 98 | 99 | #~ msgid "More actions for this window" 100 | #~ msgstr "További műveletek" 101 | 102 | #~ msgid "Menu" 103 | #~ msgstr "Menü" 104 | 105 | #~ msgid "Keep below" 106 | #~ msgstr "Mindig alul" 107 | 108 | #~ msgid "Keep above" 109 | #~ msgstr "Mindig felül" 110 | -------------------------------------------------------------------------------- /po/ia/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # Giovanni Sora , 2019, 2020, 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2021-05-11 23:13+0100\n" 11 | "Last-Translator: Giovanni Sora \n" 12 | "Language-Team: Interlingua \n" 13 | "Language: ia\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 2.0\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Menu de application" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "Sur un scriptorio" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "Super omne scriptorios" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Minimisa" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Restabili" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Maximiza" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Claude" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Adjuta de contexto" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "De-Umbra" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Umbra" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "Non mantene infra altere fenestras" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "Mantene infra altere fenestras" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "Non mantene supra altere fenestras" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "Mantene supra altere fenestras" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "Altere actiones per iste fenestra" 100 | 101 | #~ msgid "Menu" 102 | #~ msgstr "Menu" 103 | 104 | #~ msgid "Keep below" 105 | #~ msgstr "Mantene infra" 106 | 107 | #~ msgid "Keep above" 108 | #~ msgstr "Mantene supra" 109 | -------------------------------------------------------------------------------- /po/id/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This_file_is_part_of_KDE 2 | # This file is distributed under the same license as the PACKAGE package. 3 | # Wantoyo , 2018, 2019, 2022. 4 | # Aziz Adam Adrian <4.adam.adrian@gmail.com>, 2022. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: \n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 11 | "PO-Revision-Date: 2022-09-27 17:54+0700\n" 12 | "Last-Translator: Wantoyèk \n" 13 | "Language-Team: Indonesian \n" 14 | "Language: id\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 19 | "X-Generator: Lokalize 21.12.3\n" 20 | 21 | #: decorationbutton.cpp:303 22 | #, kde-format 23 | msgctxt "" 24 | "@info:tooltip The Name of the menu that appears when you click a window's " 25 | "app icon" 26 | msgid "Window menu" 27 | msgstr "" 28 | 29 | #: decorationbutton.cpp:305 30 | #, kde-format 31 | msgid "Application menu" 32 | msgstr "Menu aplikasi" 33 | 34 | #: decorationbutton.cpp:308 35 | #, kde-format 36 | msgid "On one desktop" 37 | msgstr "Pada satu desktop" 38 | 39 | #: decorationbutton.cpp:310 40 | #, kde-format 41 | msgid "On all desktops" 42 | msgstr "Pada semua desktop" 43 | 44 | #: decorationbutton.cpp:312 45 | #, kde-format 46 | msgid "Minimize" 47 | msgstr "Minimalkan" 48 | 49 | #: decorationbutton.cpp:315 50 | #, kde-format 51 | msgid "Restore" 52 | msgstr "Kembalikan" 53 | 54 | #: decorationbutton.cpp:317 55 | #, kde-format 56 | msgid "Maximize" 57 | msgstr "Maksimalkan" 58 | 59 | #: decorationbutton.cpp:319 60 | #, kde-format 61 | msgid "Close" 62 | msgstr "Tutup" 63 | 64 | #: decorationbutton.cpp:321 65 | #, kde-format 66 | msgid "Context help" 67 | msgstr "Bantuan konteks" 68 | 69 | #: decorationbutton.cpp:324 70 | #, kde-format 71 | msgid "Unshade" 72 | msgstr "Tak bertirai" 73 | 74 | #: decorationbutton.cpp:326 75 | #, kde-format 76 | msgid "Shade" 77 | msgstr "Tiraikan" 78 | 79 | #: decorationbutton.cpp:329 80 | #, kde-format 81 | msgid "Don't keep below other windows" 82 | msgstr "Jangan tetap di bawah jendela lainnya" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "Tetap di bawah jendela lainnya" 88 | 89 | #: decorationbutton.cpp:334 90 | #, kde-format 91 | msgid "Don't keep above other windows" 92 | msgstr "Jangan tetap di atas jendela lainnya" 93 | 94 | #: decorationbutton.cpp:336 95 | #, kde-format 96 | msgid "Keep above other windows" 97 | msgstr "Tetap di atas jendela lainnya" 98 | 99 | #~ msgid "More actions for this window" 100 | #~ msgstr "Aksi selebihnya untuk jendela ini" 101 | 102 | #~ msgid "Menu" 103 | #~ msgstr "Menu" 104 | 105 | #~ msgid "Keep below" 106 | #~ msgstr "Tetap di bawah" 107 | 108 | #~ msgid "Keep above" 109 | #~ msgstr "Tetap di atas" 110 | -------------------------------------------------------------------------------- /po/is/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # Sveinn í Felli , 2023. 5 | # SPDX-FileCopyrightText: 2024 Guðmundur Erlingsson 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: kdecoration\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 11 | "PO-Revision-Date: 2024-03-25 13:52+0000\n" 12 | "Last-Translator: Guðmundur Erlingsson \n" 13 | "Language-Team: Icelandic \n" 14 | "Language: is\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: Plural-Forms: nplurals=2; plural=n != 1;\n" 19 | "X-Generator: Lokalize 23.08.3\n" 20 | 21 | #: decorationbutton.cpp:303 22 | #, kde-format 23 | msgctxt "" 24 | "@info:tooltip The Name of the menu that appears when you click a window's " 25 | "app icon" 26 | msgid "Window menu" 27 | msgstr "" 28 | 29 | #: decorationbutton.cpp:305 30 | #, kde-format 31 | msgid "Application menu" 32 | msgstr "Forritavalmynd" 33 | 34 | #: decorationbutton.cpp:308 35 | #, kde-format 36 | msgid "On one desktop" 37 | msgstr "Á einu skjáborði" 38 | 39 | #: decorationbutton.cpp:310 40 | #, kde-format 41 | msgid "On all desktops" 42 | msgstr "Á öllum skjáborðum" 43 | 44 | #: decorationbutton.cpp:312 45 | #, kde-format 46 | msgid "Minimize" 47 | msgstr "Fela" 48 | 49 | #: decorationbutton.cpp:315 50 | #, kde-format 51 | msgid "Restore" 52 | msgstr "Endurheimta" 53 | 54 | #: decorationbutton.cpp:317 55 | #, kde-format 56 | msgid "Maximize" 57 | msgstr "Fullstækka" 58 | 59 | #: decorationbutton.cpp:319 60 | #, kde-format 61 | msgid "Close" 62 | msgstr "Loka" 63 | 64 | #: decorationbutton.cpp:321 65 | #, kde-format 66 | msgid "Context help" 67 | msgstr "Samhengishjálp" 68 | 69 | #: decorationbutton.cpp:324 70 | #, kde-format 71 | msgid "Unshade" 72 | msgstr "Rúlla niður" 73 | 74 | #: decorationbutton.cpp:326 75 | #, kde-format 76 | msgid "Shade" 77 | msgstr "Rúlla upp" 78 | 79 | #: decorationbutton.cpp:329 80 | #, kde-format 81 | msgid "Don't keep below other windows" 82 | msgstr "Ekki hafa undir öðrum gluggum" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "Hafa undir öðrum gluggum" 88 | 89 | #: decorationbutton.cpp:334 90 | #, kde-format 91 | msgid "Don't keep above other windows" 92 | msgstr "Ekki hafa yfir öðrum gluggum" 93 | 94 | #: decorationbutton.cpp:336 95 | #, kde-format 96 | msgid "Keep above other windows" 97 | msgstr "Hafa yfir öðrum gluggum" 98 | 99 | #~ msgid "More actions for this window" 100 | #~ msgstr "Fleiri aðgerðir fyrir þennan glugga" 101 | -------------------------------------------------------------------------------- /po/it/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This_file_is_part_of_KDE 2 | # This file is distributed under the same license as the kdecoration package. 3 | # Paolo Zamponi , 2018, 2021. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: \n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2021-05-12 08:49+0200\n" 11 | "Last-Translator: Paolo Zamponi \n" 12 | "Language-Team: Italian \n" 13 | "Language: it\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 18 | "X-Generator: Lokalize 21.04.0\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Menu dell'applicazione" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "Su un desktop" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "Su tutti i desktop" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Minimizza" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Ripristina" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Massimizza" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Chiudi" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Aiuto contestuale" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Srotola" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Arrotola" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "Non tenere sotto le altre finestre" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "Tieni sotto le altre finestre" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "Non tenere sopra le altre finestre" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "Tieni sopra le altre finestre" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "Altre azioni per questa finestra" 100 | 101 | #~ msgid "Menu" 102 | #~ msgstr "Menu" 103 | 104 | #~ msgid "Keep below" 105 | #~ msgstr "Tieni sotto" 106 | 107 | #~ msgid "Keep above" 108 | #~ msgstr "Tieni sopra" 109 | -------------------------------------------------------------------------------- /po/ja/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Tomohiro Hyakutake , 2019. 2 | # Ryuichi Yamada , 2023. 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: kdecoration\n" 6 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 7 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 8 | "PO-Revision-Date: 2023-05-18 00:36+0900\n" 9 | "Last-Translator: Ryuichi Yamada \n" 10 | "Language-Team: Japanese \n" 11 | "Language: ja\n" 12 | "MIME-Version: 1.0\n" 13 | "Content-Type: text/plain; charset=UTF-8\n" 14 | "Content-Transfer-Encoding: 8bit\n" 15 | "Plural-Forms: nplurals=1; plural=0;\n" 16 | "X-Accelerator-Marker: &\n" 17 | "X-Text-Markup: kde4\n" 18 | "X-Generator: Lokalize 23.04.0\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "アプリケーションメニュー" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "一つのデスクトップに表示" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "すべてのデスクトップに表示" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "最小化" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "復元" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "最大化" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "閉じる" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "コンテキストヘルプ" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "シェード解除" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "シェード" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "他のウィンドウの下に保持しない" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "他のウィンドウより下に表示" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "他のウィンドウの上に保持しない" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "他のウィンドウより上に表示" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "このウィンドウに対するその他のアクション" 100 | -------------------------------------------------------------------------------- /po/ka/kdecoration.po: -------------------------------------------------------------------------------- 1 | # SOME DESCRIPTIVE TITLE. 2 | # Copyright (C) YEAR This file is copyright: 3 | # This file is distributed under the same license as the kdecoration package. 4 | # FIRST AUTHOR , YEAR. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: kdecoration\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 11 | "PO-Revision-Date: 2025-05-31 03:33+0200\n" 12 | "Last-Translator: Temuri Doghonadze \n" 13 | "Language-Team: Georgian \n" 14 | "Language: ka\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 19 | "X-Generator: Poedit 3.6\n" 20 | 21 | #: decorationbutton.cpp:303 22 | #, kde-format 23 | msgctxt "" 24 | "@info:tooltip The Name of the menu that appears when you click a window's " 25 | "app icon" 26 | msgid "Window menu" 27 | msgstr "ფანჯრის მენიუ" 28 | 29 | #: decorationbutton.cpp:305 30 | #, kde-format 31 | msgid "Application menu" 32 | msgstr "პროგრამის მენიუ" 33 | 34 | #: decorationbutton.cpp:308 35 | #, kde-format 36 | msgid "On one desktop" 37 | msgstr "1 სამუშაო მაგიდაზე" 38 | 39 | #: decorationbutton.cpp:310 40 | #, kde-format 41 | msgid "On all desktops" 42 | msgstr "ყველა სამუშაო მაგიდაზე" 43 | 44 | #: decorationbutton.cpp:312 45 | #, kde-format 46 | msgid "Minimize" 47 | msgstr "ჩაკეცვა" 48 | 49 | #: decorationbutton.cpp:315 50 | #, kde-format 51 | msgid "Restore" 52 | msgstr "აღდგენა" 53 | 54 | #: decorationbutton.cpp:317 55 | #, kde-format 56 | msgid "Maximize" 57 | msgstr "გადიდება" 58 | 59 | #: decorationbutton.cpp:319 60 | #, kde-format 61 | msgid "Close" 62 | msgstr "დახურვა" 63 | 64 | #: decorationbutton.cpp:321 65 | #, kde-format 66 | msgid "Context help" 67 | msgstr "კონტექსტური დახმარება" 68 | 69 | #: decorationbutton.cpp:324 70 | #, kde-format 71 | msgid "Unshade" 72 | msgstr "განჩრდილვა" 73 | 74 | #: decorationbutton.cpp:326 75 | #, kde-format 76 | msgid "Shade" 77 | msgstr "დაჩრდილვა" 78 | 79 | #: decorationbutton.cpp:329 80 | #, kde-format 81 | msgid "Don't keep below other windows" 82 | msgstr "დანარჩენი ფანჯრების ქვემოთ ქონის გამორთვა" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "დანარჩენი ფანჯრების ქვემოთ ქონა" 88 | 89 | #: decorationbutton.cpp:334 90 | #, kde-format 91 | msgid "Don't keep above other windows" 92 | msgstr "დანარჩენი ფანჯრების ზემოთ ქონის გამორთვა" 93 | 94 | #: decorationbutton.cpp:336 95 | #, kde-format 96 | msgid "Keep above other windows" 97 | msgstr "დანარჩენი ფანჯრების ზემოთ ქონა" 98 | 99 | #~ msgid "More actions for this window" 100 | #~ msgstr "მეტი ქმედება ამ ფანჯრისთვის" 101 | -------------------------------------------------------------------------------- /po/ko/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This_file_is_part_of_KDE 2 | # This file is distributed under the same license as the PACKAGE package. 3 | # Shinjo Park , 2018, 2020, 2021. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: \n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2021-05-16 21:48+0200\n" 11 | "Last-Translator: Shinjo Park \n" 12 | "Language-Team: Korean \n" 13 | "Language: ko\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=1; plural=0;\n" 18 | "X-Generator: Lokalize 20.12.3\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "앱 메뉴" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "한 바탕 화면에만" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "모든 바탕 화면에 두기" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "최소화" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "복원" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "최대화" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "닫기" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "문맥 도움말" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "풀어 내리기" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "말아 올리기" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "다른 창 아래에 두지 않기" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "다른 창 아래에 두기" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "다른 창 위에 두지 않기" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "다른 창 위에 두기" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "이 창의 더 많은 동작" 100 | 101 | #~ msgid "Menu" 102 | #~ msgstr "메뉴" 103 | 104 | #~ msgid "Keep below" 105 | #~ msgstr "항상 아래에 두기" 106 | 107 | #~ msgid "Keep above" 108 | #~ msgstr "항상 위에 두기" 109 | -------------------------------------------------------------------------------- /po/lt/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Lithuanian translations for kdecoration package. 2 | # Copyright (C) 2019 This file is copyright: 3 | # This file is distributed under the same license as the kdecoration package. 4 | # Automatically generated, 2019. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: kdecoration\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 11 | "PO-Revision-Date: 2021-06-15 22:43+0300\n" 12 | "Last-Translator: Moo\n" 13 | "Language-Team: lt\n" 14 | "Language: lt\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : n%10>=2 && (n%100<10 || n" 19 | "%100>=20) ? 1 : n%10==0 || (n%100>10 && n%100<20) ? 2 : 3);\n" 20 | "X-Generator: Poedit 3.0\n" 21 | 22 | #: decorationbutton.cpp:303 23 | #, kde-format 24 | msgctxt "" 25 | "@info:tooltip The Name of the menu that appears when you click a window's " 26 | "app icon" 27 | msgid "Window menu" 28 | msgstr "" 29 | 30 | #: decorationbutton.cpp:305 31 | #, kde-format 32 | msgid "Application menu" 33 | msgstr "Programos meniu" 34 | 35 | #: decorationbutton.cpp:308 36 | #, kde-format 37 | msgid "On one desktop" 38 | msgstr "Viename darbalaukyje" 39 | 40 | #: decorationbutton.cpp:310 41 | #, kde-format 42 | msgid "On all desktops" 43 | msgstr "Visuose darbalaukiuose" 44 | 45 | #: decorationbutton.cpp:312 46 | #, kde-format 47 | msgid "Minimize" 48 | msgstr "Suskleisti" 49 | 50 | #: decorationbutton.cpp:315 51 | #, kde-format 52 | msgid "Restore" 53 | msgstr "Grąžinti iš suskleidimo" 54 | 55 | #: decorationbutton.cpp:317 56 | #, kde-format 57 | msgid "Maximize" 58 | msgstr "Išskleisti" 59 | 60 | #: decorationbutton.cpp:319 61 | #, kde-format 62 | msgid "Close" 63 | msgstr "Užverti" 64 | 65 | #: decorationbutton.cpp:321 66 | #, kde-format 67 | msgid "Context help" 68 | msgstr "Kontekstinė pagalba" 69 | 70 | #: decorationbutton.cpp:324 71 | #, kde-format 72 | msgid "Unshade" 73 | msgstr "Rodyti ne tik lango antraštės juostą" 74 | 75 | #: decorationbutton.cpp:326 76 | #, kde-format 77 | msgid "Shade" 78 | msgstr "Rodyti tik lango antraštės juostą" 79 | 80 | #: decorationbutton.cpp:329 81 | #, kde-format 82 | msgid "Don't keep below other windows" 83 | msgstr "Nelaikyti po kitais langais" 84 | 85 | #: decorationbutton.cpp:331 86 | #, kde-format 87 | msgid "Keep below other windows" 88 | msgstr "Laikyti po kitais langais" 89 | 90 | #: decorationbutton.cpp:334 91 | #, kde-format 92 | msgid "Don't keep above other windows" 93 | msgstr "Nelaikyti virš kitų langų" 94 | 95 | #: decorationbutton.cpp:336 96 | #, kde-format 97 | msgid "Keep above other windows" 98 | msgstr "Laikyti virš kitų langų" 99 | 100 | #~ msgid "More actions for this window" 101 | #~ msgstr "Daugiau veiksmų šiam langui" 102 | 103 | #~ msgid "Menu" 104 | #~ msgstr "Meniu" 105 | 106 | #~ msgid "Keep below" 107 | #~ msgstr "Laikyti apačioje" 108 | 109 | #~ msgid "Keep above" 110 | #~ msgstr "Laikyti viršuje" 111 | -------------------------------------------------------------------------------- /po/lv/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # SPDX-FileCopyrightText: 2024 Toms Trasūns 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2024-01-27 12:55+0200\n" 11 | "Last-Translator: Toms Trasūns \n" 12 | "Language-Team: Latvian \n" 13 | "Language: lv\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : " 18 | "2);\n" 19 | "X-Generator: Lokalize 23.08.4\n" 20 | 21 | #: decorationbutton.cpp:303 22 | #, kde-format 23 | msgctxt "" 24 | "@info:tooltip The Name of the menu that appears when you click a window's " 25 | "app icon" 26 | msgid "Window menu" 27 | msgstr "" 28 | 29 | #: decorationbutton.cpp:305 30 | #, kde-format 31 | msgid "Application menu" 32 | msgstr "Programmas izvēlne" 33 | 34 | #: decorationbutton.cpp:308 35 | #, kde-format 36 | msgid "On one desktop" 37 | msgstr "Uz vienas darbvirsmas" 38 | 39 | #: decorationbutton.cpp:310 40 | #, kde-format 41 | msgid "On all desktops" 42 | msgstr "Uz visām darbvirsmām" 43 | 44 | #: decorationbutton.cpp:312 45 | #, kde-format 46 | msgid "Minimize" 47 | msgstr "Minimizēt" 48 | 49 | #: decorationbutton.cpp:315 50 | #, kde-format 51 | msgid "Restore" 52 | msgstr "Atjaunot" 53 | 54 | #: decorationbutton.cpp:317 55 | #, kde-format 56 | msgid "Maximize" 57 | msgstr "Maksimizēt" 58 | 59 | #: decorationbutton.cpp:319 60 | #, kde-format 61 | msgid "Close" 62 | msgstr "Aizvērt" 63 | 64 | #: decorationbutton.cpp:321 65 | #, kde-format 66 | msgid "Context help" 67 | msgstr "Konteksta palīdzība" 68 | 69 | #: decorationbutton.cpp:324 70 | #, kde-format 71 | msgid "Unshade" 72 | msgstr "Atritināt" 73 | 74 | #: decorationbutton.cpp:326 75 | #, kde-format 76 | msgid "Shade" 77 | msgstr "Saritināt" 78 | 79 | #: decorationbutton.cpp:329 80 | #, kde-format 81 | msgid "Don't keep below other windows" 82 | msgstr "Neturēt zem citiem logiem" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "Turēt zem citiem logiem" 88 | 89 | #: decorationbutton.cpp:334 90 | #, kde-format 91 | msgid "Don't keep above other windows" 92 | msgstr "Neturēt virs citiem logiem" 93 | 94 | #: decorationbutton.cpp:336 95 | #, kde-format 96 | msgid "Keep above other windows" 97 | msgstr "Turēt virs citiem logiem" 98 | 99 | #~ msgid "More actions for this window" 100 | #~ msgstr "Vairāk darbību šim logam" 101 | -------------------------------------------------------------------------------- /po/ml/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Malayalam translations for kdecoration package. 2 | # Copyright (C) 2019 This file is copyright: 3 | # This file is distributed under the same license as the kdecoration package. 4 | # Automatically generated, 2019. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: kdecoration\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 11 | "PO-Revision-Date: 2018-08-16 09:14+0200\n" 12 | "Last-Translator: Automatically generated\n" 13 | "Language-Team: Swathanthra|സ്വതന്ത്ര Malayalam|മലയാളം Computing|കമ്പ്യൂട്ടിങ്ങ് \n" 15 | "Language: ml\n" 16 | "MIME-Version: 1.0\n" 17 | "Content-Type: text/plain; charset=UTF-8\n" 18 | "Content-Transfer-Encoding: 8bit\n" 19 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 20 | 21 | #: decorationbutton.cpp:303 22 | #, kde-format 23 | msgctxt "" 24 | "@info:tooltip The Name of the menu that appears when you click a window's " 25 | "app icon" 26 | msgid "Window menu" 27 | msgstr "" 28 | 29 | #: decorationbutton.cpp:305 30 | #, kde-format 31 | msgid "Application menu" 32 | msgstr "" 33 | 34 | #: decorationbutton.cpp:308 35 | #, kde-format 36 | msgid "On one desktop" 37 | msgstr "" 38 | 39 | #: decorationbutton.cpp:310 40 | #, kde-format 41 | msgid "On all desktops" 42 | msgstr "" 43 | 44 | #: decorationbutton.cpp:312 45 | #, kde-format 46 | msgid "Minimize" 47 | msgstr "" 48 | 49 | #: decorationbutton.cpp:315 50 | #, kde-format 51 | msgid "Restore" 52 | msgstr "" 53 | 54 | #: decorationbutton.cpp:317 55 | #, kde-format 56 | msgid "Maximize" 57 | msgstr "" 58 | 59 | #: decorationbutton.cpp:319 60 | #, kde-format 61 | msgid "Close" 62 | msgstr "" 63 | 64 | #: decorationbutton.cpp:321 65 | #, kde-format 66 | msgid "Context help" 67 | msgstr "" 68 | 69 | #: decorationbutton.cpp:324 70 | #, kde-format 71 | msgid "Unshade" 72 | msgstr "" 73 | 74 | #: decorationbutton.cpp:326 75 | #, kde-format 76 | msgid "Shade" 77 | msgstr "" 78 | 79 | #: decorationbutton.cpp:329 80 | #, kde-format 81 | msgid "Don't keep below other windows" 82 | msgstr "" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "" 88 | 89 | #: decorationbutton.cpp:334 90 | #, kde-format 91 | msgid "Don't keep above other windows" 92 | msgstr "" 93 | 94 | #: decorationbutton.cpp:336 95 | #, kde-format 96 | msgid "Keep above other windows" 97 | msgstr "" 98 | -------------------------------------------------------------------------------- /po/nb/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Translation of kdecoration to Norwegian Bokmål 2 | # 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: kdecoration\n" 6 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 7 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 8 | "PO-Revision-Date: 2025-02-22 07:56+0100\n" 9 | "Last-Translator: Martin Hansen \n" 10 | "Language-Team: Norwegian Bokmål \n" 11 | "Language: nb\n" 12 | "MIME-Version: 1.0\n" 13 | "Content-Type: text/plain; charset=UTF-8\n" 14 | "Content-Transfer-Encoding: 8bit\n" 15 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 16 | "X-Generator: Lokalize 24.12.2\n" 17 | "X-Environment: kde\n" 18 | "X-Accelerator-Marker: &\n" 19 | "X-Text-Markup: kde4\n" 20 | 21 | #: decorationbutton.cpp:303 22 | #, kde-format 23 | msgctxt "" 24 | "@info:tooltip The Name of the menu that appears when you click a window's " 25 | "app icon" 26 | msgid "Window menu" 27 | msgstr "" 28 | 29 | #: decorationbutton.cpp:305 30 | #, kde-format 31 | msgid "Application menu" 32 | msgstr "Programmeny" 33 | 34 | #: decorationbutton.cpp:308 35 | #, kde-format 36 | msgid "On one desktop" 37 | msgstr "På ett skrivebord" 38 | 39 | #: decorationbutton.cpp:310 40 | #, kde-format 41 | msgid "On all desktops" 42 | msgstr "På alle skrivebordene" 43 | 44 | #: decorationbutton.cpp:312 45 | #, kde-format 46 | msgid "Minimize" 47 | msgstr "Minimer" 48 | 49 | #: decorationbutton.cpp:315 50 | #, kde-format 51 | msgid "Restore" 52 | msgstr "Gjenopprett" 53 | 54 | #: decorationbutton.cpp:317 55 | #, kde-format 56 | msgid "Maximize" 57 | msgstr "Maksimer" 58 | 59 | #: decorationbutton.cpp:319 60 | #, kde-format 61 | msgid "Close" 62 | msgstr "Lukk" 63 | 64 | #: decorationbutton.cpp:321 65 | #, kde-format 66 | msgid "Context help" 67 | msgstr "Emnehjelp" 68 | 69 | #: decorationbutton.cpp:324 70 | #, kde-format 71 | msgid "Unshade" 72 | msgstr "Rull ned" 73 | 74 | #: decorationbutton.cpp:326 75 | #, kde-format 76 | msgid "Shade" 77 | msgstr "Rull opp" 78 | 79 | #: decorationbutton.cpp:329 80 | #, kde-format 81 | msgid "Don't keep below other windows" 82 | msgstr "Ikke hold under andre vinduer" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "Hold under andre vinduer" 88 | 89 | #: decorationbutton.cpp:334 90 | #, kde-format 91 | msgid "Don't keep above other windows" 92 | msgstr "Ikke hold over andre vinduer" 93 | 94 | #: decorationbutton.cpp:336 95 | #, kde-format 96 | msgid "Keep above other windows" 97 | msgstr "Hold over andre vinduer" 98 | -------------------------------------------------------------------------------- /po/nl/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This_file_is_part_of_KDE 2 | # This file is distributed under the same license as the PACKAGE package. 3 | # 4 | # SPDX-FileCopyrightText: 2018, 2021, 2025 Freek de Kruijf 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: \n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2025-05-31 11:08+0200\n" 11 | "Last-Translator: Freek de Kruijf \n" 12 | "Language-Team: \n" 13 | "Language: nl\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 25.04.1\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "Venstermenu" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Menu van toepassing" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "Op één bureaublad" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "Op alle bureaubladen" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Minimaliseren" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Herstellen" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Maximaliseren" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Sluiten" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Contexthelp" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Schaduw weghalen" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Oprollen" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "Niet onder andere vensters houden" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "Onder andere vensters houden" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "Niet boven andere vensters houden" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "Boven andere vensters houden" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "Meer acties voor dit venster" 100 | 101 | #~ msgid "Menu" 102 | #~ msgstr "Menu" 103 | 104 | #~ msgid "Keep below" 105 | #~ msgstr "Altijd op achtergrond" 106 | 107 | #~ msgid "Keep above" 108 | #~ msgstr "Altijd op voorgrond" 109 | -------------------------------------------------------------------------------- /po/nn/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Translation of kdecoration to Norwegian Nynorsk 2 | # 3 | # Karl Ove Hufthammer , 2018, 2022. 4 | # Øystein Steffensen-Alværvik , 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: \n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2022-06-19 13:54+0200\n" 11 | "Last-Translator: Karl Ove Hufthammer \n" 12 | "Language-Team: Norwegian Nynorsk \n" 13 | "Language: nn\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 22.04.2\n" 19 | "X-Environment: kde\n" 20 | "X-Accelerator-Marker: &\n" 21 | "X-Text-Markup: kde4\n" 22 | 23 | #: decorationbutton.cpp:303 24 | #, kde-format 25 | msgctxt "" 26 | "@info:tooltip The Name of the menu that appears when you click a window's " 27 | "app icon" 28 | msgid "Window menu" 29 | msgstr "" 30 | 31 | #: decorationbutton.cpp:305 32 | #, kde-format 33 | msgid "Application menu" 34 | msgstr "Programmeny" 35 | 36 | #: decorationbutton.cpp:308 37 | #, kde-format 38 | msgid "On one desktop" 39 | msgstr "På eitt skrivebord" 40 | 41 | #: decorationbutton.cpp:310 42 | #, kde-format 43 | msgid "On all desktops" 44 | msgstr "På alle skriveborda" 45 | 46 | #: decorationbutton.cpp:312 47 | #, kde-format 48 | msgid "Minimize" 49 | msgstr "Minimer" 50 | 51 | #: decorationbutton.cpp:315 52 | #, kde-format 53 | msgid "Restore" 54 | msgstr "Gjenopprett" 55 | 56 | #: decorationbutton.cpp:317 57 | #, kde-format 58 | msgid "Maximize" 59 | msgstr "Maksimer" 60 | 61 | #: decorationbutton.cpp:319 62 | #, kde-format 63 | msgid "Close" 64 | msgstr "Lukk" 65 | 66 | #: decorationbutton.cpp:321 67 | #, kde-format 68 | msgid "Context help" 69 | msgstr "Emnehjelp" 70 | 71 | #: decorationbutton.cpp:324 72 | #, kde-format 73 | msgid "Unshade" 74 | msgstr "Rull ned" 75 | 76 | #: decorationbutton.cpp:326 77 | #, kde-format 78 | msgid "Shade" 79 | msgstr "Rull opp" 80 | 81 | #: decorationbutton.cpp:329 82 | #, kde-format 83 | msgid "Don't keep below other windows" 84 | msgstr "Ikkje hald under andre vindauge" 85 | 86 | #: decorationbutton.cpp:331 87 | #, kde-format 88 | msgid "Keep below other windows" 89 | msgstr "Hald under andre vindauge" 90 | 91 | #: decorationbutton.cpp:334 92 | #, kde-format 93 | msgid "Don't keep above other windows" 94 | msgstr "Ikkje hald over andre vindauge" 95 | 96 | #: decorationbutton.cpp:336 97 | #, kde-format 98 | msgid "Keep above other windows" 99 | msgstr "Hald over andre vindauge" 100 | -------------------------------------------------------------------------------- /po/pa/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # A S Alam , 2023. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2023-05-19 20:09-0700\n" 11 | "Last-Translator: A S Alam \n" 12 | "Language-Team: Punjabi \n" 13 | "Language: pa\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 23.04.1\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "ਐਪਲੀਕੇਸ਼ਨ ਮੇਨੂ" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "ਇੱਕ ਡੈਸਕਟਾਪ ਉੱਤੇ" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "ਸਾਰੇ ਡੈਸਕਟਾਪਾਂ ਉੱਤੇ" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "ਘੱਟੋ-ਘੱਟ" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "ਬਹਾਲ ਕਰੋ" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "ਵੱਧੋ-ਵੱਧ" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "ਬੰਦ ਕਰੋ" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "ਪ੍ਰਸੰਗ ਮਦਦ" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "ਬਿਨਾਂ-ਸ਼ੇਡ" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "ਸ਼ੇਡ" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "ਹੋਰ ਵਿੰਡੋਆਂ ਦੇ ਹੇਠਾਂ ਨਾ ਰੱਖੋ" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "ਹੋਰ ਵਿੰਡੋਆਂ ਦੇ ਹੇਠਾਂ ਰੱਖੋ" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "ਹੋਰ ਵਿੰਡੋਆਂ ਦੇ ਉੱਤੇ ਨਾ ਰੱਖੋ" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "ਹੋਰ ਵਿੰਡੋਆਂ ਦੇ ਉੱਤੇ ਰੱਖੋ" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "ਇਸ ਵਿੰਡੋ ਲਈ ਹੋਰ ਕਾਰਵਾਈਆਂ" 100 | -------------------------------------------------------------------------------- /po/pl/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This_file_is_part_of_KDE 2 | # This file is distributed under the same license as the PACKAGE package. 3 | # 4 | # Łukasz Wojniłowicz , 2018, 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: \n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2021-12-30 13:22+0100\n" 11 | "Last-Translator: Łukasz Wojniłowicz \n" 12 | "Language-Team: Polish \n" 13 | "Language: pl\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " 18 | "|| n%100>=20) ? 1 : 2);\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Menu programów" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "Na pulpicie" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "Na wszystkich pulpitach" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Zminimalizuj" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Przywróć" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Zmaksymalizuj" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Zamknij" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Pomoc podręczna" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Rozwiń" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Zwiń" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "Nie utrzymuj pod innymi oknami" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "Utrzymuj pod innymi oknami" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "Nie utrzymuj nad innymi oknami" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "Utrzymuj nad innymi oknami" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "Więcej działań dla tego okna" 100 | 101 | #~ msgid "Menu" 102 | #~ msgstr "Menu" 103 | 104 | #~ msgid "Keep below" 105 | #~ msgstr "Zawsze pod spodem" 106 | 107 | #~ msgid "Keep above" 108 | #~ msgstr "Zawsze na wierzchu" 109 | -------------------------------------------------------------------------------- /po/pt/kdecoration.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: kdecoration\n" 4 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 5 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 6 | "PO-Revision-Date: 2021-05-06 16:43+0100\n" 7 | "Last-Translator: José Nuno Coelho Pires \n" 8 | "Language-Team: Portuguese \n" 9 | "Language: pt\n" 10 | "MIME-Version: 1.0\n" 11 | "Content-Type: text/plain; charset=UTF-8\n" 12 | "Content-Transfer-Encoding: 8bit\n" 13 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 14 | 15 | #: decorationbutton.cpp:303 16 | #, kde-format 17 | msgctxt "" 18 | "@info:tooltip The Name of the menu that appears when you click a window's " 19 | "app icon" 20 | msgid "Window menu" 21 | msgstr "" 22 | 23 | #: decorationbutton.cpp:305 24 | #, kde-format 25 | msgid "Application menu" 26 | msgstr "Menu da aplicação" 27 | 28 | #: decorationbutton.cpp:308 29 | #, kde-format 30 | msgid "On one desktop" 31 | msgstr "Num ecrã" 32 | 33 | #: decorationbutton.cpp:310 34 | #, kde-format 35 | msgid "On all desktops" 36 | msgstr "Em todos os ecrãs" 37 | 38 | #: decorationbutton.cpp:312 39 | #, kde-format 40 | msgid "Minimize" 41 | msgstr "Minimizar" 42 | 43 | #: decorationbutton.cpp:315 44 | #, kde-format 45 | msgid "Restore" 46 | msgstr "Repor" 47 | 48 | #: decorationbutton.cpp:317 49 | #, kde-format 50 | msgid "Maximize" 51 | msgstr "Maximizar" 52 | 53 | #: decorationbutton.cpp:319 54 | #, kde-format 55 | msgid "Close" 56 | msgstr "Fechar" 57 | 58 | #: decorationbutton.cpp:321 59 | #, kde-format 60 | msgid "Context help" 61 | msgstr "Ajuda de contexto" 62 | 63 | #: decorationbutton.cpp:324 64 | #, kde-format 65 | msgid "Unshade" 66 | msgstr "Desenrolar" 67 | 68 | #: decorationbutton.cpp:326 69 | #, kde-format 70 | msgid "Shade" 71 | msgstr "Enrolar" 72 | 73 | #: decorationbutton.cpp:329 74 | #, kde-format 75 | msgid "Don't keep below other windows" 76 | msgstr "Não manter abaixo das outras janelas" 77 | 78 | #: decorationbutton.cpp:331 79 | #, kde-format 80 | msgid "Keep below other windows" 81 | msgstr "Manter abaixo das outras janelas" 82 | 83 | #: decorationbutton.cpp:334 84 | #, kde-format 85 | msgid "Don't keep above other windows" 86 | msgstr "Não manter acima das outras janelas" 87 | 88 | #: decorationbutton.cpp:336 89 | #, kde-format 90 | msgid "Keep above other windows" 91 | msgstr "Manter acima das outras janelas" 92 | 93 | #~ msgid "More actions for this window" 94 | #~ msgstr "Mais acções para esta janela" 95 | -------------------------------------------------------------------------------- /po/pt_BR/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This_file_is_part_of_KDE 2 | # This file is distributed under the same license as the PACKAGE package. 3 | # 4 | # Luiz Fernando Ranghetti , 2018, 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: \n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2021-05-06 14:05-0300\n" 11 | "Last-Translator: Luiz Fernando Ranghetti \n" 12 | "Language-Team: Brazilian Portuguese \n" 13 | "Language: pt_BR\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" 18 | "X-Generator: Lokalize 20.04.2\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Menu do aplicativo" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "Em uma área de trabalho" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "Em todas as áreas de trabalho" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Minimizar" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Restaurar" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Maximizar" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Fechar" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Ajuda de contexto" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Sem sombras" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Sombrear" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "Não manter abaixo de outras janelas" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "Manter abaixo de outras janelas" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "Não manter acima de outras janelas" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "Manter acima de outras janelas" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "Mais ações para esta janela" 100 | 101 | #~ msgid "Menu" 102 | #~ msgstr "Menu" 103 | 104 | #~ msgid "Keep below" 105 | #~ msgstr "Manter abaixo" 106 | 107 | #~ msgid "Keep above" 108 | #~ msgstr "Manter acima" 109 | -------------------------------------------------------------------------------- /po/ro/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # Sergiu Bivol , 2020, 2021. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2021-06-02 20:19+0100\n" 11 | "Last-Translator: Sergiu Bivol \n" 12 | "Language-Team: Romanian\n" 13 | "Language: ro\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " 18 | "20)) ? 1 : 2;\n" 19 | "X-Generator: Lokalize 19.12.3\n" 20 | 21 | #: decorationbutton.cpp:303 22 | #, kde-format 23 | msgctxt "" 24 | "@info:tooltip The Name of the menu that appears when you click a window's " 25 | "app icon" 26 | msgid "Window menu" 27 | msgstr "" 28 | 29 | #: decorationbutton.cpp:305 30 | #, kde-format 31 | msgid "Application menu" 32 | msgstr "Meniul aplicației" 33 | 34 | #: decorationbutton.cpp:308 35 | #, kde-format 36 | msgid "On one desktop" 37 | msgstr "Pe un birou" 38 | 39 | #: decorationbutton.cpp:310 40 | #, kde-format 41 | msgid "On all desktops" 42 | msgstr "Pe toate birourile" 43 | 44 | #: decorationbutton.cpp:312 45 | #, kde-format 46 | msgid "Minimize" 47 | msgstr "Minimizează" 48 | 49 | #: decorationbutton.cpp:315 50 | #, kde-format 51 | msgid "Restore" 52 | msgstr "Restabilește" 53 | 54 | #: decorationbutton.cpp:317 55 | #, kde-format 56 | msgid "Maximize" 57 | msgstr "Maximizează" 58 | 59 | #: decorationbutton.cpp:319 60 | #, kde-format 61 | msgid "Close" 62 | msgstr "Închide" 63 | 64 | #: decorationbutton.cpp:321 65 | #, kde-format 66 | msgid "Context help" 67 | msgstr "Ajutor contextual" 68 | 69 | #: decorationbutton.cpp:324 70 | #, kde-format 71 | msgid "Unshade" 72 | msgstr "Desfășoară" 73 | 74 | #: decorationbutton.cpp:326 75 | #, kde-format 76 | msgid "Shade" 77 | msgstr "Strânge" 78 | 79 | #: decorationbutton.cpp:329 80 | #, kde-format 81 | msgid "Don't keep below other windows" 82 | msgstr "Nu ține sub alte ferestre" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "Ține sub alte ferestre" 88 | 89 | #: decorationbutton.cpp:334 90 | #, kde-format 91 | msgid "Don't keep above other windows" 92 | msgstr "Nu ține deasupra altor ferestre" 93 | 94 | #: decorationbutton.cpp:336 95 | #, kde-format 96 | msgid "Keep above other windows" 97 | msgstr "Ține deasupra altor ferestre" 98 | 99 | #~ msgid "More actions for this window" 100 | #~ msgstr "Acțiuni suplimentare pentru această fereastră" 101 | 102 | #~ msgid "Menu" 103 | #~ msgstr "Meniu" 104 | 105 | #~ msgid "Keep below" 106 | #~ msgstr "Ține dedesubt" 107 | 108 | #~ msgid "Keep above" 109 | #~ msgstr "Ține deasupra" 110 | -------------------------------------------------------------------------------- /po/ru/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This_file_is_part_of_KDE 2 | # This file is distributed under the same license as the PACKAGE package. 3 | # 4 | # Alexander Potashev , 2018. 5 | # Alexander Yavorsky , 2021. 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: \n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 11 | "PO-Revision-Date: 2021-06-08 16:54+0300\n" 12 | "Last-Translator: Alexander Yavorsky \n" 13 | "Language-Team: Russian \n" 14 | "Language: ru\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : n" 19 | "%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" 20 | "X-Generator: Lokalize 21.04.1\n" 21 | 22 | #: decorationbutton.cpp:303 23 | #, kde-format 24 | msgctxt "" 25 | "@info:tooltip The Name of the menu that appears when you click a window's " 26 | "app icon" 27 | msgid "Window menu" 28 | msgstr "" 29 | 30 | #: decorationbutton.cpp:305 31 | #, kde-format 32 | msgid "Application menu" 33 | msgstr "Меню приложения" 34 | 35 | #: decorationbutton.cpp:308 36 | #, kde-format 37 | msgid "On one desktop" 38 | msgstr "На одном рабочем столе" 39 | 40 | #: decorationbutton.cpp:310 41 | #, kde-format 42 | msgid "On all desktops" 43 | msgstr "На всех рабочих столах" 44 | 45 | #: decorationbutton.cpp:312 46 | #, kde-format 47 | msgid "Minimize" 48 | msgstr "Свернуть" 49 | 50 | #: decorationbutton.cpp:315 51 | #, kde-format 52 | msgid "Restore" 53 | msgstr "Восстановить" 54 | 55 | #: decorationbutton.cpp:317 56 | #, kde-format 57 | msgid "Maximize" 58 | msgstr "Распахнуть" 59 | 60 | #: decorationbutton.cpp:319 61 | #, kde-format 62 | msgid "Close" 63 | msgstr "Закрыть" 64 | 65 | #: decorationbutton.cpp:321 66 | #, kde-format 67 | msgid "Context help" 68 | msgstr "Контекстная справка" 69 | 70 | #: decorationbutton.cpp:324 71 | #, kde-format 72 | msgid "Unshade" 73 | msgstr "Развернуть из заголовка" 74 | 75 | #: decorationbutton.cpp:326 76 | #, kde-format 77 | msgid "Shade" 78 | msgstr "Свернуть в заголовок" 79 | 80 | #: decorationbutton.cpp:329 81 | #, kde-format 82 | msgid "Don't keep below other windows" 83 | msgstr "Не удерживать ниже других окон" 84 | 85 | #: decorationbutton.cpp:331 86 | #, kde-format 87 | msgid "Keep below other windows" 88 | msgstr "Удерживать ниже других окон" 89 | 90 | #: decorationbutton.cpp:334 91 | #, kde-format 92 | msgid "Don't keep above other windows" 93 | msgstr "Не удерживать поверх других окон" 94 | 95 | #: decorationbutton.cpp:336 96 | #, kde-format 97 | msgid "Keep above other windows" 98 | msgstr "Удерживать поверх других окон" 99 | 100 | #~ msgid "More actions for this window" 101 | #~ msgstr "Дополнительные действия для этого окна" 102 | 103 | #~ msgid "Menu" 104 | #~ msgstr "Меню" 105 | 106 | #~ msgid "Keep below" 107 | #~ msgstr "Поддерживать на заднем плане" 108 | 109 | #~ msgid "Keep above" 110 | #~ msgstr "Поддерживать поверх других" 111 | -------------------------------------------------------------------------------- /po/sa/kdecoration.po: -------------------------------------------------------------------------------- 1 | # SOME DESCRIPTIVE TITLE. 2 | # Copyright (C) YEAR This file is copyright: 3 | # This file is distributed under the same license as the kdecoration package. 4 | # FIRST AUTHOR , YEAR. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: kdecoration\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 11 | "PO-Revision-Date: 2023-09-27 19:49+0530\n" 12 | "Last-Translator: \n" 13 | "Language-Team: Sanskrit \n" 14 | "Language: sa\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "X-Generator: Poedit 3.3.2\n" 19 | "Plural-Forms: nplurals=2; plural=(n>2);\n" 20 | 21 | #: decorationbutton.cpp:303 22 | #, kde-format 23 | msgctxt "" 24 | "@info:tooltip The Name of the menu that appears when you click a window's " 25 | "app icon" 26 | msgid "Window menu" 27 | msgstr "" 28 | 29 | #: decorationbutton.cpp:305 30 | #, kde-format 31 | msgid "Application menu" 32 | msgstr "अनुप्रयोग सूचि" 33 | 34 | #: decorationbutton.cpp:308 35 | #, kde-format 36 | msgid "On one desktop" 37 | msgstr "एकस्मिन् कार्यमुखे" 38 | 39 | #: decorationbutton.cpp:310 40 | #, kde-format 41 | msgid "On all desktops" 42 | msgstr "सर्वेषु कार्यमुखेषु" 43 | 44 | #: decorationbutton.cpp:312 45 | #, kde-format 46 | msgid "Minimize" 47 | msgstr "न्यूनतमं करोतु" 48 | 49 | #: decorationbutton.cpp:315 50 | #, kde-format 51 | msgid "Restore" 52 | msgstr "निर्यत्" 53 | 54 | #: decorationbutton.cpp:317 55 | #, kde-format 56 | msgid "Maximize" 57 | msgstr "अधिकतमं कुर्वन्तु" 58 | 59 | #: decorationbutton.cpp:319 60 | #, kde-format 61 | msgid "Close" 62 | msgstr "निमील्यताम्" 63 | 64 | #: decorationbutton.cpp:321 65 | #, kde-format 66 | msgid "Context help" 67 | msgstr "सन्दर्भ सहाय्यम्" 68 | 69 | #: decorationbutton.cpp:324 70 | #, kde-format 71 | msgid "Unshade" 72 | msgstr "अनच्छाया" 73 | 74 | #: decorationbutton.cpp:326 75 | #, kde-format 76 | msgid "Shade" 77 | msgstr "छाया" 78 | 79 | #: decorationbutton.cpp:329 80 | #, kde-format 81 | msgid "Don't keep below other windows" 82 | msgstr "अन्येषां गवाक्षानां अधः न स्थापयन्तु" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "अन्येषां गवाक्षानां अधः स्थापयन्तु" 88 | 89 | #: decorationbutton.cpp:334 90 | #, kde-format 91 | msgid "Don't keep above other windows" 92 | msgstr "अन्येषां गवाक्षानां उपरि न स्थापयन्तु" 93 | 94 | #: decorationbutton.cpp:336 95 | #, kde-format 96 | msgid "Keep above other windows" 97 | msgstr "अन्येषां गवाक्षानां उपरि स्थापयन्तु" 98 | 99 | #~ msgid "More actions for this window" 100 | #~ msgstr "अस्य गवाक्ष कृते अधिकानि क्रियाणि" 101 | -------------------------------------------------------------------------------- /po/sk/kdecoration.po: -------------------------------------------------------------------------------- 1 | # translation of kdecoration.po Slovak 2 | # Roman Paholík , 2018. 3 | # Matej Mrenica , 2019, 2021. 4 | msgid "" 5 | msgstr "" 6 | "Project-Id-Version: kdecoration\n" 7 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 8 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 9 | "PO-Revision-Date: 2021-07-20 17:50+0200\n" 10 | "Last-Translator: Matej Mrenica \n" 11 | "Language-Team: Slovak \n" 12 | "Language: sk\n" 13 | "MIME-Version: 1.0\n" 14 | "Content-Type: text/plain; charset=UTF-8\n" 15 | "Content-Transfer-Encoding: 8bit\n" 16 | "X-Generator: Lokalize 21.07.80\n" 17 | "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" 18 | 19 | #: decorationbutton.cpp:303 20 | #, kde-format 21 | msgctxt "" 22 | "@info:tooltip The Name of the menu that appears when you click a window's " 23 | "app icon" 24 | msgid "Window menu" 25 | msgstr "" 26 | 27 | #: decorationbutton.cpp:305 28 | #, kde-format 29 | msgid "Application menu" 30 | msgstr "Aplikačná ponuka" 31 | 32 | #: decorationbutton.cpp:308 33 | #, kde-format 34 | msgid "On one desktop" 35 | msgstr "Na jednej ploche" 36 | 37 | #: decorationbutton.cpp:310 38 | #, kde-format 39 | msgid "On all desktops" 40 | msgstr "Na všetkých plochách" 41 | 42 | #: decorationbutton.cpp:312 43 | #, kde-format 44 | msgid "Minimize" 45 | msgstr "Minimalizovať" 46 | 47 | #: decorationbutton.cpp:315 48 | #, kde-format 49 | msgid "Restore" 50 | msgstr "Obnoviť" 51 | 52 | #: decorationbutton.cpp:317 53 | #, kde-format 54 | msgid "Maximize" 55 | msgstr "Maximalizovať" 56 | 57 | #: decorationbutton.cpp:319 58 | #, kde-format 59 | msgid "Close" 60 | msgstr "Zavrieť" 61 | 62 | #: decorationbutton.cpp:321 63 | #, kde-format 64 | msgid "Context help" 65 | msgstr "Kontextový pomocník" 66 | 67 | #: decorationbutton.cpp:324 68 | #, kde-format 69 | msgid "Unshade" 70 | msgstr "Odtieňovať" 71 | 72 | #: decorationbutton.cpp:326 73 | #, kde-format 74 | msgid "Shade" 75 | msgstr "Tieňovať" 76 | 77 | #: decorationbutton.cpp:329 78 | #, kde-format 79 | msgid "Don't keep below other windows" 80 | msgstr "Nedržať pod ostatnými oknami" 81 | 82 | #: decorationbutton.cpp:331 83 | #, kde-format 84 | msgid "Keep below other windows" 85 | msgstr "Držať pod ostatnými oknami" 86 | 87 | #: decorationbutton.cpp:334 88 | #, kde-format 89 | msgid "Don't keep above other windows" 90 | msgstr "Nedržať nad ostatnými oknami" 91 | 92 | #: decorationbutton.cpp:336 93 | #, kde-format 94 | msgid "Keep above other windows" 95 | msgstr "Držať nad ostatnými oknami" 96 | 97 | #~ msgid "More actions for this window" 98 | #~ msgstr "Viac akcií pre toto okno" 99 | 100 | #~ msgid "Menu" 101 | #~ msgstr "Ponuka" 102 | 103 | #~ msgid "Keep below" 104 | #~ msgstr "Držať pod" 105 | 106 | #~ msgid "Keep above" 107 | #~ msgstr "Držať nad" 108 | -------------------------------------------------------------------------------- /po/sl/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # Matjaž Jeran , 2020, 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2025-05-31 21:55+0200\n" 11 | "Last-Translator: Matjaž Jeran \n" 12 | "Language-Team: Slovenian \n" 13 | "Language: sl\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n" 18 | "%100==4 ? 3 : 0);\n" 19 | "X-Generator: Poedit 3.6\n" 20 | 21 | #: decorationbutton.cpp:303 22 | #, kde-format 23 | msgctxt "" 24 | "@info:tooltip The Name of the menu that appears when you click a window's " 25 | "app icon" 26 | msgid "Window menu" 27 | msgstr "Meni okna" 28 | 29 | #: decorationbutton.cpp:305 30 | #, kde-format 31 | msgid "Application menu" 32 | msgstr "Meni aplikacije" 33 | 34 | #: decorationbutton.cpp:308 35 | #, kde-format 36 | msgid "On one desktop" 37 | msgstr "Na enem namizju" 38 | 39 | #: decorationbutton.cpp:310 40 | #, kde-format 41 | msgid "On all desktops" 42 | msgstr "Na vseh namizjih" 43 | 44 | #: decorationbutton.cpp:312 45 | #, kde-format 46 | msgid "Minimize" 47 | msgstr "Strni" 48 | 49 | #: decorationbutton.cpp:315 50 | #, kde-format 51 | msgid "Restore" 52 | msgstr "Obnovi" 53 | 54 | #: decorationbutton.cpp:317 55 | #, kde-format 56 | msgid "Maximize" 57 | msgstr "Razpni" 58 | 59 | #: decorationbutton.cpp:319 60 | #, kde-format 61 | msgid "Close" 62 | msgstr "Zapri" 63 | 64 | #: decorationbutton.cpp:321 65 | #, kde-format 66 | msgid "Context help" 67 | msgstr "Kontekstna pomoč" 68 | 69 | #: decorationbutton.cpp:324 70 | #, kde-format 71 | msgid "Unshade" 72 | msgstr "Odpravi senčenje" 73 | 74 | #: decorationbutton.cpp:326 75 | #, kde-format 76 | msgid "Shade" 77 | msgstr "Osenči" 78 | 79 | #: decorationbutton.cpp:329 80 | #, kde-format 81 | msgid "Don't keep below other windows" 82 | msgstr "Ne zadržuj pod drugimi okni" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "Zadržuj pod drugimi okni" 88 | 89 | #: decorationbutton.cpp:334 90 | #, kde-format 91 | msgid "Don't keep above other windows" 92 | msgstr "Ne zadržuj nad drugimi okni" 93 | 94 | #: decorationbutton.cpp:336 95 | #, kde-format 96 | msgid "Keep above other windows" 97 | msgstr "Zadržuj nad drugimi okni" 98 | 99 | #~ msgid "More actions for this window" 100 | #~ msgstr "Več dejavnosti za to okno" 101 | 102 | #~ msgid "Menu" 103 | #~ msgstr "Meni" 104 | 105 | #~ msgid "Keep below" 106 | #~ msgstr "Zadržuj spodaj" 107 | 108 | #~ msgid "Keep above" 109 | #~ msgstr "Zadržuj na vrhu" 110 | -------------------------------------------------------------------------------- /po/sv/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This_file_is_part_of_KDE 2 | # This file is distributed under the same license as the PACKAGE package. 3 | # 4 | # SPDX-FileCopyrightText: 2018, 2021, 2025 Stefan Asserhäll 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: \n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2025-05-31 09:14+0200\n" 11 | "Last-Translator: Stefan Asserhäll \n" 12 | "Language-Team: Swedish \n" 13 | "Language: sv\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 25.04.1\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "Fönstermeny" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Programmeny" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "På ett skrivbord" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "På alla skrivbord" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Minimera" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Återställ" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Maximera" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Stäng" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Sammanhangsberoende hjälp" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Rulla ner" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Rulla upp" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "Behåll inte under andra fönster" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "Behåll under andra fönster" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "Behåll inte över andra fönster" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "Behåll över andra fönster" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "Fler åtgärder för fönstret" 100 | 101 | #~ msgid "Menu" 102 | #~ msgstr "Meny" 103 | 104 | #~ msgid "Keep below" 105 | #~ msgstr "Behåll under" 106 | 107 | #~ msgid "Keep above" 108 | #~ msgstr "Behåll över" 109 | -------------------------------------------------------------------------------- /po/ta/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # SPDX-FileCopyrightText: 2024 Kishore G 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2024-06-30 12:37+0530\n" 11 | "Last-Translator: Kishore G \n" 12 | "Language-Team: Tamil \n" 13 | "Language: ta\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 24.05.1\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "செயலி பட்டி" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "ஒரு பணிமேடையில்" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "அனைத்து பணிமேடைகளிலும்" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "ஒதுக்கு" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "மீட்டெடு" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "அதிகபட்ச பெரிதாக்கு" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "மூடு" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "சூழலை பொறுத்த உதவி" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "நிழல்நீக்கு" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "நிழலிடு" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "மற்ற சாளரங்களுக்கு கீழே வைக்க வேண்டாம்" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "மற்ற சாளரங்களுக்கு கீழே வை" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "மற்ற சாளரங்களுக்கு மேலே வைக்க வேண்டாம்" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "மற்ற சாளரங்களுக்கு மேலே வை" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "இச்சாளரத்திற்கான கூடுதல் செயல்கள்" 100 | -------------------------------------------------------------------------------- /po/tr/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # SPDX-FileCopyrightText: 2022, 2023, 2024, 2025 Emir SARI 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: kdecoration\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 10 | "PO-Revision-Date: 2025-05-31 20:26+0300\n" 11 | "Last-Translator: Emir SARI \n" 12 | "Language-Team: Turkish \n" 13 | "Language: tr\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" 18 | "X-Generator: Lokalize 25.04.1\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "Pencere menüsü" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "Uygulama menüsü" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "Bir masaüstünde" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "Tüm masaüstlerinde" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "Simge Durumuna Küçült" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "Eski Haline Döndür" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "Ekranı Kapla" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "Kapat" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "Bağlam Yardımı" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "Panjuru Aç" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "Panjuru Kapat" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "Diğer pencerelerin altında tutma" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "Diğer pencerelerin altında tut" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "Diğer pencerelerin üzerinde tutma" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "Diğer pencerelerin üzerinde tut" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "Bu pencere için daha fazla eylem" 100 | -------------------------------------------------------------------------------- /po/uk/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Translation of kdecoration.po to Ukrainian 2 | # Copyright (C) 2018 This_file_is_part_of_KDE 3 | # This file is distributed under the license LGPL version 2.1 or 4 | # version 3 or later versions approved by the membership of KDE e.V. 5 | # 6 | # Yuri Chornoivan , 2018, 2021, 2025. 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: kdecoration\n" 10 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 11 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 12 | "PO-Revision-Date: 2025-05-31 07:35+0300\n" 13 | "Last-Translator: Yuri Chornoivan \n" 14 | "Language-Team: Ukrainian \n" 15 | "Language: uk\n" 16 | "MIME-Version: 1.0\n" 17 | "Content-Type: text/plain; charset=UTF-8\n" 18 | "Content-Transfer-Encoding: 8bit\n" 19 | "Plural-Forms: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : n" 20 | "%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" 21 | "X-Generator: Lokalize 23.04.3\n" 22 | 23 | #: decorationbutton.cpp:303 24 | #, kde-format 25 | msgctxt "" 26 | "@info:tooltip The Name of the menu that appears when you click a window's " 27 | "app icon" 28 | msgid "Window menu" 29 | msgstr "Меню вікна" 30 | 31 | #: decorationbutton.cpp:305 32 | #, kde-format 33 | msgid "Application menu" 34 | msgstr "Меню програм" 35 | 36 | #: decorationbutton.cpp:308 37 | #, kde-format 38 | msgid "On one desktop" 39 | msgstr "На одній стільниці" 40 | 41 | #: decorationbutton.cpp:310 42 | #, kde-format 43 | msgid "On all desktops" 44 | msgstr "На всіх стільницях" 45 | 46 | #: decorationbutton.cpp:312 47 | #, kde-format 48 | msgid "Minimize" 49 | msgstr "Мінімізувати" 50 | 51 | #: decorationbutton.cpp:315 52 | #, kde-format 53 | msgid "Restore" 54 | msgstr "Відновити" 55 | 56 | #: decorationbutton.cpp:317 57 | #, kde-format 58 | msgid "Maximize" 59 | msgstr "Максимізувати" 60 | 61 | #: decorationbutton.cpp:319 62 | #, kde-format 63 | msgid "Close" 64 | msgstr "Закрити" 65 | 66 | #: decorationbutton.cpp:321 67 | #, kde-format 68 | msgid "Context help" 69 | msgstr "Контекстна довідка" 70 | 71 | #: decorationbutton.cpp:324 72 | #, kde-format 73 | msgid "Unshade" 74 | msgstr "Розгорнути" 75 | 76 | #: decorationbutton.cpp:326 77 | #, kde-format 78 | msgid "Shade" 79 | msgstr "Згорнути" 80 | 81 | #: decorationbutton.cpp:329 82 | #, kde-format 83 | msgid "Don't keep below other windows" 84 | msgstr "Не утримувати під іншими вікнами" 85 | 86 | #: decorationbutton.cpp:331 87 | #, kde-format 88 | msgid "Keep below other windows" 89 | msgstr "Утримувати під іншими вікнами" 90 | 91 | #: decorationbutton.cpp:334 92 | #, kde-format 93 | msgid "Don't keep above other windows" 94 | msgstr "Не утримувати над іншими вікнами" 95 | 96 | #: decorationbutton.cpp:336 97 | #, kde-format 98 | msgid "Keep above other windows" 99 | msgstr "Утримувати над іншими вікнами" 100 | 101 | #~ msgid "More actions for this window" 102 | #~ msgstr "Додаткові дії для цього вікна" 103 | 104 | #~ msgid "Menu" 105 | #~ msgstr "Меню" 106 | 107 | #~ msgid "Keep below" 108 | #~ msgstr "Тримати знизу" 109 | 110 | #~ msgid "Keep above" 111 | #~ msgstr "Тримати зверху" 112 | -------------------------------------------------------------------------------- /po/zh_CN/kdecoration.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: kdeorg\n" 4 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 5 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 6 | "PO-Revision-Date: 2024-04-22 15:58\n" 7 | "Last-Translator: \n" 8 | "Language-Team: Chinese Simplified\n" 9 | "Language: zh_CN\n" 10 | "MIME-Version: 1.0\n" 11 | "Content-Type: text/plain; charset=UTF-8\n" 12 | "Content-Transfer-Encoding: 8bit\n" 13 | "Plural-Forms: nplurals=1; plural=0;\n" 14 | "X-Crowdin-Project: kdeorg\n" 15 | "X-Crowdin-Project-ID: 269464\n" 16 | "X-Crowdin-Language: zh-CN\n" 17 | "X-Crowdin-File: /kf6-trunk/messages/kdecoration/kdecoration.pot\n" 18 | "X-Crowdin-File-ID: 42939\n" 19 | 20 | #: decorationbutton.cpp:303 21 | #, kde-format 22 | msgctxt "" 23 | "@info:tooltip The Name of the menu that appears when you click a window's " 24 | "app icon" 25 | msgid "Window menu" 26 | msgstr "" 27 | 28 | #: decorationbutton.cpp:305 29 | #, kde-format 30 | msgid "Application menu" 31 | msgstr "应用程序菜单" 32 | 33 | #: decorationbutton.cpp:308 34 | #, kde-format 35 | msgid "On one desktop" 36 | msgstr "在一个桌面" 37 | 38 | #: decorationbutton.cpp:310 39 | #, kde-format 40 | msgid "On all desktops" 41 | msgstr "在全部桌面" 42 | 43 | #: decorationbutton.cpp:312 44 | #, kde-format 45 | msgid "Minimize" 46 | msgstr "最小化" 47 | 48 | #: decorationbutton.cpp:315 49 | #, kde-format 50 | msgid "Restore" 51 | msgstr "还原" 52 | 53 | #: decorationbutton.cpp:317 54 | #, kde-format 55 | msgid "Maximize" 56 | msgstr "最大化" 57 | 58 | #: decorationbutton.cpp:319 59 | #, kde-format 60 | msgid "Close" 61 | msgstr "关闭" 62 | 63 | #: decorationbutton.cpp:321 64 | #, kde-format 65 | msgid "Context help" 66 | msgstr "相关帮助" 67 | 68 | #: decorationbutton.cpp:324 69 | #, kde-format 70 | msgid "Unshade" 71 | msgstr "展开" 72 | 73 | #: decorationbutton.cpp:326 74 | #, kde-format 75 | msgid "Shade" 76 | msgstr "折叠" 77 | 78 | #: decorationbutton.cpp:329 79 | #, kde-format 80 | msgid "Don't keep below other windows" 81 | msgstr "不要保持在其他窗口之下" 82 | 83 | #: decorationbutton.cpp:331 84 | #, kde-format 85 | msgid "Keep below other windows" 86 | msgstr "保持在其他窗口之下" 87 | 88 | #: decorationbutton.cpp:334 89 | #, kde-format 90 | msgid "Don't keep above other windows" 91 | msgstr "不要保持在其他窗口之上" 92 | 93 | #: decorationbutton.cpp:336 94 | #, kde-format 95 | msgid "Keep above other windows" 96 | msgstr "保持在其他窗口之上" 97 | 98 | #~ msgid "More actions for this window" 99 | #~ msgstr "此窗口的更多操作" 100 | -------------------------------------------------------------------------------- /po/zh_TW/kdecoration.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2025 This file is copyright: 2 | # This file is distributed under the same license as the kdecoration package. 3 | # 4 | # pan93412 , 2019. 5 | # SPDX-FileCopyrightText: 2023, 2025 Kisaragi Hiu 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: kdecoration\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2025-05-31 00:43+0000\n" 11 | "PO-Revision-Date: 2025-06-04 07:26+0900\n" 12 | "Last-Translator: Kisaragi Hiu \n" 13 | "Language-Team: Traditional Chinese \n" 14 | "Language: zh_TW\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=1; plural=0;\n" 19 | "X-Generator: Lokalize 25.07.70\n" 20 | 21 | #: decorationbutton.cpp:303 22 | #, kde-format 23 | msgctxt "" 24 | "@info:tooltip The Name of the menu that appears when you click a window's " 25 | "app icon" 26 | msgid "Window menu" 27 | msgstr "視窗選單" 28 | 29 | #: decorationbutton.cpp:305 30 | #, kde-format 31 | msgid "Application menu" 32 | msgstr "應用程式選單" 33 | 34 | #: decorationbutton.cpp:308 35 | #, kde-format 36 | msgid "On one desktop" 37 | msgstr "僅在一個桌面上顯示" 38 | 39 | #: decorationbutton.cpp:310 40 | #, kde-format 41 | msgid "On all desktops" 42 | msgstr "在所有桌面上顯示" 43 | 44 | #: decorationbutton.cpp:312 45 | #, kde-format 46 | msgid "Minimize" 47 | msgstr "最小化" 48 | 49 | #: decorationbutton.cpp:315 50 | #, kde-format 51 | msgid "Restore" 52 | msgstr "回復大小" 53 | 54 | #: decorationbutton.cpp:317 55 | #, kde-format 56 | msgid "Maximize" 57 | msgstr "最大化" 58 | 59 | #: decorationbutton.cpp:319 60 | #, kde-format 61 | msgid "Close" 62 | msgstr "關閉" 63 | 64 | #: decorationbutton.cpp:321 65 | #, kde-format 66 | msgid "Context help" 67 | msgstr "內容說明" 68 | 69 | #: decorationbutton.cpp:324 70 | #, kde-format 71 | msgid "Unshade" 72 | msgstr "取消收起" 73 | 74 | #: decorationbutton.cpp:326 75 | #, kde-format 76 | msgid "Shade" 77 | msgstr "收起" 78 | 79 | #: decorationbutton.cpp:329 80 | #, kde-format 81 | msgid "Don't keep below other windows" 82 | msgstr "不要維持在其他視窗之下" 83 | 84 | #: decorationbutton.cpp:331 85 | #, kde-format 86 | msgid "Keep below other windows" 87 | msgstr "維持在其他視窗之下" 88 | 89 | #: decorationbutton.cpp:334 90 | #, kde-format 91 | msgid "Don't keep above other windows" 92 | msgstr "不要維持在其他視窗之上" 93 | 94 | #: decorationbutton.cpp:336 95 | #, kde-format 96 | msgid "Keep above other windows" 97 | msgstr "維持在其他視窗之上" 98 | 99 | #~ msgid "More actions for this window" 100 | #~ msgstr "這個視窗的更多動作" 101 | 102 | #~ msgid "Menu" 103 | #~ msgstr "選單" 104 | 105 | #~ msgid "Keep below" 106 | #~ msgstr "保持於底部顯示" 107 | 108 | #~ msgid "Keep above" 109 | #~ msgstr "保持於頂部顯示" 110 | -------------------------------------------------------------------------------- /src/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_definitions(-DTRANSLATION_DOMAIN=\"kdecoration\") 2 | 3 | add_subdirectory(private) 4 | 5 | set(libkdecoration3_SRCS 6 | decoratedwindow.cpp 7 | decoratedwindow.h 8 | decoration.cpp 9 | decoration.h 10 | decoration_p.h 11 | decorationbutton.cpp 12 | decorationbutton.h 13 | decorationbutton_p.h 14 | decorationbuttongroup.cpp 15 | decorationbuttongroup.h 16 | decorationbuttongroup_p.h 17 | decorationdefines.h 18 | decorationsettings.cpp 19 | decorationsettings.h 20 | decorationshadow.cpp 21 | decorationshadow.h 22 | decorationshadow_p.h 23 | decorationthemeprovider.cpp 24 | decorationthemeprovider.h 25 | 26 | ) 27 | 28 | add_library(kdecorations3 SHARED ${libkdecoration3_SRCS}) 29 | ecm_generate_export_header(kdecorations3 30 | VERSION ${PROJECT_VERSION} 31 | EXPORT_FILE_NAME kdecoration3/kdecoration3_export.h 32 | DEPRECATION_VERSIONS 5.21 33 | EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT} 34 | ) 35 | 36 | add_library(KDecoration3::KDecoration ALIAS kdecorations3) 37 | 38 | target_link_libraries(kdecorations3 39 | PUBLIC 40 | Qt::Core 41 | Qt::Gui 42 | PRIVATE 43 | kdecorations3private 44 | KF6::I18n 45 | ) 46 | 47 | target_include_directories(kdecorations3 INTERFACE "$" ) 48 | 49 | set_target_properties(kdecorations3 PROPERTIES VERSION ${KDECORATION3_VERSION} 50 | SOVERSION ${KDECORATION3_SOVERSION} 51 | EXPORT_NAME KDecoration 52 | ) 53 | 54 | ecm_generate_headers(KDecoration3_CamelCase_HEADERS 55 | HEADER_NAMES 56 | DecoratedWindow 57 | Decoration 58 | DecorationButton 59 | DecorationButtonGroup 60 | DecorationSettings 61 | DecorationShadow 62 | DecorationThemeProvider 63 | ScaleHelpers 64 | PREFIX 65 | KDecoration3 66 | REQUIRED_HEADERS KDecoration3_HEADERS 67 | ) 68 | install(FILES ${KDecoration3_CamelCase_HEADERS} 69 | DESTINATION ${KDECORATION3_INCLUDEDIR}/KDecoration3 70 | COMPONENT Devel) 71 | 72 | install(TARGETS kdecorations3 EXPORT KDecoration3Targets ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}) 73 | 74 | install( 75 | FILES 76 | ${CMAKE_CURRENT_BINARY_DIR}/kdecoration3/kdecoration3_export.h 77 | ${KDecoration3_HEADERS} 78 | decorationdefines.h 79 | DESTINATION 80 | ${KDECORATION3_INCLUDEDIR}/kdecoration3 81 | COMPONENT 82 | Devel 83 | ) 84 | -------------------------------------------------------------------------------- /src/Messages.sh: -------------------------------------------------------------------------------- 1 | #! /usr/bin/env bash 2 | $XGETTEXT *.cpp -o $podir/kdecoration.pot 3 | -------------------------------------------------------------------------------- /src/decoratedwindow.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #include "decoratedwindow.h" 7 | #include "private/decoratedwindowprivate.h" 8 | #include "private/decorationbridge.h" 9 | #include "scalehelpers.h" 10 | 11 | #include 12 | 13 | namespace KDecoration3 14 | { 15 | DecoratedWindow::DecoratedWindow(Decoration *parent, DecorationBridge *bridge) 16 | : QObject() 17 | , d(bridge->createClient(this, parent)) 18 | { 19 | } 20 | 21 | DecoratedWindow::~DecoratedWindow() = default; 22 | 23 | bool DecoratedWindow::isActive() const 24 | { 25 | return d->isActive(); 26 | } 27 | 28 | QString DecoratedWindow::caption() const 29 | { 30 | return d->caption(); 31 | } 32 | 33 | bool DecoratedWindow::isOnAllDesktops() const 34 | { 35 | return d->isOnAllDesktops(); 36 | } 37 | 38 | bool DecoratedWindow::isShaded() const 39 | { 40 | return d->isShaded(); 41 | } 42 | 43 | QIcon DecoratedWindow::icon() const 44 | { 45 | return d->icon(); 46 | } 47 | 48 | bool DecoratedWindow::isMaximized() const 49 | { 50 | return d->isMaximized(); 51 | } 52 | 53 | bool DecoratedWindow::isMaximizedHorizontally() const 54 | { 55 | return d->isMaximizedHorizontally(); 56 | } 57 | 58 | bool DecoratedWindow::isMaximizedVertically() const 59 | { 60 | return d->isMaximizedVertically(); 61 | } 62 | 63 | bool DecoratedWindow::isKeepAbove() const 64 | { 65 | return d->isKeepAbove(); 66 | } 67 | 68 | bool DecoratedWindow::isKeepBelow() const 69 | { 70 | return d->isKeepBelow(); 71 | } 72 | 73 | bool DecoratedWindow::isCloseable() const 74 | { 75 | return d->isCloseable(); 76 | } 77 | 78 | bool DecoratedWindow::isMaximizeable() const 79 | { 80 | return d->isMaximizeable(); 81 | } 82 | 83 | bool DecoratedWindow::isMinimizeable() const 84 | { 85 | return d->isMinimizeable(); 86 | } 87 | 88 | bool DecoratedWindow::providesContextHelp() const 89 | { 90 | return d->providesContextHelp(); 91 | } 92 | 93 | bool DecoratedWindow::isModal() const 94 | { 95 | return d->isModal(); 96 | } 97 | 98 | bool DecoratedWindow::isShadeable() const 99 | { 100 | return d->isShadeable(); 101 | } 102 | 103 | bool DecoratedWindow::isMoveable() const 104 | { 105 | return d->isMoveable(); 106 | } 107 | 108 | bool DecoratedWindow::isResizeable() const 109 | { 110 | return d->isResizeable(); 111 | } 112 | 113 | qreal DecoratedWindow::width() const 114 | { 115 | return d->width(); 116 | } 117 | 118 | qreal DecoratedWindow::height() const 119 | { 120 | return d->height(); 121 | } 122 | 123 | QSizeF DecoratedWindow::size() const 124 | { 125 | return d->size(); 126 | } 127 | 128 | QPalette DecoratedWindow::palette() const 129 | { 130 | return d->palette(); 131 | } 132 | 133 | Qt::Edges DecoratedWindow::adjacentScreenEdges() const 134 | { 135 | return d->adjacentScreenEdges(); 136 | } 137 | 138 | QString DecoratedWindow::windowClass() const 139 | { 140 | return d->windowClass(); 141 | } 142 | 143 | bool DecoratedWindow::hasApplicationMenu() const 144 | { 145 | return d->hasApplicationMenu(); 146 | } 147 | 148 | bool DecoratedWindow::isApplicationMenuActive() const 149 | { 150 | return d->isApplicationMenuActive(); 151 | } 152 | 153 | Decoration *DecoratedWindow::decoration() const 154 | { 155 | return d->decoration(); 156 | } 157 | 158 | QColor DecoratedWindow::color(QPalette::ColorGroup group, QPalette::ColorRole role) const 159 | { 160 | return d->palette().color(group, role); 161 | } 162 | 163 | QColor DecoratedWindow::color(ColorGroup group, ColorRole role) const 164 | { 165 | return d->color(group, role); 166 | } 167 | 168 | void DecoratedWindow::showApplicationMenu(int actionId) 169 | { 170 | d->showApplicationMenu(actionId); 171 | } 172 | 173 | qreal DecoratedWindow::scale() const 174 | { 175 | return d->scale(); 176 | } 177 | 178 | qreal DecoratedWindow::nextScale() const 179 | { 180 | return d->nextScale(); 181 | } 182 | 183 | QString DecoratedWindow::applicationMenuServiceName() const 184 | { 185 | if (auto impl = dynamic_cast(d.get())) { 186 | return impl->applicationMenuServiceName(); 187 | } 188 | return QString(); 189 | } 190 | 191 | QString DecoratedWindow::applicationMenuObjectPath() const 192 | { 193 | if (auto impl = dynamic_cast(d.get())) { 194 | return impl->applicationMenuObjectPath(); 195 | } 196 | return QString(); 197 | } 198 | 199 | } // namespace 200 | 201 | #include "moc_decoratedwindow.cpp" 202 | -------------------------------------------------------------------------------- /src/decoration_p.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | #include "decoration.h" 8 | 9 | // 10 | // W A R N I N G 11 | // ------------- 12 | // 13 | // This file is not part of the KDecoration3 API. It exists purely as an 14 | // implementation detail. This header file may change from version to 15 | // version without notice, or even be removed. 16 | // 17 | // We mean it. 18 | // 19 | 20 | namespace KDecoration3 21 | { 22 | class Decoration; 23 | class DecorationBridge; 24 | class DecorationButton; 25 | class DecoratedWindow; 26 | class DecorationSettings; 27 | class DecorationShadow; 28 | 29 | class Q_DECL_HIDDEN Decoration::Private 30 | { 31 | public: 32 | Private(Decoration *decoration, const QVariantList &args); 33 | 34 | QMarginsF resizeOnlyBorders; 35 | 36 | Qt::WindowFrameSection sectionUnderMouse; 37 | void setSectionUnderMouse(Qt::WindowFrameSection section); 38 | void updateSectionUnderMouse(const QPoint &mousePosition); 39 | 40 | QRectF titleBar; 41 | QRegion blurRegion; 42 | 43 | void addButton(DecorationButton *button); 44 | 45 | std::shared_ptr settings; 46 | DecorationBridge *bridge; 47 | std::shared_ptr client; 48 | bool opaque; 49 | QList buttons; 50 | std::shared_ptr shadow; 51 | std::shared_ptr next; 52 | std::shared_ptr current; 53 | 54 | private: 55 | Decoration *q; 56 | }; 57 | 58 | class PositionerData : public QSharedData 59 | { 60 | public: 61 | QRectF anchorRect; 62 | }; 63 | 64 | } // namespace 65 | -------------------------------------------------------------------------------- /src/decorationbutton_p.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | 8 | #include "decorationbutton.h" 9 | 10 | #include 11 | 12 | class QElapsedTimer; 13 | class QTimer; 14 | 15 | // 16 | // W A R N I N G 17 | // ------------- 18 | // 19 | // This file is not part of the KDecoration3 API. It exists purely as an 20 | // implementation detail. This header file may change from version to 21 | // version without notice, or even be removed. 22 | // 23 | // We mean it. 24 | // 25 | 26 | namespace KDecoration3 27 | { 28 | class Q_DECL_HIDDEN DecorationButton::Private 29 | { 30 | public: 31 | explicit Private(DecorationButtonType type, const QPointer &decoration, DecorationButton *parent); 32 | ~Private(); 33 | 34 | bool isPressed() const 35 | { 36 | return m_pressed != Qt::NoButton; 37 | } 38 | bool isPressed(Qt::MouseButton button) const 39 | { 40 | return m_pressed.testFlag(button); 41 | } 42 | 43 | void setHovered(bool hovered); 44 | void setPressed(Qt::MouseButton, bool pressed); 45 | void setAcceptedButtons(Qt::MouseButtons buttons); 46 | void setEnabled(bool enabled); 47 | void setChecked(bool checked); 48 | void setCheckable(bool checkable); 49 | void setVisible(bool visible); 50 | void startDoubleClickTimer(); 51 | void invalidateDoubleClickTimer(); 52 | bool wasDoubleClick() const; 53 | void setPressAndHold(bool enable); 54 | void startPressAndHold(); 55 | void stopPressAndHold(); 56 | 57 | QString typeToString(DecorationButtonType type); 58 | 59 | QPointer decoration; 60 | DecorationButtonType type; 61 | QRectF geometry; 62 | bool hovered; 63 | bool enabled; 64 | bool checkable; 65 | bool checked; 66 | bool visible; 67 | Qt::MouseButtons acceptedButtons; 68 | bool doubleClickEnabled; 69 | bool pressAndHold; 70 | 71 | private: 72 | void init(); 73 | DecorationButton *q; 74 | Qt::MouseButtons m_pressed; 75 | std::unique_ptr m_doubleClickTimer; 76 | std::unique_ptr m_pressAndHoldTimer; 77 | }; 78 | 79 | } 80 | -------------------------------------------------------------------------------- /src/decorationbuttongroup.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | #include "decorationbutton.h" 8 | #include 9 | #include 10 | 11 | class QPainter; 12 | 13 | namespace KDecoration3 14 | { 15 | class Decoration; 16 | class DecorationButtonGroupPrivate; 17 | 18 | /** 19 | * @brief Helper class to layout DecorationButton. 20 | * 21 | * A Decoration normally has two groups of DecorationButtons: one left of the caption and one 22 | * right of the caption. The DecorationButtonGroup helps in positioning the DecorationButtons in 23 | * these groups and to update the position of each of the DecorationButtons whenever the state 24 | * changes in a way that they should be repositioned. 25 | * 26 | * A DecorationButtonGroup is a visual layout element not accepting input events. As a visual 27 | * element it provides a paint method allowing a sub class to provide custom painting for the 28 | * DecorationButtonGroup. 29 | **/ 30 | class KDECORATIONS3_EXPORT DecorationButtonGroup : public QObject 31 | { 32 | Q_OBJECT 33 | /** 34 | * The spacing to use between the DecorationButtons 35 | **/ 36 | Q_PROPERTY(qreal spacing READ spacing WRITE setSpacing NOTIFY spacingChanged) 37 | /** 38 | * The geometry of the DecorationButtonGroup in Decoration-local coordinates. 39 | * The size of the DecorationButtonGroup depends on the sizes of the individual 40 | * DecorationButtons and the spacing. 41 | **/ 42 | Q_PROPERTY(QRectF geometry READ geometry NOTIFY geometryChanged) 43 | // TODO: pos must consider whether it's left or right 44 | /** 45 | * The top left Position of the DecorationButtonGroup. This property needs to be 46 | * changed to reposition the DecorationButtonGroup. An update should normally be 47 | * triggered after e.g. a state change like maximization. 48 | **/ 49 | Q_PROPERTY(QPointF pos READ pos WRITE setPos NOTIFY posChanged) 50 | public: 51 | enum class Position { 52 | Left, 53 | Right, 54 | }; 55 | explicit DecorationButtonGroup(Position type, 56 | Decoration *parent, 57 | std::function buttonCreator); 58 | explicit DecorationButtonGroup(Decoration *parent); 59 | ~DecorationButtonGroup() override; 60 | 61 | /** 62 | * Paints the DecorationButtonGroup. This method should normally be invoked from the 63 | * Decoration's paint method. Base implementation just calls the paint method on each 64 | * of the DecorationButtons. Overwriting sub classes need to either call the base 65 | * implementation or ensure that the DecorationButtons are painted. 66 | * 67 | * @param painter The QPainter which is used to paint this DecorationButtonGroup 68 | * @param repaintArea The area which is going to be repainted in Decoration coordinates 69 | **/ 70 | virtual void paint(QPainter *painter, const QRectF &repaintArea); 71 | 72 | Decoration *decoration() const; 73 | 74 | qreal spacing() const; 75 | void setSpacing(qreal spacing); 76 | 77 | QRectF geometry() const; 78 | QPointF pos() const; 79 | void setPos(const QPointF &pos); 80 | 81 | /** 82 | * Adds @p button to the DecorationButtonGroup and triggers a re-layout of all 83 | * DecorationButtons. 84 | **/ 85 | void addButton(DecorationButton *button); 86 | /** 87 | * Removes @p button from the DecorationButtonGroup and triggers a re-layout of all 88 | * DecorationButtons. 89 | **/ 90 | void removeButton(DecorationButton *button); 91 | /** 92 | * Removes all DecorationButtons with @p type from the DecorationButtonGroup and 93 | * triggers a re-layout of all DecorationButtons. 94 | **/ 95 | void removeButton(DecorationButtonType type); 96 | /** 97 | * @returns @c true if the DecorationButtonGroup contains a DecorationButton of @p type 98 | **/ 99 | bool hasButton(DecorationButtonType type) const; 100 | /** 101 | * @returns All DecorationButtons in this DecorationButtonGroup 102 | **/ 103 | QList buttons() const; 104 | 105 | Q_SIGNALS: 106 | void spacingChanged(qreal); 107 | void geometryChanged(const QRectF &); 108 | void posChanged(const QPointF &); 109 | 110 | private: 111 | class Private; 112 | std::unique_ptr d; 113 | }; 114 | 115 | } // namespace 116 | -------------------------------------------------------------------------------- /src/decorationbuttongroup_p.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | #include "decorationbuttongroup.h" 8 | 9 | #include 10 | #include 11 | 12 | // 13 | // W A R N I N G 14 | // ------------- 15 | // 16 | // This file is not part of the KDecoration3 API. It exists purely as an 17 | // implementation detail. This header file may change from version to 18 | // version without notice, or even be removed. 19 | // 20 | // We mean it. 21 | // 22 | 23 | namespace KDecoration3 24 | { 25 | class Decoration; 26 | 27 | class Q_DECL_HIDDEN DecorationButtonGroup::Private 28 | { 29 | public: 30 | explicit Private(Decoration *decoration, DecorationButtonGroup *parent); 31 | ~Private(); 32 | 33 | void setGeometry(const QRectF &geometry); 34 | void updateLayout(); 35 | 36 | Decoration *decoration; 37 | QRectF geometry; 38 | QList buttons; 39 | qreal spacing; 40 | 41 | private: 42 | DecorationButtonGroup *q; 43 | }; 44 | 45 | } // namespace 46 | -------------------------------------------------------------------------------- /src/decorationdefines.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | 8 | namespace KDecoration3 9 | { 10 | /** 11 | * The DecorationButtonType is a helper type for the DecorationButton. 12 | * A Decoration should provide a DecorationButton for each of the types, 13 | * if it wants to provide further buttons it should use the Custom type. 14 | * The DecorationButton gets configured depending on the type. E.g. the 15 | * Close button gets disabled if the DecoratedWindow is not closeable. 16 | **/ 17 | enum class DecorationButtonType { 18 | /** 19 | * The Menu button requests showing the window menu on left or right click. 20 | **/ 21 | Menu, 22 | /** 23 | * The ApplicationMenu button requests showing the application's menu on left or right click. 24 | */ 25 | ApplicationMenu, 26 | /** 27 | * The OnAllDesktops button requests toggling the DecoratedWindow's on all desktops state. 28 | * The DecoratedButton is only visible if multiple virtual desktops are available. 29 | **/ 30 | OnAllDesktops, 31 | /** 32 | * The Minimize button requests minimizing the DecoratedWindow. The DecorationButton is only 33 | * enabled if the DecoratedWindow is minimizeable. 34 | **/ 35 | Minimize, 36 | /** 37 | * The Maximize button requests maximizing the DecoratedWindow. The DecorationButton is checkable 38 | * and if the DecoratedWindow is maximized the DecorationButton is checked. The DecorationButton 39 | * supports multiple mouse buttons to change horizontal, vertical and overall maximized state. 40 | * 41 | * The DecorationButton is only enabled if the DecoratedWindow is maximizeable. 42 | **/ 43 | Maximize, 44 | /** 45 | * The Close button requests closing the DecoratedWindow. The DecorationButton is only enabled 46 | * if the DecoratedWindow is closeable. 47 | **/ 48 | Close, 49 | /** 50 | * The ContextHelp button requests entering the context help mode. The DecorationButton is only 51 | * visible if the DecoratedWindow provides context help. 52 | **/ 53 | ContextHelp, 54 | /** 55 | * The Shade button requests toggling the DecoratedWindow's shaded state. The DecoratedButton 56 | * is only enabled if the DecoratedWindow is shadeable. 57 | **/ 58 | Shade, 59 | /** 60 | * The KeepBelow button requests toggling the DecoratedWindow's keep below state. 61 | **/ 62 | KeepBelow, 63 | /** 64 | * The KeepAbove button requests toggling the DecoratedWindow's keep above state. 65 | **/ 66 | KeepAbove, 67 | /** 68 | * The Custom type allows a Decoration to provide custom DecorationButtons. 69 | **/ 70 | Custom, 71 | /** 72 | * The Spacer button provides some space between buttons. 73 | */ 74 | Spacer, 75 | }; 76 | 77 | /** 78 | * Border sizes are a combination of visual and accessibility features. 79 | * Larger borders should be used to increase the non title bar borders to 80 | * make it easier to resize the decoration 81 | **/ 82 | enum class BorderSize { 83 | /** 84 | * Border sizes of all non title bar sides should be set to 0. 85 | **/ 86 | None, 87 | /** 88 | * Border sizes of the sides should be set to 0. Title bar and 89 | * the border on opposite side of the title bar should follow the 90 | * Normal settings. 91 | **/ 92 | NoSides, 93 | /** 94 | * Borders should be smaller than Normal, e.g. a factor of 0.5. 95 | **/ 96 | Tiny, 97 | /** 98 | * The default border size with borders on each side. This should 99 | * be the base for calculating other border sizes. 100 | **/ 101 | Normal, 102 | /** 103 | * Increased border sizes, considered a factor of 1.5. 104 | **/ 105 | Large, 106 | /** 107 | * Increased border sizes, considered a factor of 2.0. 108 | **/ 109 | VeryLarge, 110 | /** 111 | * Increased border sizes, considered a factor of 2.5. 112 | **/ 113 | Huge, 114 | /** 115 | * Increased border sizes, considered a factor of 3.0. 116 | **/ 117 | VeryHuge, 118 | /** 119 | * Increased border sizes, considered a factor of 5.0. 120 | **/ 121 | Oversized, 122 | }; 123 | 124 | /** 125 | * Color groups are used for DecoratedWindow::color(). 126 | * @since 5.3 127 | **/ 128 | enum class ColorGroup { 129 | /** 130 | * Inactive color, used for unfocused windows. 131 | **/ 132 | Inactive, 133 | /** 134 | * Active color, used for focused windows. 135 | **/ 136 | Active, 137 | /** 138 | * Warning color, can only be used with ColorRole::Foreground. If used with other roles, 139 | * a invalid QColor is returned. It can be used for close buttons and is typically red. 140 | **/ 141 | Warning, 142 | }; 143 | 144 | /** 145 | * Color roles are used for DecoratedWindow::color(). 146 | * @since 5.3 147 | **/ 148 | enum class ColorRole { 149 | /** 150 | * The decoration's frame background color. 151 | **/ 152 | Frame, 153 | /** 154 | * The decoration's title bar background color 155 | **/ 156 | TitleBar, 157 | /** 158 | * The decoration's title bar forground color 159 | **/ 160 | Foreground, 161 | }; 162 | 163 | } 164 | -------------------------------------------------------------------------------- /src/decorationsettings.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #include "decorationsettings.h" 7 | #include "private/decorationbridge.h" 8 | #include "private/decorationsettingsprivate.h" 9 | 10 | #include 11 | 12 | namespace KDecoration3 13 | { 14 | DecorationSettings::DecorationSettings(DecorationBridge *bridge, QObject *parent) 15 | : QObject(parent) 16 | , d(bridge->settings(this)) 17 | { 18 | auto updateUnits = [this] { 19 | int gridUnit = QFontMetrics(font()).boundingRect(QLatin1Char('M')).height(); 20 | ; 21 | if (gridUnit % 2 != 0) { 22 | gridUnit++; 23 | } 24 | if (gridUnit != d->gridUnit()) { 25 | d->setGridUnit(gridUnit); 26 | Q_EMIT gridUnitChanged(gridUnit); 27 | } 28 | if (gridUnit != d->largeSpacing()) { 29 | d->setSmallSpacing(qMax(2, (int)(gridUnit / 4))); // 1/4 of gridUnit, at least 2 30 | d->setLargeSpacing(gridUnit); // msize.height 31 | Q_EMIT spacingChanged(); 32 | } 33 | }; 34 | updateUnits(); 35 | connect(this, &DecorationSettings::fontChanged, this, updateUnits); 36 | } 37 | 38 | DecorationSettings::~DecorationSettings() = default; 39 | 40 | bool DecorationSettings::isOnAllDesktopsAvailable() const 41 | { 42 | return d->isOnAllDesktopsAvailable(); 43 | } 44 | 45 | bool DecorationSettings::isAlphaChannelSupported() const 46 | { 47 | return d->isAlphaChannelSupported(); 48 | } 49 | 50 | bool DecorationSettings::isCloseOnDoubleClickOnMenu() const 51 | { 52 | return d->isCloseOnDoubleClickOnMenu(); 53 | } 54 | 55 | QList DecorationSettings::decorationButtonsLeft() const 56 | { 57 | return d->decorationButtonsLeft(); 58 | } 59 | 60 | QList DecorationSettings::decorationButtonsRight() const 61 | { 62 | return d->decorationButtonsRight(); 63 | } 64 | 65 | BorderSize DecorationSettings::borderSize() const 66 | { 67 | return d->borderSize(); 68 | } 69 | 70 | QFont DecorationSettings::font() const 71 | { 72 | return d->font(); 73 | } 74 | 75 | QFontMetricsF DecorationSettings::fontMetrics() const 76 | { 77 | return d->fontMetrics(); 78 | } 79 | 80 | int DecorationSettings::gridUnit() const 81 | { 82 | return d->gridUnit(); 83 | } 84 | 85 | int DecorationSettings::smallSpacing() const 86 | { 87 | return d->smallSpacing(); 88 | } 89 | 90 | int DecorationSettings::largeSpacing() const 91 | { 92 | return d->largeSpacing(); 93 | } 94 | } 95 | 96 | #include "moc_decorationsettings.cpp" 97 | -------------------------------------------------------------------------------- /src/decorationsettings.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | 8 | #include "decorationbutton.h" 9 | #include 10 | 11 | #include 12 | #include 13 | 14 | #include 15 | 16 | namespace KDecoration3 17 | { 18 | class DecorationBridge; 19 | class DecorationSettingsPrivate; 20 | 21 | /** 22 | * @brief Common settings for the Decoration. 23 | * 24 | * This class gets injected into the Decoration and provides recommendations for the 25 | * Decoration. The Decoration is suggested to honor the settings, but may decide that some 26 | * settings don't fit the design and ignore them. 27 | * 28 | * @see Decoration 29 | **/ 30 | class KDECORATIONS3_EXPORT DecorationSettings : public QObject 31 | { 32 | Q_OBJECT 33 | /** 34 | * Whether the feature to put a DecoratedWindow on all desktops is available. 35 | * 36 | * If this feature is not available a Decoration might decide to not show the 37 | * DecorationButtonType::OnAllDesktops. 38 | **/ 39 | Q_PROPERTY(bool onAllDesktopsAvailable READ isOnAllDesktopsAvailable NOTIFY onAllDesktopsAvailableChanged) 40 | /** 41 | * Whether the Decoration will be rendered with an alpha channel. 42 | * 43 | * If no alpha channel is available a Decoration should not use round borders. 44 | **/ 45 | Q_PROPERTY(bool alphaChannelSupported READ isAlphaChannelSupported NOTIFY alphaChannelSupportedChanged) 46 | /** 47 | * Whether the Decoration should close the DecoratedWindow when double clicking on the 48 | * DecorationButtonType::Menu. 49 | **/ 50 | Q_PROPERTY(bool closeOnDoubleClickOnMenu READ isCloseOnDoubleClickOnMenu NOTIFY closeOnDoubleClickOnMenuChanged) 51 | /** 52 | * The suggested ordering of the decoration buttons on the left. 53 | **/ 54 | Q_PROPERTY(QList decorationButtonsLeft READ decorationButtonsLeft NOTIFY decorationButtonsLeftChanged) 55 | /** 56 | * The suggested ordering of the decoration buttons on the right. 57 | **/ 58 | Q_PROPERTY(QList decorationButtonsRight READ decorationButtonsRight NOTIFY decorationButtonsRightChanged) 59 | /** 60 | * The suggested border size. 61 | **/ 62 | Q_PROPERTY(KDecoration3::BorderSize borderSize READ borderSize NOTIFY borderSizeChanged) 63 | /** 64 | * The fundamental unit of space that should be used for sizes, expressed in pixels. 65 | * Given the screen has an accurate DPI settings, it corresponds to a millimeter 66 | */ 67 | Q_PROPERTY(int gridUnit READ gridUnit NOTIFY gridUnitChanged) 68 | /** 69 | * The recommended font for the Decoration's caption. 70 | **/ 71 | Q_PROPERTY(QFont font READ font NOTIFY fontChanged) 72 | /** 73 | * smallSpacing is the amount of spacing that should be used around smaller UI elements, 74 | * for example as spacing in Columns. Internally, this size depends on the size of 75 | * the default font as rendered on the screen, so it takes user-configured font size and DPI 76 | * into account. 77 | */ 78 | Q_PROPERTY(int smallSpacing READ smallSpacing NOTIFY spacingChanged) 79 | 80 | /** 81 | * largeSpacing is the amount of spacing that should be used inside bigger UI elements, 82 | * for example between an icon and the corresponding text. Internally, this size depends on 83 | * the size of the default font as rendered on the screen, so it takes user-configured font 84 | * size and DPI into account. 85 | */ 86 | Q_PROPERTY(int largeSpacing READ largeSpacing NOTIFY spacingChanged) 87 | public: 88 | explicit DecorationSettings(DecorationBridge *bridge, QObject *parent = nullptr); 89 | ~DecorationSettings() override; 90 | bool isOnAllDesktopsAvailable() const; 91 | bool isAlphaChannelSupported() const; 92 | bool isCloseOnDoubleClickOnMenu() const; 93 | QList decorationButtonsLeft() const; 94 | QList decorationButtonsRight() const; 95 | BorderSize borderSize() const; 96 | 97 | QFont font() const; 98 | /** 99 | * The fontMetrics for the recommended font. 100 | * @see font 101 | **/ 102 | QFontMetricsF fontMetrics() const; 103 | 104 | int gridUnit() const; 105 | int smallSpacing() const; 106 | int largeSpacing() const; 107 | 108 | Q_SIGNALS: 109 | void onAllDesktopsAvailableChanged(bool); 110 | void alphaChannelSupportedChanged(bool); 111 | void closeOnDoubleClickOnMenuChanged(bool); 112 | void decorationButtonsLeftChanged(const QList &); 113 | void decorationButtonsRightChanged(const QList &); 114 | void borderSizeChanged(KDecoration3::BorderSize size); 115 | void fontChanged(const QFont &font); 116 | void gridUnitChanged(int); 117 | void spacingChanged(); 118 | 119 | /** 120 | * This signal is emitted when the backend got reconfigured. 121 | * If the plugin uses custom settings, it is recommended to re-read 122 | * them after this signal got emitted. 123 | **/ 124 | void reconfigured(); 125 | 126 | private: 127 | const std::unique_ptr d; 128 | }; 129 | 130 | } 131 | 132 | Q_DECLARE_METATYPE(KDecoration3::BorderSize) 133 | -------------------------------------------------------------------------------- /src/decorationshadow.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #include "decorationshadow.h" 7 | #include "decorationshadow_p.h" 8 | 9 | namespace KDecoration3 10 | { 11 | DecorationShadow::Private::Private(DecorationShadow *parent) 12 | : q(parent) 13 | { 14 | } 15 | 16 | DecorationShadow::Private::~Private() = default; 17 | 18 | DecorationShadow::DecorationShadow() 19 | : QObject() 20 | , d(new Private(this)) 21 | { 22 | } 23 | 24 | DecorationShadow::~DecorationShadow() = default; 25 | 26 | QRectF DecorationShadow::topLeftGeometry() const 27 | { 28 | if (d->innerShadowRect.isNull() || d->shadow.isNull()) { 29 | return QRectF(); 30 | } 31 | return QRectF(0, 0, d->innerShadowRect.left(), d->innerShadowRect.top()); 32 | } 33 | 34 | QRectF DecorationShadow::topGeometry() const 35 | { 36 | if (d->innerShadowRect.isNull() || d->shadow.isNull()) { 37 | return QRectF(); 38 | } 39 | return QRectF(d->innerShadowRect.left(), 0, d->innerShadowRect.width(), d->innerShadowRect.top()); 40 | } 41 | 42 | QRectF DecorationShadow::topRightGeometry() const 43 | { 44 | if (d->innerShadowRect.isNull() || d->shadow.isNull()) { 45 | return QRectF(); 46 | } 47 | return QRectF(d->innerShadowRect.left() + d->innerShadowRect.width(), 48 | 0, 49 | d->shadow.width() - d->innerShadowRect.width() - d->innerShadowRect.left(), 50 | d->innerShadowRect.top()); 51 | } 52 | 53 | QRectF DecorationShadow::rightGeometry() const 54 | { 55 | if (d->innerShadowRect.isNull() || d->shadow.isNull()) { 56 | return QRectF(); 57 | } 58 | return QRectF(d->innerShadowRect.left() + d->innerShadowRect.width(), 59 | d->innerShadowRect.top(), 60 | d->shadow.width() - d->innerShadowRect.width() - d->innerShadowRect.left(), 61 | d->innerShadowRect.height()); 62 | } 63 | 64 | QRectF DecorationShadow::bottomRightGeometry() const 65 | { 66 | if (d->innerShadowRect.isNull() || d->shadow.isNull()) { 67 | return QRectF(); 68 | } 69 | return QRectF(d->innerShadowRect.left() + d->innerShadowRect.width(), 70 | d->innerShadowRect.top() + d->innerShadowRect.height(), 71 | d->shadow.width() - d->innerShadowRect.width() - d->innerShadowRect.left(), 72 | d->shadow.height() - d->innerShadowRect.top() - d->innerShadowRect.height()); 73 | } 74 | 75 | QRectF DecorationShadow::bottomGeometry() const 76 | { 77 | if (d->innerShadowRect.isNull() || d->shadow.isNull()) { 78 | return QRectF(); 79 | } 80 | return QRectF(d->innerShadowRect.left(), 81 | d->innerShadowRect.top() + d->innerShadowRect.height(), 82 | d->innerShadowRect.width(), 83 | d->shadow.height() - d->innerShadowRect.top() - d->innerShadowRect.height()); 84 | } 85 | 86 | QRectF DecorationShadow::bottomLeftGeometry() const 87 | { 88 | if (d->innerShadowRect.isNull() || d->shadow.isNull()) { 89 | return QRectF(); 90 | } 91 | return QRectF(0, 92 | d->innerShadowRect.top() + d->innerShadowRect.height(), 93 | d->innerShadowRect.left(), 94 | d->shadow.height() - d->innerShadowRect.top() - d->innerShadowRect.height()); 95 | } 96 | 97 | QRectF DecorationShadow::leftGeometry() const 98 | { 99 | if (d->innerShadowRect.isNull() || d->shadow.isNull()) { 100 | return QRectF(); 101 | } 102 | return QRectF(0, d->innerShadowRect.top(), d->innerShadowRect.left(), d->innerShadowRect.height()); 103 | } 104 | 105 | #ifndef K_DOXYGEN 106 | 107 | QImage DecorationShadow::shadow() const 108 | { 109 | return d->shadow; 110 | } 111 | 112 | QMarginsF DecorationShadow::padding() const 113 | { 114 | return d->padding; 115 | } 116 | 117 | QRectF DecorationShadow::innerShadowRect() const 118 | { 119 | return d->innerShadowRect; 120 | } 121 | 122 | qreal DecorationShadow::paddingTop() const 123 | { 124 | return d->padding.top(); 125 | } 126 | 127 | qreal DecorationShadow::paddingBottom() const 128 | { 129 | return d->padding.bottom(); 130 | } 131 | 132 | qreal DecorationShadow::paddingRight() const 133 | { 134 | return d->padding.right(); 135 | } 136 | 137 | qreal DecorationShadow::paddingLeft() const 138 | { 139 | return d->padding.left(); 140 | } 141 | 142 | void DecorationShadow::setShadow(const QImage &shadow) 143 | { 144 | if (d->shadow == shadow) { 145 | return; 146 | } 147 | d->shadow = shadow; 148 | Q_EMIT shadowChanged(d->shadow); 149 | } 150 | 151 | #endif 152 | 153 | void DecorationShadow::setPadding(const QMarginsF &margins) 154 | { 155 | if (d->padding == margins) { 156 | return; 157 | } 158 | d->padding = margins; 159 | Q_EMIT paddingChanged(); 160 | } 161 | 162 | void DecorationShadow::setInnerShadowRect(const QRectF &rect) 163 | { 164 | if (d->innerShadowRect == rect) { 165 | return; 166 | } 167 | d->innerShadowRect = rect; 168 | Q_EMIT innerShadowRectChanged(); 169 | } 170 | 171 | } 172 | 173 | #include "moc_decorationshadow.cpp" 174 | -------------------------------------------------------------------------------- /src/decorationshadow_p.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | 8 | // 9 | // W A R N I N G 10 | // ------------- 11 | // 12 | // This file is not part of the KDecoration3 API. It exists purely as an 13 | // implementation detail. This header file may change from version to 14 | // version without notice, or even be removed. 15 | // 16 | // We mean it. 17 | // 18 | 19 | #include "decorationshadow.h" 20 | 21 | #include 22 | 23 | namespace KDecoration3 24 | { 25 | class Q_DECL_HIDDEN DecorationShadow::Private 26 | { 27 | public: 28 | explicit Private(DecorationShadow *parent); 29 | ~Private(); 30 | QImage shadow; 31 | QRectF innerShadowRect; 32 | QMarginsF padding; 33 | 34 | private: 35 | DecorationShadow *q; 36 | }; 37 | 38 | } 39 | -------------------------------------------------------------------------------- /src/decorationthemeprovider.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2021 Alexander Lohnau 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | 7 | #include "decorationthemeprovider.h" 8 | 9 | class DecorationThemeMetaDataPrivate : public QSharedData 10 | { 11 | public: 12 | QString visibleName; 13 | QString themeName; 14 | QString configurationName; 15 | QString pluginId; 16 | KDecoration3::BorderSize borderSize = KDecoration3::BorderSize::Normal; 17 | }; 18 | 19 | using namespace KDecoration3; 20 | 21 | DecorationThemeMetaData::DecorationThemeMetaData() 22 | : d(new DecorationThemeMetaDataPrivate()) 23 | { 24 | } 25 | 26 | DecorationThemeMetaData::~DecorationThemeMetaData() = default; 27 | 28 | QString DecorationThemeMetaData::visibleName() const 29 | { 30 | return d->visibleName; 31 | } 32 | 33 | void DecorationThemeMetaData::setVisibleName(const QString &name) 34 | { 35 | d->visibleName = name; 36 | } 37 | 38 | QString DecorationThemeMetaData::themeName() const 39 | { 40 | return d->themeName; 41 | } 42 | 43 | void DecorationThemeMetaData::setThemeName(const QString &name) 44 | { 45 | d->themeName = name; 46 | } 47 | 48 | QString DecorationThemeMetaData::configurationName() const 49 | { 50 | return d->configurationName; 51 | } 52 | 53 | void DecorationThemeMetaData::setConfigurationName(const QString &name) 54 | { 55 | d->configurationName = name; 56 | } 57 | 58 | void DecorationThemeMetaData::setBorderSize(KDecoration3::BorderSize size) 59 | { 60 | d->borderSize = size; 61 | } 62 | 63 | KDecoration3::BorderSize DecorationThemeMetaData::borderSize() const 64 | { 65 | return d->borderSize; 66 | } 67 | 68 | QString DecorationThemeMetaData::pluginId() const 69 | { 70 | return d->pluginId; 71 | } 72 | 73 | void DecorationThemeMetaData::setPluginId(const QString &id) 74 | { 75 | d->pluginId = id; 76 | } 77 | 78 | DecorationThemeProvider::DecorationThemeProvider(QObject *parent) 79 | : QObject(parent) 80 | { 81 | } 82 | 83 | DecorationThemeMetaData::DecorationThemeMetaData(const DecorationThemeMetaData &other) = default; 84 | 85 | DecorationThemeMetaData &DecorationThemeMetaData::operator=(const DecorationThemeMetaData &other) = default; 86 | 87 | #include "moc_decorationthemeprovider.cpp" 88 | -------------------------------------------------------------------------------- /src/decorationthemeprovider.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2021 Alexander Lohnau 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | 7 | #pragma once 8 | 9 | #include "decorationdefines.h" 10 | #include 11 | #include 12 | #include 13 | 14 | class KPluginMetaData; 15 | class DecorationThemeMetaDataPrivate; 16 | 17 | namespace KDecoration3 18 | { 19 | /** 20 | * Class providing type-safe access to data of themes 21 | * 22 | * @since 5.23 23 | * @author Alexander Lohnau 24 | */ 25 | class KDECORATIONS3_EXPORT DecorationThemeMetaData 26 | { 27 | public: 28 | explicit DecorationThemeMetaData(); 29 | virtual ~DecorationThemeMetaData(); 30 | DecorationThemeMetaData(const DecorationThemeMetaData &other); 31 | DecorationThemeMetaData &operator=(const DecorationThemeMetaData &other); 32 | 33 | /// User-visible name of the theme 34 | QString visibleName() const; 35 | void setVisibleName(const QString &name); 36 | 37 | /// Internal name of the theme 38 | QString themeName() const; 39 | void setThemeName(const QString &name); 40 | 41 | /// Name of the kcm to configure the decoration theme 42 | QString configurationName() const; 43 | void setConfigurationName(const QString &name); 44 | 45 | /// Border size of the decoration, this gets set based on the "recommendedBorderSize" key in the json metadata 46 | /// @internal 47 | KDecoration3::BorderSize borderSize() const; 48 | void setBorderSize(KDecoration3::BorderSize size); 49 | 50 | /// plugin id of theme provider 51 | /// @see KPluginMetaData::pluginId 52 | QString pluginId() const; 53 | void setPluginId(const QString &id); 54 | 55 | private: 56 | QSharedDataPointer d; 57 | }; 58 | /** 59 | * Class to give the KWin decorationmodel access to the plugin's themes. 60 | * 61 | * @since 5.23 62 | * @author Alexander Lohnau 63 | */ 64 | class KDECORATIONS3_EXPORT DecorationThemeProvider : public QObject 65 | { 66 | Q_OBJECT 67 | 68 | public: 69 | explicit DecorationThemeProvider(QObject *parent); 70 | 71 | /** 72 | * List containing information of supported themes 73 | */ 74 | virtual QList themes() const = 0; 75 | }; 76 | } 77 | -------------------------------------------------------------------------------- /src/private/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set(libkdecoration3Private_SRCS 2 | decoratedwindowprivate.cpp 3 | decoratedwindowprivate.h 4 | decorationbridge.cpp 5 | decorationbridge.h 6 | decorationsettingsprivate.cpp 7 | decorationsettingsprivate.h 8 | ) 9 | 10 | add_library(kdecorations3private SHARED ${libkdecoration3Private_SRCS}) 11 | 12 | generate_export_header( 13 | kdecorations3private 14 | BASE_NAME 15 | KDECORATIONS_PRIVATE 16 | EXPORT_FILE_NAME 17 | kdecoration3/private/kdecoration3_private_export.h 18 | ) 19 | 20 | add_library(KDecoration3::KDecorationPrivate ALIAS kdecorations3private) 21 | 22 | target_link_libraries(kdecorations3private 23 | PUBLIC 24 | Qt::Core 25 | Qt::Gui 26 | ) 27 | 28 | target_include_directories(kdecorations3private INTERFACE "$" ) 29 | 30 | set_target_properties(kdecorations3private PROPERTIES VERSION ${KDECORATION3_VERSION} 31 | SOVERSION 2 32 | EXPORT_NAME KDecoration3Private 33 | ) 34 | 35 | ecm_generate_headers(KDecoration3Private_CamelCase_HEADERS 36 | HEADER_NAMES 37 | DecoratedWindowPrivate 38 | DecorationBridge 39 | DecorationSettingsPrivate 40 | PREFIX 41 | KDecoration3/Private 42 | REQUIRED_HEADERS KDecoration3Private_HEADERS 43 | ) 44 | install(FILES ${KDecoration3Private_CamelCase_HEADERS} 45 | DESTINATION ${KDECORATION3_INCLUDEDIR}/KDecoration3/Private 46 | COMPONENT Devel) 47 | 48 | install(TARGETS kdecorations3private EXPORT KDecoration3Targets ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}) 49 | 50 | install( 51 | FILES 52 | ${CMAKE_CURRENT_BINARY_DIR}/kdecoration3/private/kdecoration3_private_export.h 53 | ${KDecoration3Private_HEADERS} 54 | DESTINATION 55 | ${KDECORATION3_INCLUDEDIR}/kdecoration3/private 56 | COMPONENT 57 | Devel 58 | ) 59 | -------------------------------------------------------------------------------- /src/private/decoratedwindowprivate.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #include "decoratedwindowprivate.h" 7 | 8 | #include 9 | 10 | namespace KDecoration3 11 | { 12 | class Q_DECL_HIDDEN DecoratedWindowPrivate::Private 13 | { 14 | public: 15 | explicit Private(DecoratedWindow *client, Decoration *decoration); 16 | DecoratedWindow *client; 17 | Decoration *decoration; 18 | }; 19 | 20 | DecoratedWindowPrivate::Private::Private(DecoratedWindow *client, Decoration *decoration) 21 | : client(client) 22 | , decoration(decoration) 23 | { 24 | } 25 | 26 | DecoratedWindowPrivate::DecoratedWindowPrivate(DecoratedWindow *client, Decoration *decoration) 27 | : d(new Private(client, decoration)) 28 | { 29 | } 30 | 31 | DecoratedWindowPrivate::~DecoratedWindowPrivate() = default; 32 | 33 | Decoration *DecoratedWindowPrivate::decoration() 34 | { 35 | return d->decoration; 36 | } 37 | 38 | Decoration *DecoratedWindowPrivate::decoration() const 39 | { 40 | return d->decoration; 41 | } 42 | 43 | DecoratedWindow *DecoratedWindowPrivate::window() 44 | { 45 | return d->client; 46 | } 47 | 48 | QColor DecoratedWindowPrivate::color(ColorGroup group, ColorRole role) const 49 | { 50 | Q_UNUSED(role) 51 | Q_UNUSED(group) 52 | 53 | return QColor(); 54 | } 55 | 56 | DecoratedWindowPrivateV2::DecoratedWindowPrivateV2(DecoratedWindow *client, Decoration *decoration) 57 | : DecoratedWindowPrivate(client, decoration) 58 | { 59 | } 60 | 61 | DecoratedWindowPrivateV3::DecoratedWindowPrivateV3(DecoratedWindow *client, Decoration *decoration) 62 | : DecoratedWindowPrivateV2(client, decoration) 63 | { 64 | } 65 | } 66 | -------------------------------------------------------------------------------- /src/private/decoratedwindowprivate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | 8 | #include "../decorationdefines.h" 9 | #include 10 | 11 | #include 12 | #include 13 | 14 | class QMenu; 15 | 16 | // 17 | // W A R N I N G 18 | // ------------- 19 | // 20 | // This file is not part of the KDecoration3 API. It exists purely as an 21 | // implementation detail. This header file may change from version to 22 | // version without notice, or even be removed. 23 | // 24 | // We mean it. 25 | // 26 | 27 | namespace KDecoration3 28 | { 29 | class Decoration; 30 | class DecoratedWindow; 31 | class Positioner; 32 | 33 | class KDECORATIONS_PRIVATE_EXPORT DecoratedWindowPrivate 34 | { 35 | public: 36 | virtual ~DecoratedWindowPrivate(); 37 | virtual bool isActive() const = 0; 38 | virtual QString caption() const = 0; 39 | virtual bool isOnAllDesktops() const = 0; 40 | virtual bool isShaded() const = 0; 41 | virtual QIcon icon() const = 0; 42 | virtual bool isMaximized() const = 0; 43 | virtual bool isMaximizedHorizontally() const = 0; 44 | virtual bool isMaximizedVertically() const = 0; 45 | virtual bool isKeepAbove() const = 0; 46 | virtual bool isKeepBelow() const = 0; 47 | 48 | virtual bool isCloseable() const = 0; 49 | virtual bool isMaximizeable() const = 0; 50 | virtual bool isMinimizeable() const = 0; 51 | virtual bool providesContextHelp() const = 0; 52 | virtual bool isModal() const = 0; 53 | virtual bool isShadeable() const = 0; 54 | virtual bool isMoveable() const = 0; 55 | virtual bool isResizeable() const = 0; 56 | 57 | virtual qreal width() const = 0; 58 | virtual qreal height() const = 0; 59 | virtual QSizeF size() const = 0; 60 | virtual QPalette palette() const = 0; 61 | virtual Qt::Edges adjacentScreenEdges() const = 0; 62 | virtual qreal scale() const = 0; 63 | virtual qreal nextScale() const = 0; 64 | 65 | virtual void requestShowToolTip(const QString &text) = 0; 66 | virtual void requestHideToolTip() = 0; 67 | virtual void requestClose() = 0; 68 | virtual void requestToggleMaximization(Qt::MouseButtons buttons) = 0; 69 | virtual void requestMinimize() = 0; 70 | virtual void requestContextHelp() = 0; 71 | virtual void requestToggleOnAllDesktops() = 0; 72 | virtual void requestToggleShade() = 0; 73 | virtual void requestToggleKeepAbove() = 0; 74 | virtual void requestToggleKeepBelow() = 0; 75 | virtual void requestShowWindowMenu(const QRect &rect) = 0; 76 | 77 | Decoration *decoration(); 78 | Decoration *decoration() const; 79 | 80 | virtual QColor color(ColorGroup group, ColorRole role) const; 81 | virtual QString windowClass() const = 0; 82 | 83 | virtual bool hasApplicationMenu() const = 0; 84 | virtual bool isApplicationMenuActive() const = 0; 85 | 86 | virtual void showApplicationMenu(int actionId) = 0; 87 | virtual void requestShowApplicationMenu(const QRect &rect, int actionId) = 0; 88 | 89 | protected: 90 | explicit DecoratedWindowPrivate(DecoratedWindow *client, Decoration *decoration); 91 | DecoratedWindow *window(); 92 | 93 | private: 94 | class Private; 95 | const std::unique_ptr d; 96 | }; 97 | 98 | class KDECORATIONS_PRIVATE_EXPORT DecoratedWindowPrivateV2 : public DecoratedWindowPrivate 99 | { 100 | public: 101 | virtual QString applicationMenuServiceName() const = 0; 102 | virtual QString applicationMenuObjectPath() const = 0; 103 | 104 | protected: 105 | explicit DecoratedWindowPrivateV2(DecoratedWindow *client, Decoration *decoration); 106 | }; 107 | 108 | class KDECORATIONS_PRIVATE_EXPORT DecoratedWindowPrivateV3 : public DecoratedWindowPrivateV2 109 | { 110 | public: 111 | virtual void popup(const Positioner &positioner, QMenu *menu) = 0; 112 | 113 | protected: 114 | explicit DecoratedWindowPrivateV3(DecoratedWindow *client, Decoration *decoration); 115 | }; 116 | 117 | } // namespace 118 | -------------------------------------------------------------------------------- /src/private/decorationbridge.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #include "decorationbridge.h" 7 | 8 | Q_DECLARE_METATYPE(Qt::MouseButton) 9 | 10 | namespace KDecoration3 11 | { 12 | DecorationBridge::DecorationBridge(QObject *parent) 13 | : QObject(parent) 14 | { 15 | qRegisterMetaType(); 16 | } 17 | 18 | DecorationBridge::~DecorationBridge() = default; 19 | 20 | } 21 | 22 | #include "moc_decorationbridge.cpp" 23 | -------------------------------------------------------------------------------- /src/private/decorationbridge.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | 8 | #include 9 | 10 | #include 11 | 12 | #include 13 | 14 | // 15 | // W A R N I N G 16 | // ------------- 17 | // 18 | // This file is not part of the KDecoration3 API. It exists purely as an 19 | // implementation detail. This header file may change from version to 20 | // version without notice, or even be removed. 21 | // 22 | // We mean it. 23 | // 24 | 25 | class QRect; 26 | 27 | namespace KDecoration3 28 | { 29 | class Decoration; 30 | class DecorationSettings; 31 | class DecorationSettingsPrivate; 32 | class DecoratedWindow; 33 | class DecoratedWindowPrivate; 34 | 35 | class KDECORATIONS_PRIVATE_EXPORT DecorationBridge : public QObject 36 | { 37 | Q_OBJECT 38 | public: 39 | ~DecorationBridge() override; 40 | 41 | virtual std::unique_ptr createClient(DecoratedWindow *client, Decoration *decoration) = 0; 42 | virtual std::unique_ptr settings(DecorationSettings *parent) = 0; 43 | 44 | protected: 45 | explicit DecorationBridge(QObject *parent = nullptr); 46 | }; 47 | 48 | } // namespace 49 | 50 | Q_DECLARE_METATYPE(KDecoration3::DecorationBridge *) 51 | -------------------------------------------------------------------------------- /src/private/decorationsettingsprivate.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #include "decorationsettingsprivate.h" 7 | #include 8 | 9 | namespace KDecoration3 10 | { 11 | class Q_DECL_HIDDEN DecorationSettingsPrivate::Private 12 | { 13 | public: 14 | explicit Private(DecorationSettings *settings); 15 | DecorationSettings *settings; 16 | int gridUnit = -1; 17 | int smallSpacing = -1; 18 | int largeSpacing = -1; 19 | }; 20 | 21 | DecorationSettingsPrivate::Private::Private(DecorationSettings *settings) 22 | : settings(settings) 23 | { 24 | } 25 | 26 | DecorationSettingsPrivate::DecorationSettingsPrivate(DecorationSettings *parent) 27 | : d(new Private(parent)) 28 | { 29 | } 30 | 31 | DecorationSettingsPrivate::~DecorationSettingsPrivate() 32 | { 33 | } 34 | 35 | DecorationSettings *DecorationSettingsPrivate::decorationSettings() 36 | { 37 | return d->settings; 38 | } 39 | 40 | const DecorationSettings *DecorationSettingsPrivate::decorationSettings() const 41 | { 42 | return d->settings; 43 | } 44 | 45 | QFont DecorationSettingsPrivate::font() const 46 | { 47 | return QFontDatabase::systemFont(QFontDatabase::TitleFont); 48 | } 49 | 50 | QFontMetricsF DecorationSettingsPrivate::fontMetrics() const 51 | { 52 | return QFontMetricsF(font()); 53 | } 54 | 55 | int DecorationSettingsPrivate::gridUnit() const 56 | { 57 | return d->gridUnit; 58 | } 59 | 60 | int DecorationSettingsPrivate::smallSpacing() const 61 | { 62 | return d->smallSpacing; 63 | } 64 | 65 | int DecorationSettingsPrivate::largeSpacing() const 66 | { 67 | return d->largeSpacing; 68 | } 69 | 70 | void DecorationSettingsPrivate::setGridUnit(int unit) 71 | { 72 | d->gridUnit = unit; 73 | } 74 | 75 | void DecorationSettingsPrivate::setLargeSpacing(int spacing) 76 | { 77 | d->largeSpacing = spacing; 78 | } 79 | 80 | void DecorationSettingsPrivate::setSmallSpacing(int spacing) 81 | { 82 | d->smallSpacing = spacing; 83 | } 84 | 85 | } 86 | -------------------------------------------------------------------------------- /src/private/decorationsettingsprivate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2014 Martin Gräßlin 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | 8 | #include "../decorationdefines.h" 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | 15 | // 16 | // W A R N I N G 17 | // ------------- 18 | // 19 | // This file is not part of the KDecoration3 API. It exists purely as an 20 | // implementation detail. This header file may change from version to 21 | // version without notice, or even be removed. 22 | // 23 | // We mean it. 24 | // 25 | 26 | namespace KDecoration3 27 | { 28 | class DecorationSettings; 29 | 30 | class KDECORATIONS_PRIVATE_EXPORT DecorationSettingsPrivate 31 | { 32 | public: 33 | virtual ~DecorationSettingsPrivate(); 34 | virtual bool isOnAllDesktopsAvailable() const = 0; 35 | virtual bool isAlphaChannelSupported() const = 0; 36 | virtual bool isCloseOnDoubleClickOnMenu() const = 0; 37 | virtual QList decorationButtonsLeft() const = 0; 38 | virtual QList decorationButtonsRight() const = 0; 39 | virtual BorderSize borderSize() const = 0; 40 | virtual QFont font() const; 41 | virtual QFontMetricsF fontMetrics() const; 42 | 43 | DecorationSettings *decorationSettings(); 44 | const DecorationSettings *decorationSettings() const; 45 | 46 | int gridUnit() const; 47 | int smallSpacing() const; 48 | int largeSpacing() const; 49 | void setGridUnit(int unit); 50 | void setLargeSpacing(int spacing); 51 | void setSmallSpacing(int spacing); 52 | 53 | protected: 54 | explicit DecorationSettingsPrivate(DecorationSettings *parent); 55 | 56 | private: 57 | class Private; 58 | const std::unique_ptr d; 59 | }; 60 | } 61 | -------------------------------------------------------------------------------- /src/scalehelpers.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2024 Xaver Hugl 3 | * 4 | * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 | */ 6 | #pragma once 7 | 8 | #include 9 | #include 10 | #include 11 | 12 | namespace KDecoration3 13 | { 14 | 15 | /** 16 | * @returns the pixel size with the provided scale 17 | * @since 6.3 18 | */ 19 | inline qreal pixelSize(qreal scale) 20 | { 21 | return 1.0 / scale; 22 | } 23 | 24 | /** 25 | * snaps the logical geometry value to a fractional logical geometry value 26 | * that aligns to the pixel grid of the provided scale 27 | * @since 6.3 28 | */ 29 | inline qreal snapToPixelGrid(qreal value, qreal scale) 30 | { 31 | return std::round(value * scale) / scale; 32 | } 33 | 34 | /** 35 | * snaps the logical geometry value to a fractional logical geometry value 36 | * that aligns to the pixel grid of the provided scale 37 | * @since 6.3 38 | */ 39 | inline QPointF snapToPixelGrid(const QPointF &value, qreal scale) 40 | { 41 | return QPointF(snapToPixelGrid(value.x(), scale), snapToPixelGrid(value.y(), scale)); 42 | } 43 | 44 | /** 45 | * snaps the logical geometry value to a fractional logical geometry value 46 | * that aligns to the pixel grid of the provided scale 47 | * @since 6.3 48 | */ 49 | inline QSizeF snapToPixelGrid(const QSizeF &value, qreal scale) 50 | { 51 | return QSizeF(snapToPixelGrid(value.width(), scale), snapToPixelGrid(value.height(), scale)); 52 | } 53 | 54 | /** 55 | * snaps the logical geometry value to a fractional logical geometry value 56 | * that aligns to the pixel grid of the provided scale 57 | * @since 6.3 58 | */ 59 | inline QRectF snapToPixelGrid(const QRectF &value, qreal scale) 60 | { 61 | return QRectF(snapToPixelGrid(value.topLeft(), scale), snapToPixelGrid(value.bottomRight(), scale)); 62 | } 63 | 64 | } 65 | --------------------------------------------------------------------------------