mirror of
https://invent.kde.org/network/falkon.git
synced 2025-09-10 16:47:54 +02:00
Compare commits
41 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
cd0fff8320 | ||
![]() |
b21be16a9a | ||
![]() |
8c53b67d8f | ||
![]() |
411bb93119 | ||
![]() |
b1b7eb995e | ||
![]() |
bc9a0f43e5 | ||
![]() |
666fb6664d | ||
![]() |
3b2a1d6d9b | ||
![]() |
ec02de3813 | ||
![]() |
8603b170d6 | ||
![]() |
198ddd391b | ||
![]() |
cd84072f9a | ||
![]() |
8263038b46 | ||
![]() |
b8f93bc5e9 | ||
![]() |
f4a8d192d4 | ||
![]() |
a752cd14ee | ||
![]() |
8f9f9de8a0 | ||
![]() |
d23798a4ad | ||
![]() |
7b1de7aaaa | ||
![]() |
d25c8d464c | ||
![]() |
b41a3a7879 | ||
![]() |
f47e324834 | ||
![]() |
b2579c3269 | ||
![]() |
686edda813 | ||
![]() |
ca170db4ff | ||
![]() |
27898d5939 | ||
![]() |
329d55664b | ||
![]() |
c3d8c8e638 | ||
![]() |
6fbf551701 | ||
![]() |
a49a15d6bf | ||
![]() |
462bebf258 | ||
![]() |
a70a304414 | ||
![]() |
586a1e38f2 | ||
![]() |
e4af1d8883 | ||
![]() |
91478a4d01 | ||
![]() |
9fdbf12b75 | ||
![]() |
c1026f4d9f | ||
![]() |
e3312870c0 | ||
![]() |
90511958e3 | ||
![]() |
01e505e510 | ||
![]() |
0f6264abbc |
@ -1,49 +0,0 @@
|
||||
{
|
||||
"id": "org.kde.falkon",
|
||||
"runtime": "org.kde.Platform",
|
||||
"runtime-version": "6.9",
|
||||
"base": "io.qt.qtwebengine.BaseApp",
|
||||
"base-version": "6.9",
|
||||
"sdk": "org.kde.Sdk",
|
||||
"command": "falkon",
|
||||
"rename-icon": "falkon",
|
||||
"finish-args": [
|
||||
"--device=dri",
|
||||
"--own-name=org.mpris.MediaPlayer2.falkon.*",
|
||||
"--share=ipc",
|
||||
"--share=network",
|
||||
"--socket=fallback-x11",
|
||||
"--socket=pulseaudio",
|
||||
"--socket=wayland",
|
||||
"--system-talk-name=org.freedesktop.GeoClue2",
|
||||
"--system-talk-name=org.freedesktop.UPower.*",
|
||||
"--talk-name=org.freedesktop.Notifications",
|
||||
"--talk-name=org.kde.kwalletd5",
|
||||
"--talk-name=org.kde.kwalletd6"
|
||||
],
|
||||
"cleanup": [
|
||||
"/cleanup-BaseApp.sh",
|
||||
"/include",
|
||||
"/lib/*/cmake",
|
||||
"/lib/*/pkgconfig",
|
||||
"/lib/cmake",
|
||||
"/lib/pkgconfig",
|
||||
"/mkspecs",
|
||||
"/share/app-info"
|
||||
],
|
||||
"modules": [
|
||||
{
|
||||
"buildsystem": "cmake-ninja",
|
||||
"name": "falkon",
|
||||
"config-opts": [
|
||||
"-DENABLE_TESTING=OFF"
|
||||
],
|
||||
"sources": [
|
||||
{
|
||||
"type": "dir",
|
||||
"path": "."
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
@ -1,2 +0,0 @@
|
||||
# SPDX-FileCopyrightText: None
|
||||
# SPDX-License-Identifier: CC0-1.0
|
@ -1,17 +1,3 @@
|
||||
# SPDX-FileCopyrightText: None
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
|
||||
include:
|
||||
- project: sysadmin/ci-utilities
|
||||
file:
|
||||
- /gitlab-templates/linux-qt6.yml
|
||||
- /gitlab-templates/linux-qt6-next.yml
|
||||
- /gitlab-templates/freebsd-qt6.yml
|
||||
- /gitlab-templates/flatpak.yml
|
||||
- /gitlab-templates/windows-qt6.yml
|
||||
- /gitlab-templates/craft-windows-x86-64-qt6.yml
|
||||
|
||||
# Blocked - copied from tokodon
|
||||
# - /gitlab-templates/reuse-lint.yml
|
||||
# - /gitlab-templates/android-qt6.yml
|
||||
# - /gitlab-templates/craft-android-qt6-apks.yml
|
||||
- https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/linux.yml
|
||||
- https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/freebsd.yml
|
||||
|
15
.kde-ci.yml
15
.kde-ci.yml
@ -4,10 +4,11 @@
|
||||
Dependencies:
|
||||
- 'on': ['@all']
|
||||
'require':
|
||||
'frameworks/karchive': '@latest-kf6'
|
||||
'frameworks/kwallet': '@latest-kf6'
|
||||
'frameworks/ki18n': '@latest-kf6'
|
||||
'frameworks/kio': '@latest-kf6'
|
||||
'frameworks/kcrash': '@latest-kf6'
|
||||
'frameworks/kcoreaddons': '@latest-kf6'
|
||||
'frameworks/purpose': '@latest-kf6'
|
||||
'frameworks/karchive': '@stable'
|
||||
'frameworks/kwallet': '@stable'
|
||||
'frameworks/ki18n': '@stable'
|
||||
'frameworks/kio': '@stable'
|
||||
'frameworks/kcrash': '@stable'
|
||||
'frameworks/kcoreaddons': '@stable'
|
||||
'frameworks/purpose': '@stable'
|
||||
|
||||
|
99
CHANGELOG
99
CHANGELOG
@ -1,100 +1,3 @@
|
||||
Version 25.08.0
|
||||
* Add permission management for unknown protocols (BUG: 425785)
|
||||
* Fix build issues with Qt6 and add CI build for MS Windows (By Thomas Friedrichsmeier)
|
||||
* DownloadManager: Fix small quick download keeping a download running forever
|
||||
* Mark appId with current profile name (BUG: 439190)
|
||||
* Remove top margin from tabbar (BUG: 445419)
|
||||
* Update UserAgents (BUG: 505287)
|
||||
* UserAgentDialog: Use QUrl::host on user URL input (BUG: 497223)
|
||||
* Add webpage background color customization
|
||||
* Add certificate information into SSL error dialog (BUG: 505141)
|
||||
* Port away from Qt6Core5Compat
|
||||
|
||||
Version 25.04.1
|
||||
* Fix crash when creating bookmarks toolbar. (BUG: 501535)
|
||||
* Fix editing SiteSettings and Cookies permissions
|
||||
* Wayland: Fix issue that location bar can't use input methods when locationcompleterview popups (by Signal Kirigami)
|
||||
* Wayland: Fix tooltip in tabbar (by Signal Kirigami)
|
||||
|
||||
Version 25.04.0
|
||||
* Add input method hints to input fields
|
||||
* Adblock: Add support for "rewrite" filter
|
||||
* Adblock: Add support for remove rule with simple CSS selector
|
||||
* AdBlock: Ignore inactive hiding rules
|
||||
* Adblock: Add support for "websocket" option
|
||||
* AdblockDialog: Rewrite the treeview backend
|
||||
* AdblockDialog: Apply filter when tab changes
|
||||
* Show the URL of bookmark and history items in statusbar when hovered over in the menu or sidebar (BUG: 448238)
|
||||
* Add option to block automatic popups
|
||||
* Use global settings for WebRTC on internal pages (BUG: 497842)
|
||||
* VerticalTabs: Override Alt+NUMBER keyboard shortcut
|
||||
* StatusBarIcon-Network: Restore online status detection
|
||||
* Open all URLs in command line arguments (BUG: 413195, Original author: abogical (Abdel-Rahman))
|
||||
* Remove obsolete XSS Auditing option, has no effect
|
||||
* CookieManager: Fix crash when removing while/black list items
|
||||
* Add "Preffer color scheme" option (BUG: 439891, 497331)
|
||||
* Preferences: Fix editing per site user agent
|
||||
* Use angle backend for GPU acceleration on Qt 6.9+ (BUG: 497691)
|
||||
* Add missing default SiteSettings for intenal pages (BUG: 497463)
|
||||
* Add option to add site permissions in preferences (BUG: 495391)
|
||||
* KDEIntegration: Fix KIO scheme handler (BUG: 491247)
|
||||
* Random fixes
|
||||
|
||||
Version 24.12.0
|
||||
* Do not advertise ftp support to the system (BUG: 494222)
|
||||
* GreaseMonkey: Add support for context menu (BUG: 469855)
|
||||
* GreaseMonkey: Check content type of url *.user.js (BUG: 467459)
|
||||
* VerticalTabs: Fix tab switching with mouse wheel (BUG: 394066)
|
||||
* VerticalTabs: Arrange pinned tabs vertically (BUG: 452818)
|
||||
* Set security icon according to certificate error. (BUG: 420902)
|
||||
* Preferences: Fix crash when un/loading of plugins (BUG: 492023)
|
||||
* Fix printing to real CUPS printer (BUG: 497051)
|
||||
* Random fixes
|
||||
|
||||
Version 24.08.0
|
||||
* Add site permissions
|
||||
* Enable WebInspector with disabled JavaScript (BUG: 462887)
|
||||
* Random fixes
|
||||
|
||||
Version 24.05.0
|
||||
* Translation updates only
|
||||
|
||||
Version 24.02.0
|
||||
* Port from Qt5 to Qt6
|
||||
|
||||
Version 23.08.5
|
||||
* SpeedDial: Fix tooltip text on the Realod button
|
||||
* History: Store addresses with custom allowed schemes (BUG: 406375)
|
||||
* TabBar: Fix the state of tab bar after window restore (BUG: 478823)
|
||||
* Enable localStorage for private browsing (BUG: 393677, by Martin Rodriguez Reboredo)
|
||||
|
||||
Version 23.08.4
|
||||
* Fix crash when starting new session after crash (BUG: 408701)
|
||||
* Fix Startpage search engine default configuration (BUG: 419530)
|
||||
* CLI option "--help-all" now works (BUG: 477492)
|
||||
|
||||
Version 23.08.0
|
||||
* A bit faster restoring of session with a lot of tabs
|
||||
* Add support for custom URI schemes (BUG: 434099)
|
||||
* Add CMake option "BUILD_PYTHON_SUPPORT" to enable/disable Python support
|
||||
* Add zoom indicator to the addressbar (BUG: 399001)
|
||||
* Add an option to expand addresbBar suggestion popup to the window width
|
||||
* Implement a GUI for managing ignored SSL hosts (by Javier Llorente)
|
||||
* Add KDE branding bookmarks and speeddial entries (By Javier Llorente)
|
||||
* Implement download integration with Plasma (By Javier Llorente)
|
||||
|
||||
Version 23.04.0
|
||||
* Look for spellchecking dictionaries at location specified by QTWEBENGINE_DICTIONARIES_PATH environment variable
|
||||
* Show QtWebEngine version on Falkon Config page
|
||||
* Implement prefers-color-scheme (dark mode) for internal pages
|
||||
* Add option to enable GPU acceleration (by Hao Chi Kiang)
|
||||
* PyFalkon: addBookmark - make C++ own parameters (fixes potential crash)
|
||||
* KWallet: Store passwords in a map format
|
||||
* History: Don't delete all items under dates when filtering
|
||||
* AdBlock: Workaround for "Blocked content" page
|
||||
* AddressBar: Search with default search engine by default
|
||||
* Fix crash when adding new folder to the bookmark toolbar
|
||||
|
||||
Version 22.08.2
|
||||
* Fix: Typing text in the search bar sends data although suggestions are disabled (by Juraj Oravec) (BUG: 439268)
|
||||
* Update Firefox version in user agent manager (BUG: 415467)
|
||||
@ -108,8 +11,6 @@ Version 22.04.0
|
||||
* Various improvements for AdBlock (by Allan Sandfeld Jensen)
|
||||
* Enable WebRTC screen capturer in WebEngine / Screen sharing on Wayland (by Antonio Rojas) (BUG: 450839)
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
Version 3.2.0
|
||||
* Add support for Screen Capture (Qt 5.13.2+)
|
||||
* Option for internal PDFium-based viewer (Qt 5.13+)
|
||||
|
@ -2,21 +2,17 @@
|
||||
cmake_minimum_required(VERSION 3.18)
|
||||
|
||||
# KDE Gear Version, managed by release script
|
||||
set(RELEASE_SERVICE_VERSION_MAJOR "25")
|
||||
set(RELEASE_SERVICE_VERSION_MINOR "11")
|
||||
set(RELEASE_SERVICE_VERSION_MICRO "70")
|
||||
set(RELEASE_SERVICE_VERSION_MAJOR "22")
|
||||
set(RELEASE_SERVICE_VERSION_MINOR "12")
|
||||
set(RELEASE_SERVICE_VERSION_MICRO "2")
|
||||
set(RELEASE_SERVICE_VERSION "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}.${RELEASE_SERVICE_VERSION_MICRO}")
|
||||
|
||||
# Project name and version
|
||||
project(Falkon VERSION ${RELEASE_SERVICE_VERSION})
|
||||
|
||||
set(KF_MAJOR_VERSION "6")
|
||||
set(QT_MIN_VERSION "6.4.0")
|
||||
set(KF_MIN_VERSION "5.240.0")
|
||||
|
||||
# Find ECM, with nice error handling in case of failure
|
||||
include(FeatureSummary)
|
||||
find_package(ECM ${KF_MIN_VERSION} CONFIG)
|
||||
find_package(ECM 5.78.0 CONFIG)
|
||||
set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://invent.kde.org/frameworks/extra-cmake-modules")
|
||||
feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES)
|
||||
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
|
||||
@ -53,27 +49,26 @@ endif()
|
||||
# Defines that are always set
|
||||
add_definitions(-DQT_NO_URL_CAST_FROM_STRING -DQT_USE_QSTRINGBUILDER -DQT_NO_CAST_TO_ASCII)
|
||||
|
||||
# Mandatory: Qt6
|
||||
find_package(Qt6 ${QT_MIN_VERSION} REQUIRED COMPONENTS Core Widgets Network Sql QuickWidgets PrintSupport WebChannel)
|
||||
if(Qt6Network_VERSION VERSION_GREATER_EQUAL "6.9.0")
|
||||
find_package(Qt6 ${REQUIRED_QT_VERSION} CONFIG REQUIRED NetworkPrivate)
|
||||
endif()
|
||||
|
||||
find_package(Qt6WebEngineCore ${QT_MIN_VERSION} REQUIRED)
|
||||
find_package(Qt6WebEngineWidgets ${QT_MIN_VERSION} REQUIRED)
|
||||
# Mandatory: Qt5
|
||||
set(QT_MIN_VERSION "5.15.0")
|
||||
find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS Core Widgets Network Sql QuickWidgets PrintSupport WebChannel)
|
||||
find_package(Qt5WebEngine ${QT_MIN_VERSION} REQUIRED)
|
||||
find_package(Qt5WebEngineWidgets ${QT_MIN_VERSION} REQUIRED)
|
||||
if (BUILD_TESTING)
|
||||
find_package(Qt6 ${QT_MIN_VERSION} REQUIRED COMPONENTS Test)
|
||||
find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS Test)
|
||||
endif()
|
||||
if (NOT DISABLE_DBUS)
|
||||
find_package(Qt6 ${QT_MIN_VERSION} REQUIRED COMPONENTS DBus)
|
||||
find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS DBus)
|
||||
endif()
|
||||
|
||||
if (UNIX AND NOT APPLE AND NOT NO_X11)
|
||||
add_definitions(-DQZ_WS_X11)
|
||||
find_package(XCB REQUIRED COMPONENTS XCB UTIL)
|
||||
find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS X11Extras)
|
||||
endif()
|
||||
if (WIN32)
|
||||
add_definitions(-DW7API)
|
||||
find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS WinExtras)
|
||||
|
||||
# taken from https://stackoverflow.com/a/40217291
|
||||
macro(get_WIN32_WINNT version)
|
||||
@ -101,12 +96,12 @@ endif()
|
||||
# Mandatory: OpenSSL
|
||||
find_package(OpenSSL REQUIRED)
|
||||
|
||||
# Mandatory: KF6
|
||||
find_package(KF6 REQUIRED COMPONENTS Archive)
|
||||
# Mandatory: KF5
|
||||
find_package(KF5 REQUIRED COMPONENTS Archive)
|
||||
|
||||
# KF5I18n: Mandatory with downloaded translations (only for ki18n_install)
|
||||
if (EXISTS "${CMAKE_SOURCE_DIR}/po")
|
||||
find_package(KF6I18n REQUIRED)
|
||||
find_package(KF5I18n REQUIRED)
|
||||
endif()
|
||||
|
||||
# Optional: GnomeKeyring
|
||||
@ -119,37 +114,31 @@ if (PKG_CONFIG_FOUND)
|
||||
endif()
|
||||
|
||||
# Optional: KWallet, KIO, KCrash, KCoreAddons
|
||||
find_package(KF6Wallet ${KF_MIN_VERSION} CONFIG)
|
||||
set_package_properties(KF6Wallet PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL)
|
||||
find_package(KF6KIO ${KF_MIN_VERSION} CONFIG)
|
||||
set_package_properties(KF6KIO PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL)
|
||||
find_package(KF6Crash ${KF_MIN_VERSION} CONFIG)
|
||||
set_package_properties(KF6Crash PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL)
|
||||
find_package(KF6CoreAddons ${KF_MIN_VERSION} CONFIG)
|
||||
set_package_properties(KF6CoreAddons PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL)
|
||||
find_package(KF6Purpose ${KF_MIN_VERSION} CONFIG)
|
||||
set_package_properties(KF6Purpose PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL)
|
||||
find_package(KF6JobWidgets ${KF_MIN_VERSION} CONFIG)
|
||||
set_package_properties(KF6JobWidgets PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL)
|
||||
if (KF6Wallet_FOUND AND KF6KIO_FOUND AND KF6Crash_FOUND AND KF6CoreAddons_FOUND AND KF6Purpose_FOUND AND KF6JobWidgets_FOUND AND NOT WIN32)
|
||||
set(KF5_MIN_VERSION "5.78.0")
|
||||
find_package(KF5Wallet ${KF5_MIN_VERSION} CONFIG)
|
||||
set_package_properties(KF5Wallet PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL)
|
||||
find_package(KF5KIO ${KF5_MIN_VERSION} CONFIG)
|
||||
set_package_properties(KF5KIO PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL)
|
||||
find_package(KF5Crash ${KF5_MIN_VERSION} CONFIG)
|
||||
set_package_properties(KF5Crash PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL)
|
||||
find_package(KF5CoreAddons ${KF5_MIN_VERSION} CONFIG)
|
||||
set_package_properties(KF5CoreAddons PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL)
|
||||
find_package(KF5Purpose ${KF5_MIN_VERSION} CONFIG)
|
||||
set_package_properties(KF5Purpose PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL)
|
||||
if (KF5Wallet_FOUND AND KF5KIO_FOUND AND KF5Crash_FOUND AND KF5CoreAddons_FOUND AND KF5Purpose_FOUND)
|
||||
set(ENABLE_KDE_FRAMEWORKS_INTEGRATION_PLUGIN TRUE)
|
||||
endif()
|
||||
|
||||
# Optional: PySide6
|
||||
option(BUILD_PYTHON_SUPPORT "Support for Python plugins" ON)
|
||||
if (BUILD_PYTHON_SUPPORT)
|
||||
# Optional: PySide2
|
||||
find_package(PySide2 "2.0.0")
|
||||
find_package(Shiboken2 "2.0.0")
|
||||
find_package(Python3 COMPONENTS Development)
|
||||
find_package(PySide6 "6.4.0")
|
||||
find_package(Shiboken6 "6.4.0")
|
||||
find_package(Shiboken6Tools "6.4.0")
|
||||
set_package_properties(PySide2 PROPERTIES DESCRIPTION "Python plugins" TYPE OPTIONAL)
|
||||
set_package_properties(Shiboken2 PROPERTIES DESCRIPTION "Python plugins" TYPE OPTIONAL)
|
||||
set_package_properties(Python3 PROPERTIES DESCRIPTION "Python plugins" TYPE OPTIONAL)
|
||||
set_package_properties(PySide6 PROPERTIES DESCRIPTION "Python plugins" TYPE OPTIONAL)
|
||||
set_package_properties(Shiboken6 PROPERTIES DESCRIPTION "Python plugins" TYPE OPTIONAL)
|
||||
set_package_properties(Shiboken6Tools PROPERTIES DESCRIPTION "Python plugins" TYPE OPTIONAL)
|
||||
if (PySide6_FOUND AND Shiboken6_FOUND AND Shiboken6Tools_FOUND AND Python3_FOUND)
|
||||
if (PySide2_FOUND AND Shiboken2_FOUND AND Python3_FOUND)
|
||||
set(ENABLE_PYTHON_PLUGINS TRUE)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
find_package(Intl)
|
||||
if (Intl_FOUND)
|
||||
|
@ -23,7 +23,6 @@ falkon_tests(
|
||||
webviewtest
|
||||
webtabtest
|
||||
sqldatabasetest
|
||||
sitesettingstest
|
||||
)
|
||||
|
||||
set(falkon_autotests_SRCS ${CMAKE_SOURCE_DIR}/tests/modeltest/modeltest.cpp)
|
||||
|
@ -33,8 +33,7 @@ void DatabasePasswordBackendTest::init()
|
||||
db.setDatabaseName(QSL(":memory:"));
|
||||
db.open();
|
||||
|
||||
QSqlQuery query(db);
|
||||
query.exec(QSL("CREATE TABLE autofill (data TEXT, id INTEGER PRIMARY KEY, password TEXT,"
|
||||
db.exec(QSL("CREATE TABLE autofill (data TEXT, id INTEGER PRIMARY KEY, password TEXT,"
|
||||
"server TEXT, username TEXT, last_used NUMERIC)"));
|
||||
}
|
||||
|
||||
|
@ -49,82 +49,82 @@ void LocationBarTest::loadActionBasicTest()
|
||||
{
|
||||
LocationBar::LoadAction action;
|
||||
|
||||
action = LocationBar::loadAction(QSL("http://kde.org"));
|
||||
action = LocationBar::loadAction("http://kde.org");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://kde.org")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://kde.org"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("kde.org"));
|
||||
action = LocationBar::loadAction("kde.org");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://kde.org")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://kde.org"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("localhost"));
|
||||
action = LocationBar::loadAction("localhost");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://localhost")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://localhost"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("localhost/test/path?x=2"));
|
||||
action = LocationBar::loadAction("localhost/test/path?x=2");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://localhost/test/path?x=2")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://localhost/test/path?x=2"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("host.com/test/path?x=2"));
|
||||
action = LocationBar::loadAction("host.com/test/path?x=2");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://host.com/test/path?x=2")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://host.com/test/path?x=2"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("not-url"));
|
||||
action = LocationBar::loadAction("not-url");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Search);
|
||||
|
||||
action = LocationBar::loadAction(QSL("not url with spaces"));
|
||||
action = LocationBar::loadAction("not url with spaces");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Search);
|
||||
|
||||
action = LocationBar::loadAction(QSL("falkon:about"));
|
||||
action = LocationBar::loadAction("falkon:about");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("falkon:about")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("falkon:about"));
|
||||
}
|
||||
|
||||
void LocationBarTest::loadActionBookmarksTest()
|
||||
{
|
||||
auto* bookmark = new BookmarkItem(BookmarkItem::Url);
|
||||
bookmark->setTitle(QSL("KDE Bookmark title"));
|
||||
bookmark->setUrl(QUrl(QSL("http://kde.org")));
|
||||
bookmark->setKeyword(QSL("kde-bookmark"));
|
||||
bookmark->setTitle("KDE Bookmark title");
|
||||
bookmark->setUrl(QUrl("http://kde.org"));
|
||||
bookmark->setKeyword("kde-bookmark");
|
||||
mApp->bookmarks()->addBookmark(mApp->bookmarks()->unsortedFolder(), bookmark);
|
||||
|
||||
LocationBar::LoadAction action;
|
||||
|
||||
action = LocationBar::loadAction(QSL("http://kde.org"));
|
||||
action = LocationBar::loadAction("http://kde.org");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://kde.org")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://kde.org"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("kde-bookmark-notkeyword"));
|
||||
action = LocationBar::loadAction("kde-bookmark-notkeyword");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Search);
|
||||
|
||||
action = LocationBar::loadAction(QSL("kde-bookmark"));
|
||||
action = LocationBar::loadAction("kde-bookmark");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Bookmark);
|
||||
QCOMPARE(action.bookmark, bookmark);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://kde.org")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://kde.org"));
|
||||
}
|
||||
|
||||
void LocationBarTest::loadActionSearchTest()
|
||||
{
|
||||
SearchEngine engine;
|
||||
engine.name = QSL("Test Engine");
|
||||
engine.url = QSL("http://test/%s");
|
||||
engine.shortcut = QSL("t");
|
||||
engine.name = "Test Engine";
|
||||
engine.url = "http://test/%s";
|
||||
engine.shortcut = "t";
|
||||
mApp->searchEnginesManager()->addEngine(engine);
|
||||
mApp->searchEnginesManager()->setDefaultEngine(engine);
|
||||
mApp->searchEnginesManager()->setActiveEngine(engine);
|
||||
|
||||
LocationBar::LoadAction action;
|
||||
|
||||
action = LocationBar::loadAction(QSL("search term"));
|
||||
action = LocationBar::loadAction("search term");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Search);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://test/search%20term")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://test/search%20term"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("t search term"));
|
||||
action = LocationBar::loadAction("t search term");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Search);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://test/search%20term")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://test/search%20term"));
|
||||
|
||||
action = LocationBar::loadAction(QSL(" ttt-notsearch"));
|
||||
action = LocationBar::loadAction(" ttt-notsearch");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Search);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://test/ttt-notsearch")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://test/ttt-notsearch"));
|
||||
}
|
||||
|
||||
void LocationBarTest::loadAction_kdebug389491()
|
||||
@ -132,54 +132,54 @@ void LocationBarTest::loadAction_kdebug389491()
|
||||
// "site:website.com searchterm" and "link:website.com" are loaded instead of searched
|
||||
|
||||
SearchEngine engine;
|
||||
engine.name = QSL("Test Engine");
|
||||
engine.url = QSL("http://test/%s");
|
||||
engine.shortcut = QSL("t");
|
||||
engine.name = "Test Engine";
|
||||
engine.url = "http://test/%s";
|
||||
engine.shortcut = "t";
|
||||
mApp->searchEnginesManager()->addEngine(engine);
|
||||
mApp->searchEnginesManager()->setActiveEngine(engine);
|
||||
|
||||
LocationBar::LoadAction action;
|
||||
|
||||
action = LocationBar::loadAction(QSL("site:website.com searchterm"));
|
||||
action = LocationBar::loadAction("site:website.com searchterm");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Search);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://test/site%3Awebsite.com%20searchterm")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://test/site%3Awebsite.com%20searchterm"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("link:website.com"));
|
||||
action = LocationBar::loadAction("link:website.com");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Search);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://test/link%3Awebsite.com")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://test/link%3Awebsite.com"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("http://website.com?search=searchterm and another"));
|
||||
action = LocationBar::loadAction("http://website.com?search=searchterm and another");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://website.com?search=searchterm and another")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://website.com?search=searchterm and another"));
|
||||
}
|
||||
|
||||
void LocationBarTest::loadActionSpecialSchemesTest()
|
||||
{
|
||||
LocationBar::LoadAction action;
|
||||
|
||||
action = LocationBar::loadAction(QSL("data:image/png;base64,xxxxx"));
|
||||
action = LocationBar::loadAction("data:image/png;base64,xxxxx");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("data:image/png;base64,xxxxx")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("data:image/png;base64,xxxxx"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("falkon:about"));
|
||||
action = LocationBar::loadAction("falkon:about");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("falkon:about")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("falkon:about"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("file:test.html"));
|
||||
action = LocationBar::loadAction("file:test.html");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("file:test.html")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("file:test.html"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("about:blank"));
|
||||
action = LocationBar::loadAction("about:blank");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("about:blank")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("about:blank"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("javascript:test"));
|
||||
action = LocationBar::loadAction("javascript:test");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("javascript:test")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("javascript:test"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("javascript:alert(' test ');"));
|
||||
action = LocationBar::loadAction("javascript:alert(' test ');");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("javascript:alert('%20test%20');")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("javascript:alert('%20test%20');"));
|
||||
}
|
||||
|
||||
void LocationBarTest::loadAction_issue2578()
|
||||
@ -190,27 +190,27 @@ void LocationBarTest::loadAction_issue2578()
|
||||
|
||||
LocationBar::LoadAction action;
|
||||
|
||||
action = LocationBar::loadAction(QSL("github.com"));
|
||||
action = LocationBar::loadAction("github.com");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://github.com")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://github.com"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("github"));
|
||||
action = LocationBar::loadAction("github");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://github")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://github"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("github/test/path"));
|
||||
action = LocationBar::loadAction("github/test/path");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://github/test/path")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://github/test/path"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("localhost"));
|
||||
action = LocationBar::loadAction("localhost");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://localhost")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://localhost"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("localhost/test/path"));
|
||||
action = LocationBar::loadAction("localhost/test/path");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://localhost/test/path")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://localhost/test/path"));
|
||||
|
||||
action = LocationBar::loadAction(QSL("github.com foo bar"));
|
||||
action = LocationBar::loadAction("github.com foo bar");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Invalid);
|
||||
}
|
||||
|
||||
@ -222,9 +222,9 @@ void LocationBarTest::loadAction_kdebug392445()
|
||||
|
||||
LocationBar::LoadAction action;
|
||||
|
||||
action = LocationBar::loadAction(QSL("http://www.example.com/my%20beautiful%20page"));
|
||||
action = LocationBar::loadAction("http://www.example.com/my%20beautiful%20page");
|
||||
QCOMPARE(action.type, LocationBar::LoadAction::Url);
|
||||
QCOMPARE(action.loadRequest.url(), QUrl(QSL("http://www.example.com/my%20beautiful%20page")));
|
||||
QCOMPARE(action.loadRequest.url(), QUrl("http://www.example.com/my%20beautiful%20page"));
|
||||
}
|
||||
|
||||
FALKONTEST_MAIN(LocationBarTest)
|
||||
|
@ -72,7 +72,7 @@ void PasswordBackendTest::cleanupTestCase()
|
||||
cleanup();
|
||||
|
||||
reloadBackend();
|
||||
for (const PasswordEntry &entry : std::as_const(m_entries)) {
|
||||
foreach (const PasswordEntry &entry, m_entries) {
|
||||
m_backend->addEntry(entry);
|
||||
}
|
||||
}
|
||||
|
@ -31,16 +31,16 @@ void QmlBookmarksApiTest::cleanupTestCase()
|
||||
|
||||
void QmlBookmarksApiTest::testBookmarkTreeNodeType()
|
||||
{
|
||||
auto type = BookmarkItem::Type(m_testHelper.evaluate(QSL("Falkon.Bookmarks.rootItem().type")).toInt());
|
||||
auto type = BookmarkItem::Type(m_testHelper.evaluate("Falkon.Bookmarks.rootItem().type").toInt());
|
||||
QCOMPARE(mApp->bookmarks()->rootItem()->type(), type);
|
||||
|
||||
type = BookmarkItem::Type(m_testHelper.evaluate(QSL("Falkon.Bookmarks.toolbarFolder().type")).toInt());
|
||||
type = BookmarkItem::Type(m_testHelper.evaluate("Falkon.Bookmarks.toolbarFolder().type").toInt());
|
||||
QCOMPARE(mApp->bookmarks()->toolbarFolder()->type(), type);
|
||||
}
|
||||
|
||||
void QmlBookmarksApiTest::testBookmarkTreeNode()
|
||||
{
|
||||
QObject *bookmark = m_testHelper.evaluateQObject(QSL("Falkon.Bookmarks.toolbarFolder()"));
|
||||
QObject *bookmark = m_testHelper.evaluateQObject("Falkon.Bookmarks.toolbarFolder()");
|
||||
QVERIFY(bookmark);
|
||||
auto toolbarFolder = mApp->bookmarks()->toolbarFolder();
|
||||
|
||||
@ -56,11 +56,11 @@ void QmlBookmarksApiTest::testBookmarkTreeNode()
|
||||
void QmlBookmarksApiTest::testBookmarksCreation()
|
||||
{
|
||||
auto item = new BookmarkItem(BookmarkItem::Url);
|
||||
item->setTitle(QSL("Example Domain"));
|
||||
item->setUrl(QUrl(QSL("https://example.com/")));
|
||||
item->setDescription(QSL("Testing bookmark description"));
|
||||
item->setTitle("Example Domain");
|
||||
item->setUrl(QUrl("https://example.com/"));
|
||||
item->setDescription("Testing bookmark description");
|
||||
|
||||
QObject *qmlBookmarks = m_testHelper.evaluateQObject(QSL("Falkon.Bookmarks"));
|
||||
QObject *qmlBookmarks = m_testHelper.evaluateQObject("Falkon.Bookmarks");
|
||||
QVERIFY(qmlBookmarks);
|
||||
|
||||
QSignalSpy qmlBookmarksSpy(qmlBookmarks, SIGNAL(created(QmlBookmarkTreeNode*)));
|
||||
@ -75,87 +75,87 @@ void QmlBookmarksApiTest::testBookmarksCreation()
|
||||
qRegisterMetaType<BookmarkItem*>();
|
||||
QSignalSpy bookmarksSpy(mApp->bookmarks(), &Bookmarks::bookmarkAdded);
|
||||
|
||||
auto out = m_testHelper.evaluate(QL1S("Falkon.Bookmarks.create({"
|
||||
auto out = m_testHelper.evaluate("Falkon.Bookmarks.create({"
|
||||
" parent: Falkon.Bookmarks.toolbarFolder(),"
|
||||
" title: 'Example Plugin',"
|
||||
" url: 'https://another-example.com'"
|
||||
"});"));
|
||||
"});");
|
||||
QVERIFY(out.toBool());
|
||||
|
||||
QCOMPARE(bookmarksSpy.count(), 1);
|
||||
auto* createdItem = qvariant_cast<BookmarkItem*>(bookmarksSpy.at(0).at(0));
|
||||
QVERIFY(createdItem);
|
||||
QCOMPARE(createdItem->title(), QSL("Example Plugin"));
|
||||
QCOMPARE(createdItem->title(), QString("Example Plugin"));
|
||||
}
|
||||
|
||||
void QmlBookmarksApiTest::testBookmarksExistence()
|
||||
{
|
||||
// in continuation from testBookmarksCreation
|
||||
|
||||
auto result = m_testHelper.evaluate(QSL("Falkon.Bookmarks.isBookmarked('https://example.com/')")).toBool();
|
||||
auto result = m_testHelper.evaluate("Falkon.Bookmarks.isBookmarked('https://example.com/')").toBool();
|
||||
QVERIFY(result);
|
||||
QCOMPARE(mApp->bookmarks()->isBookmarked(QUrl(QSL("https://example.com/"))), result);
|
||||
QCOMPARE(mApp->bookmarks()->isBookmarked(QUrl("https://example.com/")), result);
|
||||
}
|
||||
|
||||
void QmlBookmarksApiTest::testBookmarksModification()
|
||||
{
|
||||
// in continuation from testBookmarksExistence
|
||||
|
||||
QObject *qmlBookmarks = m_testHelper.evaluateQObject(QSL("Falkon.Bookmarks"));
|
||||
QObject *qmlBookmarks = m_testHelper.evaluateQObject("Falkon.Bookmarks");
|
||||
QVERIFY(qmlBookmarks);
|
||||
|
||||
QSignalSpy qmlBookmarksSpy(qmlBookmarks, SIGNAL(changed(QmlBookmarkTreeNode*)));
|
||||
BookmarkItem* item = mApp->bookmarks()->searchBookmarks(QSL("https://example.com/")).at(0);
|
||||
item->setTitle(QSL("Modified Example Domain"));
|
||||
BookmarkItem* item = mApp->bookmarks()->searchBookmarks("https://example.com/").at(0);
|
||||
item->setTitle("Modified Example Domain");
|
||||
mApp->bookmarks()->changeBookmark(item);
|
||||
|
||||
QCOMPARE(qmlBookmarksSpy.count(), 1);
|
||||
|
||||
auto *modified = qvariant_cast<QObject*>(qmlBookmarksSpy.at(0).at(0));
|
||||
QVERIFY(modified);
|
||||
QCOMPARE(modified->property("title").toString(), QSL("Modified Example Domain"));
|
||||
QCOMPARE(modified->property("title").toString(), QString("Modified Example Domain"));
|
||||
|
||||
qRegisterMetaType<BookmarkItem*>();
|
||||
QSignalSpy bookmarksSpy(mApp->bookmarks(), &Bookmarks::bookmarkChanged);
|
||||
|
||||
auto out = m_testHelper.evaluate(QL1S("Falkon.Bookmarks.update(Falkon.Bookmarks.get('https://another-example.com'),{"
|
||||
auto out = m_testHelper.evaluate("Falkon.Bookmarks.update(Falkon.Bookmarks.get('https://another-example.com'),{"
|
||||
" title: 'Modified Example Plugin'"
|
||||
"})"));
|
||||
"})");
|
||||
QVERIFY(out.toBool());
|
||||
|
||||
QCOMPARE(bookmarksSpy.count(), 1);
|
||||
auto* modifiedItem = qvariant_cast<BookmarkItem*>(bookmarksSpy.at(0).at(0));
|
||||
QVERIFY(modifiedItem);
|
||||
QCOMPARE(modifiedItem->title(), QSL("Modified Example Plugin"));
|
||||
QCOMPARE(modifiedItem->title(), QString("Modified Example Plugin"));
|
||||
}
|
||||
|
||||
void QmlBookmarksApiTest::testBookmarksRemoval()
|
||||
{
|
||||
// in continuation from testBookmarksModification
|
||||
|
||||
QObject *qmlBookmarks = m_testHelper.evaluateQObject(QSL("Falkon.Bookmarks"));
|
||||
QObject *qmlBookmarks = m_testHelper.evaluateQObject("Falkon.Bookmarks");
|
||||
QVERIFY(qmlBookmarks);
|
||||
|
||||
QSignalSpy qmlBookmarksSpy(qmlBookmarks, SIGNAL(removed(QmlBookmarkTreeNode*)));
|
||||
BookmarkItem* item = mApp->bookmarks()->searchBookmarks(QSL("https://example.com/")).at(0);
|
||||
BookmarkItem* item = mApp->bookmarks()->searchBookmarks("https://example.com/").at(0);
|
||||
mApp->bookmarks()->removeBookmark(item);
|
||||
|
||||
QCOMPARE(qmlBookmarksSpy.count(), 1);
|
||||
|
||||
auto *removed = qvariant_cast<QObject*>(qmlBookmarksSpy.at(0).at(0));
|
||||
QVERIFY(removed);
|
||||
QCOMPARE(removed->property("title").toString(), QSL("Modified Example Domain"));
|
||||
QCOMPARE(removed->property("title").toString(), QString("Modified Example Domain"));
|
||||
|
||||
qRegisterMetaType<BookmarkItem*>();
|
||||
QSignalSpy bookmarksSpy(mApp->bookmarks(), &Bookmarks::bookmarkRemoved);
|
||||
|
||||
auto out = m_testHelper.evaluate(QSL("Falkon.Bookmarks.remove(Falkon.Bookmarks.get('https://another-example.com'))"));
|
||||
auto out = m_testHelper.evaluate("Falkon.Bookmarks.remove(Falkon.Bookmarks.get('https://another-example.com'))");
|
||||
QVERIFY(out.toBool());
|
||||
|
||||
QCOMPARE(bookmarksSpy.count(), 1);
|
||||
auto* removedItem = qvariant_cast<BookmarkItem*>(bookmarksSpy.at(0).at(0));
|
||||
QVERIFY(removedItem);
|
||||
QCOMPARE(removedItem->title(), QSL("Modified Example Plugin"));
|
||||
QCOMPARE(removedItem->title(), QString("Modified Example Plugin"));
|
||||
}
|
||||
|
||||
FALKONTEST_MAIN(QmlBookmarksApiTest)
|
||||
|
@ -30,7 +30,7 @@ void QmlClipboardApiTest::cleanupTestCase()
|
||||
|
||||
void QmlClipboardApiTest::testClipboard()
|
||||
{
|
||||
m_testHelper.evaluate(QSL("Falkon.Clipboard.copy('this text is copied')"));
|
||||
m_testHelper.evaluate("Falkon.Clipboard.copy('this text is copied')");
|
||||
QCOMPARE(mApp->clipboard()->text(), QSL("this text is copied"));
|
||||
}
|
||||
|
||||
|
@ -33,42 +33,42 @@ void QmlCookiesApiTest::cleanupTestCase()
|
||||
void QmlCookiesApiTest::testCookieAdditionRemoval()
|
||||
{
|
||||
QSignalSpy cookieAddSpy(mApp->cookieJar(), &CookieJar::cookieAdded);
|
||||
m_testHelper.evaluate(QL1S("Falkon.Cookies.set({"
|
||||
m_testHelper.evaluate("Falkon.Cookies.set({"
|
||||
" name: 'Example',"
|
||||
" url: '.example.com',"
|
||||
" expirationDate: Date.now() + 60*1000"
|
||||
"})"));
|
||||
"})");
|
||||
QTRY_COMPARE(cookieAddSpy.count(), 1);
|
||||
QNetworkCookie netCookie = qvariant_cast<QNetworkCookie>(cookieAddSpy.at(0).at(0));
|
||||
QCOMPARE(netCookie.name(), QByteArrayLiteral("Example"));
|
||||
QObject *object = m_testHelper.evaluateQObject(QSL("Falkon.Cookies"));
|
||||
QObject *object = m_testHelper.evaluateQObject("Falkon.Cookies");
|
||||
QVERIFY(object);
|
||||
QSignalSpy qmlCookieSpy(object, SIGNAL(changed(QVariantMap)));
|
||||
QNetworkCookie anotherNetCookie;
|
||||
anotherNetCookie.setName(QSL("Hello").toLocal8Bit());
|
||||
anotherNetCookie.setDomain(QSL(".mydomain.com"));
|
||||
anotherNetCookie.setName(QString("Hello").toLocal8Bit());
|
||||
anotherNetCookie.setDomain(".mydomain.com");
|
||||
anotherNetCookie.setExpirationDate(QDateTime::currentDateTime().addSecs(60));
|
||||
mApp->webProfile()->cookieStore()->setCookie(anotherNetCookie);
|
||||
QTRY_COMPARE(qmlCookieSpy.count(), 1);
|
||||
QVariantMap addedQmlCookieMap = QVariant(qmlCookieSpy.at(0).at(0)).toMap();
|
||||
auto *addedQmlCookie = qvariant_cast<QObject*>(addedQmlCookieMap.value(QSL("cookie")));
|
||||
bool removed = addedQmlCookieMap.value(QSL("removed")).toBool();
|
||||
auto *addedQmlCookie = qvariant_cast<QObject*>(addedQmlCookieMap.value("cookie"));
|
||||
bool removed = addedQmlCookieMap.value("removed").toBool();
|
||||
QCOMPARE(addedQmlCookie->property("name").toString(), QSL("Hello"));
|
||||
QCOMPARE(removed, false);
|
||||
|
||||
mApp->webProfile()->cookieStore()->deleteCookie(netCookie);
|
||||
QTRY_COMPARE(qmlCookieSpy.count(), 2);
|
||||
QVariantMap removedQmlCookieMap = QVariant(qmlCookieSpy.at(1).at(0)).toMap();
|
||||
auto *removedQmlCookie = qvariant_cast<QObject*>(removedQmlCookieMap.value(QSL("cookie")));
|
||||
removed = removedQmlCookieMap.value(QSL("removed")).toBool();
|
||||
auto *removedQmlCookie = qvariant_cast<QObject*>(removedQmlCookieMap.value("cookie"));
|
||||
removed = removedQmlCookieMap.value("removed").toBool();
|
||||
QCOMPARE(removedQmlCookie->property("name").toString(), QSL("Example"));
|
||||
QCOMPARE(removed, true);
|
||||
|
||||
QSignalSpy cookieRemoveSpy(mApp->cookieJar(), &CookieJar::cookieRemoved);
|
||||
m_testHelper.evaluate(QL1S("Falkon.Cookies.remove({"
|
||||
m_testHelper.evaluate("Falkon.Cookies.remove({"
|
||||
" name: 'Hello',"
|
||||
" url: '.mydomain.com',"
|
||||
"})"));
|
||||
"})");
|
||||
QTRY_COMPARE(cookieRemoveSpy.count(), 1);
|
||||
netCookie = qvariant_cast<QNetworkCookie>(cookieRemoveSpy.at(0).at(0));
|
||||
QCOMPARE(netCookie.name(), QByteArrayLiteral("Hello"));
|
||||
@ -80,20 +80,20 @@ void QmlCookiesApiTest::testCookieGet()
|
||||
QSignalSpy cookieAddSpy(mApp->cookieJar(), &CookieJar::cookieAdded);
|
||||
|
||||
QNetworkCookie netCookie_1;
|
||||
netCookie_1.setName(QSL("Apple").toLocal8Bit());
|
||||
netCookie_1.setDomain(QSL(".apple-domain.com"));
|
||||
netCookie_1.setName(QString("Apple").toLocal8Bit());
|
||||
netCookie_1.setDomain(".apple-domain.com");
|
||||
netCookie_1.setExpirationDate(current.addSecs(60));
|
||||
mApp->webProfile()->cookieStore()->setCookie(netCookie_1);
|
||||
|
||||
QNetworkCookie netCookie_2;
|
||||
netCookie_2.setName(QSL("Mango").toLocal8Bit());
|
||||
netCookie_2.setDomain(QSL(".mango-domain.com"));
|
||||
netCookie_2.setName(QString("Mango").toLocal8Bit());
|
||||
netCookie_2.setDomain(".mango-domain.com");
|
||||
netCookie_2.setExpirationDate(current.addSecs(120));
|
||||
mApp->webProfile()->cookieStore()->setCookie(netCookie_2);
|
||||
|
||||
QNetworkCookie netCookie_3;
|
||||
netCookie_3.setName(QSL("Mango").toLocal8Bit());
|
||||
netCookie_3.setDomain(QSL(".yet-another-mango-domain.com"));
|
||||
netCookie_3.setName(QString("Mango").toLocal8Bit());
|
||||
netCookie_3.setDomain(".yet-another-mango-domain.com");
|
||||
netCookie_3.setExpirationDate(current.addSecs(180));
|
||||
mApp->webProfile()->cookieStore()->setCookie(netCookie_3);
|
||||
|
||||
@ -101,20 +101,20 @@ void QmlCookiesApiTest::testCookieGet()
|
||||
|
||||
QNetworkCookie actualMangoCookie;
|
||||
for (const QNetworkCookie &cookie : mApp->cookieJar()->getAllCookies()) {
|
||||
if (QString::fromUtf8(cookie.name()) == QSL("Mango") && cookie.domain() == QSL(".mango-domain.com")) {
|
||||
if (cookie.name() == QSL("Mango") && cookie.domain() == QSL(".mango-domain.com")) {
|
||||
actualMangoCookie = cookie;
|
||||
}
|
||||
}
|
||||
|
||||
QObject *mangoCookie = m_testHelper.evaluateQObject(QL1S("Falkon.Cookies.get({"
|
||||
QObject *mangoCookie = m_testHelper.evaluateQObject("Falkon.Cookies.get({"
|
||||
" name: 'Mango',"
|
||||
" url: '.mango-domain.com'"
|
||||
"})"));
|
||||
"})");
|
||||
QVERIFY(mangoCookie);
|
||||
QCOMPARE(mangoCookie->property("name").toString(), QSL("Mango"));
|
||||
QCOMPARE(mangoCookie->property("expirationDate").toDateTime(), actualMangoCookie.expirationDate());
|
||||
|
||||
QList<QVariant> mangoCookies = m_testHelper.evaluate(QSL("Falkon.Cookies.getAll({name: 'Mango'})")).toVariant().toList();
|
||||
QList<QVariant> mangoCookies = m_testHelper.evaluate("Falkon.Cookies.getAll({name: 'Mango'})").toVariant().toList();
|
||||
QCOMPARE(mangoCookies.length(), 2);
|
||||
}
|
||||
|
||||
|
@ -36,17 +36,17 @@ void QmlHistoryApiTest::testAddition()
|
||||
{
|
||||
qRegisterMetaType<HistoryEntry>();
|
||||
QSignalSpy historySpy(mApp->history(), &History::historyEntryAdded);
|
||||
m_testHelper.evaluate(QL1S("Falkon.History.addUrl({"
|
||||
m_testHelper.evaluate("Falkon.History.addUrl({"
|
||||
" url: 'https://example.com',"
|
||||
" title: 'Example Domain'"
|
||||
"})"));
|
||||
"})");
|
||||
QTRY_COMPARE(historySpy.count(), 1);
|
||||
HistoryEntry entry = qvariant_cast<HistoryEntry>(historySpy.at(0).at(0));
|
||||
QCOMPARE(entry.title, QSL("Example Domain"));
|
||||
|
||||
auto object = m_testHelper.evaluateQObject(QSL("Falkon.History"));
|
||||
auto object = m_testHelper.evaluateQObject("Falkon.History");
|
||||
QSignalSpy qmlHistorySpy(object, SIGNAL(visited(QmlHistoryItem*)));
|
||||
mApp->history()->addHistoryEntry(QUrl(QSL("https://sample.com")), QSL("Sample Domain"));
|
||||
mApp->history()->addHistoryEntry(QUrl("https://sample.com"), "Sample Domain");
|
||||
QTRY_COMPARE(qmlHistorySpy.count(), 1);
|
||||
mApp->history()->clearHistory();
|
||||
}
|
||||
@ -54,34 +54,34 @@ void QmlHistoryApiTest::testAddition()
|
||||
void QmlHistoryApiTest::testSearch()
|
||||
{
|
||||
QSignalSpy historySpy(mApp->history(), &History::historyEntryAdded);
|
||||
mApp->history()->addHistoryEntry(QUrl(QSL("https://example.com")), QSL("Example Domain"));
|
||||
mApp->history()->addHistoryEntry(QUrl(QSL("https://another-example.com")), QSL("Another Example Domain"));
|
||||
mApp->history()->addHistoryEntry(QUrl(QSL("https://sample.com")), QSL("Sample Domain"));
|
||||
mApp->history()->addHistoryEntry(QUrl("https://example.com"), "Example Domain");
|
||||
mApp->history()->addHistoryEntry(QUrl("https://another-example.com"), "Another Example Domain");
|
||||
mApp->history()->addHistoryEntry(QUrl("https://sample.com"), "Sample Domain");
|
||||
QTRY_COMPARE(historySpy.count(), 3);
|
||||
auto list = m_testHelper.evaluate(QSL("Falkon.History.search('example')")).toVariant().toList();
|
||||
auto list = m_testHelper.evaluate("Falkon.History.search('example')").toVariant().toList();
|
||||
QCOMPARE(list.length(), 2);
|
||||
}
|
||||
|
||||
void QmlHistoryApiTest::testVisits()
|
||||
{
|
||||
int visits = m_testHelper.evaluate(QSL("Falkon.History.getVisits('https://sample.com')")).toInt();
|
||||
int visits = m_testHelper.evaluate("Falkon.History.getVisits('https://sample.com')").toInt();
|
||||
QCOMPARE(visits, 1);
|
||||
QSignalSpy historySpy(mApp->history(), &History::historyEntryEdited);
|
||||
mApp->history()->addHistoryEntry(QUrl(QSL("https://sample.com")), QSL("Sample Domain"));
|
||||
mApp->history()->addHistoryEntry(QUrl("https://sample.com"), "Sample Domain");
|
||||
QTRY_COMPARE(historySpy.count(), 1);
|
||||
visits = m_testHelper.evaluate(QSL("Falkon.History.getVisits('https://sample.com')")).toInt();
|
||||
visits = m_testHelper.evaluate("Falkon.History.getVisits('https://sample.com')").toInt();
|
||||
QCOMPARE(visits, 2);
|
||||
}
|
||||
|
||||
void QmlHistoryApiTest::testRemoval()
|
||||
{
|
||||
QSignalSpy historySpy(mApp->history(), &History::historyEntryDeleted);
|
||||
m_testHelper.evaluate(QSL("Falkon.History.deleteUrl('https://sample.com')"));
|
||||
m_testHelper.evaluate("Falkon.History.deleteUrl('https://sample.com')");
|
||||
QTRY_COMPARE(historySpy.count(), 1);
|
||||
|
||||
auto object = m_testHelper.evaluateQObject(QSL("Falkon.History"));
|
||||
auto object = m_testHelper.evaluateQObject("Falkon.History");
|
||||
QSignalSpy qmlHistorySpy(object, SIGNAL(visitRemoved(QmlHistoryItem*)));
|
||||
mApp->history()->deleteHistoryEntry(QSL("https://example.com"), QSL("Example Domain"));
|
||||
mApp->history()->deleteHistoryEntry("https://example.com", "Example Domain");
|
||||
QTRY_COMPARE(qmlHistorySpy.count(), 1);
|
||||
}
|
||||
|
||||
|
@ -31,55 +31,52 @@ void QmlTabsApiTest::cleanupTestCase()
|
||||
void QmlTabsApiTest::testInitWindowCount()
|
||||
{
|
||||
QCOMPARE(mApp->windowCount(), 1);
|
||||
QTRY_COMPARE(mApp->getWindow()->tabCount(), 1);
|
||||
QCOMPARE(mApp->getWindow()->tabCount(), 0);
|
||||
}
|
||||
|
||||
void QmlTabsApiTest::testTabsAPI()
|
||||
{
|
||||
/* Wait until the initial tab (at index 0) in the window is created */
|
||||
QTRY_COMPARE(mApp->getWindow()->tabCount(), 1);
|
||||
|
||||
// Tab Insertion
|
||||
QObject *qmlTabsObject = m_testHelper.evaluateQObject(QSL("Falkon.Tabs"));
|
||||
QObject *qmlTabsObject = m_testHelper.evaluateQObject("Falkon.Tabs");
|
||||
QVERIFY(qmlTabsObject);
|
||||
QSignalSpy qmlTabsInsertedSpy(qmlTabsObject, SIGNAL(tabInserted(QVariantMap)));
|
||||
m_testHelper.evaluate(QL1S("Falkon.Tabs.addTab({"
|
||||
m_testHelper.evaluate("Falkon.Tabs.addTab({"
|
||||
" url: 'https://example.com/'"
|
||||
"})"));
|
||||
"})");
|
||||
QCOMPARE(qmlTabsInsertedSpy.count(), 1);
|
||||
QVariantMap retMap1 = QVariant(qmlTabsInsertedSpy.at(0).at(0)).toMap();
|
||||
int index1 = retMap1.value(QSL("index"), -1).toInt();
|
||||
int windowId1 = retMap1.value(QSL("windowId"), -1).toInt();
|
||||
QCOMPARE(index1, 1);
|
||||
QCOMPARE(index1, 0);
|
||||
QCOMPARE(windowId1, 0);
|
||||
|
||||
QObject *qmlTabObject1 = m_testHelper.evaluateQObject(QSL("Falkon.Tabs.get({index: 1})"));
|
||||
QObject *qmlTabObject1 = m_testHelper.evaluateQObject("Falkon.Tabs.get({index: 0})");
|
||||
QVERIFY(qmlTabObject1);
|
||||
QCOMPARE(qmlTabObject1->property("index").toInt(), 1);
|
||||
QCOMPARE(qmlTabObject1->property("index").toInt(), 0);
|
||||
QCOMPARE(qmlTabObject1->property("pinned").toBool(), false);
|
||||
QTRY_COMPARE(qmlTabObject1->property("url").toString(), QSL("https://example.com/"));
|
||||
|
||||
m_testHelper.evaluate(QL1S("Falkon.Tabs.addTab({"
|
||||
" url: 'https://another-example.com/'"
|
||||
"})"));
|
||||
m_testHelper.evaluate("Falkon.Tabs.addTab({"
|
||||
" url: 'https://another-example.com/',"
|
||||
"})");
|
||||
QCOMPARE(qmlTabsInsertedSpy.count(), 2);
|
||||
QVariantMap retMap2 = QVariant(qmlTabsInsertedSpy.at(1).at(0)).toMap();
|
||||
int index2 = retMap2.value(QSL("index"), -1).toInt();
|
||||
int windowId2 = retMap2.value(QSL("windowId"), -1).toInt();
|
||||
QCOMPARE(index2, 2);
|
||||
QCOMPARE(index2, 1);
|
||||
QCOMPARE(windowId2, 0);
|
||||
|
||||
bool pinnedTab = m_testHelper.evaluate(QSL("Falkon.Tabs.pinTab({index: 2})")).toBool();
|
||||
bool pinnedTab = m_testHelper.evaluate("Falkon.Tabs.pinTab({index: 1})").toBool();
|
||||
QVERIFY(pinnedTab);
|
||||
QObject *qmlTabObject2 = m_testHelper.evaluateQObject(QSL("Falkon.Tabs.get({index: 0})"));
|
||||
QObject *qmlTabObject2 = m_testHelper.evaluateQObject("Falkon.Tabs.get({index: 0})");
|
||||
QVERIFY(qmlTabObject2);
|
||||
QCOMPARE(qmlTabObject2->property("index").toInt(), 0);
|
||||
QCOMPARE(qmlTabObject2->property("pinned").toBool(), true);
|
||||
QTRY_COMPARE(qmlTabObject2->property("url").toString(), QSL("https://another-example.com/"));
|
||||
|
||||
bool unpinnedTab = m_testHelper.evaluate(QSL("Falkon.Tabs.unpinTab({index: 0})")).toBool();
|
||||
bool unpinnedTab = m_testHelper.evaluate("Falkon.Tabs.unpinTab({index: 0})").toBool();
|
||||
QVERIFY(unpinnedTab);
|
||||
QObject *qmlTabObject3 = m_testHelper.evaluateQObject(QSL("Falkon.Tabs.get({index: 0})"));
|
||||
QObject *qmlTabObject3 = m_testHelper.evaluateQObject("Falkon.Tabs.get({index: 0})");
|
||||
QVERIFY(qmlTabObject3);
|
||||
QCOMPARE(qmlTabObject3->property("url").toString(), QSL("https://another-example.com/"));
|
||||
QCOMPARE(qmlTabObject3->property("index").toInt(), 0);
|
||||
@ -87,36 +84,30 @@ void QmlTabsApiTest::testTabsAPI()
|
||||
|
||||
// Next-Previous-Current
|
||||
QCOMPARE(mApp->getWindow()->tabWidget()->currentIndex(), 0);
|
||||
m_testHelper.evaluate(QSL("Falkon.Tabs.nextTab()"));
|
||||
m_testHelper.evaluate("Falkon.Tabs.nextTab()");
|
||||
QCOMPARE(mApp->getWindow()->tabWidget()->currentIndex(), 1);
|
||||
m_testHelper.evaluate(QSL("Falkon.Tabs.nextTab()"));
|
||||
QCOMPARE(mApp->getWindow()->tabWidget()->currentIndex(), 2);
|
||||
m_testHelper.evaluate(QSL("Falkon.Tabs.nextTab()"));
|
||||
m_testHelper.evaluate("Falkon.Tabs.nextTab()");
|
||||
QCOMPARE(mApp->getWindow()->tabWidget()->currentIndex(), 0);
|
||||
m_testHelper.evaluate(QSL("Falkon.Tabs.previousTab()"));
|
||||
QCOMPARE(mApp->getWindow()->tabWidget()->currentIndex(), 2);
|
||||
m_testHelper.evaluate(QSL("Falkon.Tabs.previousTab()"));
|
||||
m_testHelper.evaluate("Falkon.Tabs.previousTab()");
|
||||
QCOMPARE(mApp->getWindow()->tabWidget()->currentIndex(), 1);
|
||||
m_testHelper.evaluate(QSL("Falkon.Tabs.previousTab()"));
|
||||
m_testHelper.evaluate("Falkon.Tabs.previousTab()");
|
||||
QCOMPARE(mApp->getWindow()->tabWidget()->currentIndex(), 0);
|
||||
m_testHelper.evaluate(QSL("Falkon.Tabs.setCurrentIndex({index: 2})"));
|
||||
QCOMPARE(mApp->getWindow()->tabWidget()->currentIndex(), 2);
|
||||
m_testHelper.evaluate(QSL("Falkon.Tabs.setCurrentIndex({index: 1})"));
|
||||
m_testHelper.evaluate("Falkon.Tabs.setCurrentIndex({index: 1})");
|
||||
QCOMPARE(mApp->getWindow()->tabWidget()->currentIndex(), 1);
|
||||
m_testHelper.evaluate(QSL("Falkon.Tabs.setCurrentIndex({index: 0})"));
|
||||
m_testHelper.evaluate("Falkon.Tabs.setCurrentIndex({index: 0})");
|
||||
QCOMPARE(mApp->getWindow()->tabWidget()->currentIndex(), 0);
|
||||
|
||||
// Move Tab
|
||||
QSignalSpy qmlTabsMovedSpy(qmlTabsObject, SIGNAL(tabMoved(QVariantMap)));
|
||||
m_testHelper.evaluate(QSL("Falkon.Tabs.moveTab({from: 0, to:1, windowId: 0})"));
|
||||
m_testHelper.evaluate("Falkon.Tabs.moveTab({from: 0, to:1, windowId: 0})");
|
||||
QCOMPARE(qmlTabsMovedSpy.count(), 1);
|
||||
|
||||
// Tab Removal
|
||||
QCOMPARE(mApp->getWindow()->tabCount(), 3);
|
||||
QSignalSpy qmlTabsRemovedSpy(qmlTabsObject, SIGNAL(tabRemoved(QVariantMap)));
|
||||
m_testHelper.evaluate(QSL("Falkon.Tabs.closeTab({index: 0})"));
|
||||
QCOMPARE(qmlTabsRemovedSpy.count(), 1);
|
||||
QCOMPARE(mApp->getWindow()->tabCount(), 2);
|
||||
QSignalSpy qmlTabsRemovedSpy(qmlTabsObject, SIGNAL(tabRemoved(QVariantMap)));
|
||||
m_testHelper.evaluate("Falkon.Tabs.closeTab({index: 0})");
|
||||
QCOMPARE(qmlTabsRemovedSpy.count(), 1);
|
||||
QCOMPARE(mApp->getWindow()->tabCount(), 1);
|
||||
}
|
||||
|
||||
FALKONTEST_MAIN(QmlTabsApiTest)
|
||||
|
@ -31,11 +31,8 @@ void QmlTopSitesApiTest::cleanupTestCase()
|
||||
|
||||
void QmlTopSitesApiTest::testTopSites()
|
||||
{
|
||||
auto initialList = m_testHelper.evaluate(QSL("Falkon.TopSites.get()")).toVariant().toList();
|
||||
auto initialListLength = initialList.length();
|
||||
|
||||
mApp->plugins()->speedDial()->addPage(QUrl(QSL("https://example.com")), QSL("Example Domain"));
|
||||
auto list = m_testHelper.evaluate(QSL("Falkon.TopSites.get()")).toVariant().toList();
|
||||
mApp->plugins()->speedDial()->addPage(QUrl("https://example.com"), "Example Domain");
|
||||
auto list = m_testHelper.evaluate("Falkon.TopSites.get()").toVariant().toList();
|
||||
qDebug() << "Top sites list size=" << list.length();
|
||||
for( const auto& site : list )
|
||||
{
|
||||
@ -49,8 +46,8 @@ void QmlTopSitesApiTest::testTopSites()
|
||||
qDebug() << ".." << site;
|
||||
}
|
||||
}
|
||||
QCOMPARE(list.length(), initialListLength + 1);
|
||||
auto* object = qvariant_cast<QObject*>(list.at(initialListLength));
|
||||
QCOMPARE(list.length(), 1);
|
||||
auto* object = qvariant_cast<QObject*>(list.at(0));
|
||||
QVERIFY(object);
|
||||
QCOMPARE(object->property("title").toString(), QSL("Example Domain"));
|
||||
QCOMPARE(object->property("url").toString(), QSL("https://example.com"));
|
||||
|
@ -34,26 +34,26 @@ void QmlUserScriptApiTest::cleanupTestCase()
|
||||
|
||||
void QmlUserScriptApiTest::testCount()
|
||||
{
|
||||
int count = m_testHelper.evaluate(QSL("Falkon.UserScripts.count")).toInt();
|
||||
int count = m_testHelper.evaluate("Falkon.UserScripts.count").toInt();
|
||||
QCOMPARE(count, mApp->webProfile()->scripts()->count());
|
||||
}
|
||||
|
||||
void QmlUserScriptApiTest::testSize()
|
||||
{
|
||||
int size = m_testHelper.evaluate(QSL("Falkon.UserScripts.size")).toInt();
|
||||
QCOMPARE(size, mApp->webProfile()->scripts()->count());
|
||||
int size = m_testHelper.evaluate("Falkon.UserScripts.size").toInt();
|
||||
QCOMPARE(size, mApp->webProfile()->scripts()->size());
|
||||
}
|
||||
|
||||
void QmlUserScriptApiTest::testEmpty()
|
||||
{
|
||||
bool empty = m_testHelper.evaluate(QSL("Falkon.UserScripts.empty")).toBool();
|
||||
bool empty = m_testHelper.evaluate("Falkon.UserScripts.empty").toBool();
|
||||
QCOMPARE(empty, mApp->webProfile()->scripts()->isEmpty());
|
||||
}
|
||||
|
||||
void QmlUserScriptApiTest::testContains()
|
||||
{
|
||||
QWebEngineScript script = mApp->webProfile()->scripts()->toList().at(0);
|
||||
QObject *object = m_testHelper.evaluateQObject(QSL("Falkon.UserScripts"));
|
||||
QObject *object = m_testHelper.evaluateQObject("Falkon.UserScripts");
|
||||
auto *userScripts = dynamic_cast<QmlUserScripts*>(object);
|
||||
QVERIFY(userScripts);
|
||||
auto *userScript = new QmlUserScript();
|
||||
@ -65,7 +65,7 @@ void QmlUserScriptApiTest::testContains()
|
||||
void QmlUserScriptApiTest::testFind()
|
||||
{
|
||||
QWebEngineScript script = mApp->webProfile()->scripts()->toList().at(0);
|
||||
QObject *object = m_testHelper.evaluateQObject(QSL("Falkon.UserScripts"));
|
||||
QObject *object = m_testHelper.evaluateQObject("Falkon.UserScripts");
|
||||
auto *userScripts = dynamic_cast<QmlUserScripts*>(object);
|
||||
QVERIFY(userScripts);
|
||||
QObject *scriptFound = userScripts->findScript(script.name());
|
||||
@ -75,22 +75,22 @@ void QmlUserScriptApiTest::testFind()
|
||||
|
||||
void QmlUserScriptApiTest::testInsertRemove()
|
||||
{
|
||||
int initialCount = m_testHelper.evaluate(QSL("Falkon.UserScripts.count")).toInt();
|
||||
QObject *object = m_testHelper.evaluateQObject(QSL("Falkon.UserScripts"));
|
||||
int initialCount = m_testHelper.evaluate("Falkon.UserScripts.count").toInt();
|
||||
QObject *object = m_testHelper.evaluateQObject("Falkon.UserScripts");
|
||||
auto *userScripts = dynamic_cast<QmlUserScripts*>(object);
|
||||
QVERIFY(userScripts);
|
||||
auto *userScript = new QmlUserScript();
|
||||
userScript->setProperty("name", QSL("Hello World"));
|
||||
userScript->setProperty("sourceCode", QL1S("(function() {"
|
||||
userScript->setProperty("name", "Hello World");
|
||||
userScript->setProperty("sourceCode", "(function() {"
|
||||
" alert('Hello World')"
|
||||
"})()"));
|
||||
"})()");
|
||||
userScripts->insert(userScript);
|
||||
int finalCount = m_testHelper.evaluate(QSL("Falkon.UserScripts.count")).toInt();
|
||||
int finalCount = m_testHelper.evaluate("Falkon.UserScripts.count").toInt();
|
||||
QCOMPARE(finalCount, initialCount + 1);
|
||||
|
||||
userScripts->remove(userScript);
|
||||
|
||||
int ultimateCount = m_testHelper.evaluate(QSL("Falkon.UserScripts.count")).toInt();
|
||||
int ultimateCount = m_testHelper.evaluate("Falkon.UserScripts.count").toInt();
|
||||
QCOMPARE(ultimateCount, initialCount);
|
||||
}
|
||||
|
||||
|
@ -32,13 +32,13 @@ void QmlWindowsApiTest::cleanupTestCase()
|
||||
|
||||
void QmlWindowsApiTest::testWindowsAPI()
|
||||
{
|
||||
QObject *currentWindowObject = m_testHelper.evaluateQObject(QSL("Falkon.Windows.getCurrent()"));
|
||||
QObject *currentWindowObject = m_testHelper.evaluateQObject("Falkon.Windows.getCurrent()");
|
||||
QVERIFY(currentWindowObject);
|
||||
QCOMPARE(currentWindowObject->property("title").toString(), mApp->getWindow()->windowTitle());
|
||||
QCOMPARE(currentWindowObject->property("type").toInt(), (int)mApp->getWindow()->windowType());
|
||||
QCOMPARE(currentWindowObject->property("tabs").toList().length(), mApp->getWindow()->tabCount());
|
||||
|
||||
QObject *windowObject = m_testHelper.evaluateQObject(QSL("Falkon.Windows"));
|
||||
QObject *windowObject = m_testHelper.evaluateQObject("Falkon.Windows");
|
||||
QVERIFY(windowObject);
|
||||
QSignalSpy qmlWindowCreatedSignal(windowObject, SIGNAL(created(QmlWindow*)));
|
||||
qRegisterMetaType<BrowserWindow*>();
|
||||
@ -48,7 +48,7 @@ void QmlWindowsApiTest::testWindowsAPI()
|
||||
QTRY_COMPARE(qmlWindowCreatedSignal.count(), 1);
|
||||
QTRY_COMPARE(windowCreatedSingal.count(), 1);
|
||||
|
||||
QObject *newQmlWindow = m_testHelper.evaluateQObject(QSL("Falkon.Windows.create({})"));
|
||||
QObject *newQmlWindow = m_testHelper.evaluateQObject("Falkon.Windows.create({})");
|
||||
QVERIFY(newQmlWindow);
|
||||
QCOMPARE(mApp->windowCount(), 2);
|
||||
|
||||
@ -60,12 +60,12 @@ void QmlWindowsApiTest::testWindowsAPI()
|
||||
QVERIFY(newQmlSignalWindow);
|
||||
QCOMPARE(newQmlWindow->property("id").toInt(), newQmlSignalWindow->property("id").toInt());
|
||||
|
||||
int qmlWindowCount = m_testHelper.evaluate(QSL("Falkon.Windows.getAll().length")).toInt();
|
||||
int qmlWindowCount = m_testHelper.evaluate("Falkon.Windows.getAll().length").toInt();
|
||||
QCOMPARE(qmlWindowCount, mApp->windowCount());
|
||||
|
||||
QSignalSpy qmlWindowRemovedSignal(windowObject, SIGNAL(removed(QmlWindow*)));
|
||||
int newQmlWindowId = newQmlSignalWindow->property("id").toInt();
|
||||
m_testHelper.evaluate(QString(QSL("Falkon.Windows.remove(%1)")).arg(newQmlWindowId));
|
||||
m_testHelper.evaluate(QString("Falkon.Windows.remove(%1)").arg(newQmlWindowId));
|
||||
QTRY_COMPARE(qmlWindowRemovedSignal.count(), 1);
|
||||
}
|
||||
|
||||
|
@ -65,15 +65,15 @@ void QzToolsTest::getFileNameFromUrl_data()
|
||||
QTest::addColumn<QUrl>("url");
|
||||
QTest::addColumn<QString>("result");
|
||||
|
||||
QTest::newRow("Basic") << QUrl(QSL("http://www.google.com/filename.html")) << QSL("filename.html");
|
||||
QTest::newRow("OnlyHost") << QUrl(QSL("http://www.google.com/")) << QSL("www.google.com");
|
||||
QTest::newRow("OnlyHostWithoutSlash") << QUrl(QSL("http://www.google.com")) << QSL("www.google.com");
|
||||
QTest::newRow("EndingDirectory") << QUrl(QSL("http://www.google.com/filename/")) << QSL("filename");
|
||||
QTest::newRow("EmptyUrl") << QUrl(QSL("")) << QSL("");
|
||||
QTest::newRow("OnlyScheme") << QUrl(QSL("http:")) << QSL("");
|
||||
QTest::newRow("FileSchemeUrl") << QUrl(QSL("file:///usr/share/test/file.tx")) << QSL("file.tx");
|
||||
QTest::newRow("FileSchemeUrlDirectory") << QUrl(QSL("file:///usr/share/test/")) << QSL("test");
|
||||
QTest::newRow("FileSchemeUrlRoot") << QUrl(QSL("file:///")) << QSL("");
|
||||
QTest::newRow("Basic") << QUrl("http://www.google.com/filename.html") << "filename.html";
|
||||
QTest::newRow("OnlyHost") << QUrl("http://www.google.com/") << "www.google.com";
|
||||
QTest::newRow("OnlyHostWithoutSlash") << QUrl("http://www.google.com") << "www.google.com";
|
||||
QTest::newRow("EndingDirectory") << QUrl("http://www.google.com/filename/") << "filename";
|
||||
QTest::newRow("EmptyUrl") << QUrl("") << "";
|
||||
QTest::newRow("OnlyScheme") << QUrl("http:") << "";
|
||||
QTest::newRow("FileSchemeUrl") << QUrl("file:///usr/share/test/file.tx") << "file.tx";
|
||||
QTest::newRow("FileSchemeUrlDirectory") << QUrl("file:///usr/share/test/") << "test";
|
||||
QTest::newRow("FileSchemeUrlRoot") << QUrl("file:///") << "";
|
||||
}
|
||||
|
||||
void QzToolsTest::getFileNameFromUrl()
|
||||
@ -90,37 +90,37 @@ void QzToolsTest::splitCommandArguments_data()
|
||||
QTest::addColumn<QStringList>("result");
|
||||
|
||||
QTest::newRow("Basic") << "/usr/bin/foo -o foo.out"
|
||||
<< (QStringList() << QSL("/usr/bin/foo") << QSL("-o") << QSL("foo.out"));
|
||||
<< (QStringList() << "/usr/bin/foo" << "-o" << "foo.out");
|
||||
QTest::newRow("Empty") << QString()
|
||||
<< QStringList();
|
||||
QTest::newRow("OnlySpaces") << QSL(" ")
|
||||
QTest::newRow("OnlySpaces") << QString(" ")
|
||||
<< QStringList();
|
||||
QTest::newRow("OnlyQuotes") << QSL(R"("" "")")
|
||||
QTest::newRow("OnlyQuotes") << QString(R"("" "")")
|
||||
<< QStringList();
|
||||
QTest::newRow("EmptyQuotesAndSpace") << QSL(R"("" "" " ")")
|
||||
<< QStringList(QSL(" "));
|
||||
QTest::newRow("EmptyQuotesAndSpace") << QString(R"("" "" " ")")
|
||||
<< QStringList(" ");
|
||||
QTest::newRow("MultipleSpaces") << " /usr/foo -o foo.out "
|
||||
<< (QStringList() << QSL("/usr/foo") << QSL("-o") << QSL("foo.out"));
|
||||
<< (QStringList() << "/usr/foo" << "-o" << "foo.out");
|
||||
QTest::newRow("Quotes") << R"("/usr/foo" "-o" "foo.out")"
|
||||
<< (QStringList() << QSL("/usr/foo") << QSL("-o") << QSL("foo.out"));
|
||||
<< (QStringList() << "/usr/foo" << "-o" << "foo.out");
|
||||
QTest::newRow("SingleQuotes") << "'/usr/foo' '-o' 'foo.out'"
|
||||
<< (QStringList() << QSL("/usr/foo") << QSL("-o") << QSL("foo.out"));
|
||||
<< (QStringList() << "/usr/foo" << "-o" << "foo.out");
|
||||
QTest::newRow("SingleAndDoubleQuotes") << " '/usr/foo' \"-o\" 'foo.out' "
|
||||
<< (QStringList() << QSL("/usr/foo") << QSL("-o") << QSL("foo.out"));
|
||||
<< (QStringList() << "/usr/foo" << "-o" << "foo.out");
|
||||
QTest::newRow("SingleInDoubleQuotes") << "/usr/foo \"-o 'ds' \" 'foo.out' "
|
||||
<< (QStringList() << QSL("/usr/foo") << QSL("-o 'ds' ") << QSL("foo.out"));
|
||||
<< (QStringList() << "/usr/foo" << "-o 'ds' " << "foo.out");
|
||||
QTest::newRow("DoubleInSingleQuotes") << "/usr/foo -o 'foo\" d \".out' "
|
||||
<< (QStringList() << QSL("/usr/foo") << QSL("-o") << QSL("foo\" d \".out"));
|
||||
QTest::newRow("SpacesWithQuotes") << QSL(R"( " " " " )")
|
||||
<< (QStringList() << QSL(" ") << QSL(" "));
|
||||
<< (QStringList() << "/usr/foo" << "-o" << "foo\" d \".out");
|
||||
QTest::newRow("SpacesWithQuotes") << QString(R"( " " " " )")
|
||||
<< (QStringList() << " " << " ");
|
||||
QTest::newRow("QuotesAndSpaces") << "/usr/foo -o \"foo - out\""
|
||||
<< (QStringList() << QSL("/usr/foo") << QSL("-o") << QSL("foo - out"));
|
||||
<< (QStringList() << "/usr/foo" << "-o" << "foo - out");
|
||||
QTest::newRow("EqualAndQuotes") << "/usr/foo -o=\"foo - out\""
|
||||
<< (QStringList() << QSL("/usr/foo") << QSL("-o=foo - out"));
|
||||
<< (QStringList() << "/usr/foo" << "-o=foo - out");
|
||||
QTest::newRow("EqualWithSpaces") << "/usr/foo -o = \"foo - out\""
|
||||
<< (QStringList() << QSL("/usr/foo") << QSL("-o") << QSL("=") << QSL("foo - out"));
|
||||
<< (QStringList() << "/usr/foo" << "-o" << "=" << "foo - out");
|
||||
QTest::newRow("MultipleSpacesAndQuotes") << " /usr/foo -o=\" foo.out \" "
|
||||
<< (QStringList() << QSL("/usr/foo") << QSL("-o= foo.out "));
|
||||
<< (QStringList() << "/usr/foo" << "-o= foo.out ");
|
||||
// Unmatched quotes should be treated as an error
|
||||
QTest::newRow("UnmatchedQuote") << "/usr/bin/foo -o \"bar"
|
||||
<< QStringList();
|
||||
@ -275,17 +275,17 @@ static void createTestDirectoryStructure(const QString &path)
|
||||
{
|
||||
QDir().mkdir(path);
|
||||
QDir dir(path);
|
||||
dir.mkdir(QSL("dir1"));
|
||||
dir.mkdir(QSL("dir2"));
|
||||
dir.mkdir(QSL("dir3"));
|
||||
dir.cd(QSL("dir1"));
|
||||
dir.mkdir(QSL("dir1_1"));
|
||||
dir.mkdir(QSL("dir1_2"));
|
||||
dir.mkdir(QSL("dir1_3"));
|
||||
dir.mkdir("dir1");
|
||||
dir.mkdir("dir2");
|
||||
dir.mkdir("dir3");
|
||||
dir.cd("dir1");
|
||||
dir.mkdir("dir1_1");
|
||||
dir.mkdir("dir1_2");
|
||||
dir.mkdir("dir1_3");
|
||||
dir.cdUp();
|
||||
dir.cd(QSL("dir3"));
|
||||
dir.mkdir(QSL("dir3_1"));
|
||||
QFile file(path + QSL("/dir1/dir1_2/file1.txt"));
|
||||
dir.cd("dir3");
|
||||
dir.mkdir("dir3_1");
|
||||
QFile file(path + "/dir1/dir1_2/file1.txt");
|
||||
file.open(QFile::WriteOnly);
|
||||
file.write("test");
|
||||
file.close();
|
||||
@ -296,32 +296,32 @@ void QzToolsTest::copyRecursivelyTest()
|
||||
const QString testDir = createPath("copyRecursivelyTest");
|
||||
createTestDirectoryStructure(testDir);
|
||||
|
||||
QVERIFY(!QFileInfo::exists(testDir + QSL("-copy")));
|
||||
QVERIFY(!QFileInfo(testDir + "-copy").exists());
|
||||
|
||||
// Copy to non-existent target
|
||||
QCOMPARE(QzTools::copyRecursively(testDir, testDir + QSL("-copy")), true);
|
||||
QCOMPARE(QzTools::copyRecursively(testDir, testDir + "-copy"), true);
|
||||
|
||||
QCOMPARE(QFileInfo(testDir + QSL("-copy")).isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + QSL("-copy/dir1")).isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + QSL("-copy/dir2")).isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + QSL("-copy/dir3")).isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + QSL("-copy/dir1/dir1_1")).isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + QSL("-copy/dir1/dir1_2")).isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + QSL("-copy/dir1/dir1_3")).isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + QSL("-copy/dir3/dir3_1")).isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + QSL("-copy/dir1/dir1_2/file1.txt")).isFile(), true);
|
||||
QCOMPARE(QFileInfo(testDir + "-copy").isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + "-copy/dir1").isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + "-copy/dir2").isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + "-copy/dir3").isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + "-copy/dir1/dir1_1").isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + "-copy/dir1/dir1_2").isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + "-copy/dir1/dir1_3").isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + "-copy/dir3/dir3_1").isDir(), true);
|
||||
QCOMPARE(QFileInfo(testDir + "-copy/dir1/dir1_2/file1.txt").isFile(), true);
|
||||
|
||||
QFile file(testDir + QSL("-copy/dir1/dir1_2/file1.txt"));
|
||||
QFile file(testDir + "-copy/dir1/dir1_2/file1.txt");
|
||||
file.open(QFile::ReadOnly);
|
||||
QCOMPARE(file.readAll(), QByteArray("test"));
|
||||
file.close();
|
||||
|
||||
// Copy to target that already exists
|
||||
QCOMPARE(QzTools::copyRecursively(testDir, testDir + QSL("-copy")), false);
|
||||
QCOMPARE(QzTools::copyRecursively(testDir, testDir + "-copy"), false);
|
||||
|
||||
// Cleanup
|
||||
QCOMPARE(QzTools::removeRecursively(testDir), true);
|
||||
QCOMPARE(QzTools::removeRecursively(testDir + QSL("-copy")), true);
|
||||
QCOMPARE(QzTools::removeRecursively(testDir + "-copy"), true);
|
||||
}
|
||||
|
||||
void QzToolsTest::removeRecursivelyTest()
|
||||
@ -329,23 +329,23 @@ void QzToolsTest::removeRecursivelyTest()
|
||||
const QString testDir = createPath("removeRecursivelyTest");
|
||||
createTestDirectoryStructure(testDir);
|
||||
|
||||
QCOMPARE(QzTools::copyRecursively(testDir, testDir + QSL("-copy")), true);
|
||||
QCOMPARE(QzTools::removeRecursively(testDir + QSL("-copy")), true);
|
||||
QCOMPARE(QFileInfo::exists(testDir + QSL("-copy")), false);
|
||||
QCOMPARE(QzTools::copyRecursively(testDir, testDir + "-copy"), true);
|
||||
QCOMPARE(QzTools::removeRecursively(testDir + "-copy"), true);
|
||||
QCOMPARE(QFileInfo(testDir + "-copy").exists(), false);
|
||||
|
||||
// Remove non-existent path returns success
|
||||
QCOMPARE(QzTools::removeRecursively(testDir + QSL("-copy")), true);
|
||||
QCOMPARE(QzTools::removeRecursively(testDir + "-copy"), true);
|
||||
|
||||
QCOMPARE(QzTools::copyRecursively(testDir, testDir + QSL("-copy2")), true);
|
||||
QCOMPARE(QzTools::copyRecursively(testDir, testDir + "-copy2"), true);
|
||||
|
||||
QFile dir(testDir + QSL("-copy2"));
|
||||
QFile dir(testDir + "-copy2");
|
||||
dir.setPermissions(dir.permissions() & ~(QFile::WriteOwner | QFile::WriteUser | QFile::WriteGroup | QFile::WriteOther));
|
||||
|
||||
QCOMPARE(QzTools::removeRecursively(testDir + QSL("-copy2")), false);
|
||||
QCOMPARE(QzTools::removeRecursively(testDir + "-copy2"), false);
|
||||
|
||||
dir.setPermissions(dir.permissions() | QFile::WriteOwner);
|
||||
|
||||
QCOMPARE(QzTools::removeRecursively(testDir + QSL("-copy2")), true);
|
||||
QCOMPARE(QzTools::removeRecursively(testDir + "-copy2"), true);
|
||||
|
||||
// Cleanup
|
||||
QCOMPARE(QzTools::removeRecursively(testDir), true);
|
||||
@ -356,21 +356,21 @@ void QzToolsTest::dontFollowSymlinksTest()
|
||||
const QString testDir = createPath("removeRecursivelyTest");
|
||||
createTestDirectoryStructure(testDir);
|
||||
|
||||
QDir().mkpath(testDir + QSL("/subdir"));
|
||||
QFile::link(testDir, testDir + QSL("/subdir/link"));
|
||||
QDir().mkpath(testDir + "/subdir");
|
||||
QFile::link(testDir, testDir + "/subdir/link");
|
||||
|
||||
QVERIFY(QzTools::removeRecursively(testDir + QSL("/subdir")));
|
||||
QVERIFY(QzTools::removeRecursively(testDir + "/subdir"));
|
||||
|
||||
QVERIFY(!QFile::exists(testDir + QSL("/subdir")));
|
||||
QVERIFY(!QFile::exists(testDir + "/subdir"));
|
||||
QVERIFY(QFile::exists(testDir));
|
||||
|
||||
QDir().mkpath(testDir + QSL("/subdir/normalfolder"));
|
||||
QFile::link(QSL(".."), testDir + QSL("/subdir/link"));
|
||||
QDir().mkpath(testDir + "/subdir/normalfolder");
|
||||
QFile::link("..", testDir + "/subdir/link");
|
||||
|
||||
QVERIFY(QzTools::copyRecursively(testDir + QSL("/subdir"), testDir + QSL("/subdir2")));
|
||||
QVERIFY(QzTools::copyRecursively(testDir + "/subdir", testDir + "/subdir2"));
|
||||
|
||||
QCOMPARE(QFile::exists(testDir + QSL("/subdir2/link")), true);
|
||||
QCOMPARE(QFile::exists(testDir + QSL("/subdir2/normalfolder")), true);
|
||||
QCOMPARE(QFile::exists(testDir + "/subdir2/link"), true);
|
||||
QCOMPARE(QFile::exists(testDir + "/subdir2/normalfolder"), true);
|
||||
|
||||
// Cleanup
|
||||
QCOMPARE(QzTools::removeRecursively(testDir), true);
|
||||
@ -378,7 +378,7 @@ void QzToolsTest::dontFollowSymlinksTest()
|
||||
|
||||
QString QzToolsTest::createPath(const char *file) const
|
||||
{
|
||||
return m_tmpPath + QL1S("/") + QString::fromUtf8(file);
|
||||
return m_tmpPath + QL1S("/") + file;
|
||||
}
|
||||
|
||||
QTEST_GUILESS_MAIN(QzToolsTest)
|
||||
|
@ -1,109 +0,0 @@
|
||||
/* ============================================================
|
||||
* Falkon - Qt web browser
|
||||
* Copyright (C) 2024 Juraj Oravec <jurajoravec@mailo.com>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
* ============================================================ */
|
||||
|
||||
#include "sitesettingstest.h"
|
||||
|
||||
#include "mainapplication.h"
|
||||
#include "tabbedwebview.h"
|
||||
#include "webpage.h"
|
||||
|
||||
#include "autotests.h"
|
||||
#include "tabwidget.h"
|
||||
|
||||
|
||||
void SiteSettingsTest::initTestCase()
|
||||
{
|
||||
/* Wait until the initial tab (at index 0) in the window is created */
|
||||
QTRY_COMPARE(mApp->getWindow()->tabCount(), 1);
|
||||
}
|
||||
|
||||
void SiteSettingsTest::cleanupTestCase()
|
||||
{
|
||||
}
|
||||
|
||||
void SiteSettingsTest::webAttributeTest()
|
||||
{
|
||||
SiteSettingsManager *siteSettings = mApp->siteSettingsManager();
|
||||
siteSettings->setOption(QWebEngineSettings::AutoLoadImages, QUrl(QSL("https://www.falkon.org/")), SiteSettingsManager::Deny);
|
||||
siteSettings->setOption(QWebEngineSettings::JavascriptEnabled, QUrl(QSL("https://kde.org/")), SiteSettingsManager::Deny);
|
||||
siteSettings->setOption(QWebEngineSettings::PlaybackRequiresUserGesture, QUrl(QSL("https://planet.kde.org/")), SiteSettingsManager::Allow);
|
||||
|
||||
|
||||
checkInternalPage(QUrl(QSL("falkon:start")));
|
||||
|
||||
checkExternalPage(QUrl(QSL("https://www.falkon.org/")));
|
||||
checkExternalPage(QUrl(QSL("https://kde.org/")));
|
||||
|
||||
checkInternalPage(QUrl(QSL("falkon:about")));
|
||||
|
||||
checkExternalPage(QUrl(QSL("https://planet.kde.org/")));
|
||||
}
|
||||
|
||||
bool SiteSettingsTest::checkWebAttributes(WebPage *page, QHash<QWebEngineSettings::WebAttribute, bool> webAttributes)
|
||||
{
|
||||
for (auto it = webAttributes.begin(); it != webAttributes.end(); ++it) {
|
||||
if (page->settings()->testAttribute(it.key()) != it.value()) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void SiteSettingsTest::checkInternalPage(QUrl url)
|
||||
{
|
||||
WebTab tab;
|
||||
QMap<QWebEngineSettings::WebAttribute, bool> internalWebAttributes = {
|
||||
{QWebEngineSettings::AutoLoadImages, true}
|
||||
,{QWebEngineSettings::JavascriptEnabled, true}
|
||||
,{QWebEngineSettings::JavascriptCanOpenWindows, false}
|
||||
,{QWebEngineSettings::JavascriptCanAccessClipboard, true}
|
||||
,{QWebEngineSettings::JavascriptCanPaste, false}
|
||||
,{QWebEngineSettings::AllowWindowActivationFromJavaScript, false}
|
||||
,{QWebEngineSettings::LocalStorageEnabled, true}
|
||||
,{QWebEngineSettings::FullScreenSupportEnabled, mApp->webSettings()->testAttribute(QWebEngineSettings::FullScreenSupportEnabled)}
|
||||
,{QWebEngineSettings::AllowRunningInsecureContent, false}
|
||||
,{QWebEngineSettings::AllowGeolocationOnInsecureOrigins, false}
|
||||
,{QWebEngineSettings::PlaybackRequiresUserGesture, mApp->webSettings()->testAttribute(QWebEngineSettings::PlaybackRequiresUserGesture)}
|
||||
,{QWebEngineSettings::WebRTCPublicInterfacesOnly, mApp->webSettings()->testAttribute(QWebEngineSettings::WebRTCPublicInterfacesOnly)}
|
||||
};
|
||||
|
||||
QSignalSpy spy(tab.webView(), &WebView::loadFinished);
|
||||
tab.load(url);
|
||||
QTRY_COMPARE(spy.count(), 1);
|
||||
|
||||
auto *page = tab.webView()->page();
|
||||
for (auto it = internalWebAttributes.begin(); it != internalWebAttributes.end(); ++it) {
|
||||
QCOMPARE(page->settings()->testAttribute(it.key()), it.value());
|
||||
}
|
||||
}
|
||||
|
||||
void SiteSettingsTest::checkExternalPage(QUrl url)
|
||||
{
|
||||
WebTab tab;
|
||||
SiteSettingsManager *siteSettings = mApp->siteSettingsManager();
|
||||
|
||||
QSignalSpy spy(tab.webView(), &WebView::loadFinished);
|
||||
tab.load(url);
|
||||
QTRY_COMPARE_WITH_TIMEOUT(spy.count(), 1, 20000);
|
||||
|
||||
auto *page = tab.webView()->page();
|
||||
QCOMPARE(checkWebAttributes(page, siteSettings->getWebAttributes(url)), true);
|
||||
}
|
||||
|
||||
FALKONTEST_MAIN(SiteSettingsTest)
|
@ -1,47 +0,0 @@
|
||||
/* ============================================================
|
||||
* Falkon - Qt web browser
|
||||
* Copyright (C) 2024 Juraj Oravec <jurajoravec@mailo.com>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
* ============================================================ */
|
||||
|
||||
#ifndef SITESETTINGSTEST_H
|
||||
#define SITESETTINGSTEST_H
|
||||
|
||||
#include "sitesettingsmanager.h"
|
||||
|
||||
#include <QObject>
|
||||
|
||||
class WebPage;
|
||||
class WebTab;
|
||||
|
||||
class SiteSettingsTest : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
private Q_SLOTS:
|
||||
void initTestCase();
|
||||
void cleanupTestCase();
|
||||
|
||||
void webAttributeTest();
|
||||
|
||||
private:
|
||||
bool checkWebAttributes(WebPage *page, QHash<QWebEngineSettings::WebAttribute, bool> webAttributes);
|
||||
|
||||
void checkInternalPage(QUrl url);
|
||||
void checkExternalPage(QUrl url);
|
||||
};
|
||||
|
||||
#endif // SITESETTINGSTEST_H
|
||||
|
@ -58,7 +58,7 @@ void TabModelTest::basicTest()
|
||||
|
||||
rowsInsertedSpy.clear();
|
||||
|
||||
w->tabWidget()->addView(QUrl(QSL("http://test.com")));
|
||||
w->tabWidget()->addView(QUrl("http://test.com"));
|
||||
|
||||
QCOMPARE(rowsInsertedSpy.count(), 1);
|
||||
WebTab *tab1 = w->tabWidget()->webTab(1);
|
||||
@ -114,7 +114,7 @@ void TabModelTest::dataTest()
|
||||
QCOMPARE(model.index(0, 0).data(TabModel::RestoredRole).toBool(), tab0->isRestored());
|
||||
QCOMPARE(model.index(0, 0).data(TabModel::CurrentTabRole).toBool(), true);
|
||||
|
||||
w->tabWidget()->addView(QUrl(QSL("http://test.com")));
|
||||
w->tabWidget()->addView(QUrl("http://test.com"));
|
||||
|
||||
delete w;
|
||||
}
|
||||
@ -125,7 +125,7 @@ void TabModelTest::pinTabTest()
|
||||
TabModel model(w);
|
||||
ModelTest modelTest(&model);
|
||||
|
||||
w->tabWidget()->addView(QUrl(QSL("http://test.com")));
|
||||
w->tabWidget()->addView(QUrl("http://test.com"));
|
||||
|
||||
QTRY_COMPARE(model.rowCount(), 2);
|
||||
|
||||
|
@ -257,27 +257,27 @@ void WebTabTest::loadNotRestoredTabTest()
|
||||
{
|
||||
WebTab tab;
|
||||
|
||||
tab.load(QUrl(QSL("qrc:autotests/data/basic_page.html")));
|
||||
tab.load(QUrl("qrc:autotests/data/basic_page.html"));
|
||||
QVERIFY(waitForLoadfinished(&tab));
|
||||
QTRY_COMPARE(tab.webView()->history()->count(), 1);
|
||||
|
||||
tab.unload();
|
||||
QVERIFY(!tab.isRestored());
|
||||
|
||||
tab.load(QUrl(QSL("qrc:autotests/data/basic_page2.html")));
|
||||
tab.load(QUrl("qrc:autotests/data/basic_page2.html"));
|
||||
QVERIFY(waitForLoadfinished(&tab));
|
||||
QTRY_COMPARE(tab.webView()->history()->count(), 2);
|
||||
|
||||
QCOMPARE(tab.url(), QUrl(QSL("qrc:autotests/data/basic_page2.html")));
|
||||
QCOMPARE(tab.webView()->history()->currentItem().url(), QUrl(QSL("qrc:autotests/data/basic_page2.html")));
|
||||
QCOMPARE(tab.webView()->history()->backItem().url(), QUrl(QSL("qrc:autotests/data/basic_page.html")));
|
||||
QCOMPARE(tab.url(), QUrl("qrc:autotests/data/basic_page2.html"));
|
||||
QCOMPARE(tab.webView()->history()->currentItem().url(), QUrl("qrc:autotests/data/basic_page2.html"));
|
||||
QCOMPARE(tab.webView()->history()->backItem().url(), QUrl("qrc:autotests/data/basic_page.html"));
|
||||
}
|
||||
|
||||
void WebTabTest::saveNotRestoredTabTest()
|
||||
{
|
||||
WebTab tab;
|
||||
|
||||
tab.load(QUrl(QSL("qrc:autotests/data/basic_page.html")));
|
||||
tab.load(QUrl("qrc:autotests/data/basic_page.html"));
|
||||
QVERIFY(waitForLoadfinished(&tab));
|
||||
QTRY_COMPARE(tab.webView()->history()->count(), 1);
|
||||
|
||||
@ -286,7 +286,7 @@ void WebTabTest::saveNotRestoredTabTest()
|
||||
|
||||
WebTab::SavedTab saved(&tab);
|
||||
QVERIFY(saved.isValid());
|
||||
QCOMPARE(saved.url, QUrl(QSL("qrc:autotests/data/basic_page.html")));
|
||||
QCOMPARE(saved.url, QUrl("qrc:autotests/data/basic_page.html"));
|
||||
}
|
||||
|
||||
FALKONTEST_MAIN(WebTabTest)
|
||||
|
@ -73,7 +73,7 @@ void WebViewTest::loadSignalsChangePageTest()
|
||||
QSignalSpy loadStartedSpy(&view, &WebView::loadStarted);
|
||||
QSignalSpy loadFinishedSpy(&view, &WebView::loadFinished);
|
||||
|
||||
view.load(QUrl(QSL("qrc:autotests/data/basic_page.html")));
|
||||
view.load(QUrl("qrc:autotests/data/basic_page.html"));
|
||||
|
||||
QTRY_COMPARE(loadStartedSpy.count(), 1);
|
||||
loadStartedSpy.clear();
|
||||
@ -81,7 +81,10 @@ void WebViewTest::loadSignalsChangePageTest()
|
||||
auto *page2 = new WebPage;
|
||||
view.setPage(page2);
|
||||
|
||||
QTRY_COMPARE(loadFinishedSpy.count(), 1);
|
||||
// WebPage: Workaround for broken load started/finished signals in QtWebEngine 5.10
|
||||
const int loadFinishedEmitCount = qstrncmp(qVersion(), "5.11.", 5) == 0 ? 1 : 2;
|
||||
|
||||
QTRY_COMPARE(loadFinishedSpy.count(), loadFinishedEmitCount);
|
||||
QCOMPARE(loadStartedSpy.count(), 0);
|
||||
loadFinishedSpy.clear();
|
||||
|
||||
@ -90,7 +93,7 @@ void WebViewTest::loadSignalsChangePageTest()
|
||||
view2.setPage(page3);
|
||||
|
||||
QSignalSpy page3LoadStart(page3, &WebPage::loadStarted);
|
||||
page3->load(QUrl(QSL("qrc:autotests/data/basic_page.html")));
|
||||
page3->load(QUrl("qrc:autotests/data/basic_page.html"));
|
||||
QVERIFY(page3LoadStart.wait());
|
||||
|
||||
view2.setPage(new QWebEnginePage(&view2));
|
||||
|
@ -3,13 +3,8 @@
|
||||
<id>org.kde.falkon.desktop</id>
|
||||
<metadata_license>CC0-1.0</metadata_license>
|
||||
<project_license>GPL-3.0+</project_license>
|
||||
<developer id="org.kde">
|
||||
<name translate="no">KDE</name>
|
||||
</developer>
|
||||
<launchable type="desktop-id">org.kde.falkon.desktop</launchable>
|
||||
<name>Falkon</name>
|
||||
<name xml:lang="ar">فالكون</name>
|
||||
<name xml:lang="ast">Falkon</name>
|
||||
<name xml:lang="az">Falkon</name>
|
||||
<name xml:lang="bg">Falkon</name>
|
||||
<name xml:lang="ca">Falkon</name>
|
||||
@ -19,43 +14,34 @@
|
||||
<name xml:lang="de">Falkon</name>
|
||||
<name xml:lang="el">Falkon</name>
|
||||
<name xml:lang="en-GB">Falkon</name>
|
||||
<name xml:lang="eo">Falkon</name>
|
||||
<name xml:lang="es">Falkon</name>
|
||||
<name xml:lang="et">Falkon</name>
|
||||
<name xml:lang="eu">Falkon</name>
|
||||
<name xml:lang="fi">Falkon</name>
|
||||
<name xml:lang="fr">Falkon</name>
|
||||
<name xml:lang="gl">Falkon</name>
|
||||
<name xml:lang="he">Falkon</name>
|
||||
<name xml:lang="hi">फाल्कन</name>
|
||||
<name xml:lang="hu">Falkon</name>
|
||||
<name xml:lang="ia">Falkon:</name>
|
||||
<name xml:lang="id">Falkon</name>
|
||||
<name xml:lang="is">Falkon</name>
|
||||
<name xml:lang="it">Falkon</name>
|
||||
<name xml:lang="ka">Falkon</name>
|
||||
<name xml:lang="ko">Falkon</name>
|
||||
<name xml:lang="lg">Falkon</name>
|
||||
<name xml:lang="lt">Falkon</name>
|
||||
<name xml:lang="lv">Falkon</name>
|
||||
<name xml:lang="nl">Falkon</name>
|
||||
<name xml:lang="nn">Falkon</name>
|
||||
<name xml:lang="pa">ਫਾਲਕਨ</name>
|
||||
<name xml:lang="pl">Falkon</name>
|
||||
<name xml:lang="pt">Falkon</name>
|
||||
<name xml:lang="pt-BR">Falkon</name>
|
||||
<name xml:lang="ru">Falkon</name>
|
||||
<name xml:lang="sa">बाजः</name>
|
||||
<name xml:lang="sk">Falkon</name>
|
||||
<name xml:lang="sl">Falkon</name>
|
||||
<name xml:lang="sv">Falkon</name>
|
||||
<name xml:lang="tr">Falkon</name>
|
||||
<name xml:lang="uk">Falkon</name>
|
||||
<name xml:lang="x-test">xxFalkonxx</name>
|
||||
<name xml:lang="zh-CN">Falkon 浏览器</name>
|
||||
<name xml:lang="zh-TW">Falkon</name>
|
||||
<summary>Web Browser</summary>
|
||||
<summary xml:lang="ar">متصفّح الوبّ</summary>
|
||||
<summary xml:lang="ast">Restolador web</summary>
|
||||
<summary xml:lang="az">Veb Bələdçi</summary>
|
||||
<summary xml:lang="bg">Уеб браузър</summary>
|
||||
<summary xml:lang="ca">Navegador web</summary>
|
||||
@ -65,38 +51,30 @@
|
||||
<summary xml:lang="de">Webbrowser</summary>
|
||||
<summary xml:lang="el">Περιηγητής ιστού</summary>
|
||||
<summary xml:lang="en-GB">Web Browser</summary>
|
||||
<summary xml:lang="eo">Retfoliumilo</summary>
|
||||
<summary xml:lang="es">Navegador web</summary>
|
||||
<summary xml:lang="et">Veebilehitseja</summary>
|
||||
<summary xml:lang="eu">Web arakatzailea</summary>
|
||||
<summary xml:lang="fi">Verkkoselain</summary>
|
||||
<summary xml:lang="fr">Navigateur Web</summary>
|
||||
<summary xml:lang="gl">Navegador web</summary>
|
||||
<summary xml:lang="he">דפדפן</summary>
|
||||
<summary xml:lang="hi">वेब ब्राउज़र</summary>
|
||||
<summary xml:lang="hu">Webböngésző</summary>
|
||||
<summary xml:lang="ia">Navigator Web</summary>
|
||||
<summary xml:lang="id">Penelusur Web</summary>
|
||||
<summary xml:lang="is">Vafri</summary>
|
||||
<summary xml:lang="it">Browser web</summary>
|
||||
<summary xml:lang="ka">ვებ-ბრაუზერი</summary>
|
||||
<summary xml:lang="ko">웹 브라우저</summary>
|
||||
<summary xml:lang="lg">Bulawuza ya ku Mutimbagano</summary>
|
||||
<summary xml:lang="lt">Saityno naršyklė</summary>
|
||||
<summary xml:lang="lv">Tīmekļa pārlūkprogramma</summary>
|
||||
<summary xml:lang="nl">Webbrowser</summary>
|
||||
<summary xml:lang="nn">Nettlesar</summary>
|
||||
<summary xml:lang="pa">ਵੈੱਬ ਬਰਾਊਜ਼ਰ</summary>
|
||||
<summary xml:lang="pl">Przeglądarka internetowa</summary>
|
||||
<summary xml:lang="pt">Navegador Web</summary>
|
||||
<summary xml:lang="pt-BR">Navegador Web</summary>
|
||||
<summary xml:lang="ru">Веб-браузер</summary>
|
||||
<summary xml:lang="sa">जाल ब्राउज़र</summary>
|
||||
<summary xml:lang="sk">Webový prehliadač</summary>
|
||||
<summary xml:lang="sl">Spletni brskalnik</summary>
|
||||
<summary xml:lang="sv">Webbläsare</summary>
|
||||
<summary xml:lang="tr">Web Tarayıcısı</summary>
|
||||
<summary xml:lang="tr">Web Tarayıcı</summary>
|
||||
<summary xml:lang="uk">Переглядач інтернету</summary>
|
||||
<summary xml:lang="x-test">xxWeb Browserxx</summary>
|
||||
<summary xml:lang="zh-CN">网页浏览器</summary>
|
||||
<summary xml:lang="zh-TW">網路瀏覽器</summary>
|
||||
<description>
|
||||
@ -105,45 +83,38 @@
|
||||
</p>
|
||||
<p xml:lang="ar">فالكون هو متصفّح وبّ جديد وسريع للغاية مبنيّ على «كيوت». يهدف التطبيق ليكون متصفّح وبّ خفيف ومتوفّر لأغلب المنصّات الرئيسيّة. بدأ هذا المشروع أساسًا لأغراض تعليميّة، ولكن ومنذ بدايته، نمى فالكون حتّى أصبح متصفّحًا بمزايا كاملة.</p>
|
||||
<p xml:lang="az">Falkon yeni və çox sürətli Qt veb bələdçisidir. Falkonun hədəfi - bütün platformalar üçün yüngül veb bələdçi olmaq idi. Bu layihə ilk öncə yalnız təhsil məqsədi ilə buraxılmışdır. Lakin lap əvvəldən Falkon çoxfunksiyalı veb bələdçiyə çevrilmişdir.</p>
|
||||
<p xml:lang="bg">Falkon е нов и много бърз Qt уеб браузър, който е наличен за всички основни платформи. Първоначално проектът е създаден само за образователни цели, но след това Falkon се разви в пълнофункционален браузър.</p>
|
||||
<p xml:lang="bg">Falkon е нов и много бърз Qt уеб браузър, който е начилен за всички основни платформи. Първоначално проектът е създаден само за образователни цели, но след това Falkon се разви в пълнофункционален браузър.</p>
|
||||
<p xml:lang="ca">El Falkon és un navegador Qt nou i molt ràpid. Pretén ser un navegador web lleuger, disponible a través de totes les principals plataformes. Aquest projecte només es va iniciar originalment amb finalitats educatives. Però des del seu inici, el Falkon s'ha convertit en un navegador ric en característiques.</p>
|
||||
<p xml:lang="ca-valencia">Falkon és un navegador Qt nou i molt ràpid. Pretén ser un navegador web lleuger, disponible a través de totes les principals plataformes. Este projecte només es va iniciar originalment amb finalitats educatives. Però des del seu inici, Falkon s'ha convertit en un navegador ric en característiques.</p>
|
||||
<p xml:lang="cs">Falkon je nový a velmi rychlý webový prohlížeč ve Qt. Cílem je poskytnout lehký prohlížeč dostupný na všech hlavních platformách. Tento projekt původně začal pouze pro vzdělávací účely, ale stal se z něj prohlížeč plný různých užitečných vlastností.</p>
|
||||
<p xml:lang="da">Falkon er en ny og meget hurtig Qt-webbrowser. Den går efter at være en letvægts-webbrowser tilgængelig på alle større platforme. Projektet blev oprindeligt kun startet til uddannelsesformål, men Falkon har siden sin begyndelse vokset sig til en funktionsrig browser.</p>
|
||||
<p xml:lang="de">Falkon ist ein neuer und sehr schneller Qt-Webbrowser. Er ist ein schlanker Webbrowser für alle gängigen Plattformen. Dieses Projekt wurde von ursprünglich nur als Lernprojekt gestartet. Aber von Anfang an hat Falkon hat sich zu einem funktionsreichen Browser entwickelt.</p>
|
||||
<p xml:lang="el">Το Falkon είναι ένας νέος και πολύ γρήγορος περιηγητής ιστού σε Qt. Στόχο έχει να είναι ένας ελαφρύς περιηγητής ιστού διαθέσιμος για όλες τις κύριες πλατφόρμες. Αυτό το έργο στη αρχή προοριζόταν μόνο για εκπαιδευτικούς σκοπούς. Αλλά από το ξεκίνημά του το Falkon εξελίχθηκε σε έναν πλούσιο χαρακτηριστικών περιηγητή.</p>
|
||||
<p xml:lang="el">Το Falkon είναι ένας νέος και πολύ γρήγορος περιηγητής ιστού σε Qt. Στόχο έχει να είναι ένας ελαφρύς περιηγητής ιστού διαθέσιμος για όλες τις κύριες πλατφόρμες. Αυτό το έργο στη αρχή προοριζόταν μόνο για εκπαιδευτικούς σκοπούς. Αλλά παό το ξεκίνημά του το Falkon εξελίχθηκε σε έναν πλούσιο χαρακτηριστικών περιηγητή.</p>
|
||||
<p xml:lang="en-GB">Falkon is a new and very fast Qt web browser. It aims to be a lightweight web browser available through all major platforms. This project has been originally started only for educational purposes. But from its start, Falkon has grown into a feature-rich browser.</p>
|
||||
<p xml:lang="eo">Falkon estas nova kaj tre rapida Qt-retumilo. Ĝi celas esti malpeza TTT-legilo disponebla per ĉiuj ĉefaj platformoj. Ĉi tiu projekto estis origine komencita nur por edukaj celoj. Sed de sia komenco, Falkon kreskis al kapablo-riĉa retumilo.</p>
|
||||
<p xml:lang="es">Falkon es un nuevo y muy rápido navegador web. Pretende ser un navegador web ligero disponible para todas las plataformas más populares. Este proyecto se inició originalmente con fines educativos. Aunque, desde el principio, Falkon se ha ido convirtiendo en un navegador rico en funcionalidades.</p>
|
||||
<p xml:lang="et">Falkon on uus ja väga kiire Qt veebilehitseja. Selle sihiks on olla kergekaaluline veebilehitseja, mida saab kasutada kõigil suurematel platvormidel. Õigupoolest loodi projekt esialgu puhtalt õppimise eesmärgil. Kuid seejärel on Falkonist kiiresti saanud võimalusterohke veebilehitseja.</p>
|
||||
<p xml:lang="eu">Falkon, Qt web arakatzaile berri eta oso azkar bat da. Plataforma nagusien bidez eskura daitekeen web arakatzaile arina izatea du helburu. Proiektu hau hasieran hezkuntza-helburuekin soilik hasi zen. Baina hasiera hartatik, Falkon ezaugarriz-beteriko arakatzaile bat izan arte hazi da.</p>
|
||||
<p xml:lang="fi">Falkon on uusi ja hyvin nopea Qt-verkkoselain. Se pyrkii olemaan kaikilla merkittävillä alustoilla käytettävissä oleva kevyt selain. Hanke käynnistettiin alkuaan opetustarkoituksin, mutta alusta saakka Falkonista on kasvanut monitoimintainen selain.</p>
|
||||
<p xml:lang="fr">Falkon est un nouveau navigateur Internet sous Qt, ultra-rapide. Il a pour objectif de devenir un navigateur web léger disponible sur toutes les plate-formes majeures. Ce projet avait à l'origine des fins purement éducatives. Mais après ces débuts, Falkon est devenu un navigateur riche en fonctionnalités.</p>
|
||||
<p xml:lang="gl">Falkon é un navegador web novo e moi rápido feito con Qt. Pretende ser un navegador web lixeiro dispoñíbel nas plataformas maioritarias. O proxecto comezou por curiosidade. Pero desde entón, Falkon converteuse nun navegador moi completo.</p>
|
||||
<p xml:lang="he">Falkon הוא דפדפן חדש ומהיר במיוחד על בסיס Qt. מטרתו היא לשמור על קלילות ולהיות זמין בכל הפלטפורמות העיקריות. המיזם הזה נוסד לראשונה למטרות חינוכיות בלבד. אך מראשיתו, צמח Falkon להיות דפדפן עתיר יכולות.</p>
|
||||
<p xml:lang="hi">फ़ॉकन एक नया और बहुत तेज़ Qt वेब ब्राउज़र है। इसका लक्ष्य सभी प्रमुख प्लेटफ़ॉर्म पर उपलब्ध एक हल्का वेब ब्राउज़र बनना है। यह प्रोजेक्ट मूल रूप से केवल शैक्षिक उद्देश्यों के लिए शुरू किया गया है। लेकिन अपनी शुरुआत से ही, फ़ॉकन एक सुविधा संपन्न ब्राउज़र बन गया है।</p>
|
||||
<p xml:lang="hu">A Falkon egy új és nagyon gyors Qt-alapú webböngésző. A célja, hogy minden fő platformon elérhető pehelysúlyú böngészővé váljon. A projekt eredetileg oktatási célból indult, de már az elején egy funkciógazdag böngészővé vált.</p>
|
||||
<p xml:lang="ia">Falkon es un nove e multe rapide navigator web Qt. Illoindende esser un navigator web legier disponibile per omne major platteformas. Iste projecto ha essite startate originalmente sol per propositos educational. Ma ab su initio, Falkon ha crescite in un navigator ric de characteristicas.</p>
|
||||
<p xml:lang="id">Falkon adalah penelusur web Qt yang baru dan sangat cepat. Ini bertujuan untuk menjadi penelusur web ringan yang tersedia melalui semua platform utama. Proyek ini awalnya hanya dimulai untuk tujuan pendidikan. Tapi sejak awal, Falkon telah tumbuh menjadi penelusur kaya fitur.</p>
|
||||
<p xml:lang="is">Falkon er nýr og mjög hraðvirkur Qt-netvafri. Markmiðið er að hann sé léttur vafri fyrir sem flest kerfi. Verkefnið byrjaði sem kennsluverkefni, en frá því hefur Falkon vaxið upp í að vera fullorðinn vafri með úrval eiginleika.</p>
|
||||
<p xml:lang="it">Falkon è un nuovo e velocissimo browser web Qt. Mira ad essere un browser web leggero, e disponibile per tutte le maggiori piattaforme. Il progetto è iniziato inizialmente a scopo educativo, ma da allora Falkon è diventato un browser ricco di funzionalità.</p>
|
||||
<p xml:lang="ka">Falcon არის ახალი და ძალიან სწრაფი Qt ვებ ბრაუზერი. მისი მიზანია იყოს მსუბუქი ვებ ბრაუზერი, რომელიც ხელმისაწვდომია ყველა ძირითადი პლატფორმის საშუალებით. ეს პროექტი თავდაპირველად დაიწყო მხოლოდ საგანმანათლებლო მიზნებისთვის. მაგრამ მისი დასაწყისიდან, Falkon ფუნქცებით მდიდარი ბრაუზერში გადაიზარდა.</p>
|
||||
<p xml:lang="ko">Falkon은 Qt 기반 웹 브라우저입니다. 모든 주요 플랫폼에서 사용할 수 있는 경량 웹 브라우저입니다. 이 프로젝트는 교육용 목적에서 시작해서 다기능 웹 브라우저로 발전했습니다.</p>
|
||||
<p xml:lang="lg">Falkon bulawuza empya eyeyambisa Qt, era nga eyanguya nyo. Egenderedwa okukolera ku sistemu ez'ebika ebikulu byonna nga bw'etanyunyunta. Falkon eyagiyiiya yasooka kuba nga akola kya kweyigiriza, kyokka okuva olwo ekulaakulanizidwa n'efuukira ddala bulawuza ey'obusobozi bungi.</p>
|
||||
<p xml:lang="lt">Falkon yra nauja ir labai greita Qt saityno naršyklė. Jos tikslas – būti supaprastinta saityno naršykle, prieinama visose pagrindinėse platformose. Šis projektas, iš pradžių, prasidėjo tik švietimo tikslais. Bet nuo savo pradžios Falkon užaugo į daugiafunkcę naršyklę.</p>
|
||||
<p xml:lang="lv">„Falkon“ ir jauna un ļoti ātra „Qt“ pārlūkprogramma. Tās mērķis ir būt vieglai programmai, kas pieejama visās lielākajās platformās. Šis projekts sākās izglītības nolūkos, bet laika gaitā „Falkon“ ir izaudzis par iespējām bagātu tīmekļa pārlūkprogrammu.</p>
|
||||
<p xml:lang="nl">Falkon is een nieuwe en zeer snelle Qt-webbrowser. Zijn doel is om een lichtgewicht webbrowser te zijn, beschikbaar via alle belangrijke platformen. Dit project is oorspronkelijk alleen gestart voor onderwijsdoeleinden. Maar vanaf zijn start is Falcon gegroeid tot een browser rijk aan functies.</p>
|
||||
<p xml:lang="nn">Falkon er ein ny og svært kjapp Qt-nettlesar. Målet er ein nettlesar som ikkje krev mykje systemressursar og som er tilgjengeleg på dei mest brukte plattformene. Programmet vart opphavleg utvikla berre som eit læreprosjekt, men har over tid blitt til ein funksjonsrik nettlesar.</p>
|
||||
<p xml:lang="pl">Falkon jest nową i bardzo szybką przeglądarką internetową opartą na Qt. Celem Falkona jest być lekkim oprogramowaniem, dostępnym na wszystkich głównych platformach. Projekt ten został pierwotnie rozpoczęty wyłącznie w celach edukacyjnych, ale od swojego początku, Falkon rozrósł się do bogatej w funkcje przeglądarki.</p>
|
||||
<p xml:lang="pt">O Falkon é um navegador novo e muito rápido em QtWebKit. Pretende ser um navegador Web leve e disponível em todas as plataformas importantes. Este projecto foi iniciado originalmente para fins educativos. Porém, desde o início, o Falkon cresceu para um navegador rico em funcionalidades.</p>
|
||||
<p xml:lang="pt-BR">O Falkon é um navegador Web novo e muito rápido feito em Qt. Destina-se a ser um navegador Web leve disponível em todas as principais plataformas. Este projeto começou originalmente apenas para fins educacionais. Mas, desde o início, o Falkon tornou-se um navegador rico em funcionalidades.</p>
|
||||
<p xml:lang="ru">Falkon — новый и очень быстрый легковесный веб-браузер на основе Qt. Он доступен на всех основных платформах. Проект изначально разрабатывался в образовательных целях, но затем программа Falkon постепенно превратилась в полнофункциональный браузер.</p>
|
||||
<p xml:lang="sa">Falkon इति नूतनं अतीव द्रुतं च Qt जालपुटम् अस्ति । सर्वेषां प्रमुखमञ्चानां माध्यमेन उपलब्धः लघुजालपुटः भवितुम् अस्य उद्देश्यम् अस्ति । एषा परियोजना मूलतः केवलं शैक्षिकप्रयोजनार्थं आरब्धा अस्ति । परन्तु आरम्भादेव फाल्कनः विशेषता-समृद्धः ब्राउजर् इति रूपेण वर्धितः अस्ति ।</p>
|
||||
<p xml:lang="sk">Falkon je nový a veľmi rýchly Qt prehliadač. Jeho cieľom je byť ľahký a dostupný na všetkých platformách. Tento projekt začal iba na účely vzdelávania. Ale časom sa stal plnohodnotným prehliadačom.</p>
|
||||
<p xml:lang="sl">Falkon je nov in zelo hiter spletni brskalnik Qt. Njegov cilj je biti lahek spletni brskalnik, ki naj bi bil na voljo na vseh glavnih platformah. Ta projekt se je prvotno začel le v izobraževalne namene. Toda Falkon je že od svojega začetka je prerasel v brskalnik z bogatimi možnostmi.</p>
|
||||
<p xml:lang="sv">Falkon är en ny och mycket snabb Qt webbläsare. Den har som mål att vara en lättviktig webbläsare tillgänglig på alla större plattformar. Projektet startades ursprungligen bara i utbildningssyfte, men från starten har Falkon växt till en funktionsrik webbläsare.</p>
|
||||
<p xml:lang="tr">Falkon, yeni ve çok hızlı bir Qt web tarayıcısıdır. Tüm majör platformlarda kullanılabilir hızlı bir tarayıcı olmayı hedefler. Başlangıçta bu proje eğitim amaçlı idi; ancak artık Falkon çok özellikli bir tarayıcı olarak kullanıma hazırdır.</p>
|
||||
<p xml:lang="uk">Falkon — нова і дуже швидка програма для перегляду інтернету на основі навігатора Qt. Метою проєкту є створення невибагливого до ресурсів переглядача інтернету для усіх основних програмних платформ. Реалізацію проєкту було розпочато з навчальною метою. Втім, з того часу Falkon стала повноцінним переглядачем.</p>
|
||||
<p xml:lang="x-test">xxFalkon is a new and very fast Qt web browser. It aims to be a lightweight web browser available through all major platforms. This project has been originally started only for educational purposes. But from its start, Falkon has grown into a feature-rich browser.xx</p>
|
||||
<p xml:lang="zh-CN">Falkon 是一款全新的超快速 Qt 网络浏览器。它将是一款轻量级的跨平台浏览器。这个项目当初仅仅作为教育项目。但是从一开始,Falkon 就成长为一款功能丰富的浏览器。</p>
|
||||
<p xml:lang="zh-TW">Falkon 是一個嶄新且非常快速的 Qt 網路瀏覽器。其目標為輕量級且在所有主流平臺提供的網路瀏覽器。此專案一開始僅為教育目的啟動。但到現在,Falkon 已經成長為功能豐富的瀏覽器。</p>
|
||||
<p>
|
||||
@ -154,42 +125,35 @@
|
||||
<p xml:lang="bg">Falkon притежава всички стандартни възможности, които се очакват от уеб браузър, включително отметки, история и раздели. Освен това, можете да управлявате RSS емисии във вградения RSS четец, да спирате реклами с вградената приставка AdBlock, да блокирате Flash с Click2Flash и да редактирате базата от данни със SSL сертификати.</p>
|
||||
<p xml:lang="ca">El Falkon té totes les funcions estàndard que s'esperen d'un navegador web. Inclou adreces d'interès, historial (ambdós també a la barra lateral) i pestanyes. A més, podeu gestionar els canals RSS amb un lector RSS inclòs, bloquejar els anuncis amb un complement AdBlock integrat, bloquejar el contingut Flash amb Click2Flash i editar la base de dades de certificats de l'AC local amb un gestor SSL.</p>
|
||||
<p xml:lang="ca-valencia">Falkon té totes les funcions estàndard que s'esperen d'un navegador web. Inclou adreces d'interés, historial (ambdós també en la barra lateral) i pestanyes. A més, podeu gestionar els canals RSS amb un lector RSS inclòs, bloquejar els anuncis amb un complement AdBlock integrat, bloquejar el contingut Flash amb Click2Flash i editar la base de dades de certificats de l'AC local amb un gestor SSL.</p>
|
||||
<p xml:lang="cs">Falkon obsahuje všechny standardní funkce, které byste u prohlížeče čekali. Obsahuje záložky, historii (obojí rovněž v postranní liště) a karty. Navíc může pomocí vlastní čtečky RSS spravovat kanály RSS, blokovat reklamu s vlastním modulem AdBlock, blokovat Flash s Click2Flash a upravovat místní databázi certifikátů CA se správcem SSL.</p>
|
||||
<p xml:lang="cs">Falkon obsahuje všechny standardní funcke, které byste u prohlížeče čekali. Obsahuje záložky, historii (obojí rovněž v postranní liště) a karty. Navíc může pomocí vlastní čtečky RSS spravovat kanály RSS, blokovat reklamu s vlastním modulem AdBlock, blokovat Flash s Click2Flash a upravovat místní databázi certifikátů CA se správcem SSL.</p>
|
||||
<p xml:lang="da">Falkon har alle standardfunktioner som du forventer fra en webbrowser. Den inkluderer bogmærker, historik (begge findes også i sidebjælken) og faneblade. Derudover kan du håndtere RSS-feeds med en inkluderet RSS-læser, blokere reklamer med et indbygget AdBlock-plugin, blokere Flash-indhold med Click2Flash og redigere den lokale CA-certifikater-database med en SSL-manager.</p>
|
||||
<p xml:lang="de">Falkon verfügt über alle Standardfunktionen, die Sie von einem Webbrowser erwarten, z. B. Lesezeichen, Verlauf (beide auch in der Seitenleiste) und Unterfenster. Darüber hinaus können Sie RSS-Feeds mit einem integrierten RSS-Reader verwalten, Anzeigen mit einem integrierten AdBlock-Modul blockieren, Flash-Inhalte mit Click2Flash blockieren und die lokale CA.-Zertifikatsdatenbank mit einem SSL-Verwaltung bearbeiten.</p>
|
||||
<p xml:lang="el">Το Falkon διαθέτει όλες τις τυπικές λειτουργίες ενός περιηγητή ιστού. Περιλαμβάνει σελιδοδείκτες, ιστορικό (και στην πλευρική γραμμή) και καρτέλες. Επίσης μπορείτε να διαχειριστείτε ροές RSS με έναν RSS αναγνώστη που συμπεριλαμβάνεται, να μπλοκάρετε διαφημίσεις με ένα ενσωματωμένο AdBlock πρόσθετο, να μπλοκάρετε περιεχόμενο Flash με το Click2Flash και να επεξεργαστείτε την τοπική βάση CA πιστοποιητικών με έναν διαχειριστή SSL.</p>
|
||||
<p xml:lang="en-GB">Falkon has all standard functions you expect from a web browser. It includes bookmarks, history (both also in sidebar) and tabs. Above that, you can manage RSS feeds with an included RSS reader, block ads with a built-in AdBlock plugin, block Flash content with Click2Flash and edit the local CA Certificates database with an SSL manager.</p>
|
||||
<p xml:lang="eo">Falkon havas ĉiujn normajn funkciojn, kiujn vi atendas de retumilo. Ĝi inkluzivas legosignojn, historion (ambaŭ ankaŭ en flanka kolumno) kaj langetojn. Super tio, vi povas administri RSS-fluojn per inkluzivita RSS-leganto, bloki reklamojn per enkonstruita AdBlock-kromaĵo, bloki Flash-enhavon per Click2Flash kaj redakti la lokan datumbazon de CA Certificates per SSL-administranto.</p>
|
||||
<p xml:lang="es">Falkon posee todas las funciones estándares que cabría esperar de un navegador web. Incluye marcadores, historial (ambos disponibles también en una barra lateral) y pestañas. Además, puede gestionar fuentes RSS con el lector RSS que incluye, bloquear publicidad mediante un complemento integrado, bloquear contenido Flash con Click2Flash y editar la base de datos local de certificados con un gestor SSL.</p>
|
||||
<p xml:lang="et">Falkon pakub kõiki tavapäraseid funktsioone, mida inimesed veebilehitsejalt eeldavad. Nende hulka kuuluvad järjehoidjad, ajalugu (mõlemad ka külgribal) ja kaardid. Lisaks tuleb see toime RSS-uudistevoogudega sisseehitatud RSS-voogude lugejaga, reklaamide blokkimisega kaasa pandud AdBlocki plugina abil, Flashi sisu blokkimisega Click2Flash'i abil ja kohalike SK sertifikaatide andmebaasi muutmisega SSL-i halduri abil.</p>
|
||||
<p xml:lang="eu">Falkon-ek web arakatzaile batengatik espero dituzun funtzio estandar guztiak ditu. Laster-markak, historia (biak alboko-barran ere) eta fitxak barneratzen ditu. Horrez gain, RSS jarioak kudeatu ditzakezu barneratutako RSS irakurlearekin, iragarkiak oztopatu AdBlock plugin batekin, Flash edukia oztopatu Click2Flash erabiliz eta CA ziurtagiri lokalen datu-basea editatu SSL kudeatzaile batekin.</p>
|
||||
<p xml:lang="fi">Falkonissa on kaikki selaimelta odottamasi toiminnallisuus: kirjanmerkit, historia (kumpikin myös sivupalkissa) ja välilehdet. Lisäksi voit hallita RSS-syötteitäsi sisään rakennetulla RSS-lukuohjelmalla, estää mainokset sisään rakennetulla AdBlock-liitännäisellä, estää Flash-sisällön Click2Flashillä sekä muokata paikallista CA-varmennetietokantaa SSL-hallintatyökalulla.</p>
|
||||
<p xml:lang="fr">Falkon dispose de toutes les fonctionnalités standard que l'on peut attendre d'un navigateur. Il comporte des signets, un historique (tous deux également disponibles dans la barre latérale) et des onglets. En plus de cela, vous pouvez gérer des flux « RSS » grâce au lecteur « RSS » intégré, bloquer les publicités avec le module externe « AdBlock » intégré, bloquer les contenus « Flash » avec Click2Flash et modifier la base de données de certificats « CA » locaux en utilisant un gestionnaire « SSL ».</p>
|
||||
<p xml:lang="gl">Falkon ten todas as funcións estándar que esperaría dun navegador web. Inclúe marcadores, historial (ambos dispoñíbeis en barras laterais) e separadores. Ademais, pode xestionar fontes de novas RSS cun lector de RSS incluído, bloquear anuncios cun complemento de AdBlock de serie, bloquear contido en Flash con Click2Flash e editar a base de datos local de certificados de autoridades certificadoras cun xestor de SSL.</p>
|
||||
<p xml:lang="he">ב־Falkon יש את כל היכולות הרגילות שאפשר לצפות להן מדפדפן אינטרנט. לרבות סימניות, היסטוריה (שניהם גם בסרגל צד) ולשוניות. מעבר לכך, אפשר לנהל ערוצי RSS עם קורא RSS מובנה, לחסום פרסומות עם תוסף AdBlock מובנה, לחסום תוכן Flash עם Click2Flash ולערוך את מסד נתוני אישורי רשויות האישורים המובנה עם מנהל SSL.</p>
|
||||
<p xml:lang="hi">फ़ॉकन में वे सभी मानक फ़ंक्शन हैं जो आप एक वेब ब्राउज़र से उम्मीद करते हैं। इसमें बुकमार्क, इतिहास (दोनों साइडबार में भी) और टैब शामिल हैं। इसके अलावा, आप शामिल RSS रीडर के साथ RSS फ़ीड प्रबंधित कर सकते हैं, बिल्ट-इन AdBlock प्लगइन के साथ विज्ञापनों को ब्लॉक कर सकते हैं, Click2Flash के साथ फ़्लैश सामग्री को ब्लॉक कर सकते हैं और SSL प्रबंधक के साथ स्थानीय CA प्रमाणपत्र डेटाबेस को संपादित कर सकते हैं।</p>
|
||||
<p xml:lang="hu">A Falkon rendelkezik minden standard funkcióval, ami egy webböngészőtől elvárható. Tartalmaz könyvjelzőkezelést, előzményeket (mindkettő elérhető az oldalsávon is) és lapkezelést. Ezeken felül kezelhet RSS-csatornákat a beépített RSS-olvasóval, tilthatja a hirdetéseket a beépített Adblock bővítménnyel, a Flash tartalmat a Clock2Flashsel és szerkesztheti a helyi CA tanúsítvány-adatbázist az SSL-kezelővel.</p>
|
||||
<p xml:lang="gl">Falkon ten todas as funcións estándar que esperaría dun navegador web. Inclúe marcadores, historial (ambos dispoñíbeis en barras laterais) e separadores. Ademais, pode xestionar fontes de novas RSS cun lector de RSS incluído, bloquear anuncios cun complemento de AdBlock integrado, bloquear contido en Flash con Click2Flash e editar a base de datos local de certificados de autoridades certificadoras cun xestor de SSL.</p>
|
||||
<p xml:lang="ia">Falkon ha omne functiones standard que tu expecta ab un navigator web. Illo include marcatores de libro (marcapaginas), chronologia (ambes anque in barra lateral) e schedas. Super illo, tu pote manear syndicatione RSS con un lector de RSS includite, blocar publicitate con le plugin construite internemente AdBlock, blocar contento de Flash con Click2Flash e modificar le base de datos local de Certificato CA con un gerente de SSL.</p>
|
||||
<p xml:lang="id">Falkon memiliki semua fungsi standar yang kamu harapkan dari penelusur web. Ini termasuk markah, histori (keduanya juga di bilah sisi) dan tab. Di samping itu, kamu bisa mengelola feed RSS dengan pembaca RSS yang disertakan, mencekal iklan dengan plugin AdBlock bawaan, mencekal konten Flash dengan Click2Flash dan mengedit database CA Certificates lokal dengan pengelola SSL.</p>
|
||||
<p xml:lang="is">Falkon er með alla þá stöðluðu eiginleika sem fólk býst við að séu í vöfrum. Þar má telja bókamerki, vinnsluferil (bæði einnig á hliðarspjaldi) og flipa. Auk þess er hægt að sýsla með RSS-streymi með innbyggðum RSS-lesara, útilokun auglýsinga með innbyggðri AdBlock-viðbót, útilokun Flash-efnis með Click2Flash og breytingar á gagnagrunni CA-skilríkja með SSL-umsýslustýringu.</p>
|
||||
<p xml:lang="it">Falkon ha tutte le funzioni standard che ci si aspetterebbe da un browser web, ad esempio i segnalibri e la cronologia, entrambi anche nella barra laterale, e ha anche le schede. Inoltre puoi gestire i feed RSS con l'apposito lettore incluso, e puoi bloccare sia le inserzioni per mezzo di un'estensione AdBlock integrata, sia i contenuti Flash con Click2Flash. Infine, puoi modificare la banca dati dei certificati CA con un gestore SSL.</p>
|
||||
<p xml:lang="ka">Falcon-ს აქვს ყველა სტანდარტული ფუნქცია, რომელსაც ელით ვებ ბრაუზერისგან. იგი მოიცავს სანიშნეებს, ისტორიას (როგორც გვერდით ზოლში), ასევე ჩანართებს. ამის ზემოთ, თქვენ შეგიძლიათ მართოთ RSS არხები ჩართული RSS მკითხველით, დაბლოკოთ რეკლამები ჩაშენებული AdBlock მოდულით, დაბლოკოთ Flash შინაარსი Click2Flash-ით და შეცვალოთ ადგილობრივი CA სერთიფიკატების მონაცემთა ბაზა SSL მენეჯერით.</p>
|
||||
<p xml:lang="ko">Falkon에는 웹 브라우저의 표준 기능이 들어 있습니다. 책갈피, 과거 기록(사이드바 지원), 탭을 지원합니다. 이외에도 내장 RSS 리더를 통한 RSS 피드 구독, AdBlock 플러그인으로 광고 차단, Click2Flash로 플래시 콘텐츠 차단, SSL 관리자로 로컬 CA 인증서 편집 등을 지원합니다.</p>
|
||||
<p xml:lang="lg">Falkon erina obusobozi bwonna bwe wandisuubidde okusanga mu bulawuza ya ku mutimbagano. Mu ebyo mwe muli:- Ebifo by'okebedde bye wandyagadde okujjukira esobola okubikolera obukwatakifo- Etereka olukalala lw'ebifo byewakeberako - Esobola okuleeta obutimbe obw'enyongeza obikkulire awamu empapula za ku mutimbagano ezisukka mu lumu - Ekusobozesa okusoma amawulire agava mu mikutu eg'ekika kya RSS - Ejja ne AdBlock azibira ebirango by'oteetaaga okulaba - Ejja ne Click2Flash agaana ebikolera ku fulaasi okukutaataaganya - Ekusobozesa okukyusa ebiri mu ggwanika lya data lya yo ery'emmatizo eziva mu bagabi ba zo</p>
|
||||
<p xml:lang="lt">Falkon turi visas standartines funkcijas, kurių galite tikėtis iš saityno naršyklės. Joje yra adresynas, žurnalas (taip pat šoninėje juostoje) ir kortelės. Be to, galite tvarkyti RSS kanalus naudodami integruotą RSS skaitytuvę, blokuoti reklamas naudodami įtaisytą „AdBlock“ įskiepį, blokuoti „Flash“ turinį naudodami „Click2Flash“ ir taisyti vietinę LĮ liudijimų duomenų bazę naudodami SSL tvarkytuvę.</p>
|
||||
<p xml:lang="lv">„Falkon“ nodrošina visas tīmekļa pārlūkprogrammas standarta funkcijas. Starp tām ir grāmatzīmes, vēsture (atveramas arī sānu joslā) un cilnes. Tāpat „Falkon“ ļauj pārvaldīt RSS plūsmas, bloķēt reklāmas, izmantojot iebūvēto „AdBlock“ spraudni, bloķēt „Flash“ saturu ar „Click2Flash“ un rediģēt lokālo CA sertifikātu datubāzi, izmantojot SSL pārvaldnieku.</p>
|
||||
<p xml:lang="nl">Falcon heeft alle standaard functies die u verwacht van een webbrowser. Het bevat bladwijzers, geschiedenis (ook in de zijbalk) en tabbladen. Bovendien kunt u RSS-feeds beheren met een ingevoegde RSS-reader, ads blokkeren met een ingebouwde AdBlock plug-in, Flash-inhoud blokkeren met Click2Flash en de lokale database met CA Certificaten met een SSL-beheerder.</p>
|
||||
<p xml:lang="nn">Falkon har alle funksjonane du forventar av ein nettlesar, som fane- og bokmerkestøtte, og ein logg over vitja sider (også tilgjengeleg frå ein sidestolpe). Han har òg innebygd RSS-lesar, reklamefilter, Flash-blokkering (klikk for å starta) og redigerbar CA-sertifikatdabase.</p>
|
||||
<p xml:lang="pl">Falkon oddaje do dyspozycji użytkownika wszystkie standardowe funkcje, których oczekuje się od przeglądarki internetowej. Posiada karty, zakładki oraz możliwość zapisu historii, którą następnie można wyświetlić zarówno w osobnym oknie, jak i na pasku bocznym. Poza tym, może on obsługiwać kanały RSS przy użyciu załączonego czytnika, blokować reklamy za pomocą wbudowanej wtyczki AdBlock, blokować treści Flash przy użyciu Click2Flash i edytować lokalne certyfikaty CA.</p>
|
||||
<p xml:lang="pt">O Falkon tem todas as funções-padrão que iria esperar de um navegador Web. Inclui os favoritos, o histórico (ambos na barra lateral) e páginas separadas. Para além disso, pode gerir fontes RSS com um leitor de RSS incluído, o bloqueio de anúncios com um 'plugin' do AdBlock incorporado, o bloqueio de conteúdos em Flash com o Click2Flash e a edição da base de dados de Certificados da AC locais com um gestor de SSL.</p>
|
||||
<p xml:lang="pt-BR">O Falkon possui todas as funções padrão que você espera de um navegador Web. Inclui favoritos, histórico (ambos também na barra lateral) e abas. Em cima disso, você pode gerenciar feeds RSS com um leitor de RSS incluído, bloquear anúncios com um plugin AdBlock incorporado, bloquear conteúdo em Flash com Click2Flash e editar o banco de dados de certificados CA local com um gerenciador SSL.</p>
|
||||
<p xml:lang="ru">Falkon предоставляет все стандартные возможности веб-браузера: закладки, журнал (доступный также и на боковой панели) и вкладки. Кроме того, программа поддерживает управление RSS-потоками с помощью встроенного модуля просмотра RSS, блокировку рекламы с помощью подключаемого модуля AdBlock, блокировку содержимого Flash с помощью Click2Flash и редактирование локальной базы данных сертификатов ЦС с помощью диспетчера SSL.</p>
|
||||
<p xml:lang="sa">Falkon इत्यत्र सर्वाणि मानककार्यं यत् भवन्तः जालपुटतः अपेक्षन्ते । अस्मिन् पुस्तकचिह्नानि, इतिहासः (उभौ अपि पार्श्वपट्टिकायां) ट्याब्स् च सन्ति । ततः उपरि, भवान् समाविष्टेन RSS रीडरेन सह RSS फीड् प्रबन्धयितुं, अन्तर्निर्मितेन AdBlock प्लगिन् इत्यनेन विज्ञापनं अवरुद्ध्य, Click2Flash इत्यनेन Flash सामग्रीं अवरुद्ध्य SSL प्रबन्धकेन सह स्थानीयं CA प्रमाणपत्रदत्तांशकोशं सम्पादयितुं च शक्नोति</p>
|
||||
<p xml:lang="sk">Falkon má všetky bežné funkcie, ktoré by ste čakali od bežného internetového prehliadača. Obsahuje záložky, históriu (oboje aj v bočnom paneli) a karty. Okrem toho, môžete spravovať RSS prúdy so zabudovaným čítačom, blokovať reklamy s AdBlockom, blokovať Flash s Click2Flash a upravovať lokálnu databázu CA certifikátov so SSL správcom.</p>
|
||||
<p xml:lang="sl">Falkon ima vse standardne funkcije, ki jih pričakujete od spletnega brskalnika. Vključuje zaznamke, zgodovino (oboje tudi v stranski vrstici) in zavihki. Zgoraj lahko upravljajte vire RSS z vključenim bralnikom RSS, blokirate oglase z vgrajenim vtičnikom AdBlock, blokirate vsebino Flash s Click2Flash in uredite lokalno podatkovno bazo potrdil z upraviteljem SSL.</p>
|
||||
<p xml:lang="sv">Falkon har alla standardfunktioner man kan förvänta sig av en webbläsare. Det omfattar bokmärken, historik (båda också i sidorad) och flikar. Förutom det, kan man hantera RSS-kanaler med en inbyggd RSS-läsare, blockera reklam med ett inbyggt insticksprogram för reklamblockering, blockera Flash-innehåll med Click2Flash och redigera den lokala certifikatdatabasen för certifikatutfärdare med en SSL-hanterare.</p>
|
||||
<p xml:lang="tr">Falkon’da, bir web tarayıcısından beklediğiniz tüm standart işlevler vardır. Yer imleri, geçmiş (kenar çubuğundan kullanılabilir) ve sekmeler içerir. Bunların yanında, RSS beslemelerinizi yönetmek ve okumak için bir RSS okuyucusu, dahili bir reklâm engelleme eklentisi, Flash içeriği engellemek için Click2Flash ve yerel CA sertifikalarını yönetmek için bir SSL yöneticisi kullanıma hazırdır.</p>
|
||||
<p xml:lang="tr">Falkon'da, bir web tarayıcıdan beklediğiniz tüm standart işlevler mevcuttur. Yer imleri, geçmiş (kenar çubuğundan kullanılabilir) ve sekmeler içerir. Bunların yanında, RSS beslemelerinizi yönetmek ve okumak için bir RSS okuyucusu, dahili bir reklam engelleme eklentisi, Flash içeriği engellemek için Click2Flash ve yerel CA sertifikalarını yönetmek için bir SSL yöneticisi kullanıma hazırdır.</p>
|
||||
<p xml:lang="uk">У Falkon ви знайдете усі можливості типової програми для перегляду інтернету. Передбачено можливість користування закладками, журналом перегляду (ці дві можливості реалізовано і на бічній панелі) та вкладками. Крім того ви можете отримувати подачі новин RSS за допомогою вбудованого засобу читання RSS, блокувати рекламні повідомлення за допомогою вбудованого додатка блокування реклами, блокувати включення Flash за допомогою додатка Click2Flash та редагувати локальну базу сертифікатів CA за допомогою засобу керування даними SSL.</p>
|
||||
<p xml:lang="x-test">xxFalkon has all standard functions you expect from a web browser. It includes bookmarks, history (both also in sidebar) and tabs. Above that, you can manage RSS feeds with an included RSS reader, block ads with a built-in AdBlock plugin, block Flash content with Click2Flash and edit the local CA Certificates database with an SSL manager.xx</p>
|
||||
<p xml:lang="zh-CN">Falkon 包含所有浏览器的高级功能,包括书签、历史、侧边栏和标签页。您可以通过内置的 RSS 阅读器管理 RSS 资源,通过内置的 AdBlock 插件屏蔽广告,通过 Click2Flash 屏蔽 Flash 内容,通过 SSL 管理器编辑本地 CA 认证数据库。</p>
|
||||
<p xml:lang="zh-TW">Falkon 有所有您期望會在網路瀏覽器上看到的標準功能。其包含了書籤、歷史紀錄(兩個都可以側邊欄中找到)與分頁。除此之外,您可以透過內建的 RSS 閱讀器管理 RSS feed,使用內建的 AdBlock 外掛程式阻擋廣告,透過 Click2Flash 阻擋 Flash 內容,並使用 SSL 管理器編輯本機 CA 證書資料庫。</p>
|
||||
</description>
|
||||
@ -206,26 +170,9 @@
|
||||
</provides>
|
||||
<content_rating type="oars-1.1"/>
|
||||
<releases>
|
||||
<release version="25.08.1" date="2025-09-11"/>
|
||||
<release version="25.08.0" date="2025-08-14"/>
|
||||
<release version="25.04.3" date="2025-07-03"/>
|
||||
<release version="25.04.2" date="2025-06-05"/>
|
||||
<release version="25.04.1" date="2025-05-08"/>
|
||||
<release version="25.04.0" date="2025-04-17"/>
|
||||
<release version="24.12.3" date="2025-03-06"/>
|
||||
<release version="24.12.2" date="2025-02-06"/>
|
||||
<release version="24.12.1" date="2025-01-09"/>
|
||||
<release version="24.12.0" date="2024-12-12"/>
|
||||
<release version="24.08.3" date="2024-11-07"/>
|
||||
<release version="24.08.2" date="2024-10-10"/>
|
||||
<release version="24.08.1" date="2024-09-12"/>
|
||||
<release version="24.08.0" date="2024-08-22"/>
|
||||
<release version="24.05.2" date="2024-07-04"/>
|
||||
<release version="24.05.1" date="2024-06-13"/>
|
||||
<release version="24.05.0" date="2024-05-23"/>
|
||||
<release version="24.02.2" date="2024-04-11"/>
|
||||
<release version="24.02.1" date="2024-03-21"/>
|
||||
<release version="24.02.0" date="2024-02-28"/>
|
||||
<release version="23.08.5" date="2024-02-15"/>
|
||||
<release version="22.12.2" date="2023-02-02"/>
|
||||
<release version="22.12.1" date="2023-01-05"/>
|
||||
<release version="22.12.0" date="2022-12-08"/>
|
||||
<release version="22.08.3" date="2022-11-03"/>
|
||||
</releases>
|
||||
</component>
|
||||
|
@ -1,7 +1,6 @@
|
||||
[Desktop Entry]
|
||||
Name=Falkon
|
||||
Name[ar]=فالكون
|
||||
Name[ast]=Falkon
|
||||
Name[az]=Falkon
|
||||
Name[bg]=Falkon
|
||||
Name[ca]=Falkon
|
||||
@ -11,25 +10,19 @@ Name[da]=Falkon
|
||||
Name[de]=Falkon
|
||||
Name[el]=Falkon
|
||||
Name[en_GB]=Falkon
|
||||
Name[eo]=Falkon
|
||||
Name[es]=Falkon
|
||||
Name[et]=Falkon
|
||||
Name[eu]=Falkon
|
||||
Name[fi]=Falkon
|
||||
Name[fr]=Falkon
|
||||
Name[gl]=Falkon
|
||||
Name[he]=Falkon
|
||||
Name[hi]=फाल्कन
|
||||
Name[hu]=Falkon
|
||||
Name[ia]=Falkon:
|
||||
Name[id]=Falkon
|
||||
Name[is]=Falkon
|
||||
Name[it]=Falkon
|
||||
Name[ka]=Falkon
|
||||
Name[ko]=Falkon
|
||||
Name[lg]=Falkon
|
||||
Name[lt]=Falkon
|
||||
Name[lv]=Falkon
|
||||
Name[nl]=Falkon
|
||||
Name[nn]=Falkon
|
||||
Name[pa]=ਫਾਲਕਨ
|
||||
@ -37,12 +30,12 @@ Name[pl]=Falkon
|
||||
Name[pt]=Falkon
|
||||
Name[pt_BR]=Falkon
|
||||
Name[ru]=Falkon
|
||||
Name[sa]=बाजः
|
||||
Name[sk]=Falkon
|
||||
Name[sl]=Falkon
|
||||
Name[sv]=Falkon
|
||||
Name[tr]=Falkon
|
||||
Name[uk]=Falkon
|
||||
Name[x-test]=xxFalkonxx
|
||||
Name[zh_CN]=Falkon 浏览器
|
||||
Name[zh_TW]=Falkon
|
||||
Type=Application
|
||||
@ -59,25 +52,19 @@ Comment[da]=En hurtig og sikker webbrowser
|
||||
Comment[de]=Ein schneller und sicherer Webbrowser
|
||||
Comment[el]=Ένας γρήγορος και ασφαλής περιηγητής ιστού
|
||||
Comment[en_GB]=A fast and secure web browser
|
||||
Comment[eo]=Rapida kaj sekura TTT-legilo
|
||||
Comment[es]=Un navegador web rápido y seguro
|
||||
Comment[et]=Kiire ja turvaline veebilehitseja
|
||||
Comment[eu]=Web arakatzaile azkar eta seguru bat
|
||||
Comment[fi]=Nopea ja turvallinen verkkoselain
|
||||
Comment[fr]=Un navigateur Web rapide et sécurisé
|
||||
Comment[gl]=Un navegador rápido e seguro.
|
||||
Comment[he]=דפדפן אינטרנט מהיר ומאובטח
|
||||
Comment[hi]=एक तेज़ और सुरक्षित वेब ब्राउज़र
|
||||
Comment[hu]=Gyors és biztonságos webböngésző
|
||||
Comment[gl]=Un navegador rápido e seguro
|
||||
Comment[ia]=Un rapide e secure navigator web
|
||||
Comment[id]=Sebuah penelusur web yang cepat dan aman
|
||||
Comment[is]=Hraðvirkur og öruggur vafri
|
||||
Comment[it]=Un browser web veloce e sicuro
|
||||
Comment[ka]=სწრაფი და დაცული ბრაუზერი
|
||||
Comment[ko]=빠르고 안전한 웹 브라우저
|
||||
Comment[lg]=Bulawuza eyanguya era nga mmizi
|
||||
Comment[lt]=Greita ir saugi saityno naršyklė
|
||||
Comment[lv]=Ātra un droša tīmekļa pārlūkprogramma
|
||||
Comment[nl]=Een snelle en veilige webbrowser
|
||||
Comment[nn]=Ein kjapp og sikker nettlesar
|
||||
Comment[pa]=ਤੇਜ਼ ਅਤੇ ਸੁਰੱਕਿਅਤ ਵੈੱਬ ਬਰਾਊਜ਼ਰ
|
||||
@ -85,12 +72,12 @@ Comment[pl]=Szybka i bezpieczna przeglądarka internetowa
|
||||
Comment[pt]=Um navegador Web rápido e seguro
|
||||
Comment[pt_BR]=Um navegar Web rápido e seguro
|
||||
Comment[ru]=Быстрый и безопасный веб-браузер
|
||||
Comment[sa]=द्रुतगतिः सुरक्षितः च जालपुटः
|
||||
Comment[sk]=Rýchly a bezpečný prehliadač internetu
|
||||
Comment[sl]=Hiter in varen spletni brskalnik
|
||||
Comment[sv]=En snabb och säker webbläsare
|
||||
Comment[tr]=Hızlı ve güvenli bir web tarayıcısı
|
||||
Comment[uk]=Проста і безпечна програма для перегляду інтернету
|
||||
Comment[x-test]=xxA fast and secure web browserxx
|
||||
Comment[zh_CN]=一款安全快速的网页浏览器
|
||||
Comment[zh_TW]=快速且安全的網路瀏覽器
|
||||
GenericName=Web Browser
|
||||
@ -104,25 +91,19 @@ GenericName[da]=Webbrowser
|
||||
GenericName[de]=Webbrowser
|
||||
GenericName[el]=Περιηγητής ιστού
|
||||
GenericName[en_GB]=Web Browser
|
||||
GenericName[eo]=Retumilo
|
||||
GenericName[es]=Navegador web
|
||||
GenericName[et]=Veebilehitseja
|
||||
GenericName[eu]=Web arakatzailea
|
||||
GenericName[fi]=Verkkoselain
|
||||
GenericName[fr]=Navigateur Web
|
||||
GenericName[gl]=Navegador web
|
||||
GenericName[he]=דפדפן
|
||||
GenericName[hi]=वेब ब्राउज़र
|
||||
GenericName[hu]=Webböngésző
|
||||
GenericName[ia]=Navigator Web
|
||||
GenericName[id]=Penelusur Web
|
||||
GenericName[is]=Vafri
|
||||
GenericName[it]=Browser web
|
||||
GenericName[ka]=ვებ-ბრაუზერი
|
||||
GenericName[ko]=웹 브라우저
|
||||
GenericName[lg]=Bulawuza ya ku Mutimbagano
|
||||
GenericName[lt]=Saityno naršyklė
|
||||
GenericName[lv]=Tīmekļa pārlūks
|
||||
GenericName[nl]=Webbrowser
|
||||
GenericName[nn]=Nettlesar
|
||||
GenericName[pa]=ਵੈੱਬ ਬਰਾਊਜ਼ਰ
|
||||
@ -130,17 +111,17 @@ GenericName[pl]=Przeglądarka sieciowa
|
||||
GenericName[pt]=Navegador Web
|
||||
GenericName[pt_BR]=Navegador Web
|
||||
GenericName[ru]=Веб-браузер
|
||||
GenericName[sa]=जाल ब्राउज़र
|
||||
GenericName[sk]=Webový prehliadač
|
||||
GenericName[sl]=Spletni brskalnik
|
||||
GenericName[sv]=Webbläsare
|
||||
GenericName[tr]=Web Tarayıcısı
|
||||
GenericName[tr]=Web Tarayıcı
|
||||
GenericName[uk]=Переглядач інтернету
|
||||
GenericName[x-test]=xxWeb Browserxx
|
||||
GenericName[zh_CN]=网页浏览器
|
||||
GenericName[zh_TW]=網路瀏覽器
|
||||
Exec=falkon %u
|
||||
StartupWMClass=Falkon
|
||||
MimeType=text/html;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;application/x-mimearchive;
|
||||
MimeType=text/html;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;application/x-mimearchive;
|
||||
Terminal=false
|
||||
Actions=NewTab;NewWindow;PrivateBrowsing;
|
||||
|
||||
@ -156,38 +137,32 @@ Name[da]=Åbn nyt faneblad
|
||||
Name[de]=Neues Unterfenster öffnen
|
||||
Name[el]=Άνοιγμα νέας καρτέλας
|
||||
Name[en_GB]=Open new tab
|
||||
Name[eo]=Malfermi novan langeton
|
||||
Name[es]=Abrir nueva pestaña
|
||||
Name[et]=Uue kaardi avamine
|
||||
Name[eu]=Ireki fitxa berria
|
||||
Name[fi]=Avaa uusi välilehti
|
||||
Name[fr]=Ouvrir un nouvel onglet
|
||||
Name[gl]=Abrir un novo separador
|
||||
Name[he]=פתיחת לשונית חדשה
|
||||
Name[hi]=नया टैब खोलें
|
||||
Name[hu]=Új lap megnyitása
|
||||
Name[ia]=Aperi nove scheda
|
||||
Name[id]=Buka tab baru
|
||||
Name[is]=Opna nýjan flipa
|
||||
Name[it]=Apri una nuova scheda
|
||||
Name[ka]=ახალი ჩანართის გახსნა
|
||||
Name[ko]=새 탭 열기
|
||||
Name[lg]=Leeta katimbe kapya
|
||||
Name[lt]=Atverti naują kortelę
|
||||
Name[lv]=Atvērt jaunu cilni
|
||||
Name[nl]=Nieuw tabblad openen
|
||||
Name[nn]=Opna ny fane
|
||||
Name[pa]=ਨਵੀਂ ਟੈਬ ਨੂੰ ਖੋਲ੍ਹੋ
|
||||
Name[pa]=ਨਵਾਂ ਟੈਬ ਖੋਲ੍ਹੋ
|
||||
Name[pl]=Otwórz nową kartę
|
||||
Name[pt]=Abrir uma nova página
|
||||
Name[pt_BR]=Abrir uma nova aba
|
||||
Name[ru]=Открыть новую вкладку
|
||||
Name[sa]=नूतनं ट्याब् उद्घाटयन्तु
|
||||
Name[sk]=Otvoriť novú záložku
|
||||
Name[sl]=Odpri novi zavihek
|
||||
Name[sv]=Öppna ny flik
|
||||
Name[tr]=Yeni Sekme Aç
|
||||
Name[tr]=Yeni sekme aç
|
||||
Name[uk]=Відкрити нову вкладку
|
||||
Name[x-test]=xxOpen new tabxx
|
||||
Name[zh_CN]=新建标签页
|
||||
Name[zh_TW]=開啟新分頁
|
||||
Icon=tab-new
|
||||
@ -205,38 +180,32 @@ Name[da]=Åbn nyt vindue
|
||||
Name[de]=Neues Fenster öffnen
|
||||
Name[el]=Άνοιγμα νέου παραθύρου
|
||||
Name[en_GB]=Open new window
|
||||
Name[eo]=Malfermi novan fenestron
|
||||
Name[es]=Abrir nueva ventana
|
||||
Name[et]=Uue akna avamine
|
||||
Name[eu]=Ireki leiho berria
|
||||
Name[fi]=Avaa uusi ikkuna
|
||||
Name[fr]=Ouvrir une nouvelle fenêtre
|
||||
Name[gl]=Abrir unha xanela nova
|
||||
Name[he]=פתיחת חלון חדש
|
||||
Name[hi]=नई विंडो खोलें
|
||||
Name[hu]=Új ablak megnyitása
|
||||
Name[ia]=Aperi nove fenestra
|
||||
Name[id]=Buka jendela baru
|
||||
Name[is]=Opna nýjan glugga
|
||||
Name[it]=Apre una nuova finestra
|
||||
Name[ka]=ახალ ფანჯრის გახსნა
|
||||
Name[ko]=새 창 열기
|
||||
Name[lg]=Leeta ddirisa ppya
|
||||
Name[lt]=Atverti naują langą
|
||||
Name[lv]=Atvērt jaunu logu
|
||||
Name[nl]=Nieuw venster openen
|
||||
Name[nn]=Opna nytt vindauge
|
||||
Name[pa]=ਨਵੀਂ ਵਿੰਡੋ ਨੂੰ ਖੋਲ੍ਹੋ
|
||||
Name[pa]=ਨਵੀਂ ਵਿੰਡੋ ਖੋਲ੍ਹੋ
|
||||
Name[pl]=Otwórz nowe okno
|
||||
Name[pt]=Abrir uma nova janela
|
||||
Name[pt_BR]=Abrir nova janela
|
||||
Name[ru]=Открыть новое окно
|
||||
Name[sa]=नूतनं विण्डो उद्घाटयन्तु
|
||||
Name[sk]=Otvoriť nové okno
|
||||
Name[sl]=Odpri novo okno
|
||||
Name[sv]=Öppna nytt fönster
|
||||
Name[tr]=Yeni Pencere Aç
|
||||
Name[tr]=Yeni pencere aç
|
||||
Name[uk]=Відкрити нове вікно
|
||||
Name[x-test]=xxOpen new windowxx
|
||||
Name[zh_CN]=打开新窗口
|
||||
Name[zh_TW]=開啟新視窗
|
||||
Icon=window-new
|
||||
@ -254,38 +223,31 @@ Name[da]=Start privat browsing
|
||||
Name[de]=Im privaten Browsermodus starten
|
||||
Name[el]=Έναρξη ιδιωτικής περιήγησης
|
||||
Name[en_GB]=Start private browsing
|
||||
Name[eo]=Komenci privatan foliumadon
|
||||
Name[es]=Iniciar navegación privada
|
||||
Name[et]=Privaatse lehitsemise alustamine
|
||||
Name[eu]=Abiatu arakatze pribatua
|
||||
Name[fi]=Aloita yksityisselaus
|
||||
Name[fr]=Démarrer la navigation privée
|
||||
Name[gl]=Iniciar a navegación privada
|
||||
Name[he]=התחלת גלישה פרטית
|
||||
Name[hi]=निजी ब्राउज़िंग प्रारंभ करें
|
||||
Name[hu]=Privát böngészés indítása
|
||||
Name[ia]=Initia navigation private
|
||||
Name[id]=Mulai penelusuran privasi
|
||||
Name[is]=Byrja einkavafur
|
||||
Name[it]=Avvia navigazione anonima
|
||||
Name[ka]=ანონიმური ბრაუზერის გაშვება
|
||||
Name[ko]=비밀 브라우징 시작
|
||||
Name[lg]=Tandika enkebera emmizi
|
||||
Name[lt]=Pradėti privatų naršymą
|
||||
Name[lv]=Sākt privāto pārlūkošanu
|
||||
Name[nl]=Privébrowsing starten
|
||||
Name[nn]=Start privat nettlesing
|
||||
Name[pa]=ਪ੍ਰਾਈਵੇਟ ਬਾਊਰਜ਼ਿੰਗ ਸ਼ੁਰੂ ਕਰੋ
|
||||
Name[pl]=Rozpocznij prywatne przeglądanie
|
||||
Name[pt]=Iniciar a navegação privada
|
||||
Name[pt_BR]=Iniciar navegação privada
|
||||
Name[ru]=Начать просмотр в конфиденциальном режиме
|
||||
Name[sa]=निजी ब्राउजिंग् आरभत
|
||||
Name[sk]=Začať súkromné prehliadanie
|
||||
Name[sl]=Začni zasebno brskanje
|
||||
Name[sv]=Starta privat webbläsning
|
||||
Name[tr]=Gizli Taramayı Başlat
|
||||
Name[tr]=Gizli taramayı başlat
|
||||
Name[uk]=Конфіденційний перегляд
|
||||
Name[x-test]=xxStart private browsingxx
|
||||
Name[zh_CN]=启动隐身浏览
|
||||
Name[zh_TW]=開始隱私瀏覽
|
||||
Icon=view-private
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-03-05 06:45+0300\n"
|
||||
"Last-Translator: Safa Alfulaij <safa1996alfulaij@gmail.com>\n"
|
||||
"Language-Team: Arabic <doc@arabeyes.org>\n"
|
||||
@ -15,7 +15,8 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
|
||||
"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n"
|
||||
"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
|
||||
"X-Generator: Lokalize 2.0\n"
|
||||
|
||||
#: hellopython.py:69
|
||||
msgid "My first plugin action"
|
||||
@ -35,8 +36,8 @@ msgstr "أغلق"
|
||||
|
||||
#: hellopython.py:91
|
||||
msgid "Hello Python Settings"
|
||||
msgstr "إعدادات ”أهلًا يا بيثون“"
|
||||
msgstr "إعدادات ”أهلًا يا پيثون“"
|
||||
|
||||
#: sidebar.py:24 sidebar.py:27
|
||||
msgid "Hello Python Sidebar"
|
||||
msgstr "شريط ”أهلًا يا بيثون“ الجانبيّ"
|
||||
msgstr "شريط ”أهلًا يا پيثون“ الجانبيّ"
|
||||
|
@ -1,70 +0,0 @@
|
||||
# Copyright (C) YEAR This_file_is_part_of_KDE
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Zayed Al-Saidi <zayed.alsaidi@gmail.com>, 2023.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-01-25 20:39+0400\n"
|
||||
"Last-Translator: Zayed Al-Saidi <zayed.alsaidi@gmail.com>\n"
|
||||
"Language-Team: ar\n"
|
||||
"Language: ar\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
|
||||
"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n"
|
||||
|
||||
#: main.qml:23
|
||||
msgid "\"Hello QML\" plugin loaded"
|
||||
msgstr "حمل ملحق \"أهلا كيو ام ال\""
|
||||
|
||||
#: main.qml:35
|
||||
msgid "Bye!"
|
||||
msgstr "مع السلامة!"
|
||||
|
||||
#: main.qml:52
|
||||
msgid "Testing QML Title"
|
||||
msgstr "يختبر عنوان كيو ام ال"
|
||||
|
||||
#: main.qml:53
|
||||
msgid "Testing QML Tooltip"
|
||||
msgstr "يختبر تلميحة كيو ام ال"
|
||||
|
||||
#: main.qml:81
|
||||
msgid "Click Me!"
|
||||
msgstr "انقرني!"
|
||||
|
||||
#: main.qml:97
|
||||
msgid "Testing QML SideBar"
|
||||
msgstr "يختبر الشريط الجانبي كيو ام ال"
|
||||
|
||||
#: main.qml:109
|
||||
msgid "Hello Qml Plugin"
|
||||
msgstr "ملحق أهلا كيو ام ال"
|
||||
|
||||
#: main.qml:126
|
||||
msgid "Hello QML"
|
||||
msgstr "أهلا كيو ام ال"
|
||||
|
||||
#: main.qml:127
|
||||
msgid "First qml plugin action works :-)"
|
||||
msgstr "أول محلق كيو ام ال يعمل :-)"
|
||||
|
||||
#: main.qml:152
|
||||
msgid "Enter text to save"
|
||||
msgstr "أدخل نصا لحفظة"
|
||||
|
||||
#: main.qml:157 main.qml:162
|
||||
msgid "Save"
|
||||
msgstr "احفظ"
|
||||
|
||||
#: main.qml:172
|
||||
msgid "Saved!"
|
||||
msgstr "حفظت!"
|
||||
|
||||
#: main.qml:174
|
||||
msgid "Error occurred, try again!"
|
||||
msgstr "حدث خطأ، حاول مرة أخرى!"
|
@ -1,46 +0,0 @@
|
||||
# Copyright (C) YEAR This_file_is_part_of_KDE
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Zayed Al-Saidi <zayed.alsaidi@gmail.com>, 2023.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-01-25 20:30+0400\n"
|
||||
"Last-Translator: Zayed Al-Saidi <zayed.alsaidi@gmail.com>\n"
|
||||
"Language-Team: ar\n"
|
||||
"Language: ar\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
|
||||
"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n"
|
||||
|
||||
#: mcl_settings.py:43
|
||||
msgid "MiddleClickLoader Setting"
|
||||
msgstr "إعدادات محمل النقر الأوسط"
|
||||
|
||||
#: mcl_settings.py:44
|
||||
msgid "MiddleClickLoader"
|
||||
msgstr "محمل النقر الأوسط"
|
||||
|
||||
#: mcl_settings.py:45
|
||||
msgid "Open url in:"
|
||||
msgstr "افتح الرابط في:"
|
||||
|
||||
#: mcl_settings.py:46
|
||||
msgid "Use only valid url"
|
||||
msgstr "استخدم رابط صحيح فقط"
|
||||
|
||||
#: mcl_settings.py:48
|
||||
msgid "New Tab"
|
||||
msgstr "لسان جديد"
|
||||
|
||||
#: mcl_settings.py:49
|
||||
msgid "Current Tab"
|
||||
msgstr "اللسان الحالي"
|
||||
|
||||
#: mcl_settings.py:50
|
||||
msgid "New Window"
|
||||
msgstr "نافذة جديدة"
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-03-05 07:15+0300\n"
|
||||
"Last-Translator: Safa Alfulaij <safa1996alfulaij@gmail.com>\n"
|
||||
"Language-Team: Arabic <doc@arabeyes.org>\n"
|
||||
@ -15,7 +15,8 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
|
||||
"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n"
|
||||
"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
|
||||
"X-Generator: Lokalize 2.0\n"
|
||||
|
||||
#: button.py:30
|
||||
msgid "Run Action"
|
||||
|
@ -1,42 +0,0 @@
|
||||
# Copyright (C) YEAR This_file_is_part_of_KDE
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2024 Enol P. <enolp@softastur.org>
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2024-03-27 23:31+0100\n"
|
||||
"Last-Translator: Enol P. <enolp@softastur.org>\n"
|
||||
"Language-Team: Asturian <alministradores@softastur.org>\n"
|
||||
"Language: ast\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Lokalize 24.02.1\n"
|
||||
|
||||
#: hellopython.py:69
|
||||
msgid "My first plugin action"
|
||||
msgstr ""
|
||||
|
||||
#: hellopython.py:76
|
||||
msgid "Hello"
|
||||
msgstr ""
|
||||
|
||||
#: hellopython.py:76
|
||||
msgid "First plugin action works :-)"
|
||||
msgstr ""
|
||||
|
||||
#: hellopython.py:81
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
|
||||
#: hellopython.py:91
|
||||
msgid "Hello Python Settings"
|
||||
msgstr ""
|
||||
|
||||
#: sidebar.py:24 sidebar.py:27
|
||||
msgid "Hello Python Sidebar"
|
||||
msgstr ""
|
@ -1,70 +0,0 @@
|
||||
# Copyright (C) YEAR This_file_is_part_of_KDE
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2024 Enol P. <enolp@softastur.org>
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2024-03-27 23:31+0100\n"
|
||||
"Last-Translator: Enol P. <enolp@softastur.org>\n"
|
||||
"Language-Team: Asturian <alministradores@softastur.org>\n"
|
||||
"Language: ast\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Lokalize 24.02.1\n"
|
||||
|
||||
#: main.qml:23
|
||||
msgid "\"Hello QML\" plugin loaded"
|
||||
msgstr ""
|
||||
|
||||
#: main.qml:35
|
||||
msgid "Bye!"
|
||||
msgstr ""
|
||||
|
||||
#: main.qml:52
|
||||
msgid "Testing QML Title"
|
||||
msgstr ""
|
||||
|
||||
#: main.qml:53
|
||||
msgid "Testing QML Tooltip"
|
||||
msgstr ""
|
||||
|
||||
#: main.qml:81
|
||||
msgid "Click Me!"
|
||||
msgstr ""
|
||||
|
||||
#: main.qml:97
|
||||
msgid "Testing QML SideBar"
|
||||
msgstr ""
|
||||
|
||||
#: main.qml:109
|
||||
msgid "Hello Qml Plugin"
|
||||
msgstr ""
|
||||
|
||||
#: main.qml:126
|
||||
msgid "Hello QML"
|
||||
msgstr ""
|
||||
|
||||
#: main.qml:127
|
||||
msgid "First qml plugin action works :-)"
|
||||
msgstr ""
|
||||
|
||||
#: main.qml:152
|
||||
msgid "Enter text to save"
|
||||
msgstr ""
|
||||
|
||||
#: main.qml:157 main.qml:162
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
#: main.qml:172
|
||||
msgid "Saved!"
|
||||
msgstr ""
|
||||
|
||||
#: main.qml:174
|
||||
msgid "Error occurred, try again!"
|
||||
msgstr ""
|
@ -1,46 +0,0 @@
|
||||
# Copyright (C) YEAR This_file_is_part_of_KDE
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2024 Enol P. <enolp@softastur.org>
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2024-03-27 23:34+0100\n"
|
||||
"Last-Translator: Enol P. <enolp@softastur.org>\n"
|
||||
"Language-Team: Asturian <alministradores@softastur.org>\n"
|
||||
"Language: ast\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Lokalize 24.02.1\n"
|
||||
|
||||
#: mcl_settings.py:43
|
||||
msgid "MiddleClickLoader Setting"
|
||||
msgstr ""
|
||||
|
||||
#: mcl_settings.py:44
|
||||
msgid "MiddleClickLoader"
|
||||
msgstr ""
|
||||
|
||||
#: mcl_settings.py:45
|
||||
msgid "Open url in:"
|
||||
msgstr ""
|
||||
|
||||
#: mcl_settings.py:46
|
||||
msgid "Use only valid url"
|
||||
msgstr ""
|
||||
|
||||
#: mcl_settings.py:48
|
||||
msgid "New Tab"
|
||||
msgstr "Llingüeta nueva"
|
||||
|
||||
#: mcl_settings.py:49
|
||||
msgid "Current Tab"
|
||||
msgstr ""
|
||||
|
||||
#: mcl_settings.py:50
|
||||
msgid "New Window"
|
||||
msgstr ""
|
@ -1,42 +0,0 @@
|
||||
# Copyright (C) YEAR This_file_is_part_of_KDE
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2024 Enol P. <enolp@softastur.org>
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2024-03-27 23:37+0100\n"
|
||||
"Last-Translator: Enol P. <enolp@softastur.org>\n"
|
||||
"Language-Team: Asturian <alministradores@softastur.org>\n"
|
||||
"Language: ast\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Lokalize 24.02.1\n"
|
||||
|
||||
#: button.py:30
|
||||
msgid "Run Action"
|
||||
msgstr ""
|
||||
|
||||
#: button.py:31
|
||||
msgid "Run action on current page"
|
||||
msgstr ""
|
||||
|
||||
#: button.py:39
|
||||
msgid "RunAction button"
|
||||
msgstr ""
|
||||
|
||||
#: button.py:48
|
||||
msgid "Configure..."
|
||||
msgstr ""
|
||||
|
||||
#: settingsdialog.py:38
|
||||
msgid "Run Action Settings"
|
||||
msgstr ""
|
||||
|
||||
#: settingsdialog.py:39
|
||||
msgid "Available actions"
|
||||
msgstr ""
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-10-31 11:31+0400\n"
|
||||
"Last-Translator: Kheyyam Gojayev <xxmn77@gmail.com>\n"
|
||||
"Language-Team: Azerbaijani <kde-i18n-doc@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2022-07-06 09:32+0400\n"
|
||||
"Last-Translator: Kheyyam <xxmn77@gmail.com>\n"
|
||||
"Language-Team: Azerbaijani <kde-i18n-doc@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-10-31 11:37+0400\n"
|
||||
"Last-Translator: Kheyyam Gojayev <xxmn77@gmail.com>\n"
|
||||
"Language-Team: Azerbaijani <kde-i18n-doc@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-10-31 11:38+0400\n"
|
||||
"Last-Translator: Kheyyam Gojayev <xxmn77@gmail.com>\n"
|
||||
"Language-Team: Azerbaijani <kde-i18n-doc@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2021-01-04 16:58+0200\n"
|
||||
"Last-Translator: Yasen Pramatarov <yasen@lindeas.com>\n"
|
||||
"Language-Team: Bulgarian <dict@ludost.net>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2021-01-04 17:04+0200\n"
|
||||
"Last-Translator: Yasen Pramatarov <yasen@lindeas.com>\n"
|
||||
"Language-Team: Bulgarian <dict@ludost.net>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2021-01-04 17:01+0200\n"
|
||||
"Last-Translator: Yasen Pramatarov <yasen@lindeas.com>\n"
|
||||
"Language-Team: Bulgarian <dict@ludost.net>\n"
|
||||
|
@ -2,21 +2,20 @@
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Yasen Pramatarov <yasen@lindeas.com>, 2021.
|
||||
# SPDX-FileCopyrightText: 2024 Mincho Kondarev <mkondarev@yahoo.de>
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2024-11-10 13:06+0100\n"
|
||||
"Last-Translator: Mincho Kondarev <mkondarev@yahoo.de>\n"
|
||||
"Language-Team: Bulgarian <kde-i18n-doc@kde.org>\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2021-01-04 16:57+0200\n"
|
||||
"Last-Translator: Yasen Pramatarov <yasen@lindeas.com>\n"
|
||||
"Language-Team: Bulgarian <dict@ludost.net>\n"
|
||||
"Language: bg\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Lokalize 24.11.70\n"
|
||||
"X-Generator: Lokalize 20.08.2\n"
|
||||
|
||||
#: button.py:30
|
||||
msgid "Run Action"
|
||||
@ -32,7 +31,7 @@ msgstr "RunAction бутон"
|
||||
|
||||
#: button.py:48
|
||||
msgid "Configure..."
|
||||
msgstr "Настройки…"
|
||||
msgstr "Настойки..."
|
||||
|
||||
#: settingsdialog.py:38
|
||||
msgid "Run Action Settings"
|
||||
@ -40,4 +39,4 @@ msgstr "Настройки на действие"
|
||||
|
||||
#: settingsdialog.py:39
|
||||
msgid "Available actions"
|
||||
msgstr "Налични действия"
|
||||
msgstr "Налични действие"
|
||||
|
@ -9,7 +9,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-11-27 20:43+0100\n"
|
||||
"Last-Translator: Josep M. Ferrer <txemaq@gmail.com>\n"
|
||||
"Language-Team: Catalan <kde-i18n-ca@kde.org>\n"
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2021-10-29 11:40+0200\n"
|
||||
"Last-Translator: Josep M. Ferrer <txemaq@gmail.com>\n"
|
||||
"Language-Team: Catalan <kde-i18n-ca@kde.org>\n"
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-07-18 19:49+0100\n"
|
||||
"Last-Translator: Josep M. Ferrer <txemaq@gmail.com>\n"
|
||||
"Language-Team: Catalan <kde-i18n-ca@kde.org>\n"
|
||||
|
@ -9,7 +9,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-11-27 20:46+0100\n"
|
||||
"Last-Translator: Josep M. Ferrer <txemaq@gmail.com>\n"
|
||||
"Language-Team: Catalan <kde-i18n-ca@kde.org>\n"
|
||||
|
@ -9,7 +9,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-11-27 20:43+0100\n"
|
||||
"Last-Translator: Josep M. Ferrer <txemaq@gmail.com>\n"
|
||||
"Language-Team: Catalan <kde-i18n-ca@kde.org>\n"
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2021-10-29 11:40+0200\n"
|
||||
"Last-Translator: Josep M. Ferrer <txemaq@gmail.com>\n"
|
||||
"Language-Team: Catalan <kde-i18n-ca@kde.org>\n"
|
||||
@ -69,4 +69,4 @@ msgstr "Guardat!"
|
||||
|
||||
#: main.qml:174
|
||||
msgid "Error occurred, try again!"
|
||||
msgstr "S'ha produït un error, torneu-ho a provar!"
|
||||
msgstr "S'ha produït un error, torneu a provar!"
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-07-18 19:49+0100\n"
|
||||
"Last-Translator: Josep M. Ferrer <txemaq@gmail.com>\n"
|
||||
"Language-Team: Catalan <kde-i18n-ca@kde.org>\n"
|
||||
@ -30,7 +30,7 @@ msgstr "MiddleClickLoader"
|
||||
|
||||
#: mcl_settings.py:45
|
||||
msgid "Open url in:"
|
||||
msgstr "Obri l'URL en:"
|
||||
msgstr "Obri l'URL a:"
|
||||
|
||||
#: mcl_settings.py:46
|
||||
msgid "Use only valid url"
|
||||
|
@ -9,7 +9,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-11-27 20:46+0100\n"
|
||||
"Last-Translator: Josep M. Ferrer <txemaq@gmail.com>\n"
|
||||
"Language-Team: Catalan <kde-i18n-ca@kde.org>\n"
|
||||
@ -34,7 +34,7 @@ msgstr "Botó d'Executa una acció"
|
||||
|
||||
#: button.py:48
|
||||
msgid "Configure..."
|
||||
msgstr "Configura…"
|
||||
msgstr "Configura..."
|
||||
|
||||
#: settingsdialog.py:38
|
||||
msgid "Run Action Settings"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-06-25 10:49+0100\n"
|
||||
"Last-Translator: Vit Pelcak <vit@pelcak.org>\n"
|
||||
"Language-Team: Czech <kde-i18n-doc@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-05-26 11:33+0200\n"
|
||||
"Last-Translator: Vit Pelcak <vit@pelcak.org>\n"
|
||||
"Language-Team: Czech <kde-i18n-doc@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-07-26 10:14+0100\n"
|
||||
"Last-Translator: Vit Pelcak <vit@pelcak.org>\n"
|
||||
"Language-Team: Czech <kde-i18n-doc@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-04-03 16:37+0100\n"
|
||||
"Last-Translator: Vit Pelcak <vit@pelcak.org>\n"
|
||||
"Language-Team: Czech <kde-i18n-doc@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon_hellopython\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-03-24 16:55+0200\n"
|
||||
"Last-Translator: scootergrisen\n"
|
||||
"Language-Team: Danish\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-02-11 19:58+0100\n"
|
||||
"Last-Translator: Martin Schlander <mschlander@opensuse.org>\n"
|
||||
"Language-Team: Danish <kde-i18n-doc@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-02-11 19:56+0100\n"
|
||||
"Last-Translator: Martin Schlander <mschlander@opensuse.org>\n"
|
||||
"Language-Team: Danish <kde-i18n-doc@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon_runaction\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-03-24 16:54+0200\n"
|
||||
"Last-Translator: scootergrisen\n"
|
||||
"Language-Team: Danish\n"
|
||||
|
@ -4,9 +4,9 @@
|
||||
# Burkhard Lück <lueck@hube-lueck.de>, 2018.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon_hellopython\n"
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-03-21 10:53+0100\n"
|
||||
"Last-Translator: Burkhard Lück <lueck@hube-lueck.de>\n"
|
||||
"Language-Team: German <kde-i18n-de@kde.org>\n"
|
||||
@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
|
||||
#: hellopython.py:69
|
||||
msgid "My first plugin action"
|
||||
|
@ -4,9 +4,9 @@
|
||||
# Burkhard Lück <lueck@hube-lueck.de>, 2018.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon_helloqml\n"
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-11-22 09:36+0100\n"
|
||||
"Last-Translator: Burkhard Lück <lueck@hube-lueck.de>\n"
|
||||
"Language-Team: German <kde-i18n-de@kde.org>\n"
|
||||
@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
|
||||
#: main.qml:23
|
||||
msgid "\"Hello QML\" plugin loaded"
|
||||
|
@ -4,9 +4,9 @@
|
||||
# Burkhard Lück <lueck@hube-lueck.de>, 2018.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon_middleclickloader\n"
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-11-22 09:32+0100\n"
|
||||
"Last-Translator: Burkhard Lück <lueck@hube-lueck.de>\n"
|
||||
"Language-Team: German <kde-i18n-de@kde.org>\n"
|
||||
@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
|
||||
#: mcl_settings.py:43
|
||||
msgid "MiddleClickLoader Setting"
|
||||
|
@ -4,9 +4,9 @@
|
||||
# Burkhard Lück <lueck@hube-lueck.de>, 2018, 2019.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon_runaction\n"
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2019-08-05 14:13+0200\n"
|
||||
"Last-Translator: Burkhard Lück <lueck@hube-lueck.de>\n"
|
||||
"Language-Team: German <kde-i18n-de@kde.org>\n"
|
||||
@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
|
||||
#: button.py:30
|
||||
msgid "Run Action"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-09-04 19:06+0300\n"
|
||||
"Last-Translator: Stelios <sstavra@gmail.com>\n"
|
||||
"Language-Team: Greek <kde-i18n-el@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-09-04 19:12+0300\n"
|
||||
"Last-Translator: Stelios <sstavra@gmail.com>\n"
|
||||
"Language-Team: Greek <kde-i18n-el@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2021-06-03 12:33+0300\n"
|
||||
"Last-Translator: Stelios <sstavra@gmail.com>\n"
|
||||
"Language-Team: Greek <kde-i18n-el@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2021-06-04 17:00+0300\n"
|
||||
"Last-Translator: Stelios <sstavra@gmail.com>\n"
|
||||
"Language-Team: Greek <kde-i18n-el@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-03-03 14:07+0000\n"
|
||||
"Last-Translator: Steve Allewell <steve.allewell@gmail.com>\n"
|
||||
"Language-Team: British English <kde-l10n-en_gb@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-10-27 19:41+0100\n"
|
||||
"Last-Translator: Steve Allewell <steve.allewell@gmail.com>\n"
|
||||
"Language-Team: British English <kde-l10n-en_gb@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-08-15 12:40+0100\n"
|
||||
"Last-Translator: Steve Allewell <steve.allewell@gmail.com>\n"
|
||||
"Language-Team: British English <kde-l10n-en_gb@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-03-04 13:36+0000\n"
|
||||
"Last-Translator: Steve Allewell <steve.allewell@gmail.com>\n"
|
||||
"Language-Team: British English <kde-l10n-en_gb@kde.org>\n"
|
||||
|
@ -1,42 +0,0 @@
|
||||
# translation of falkon_hellopython.pot to esperanto
|
||||
# Copyright (C) 2019 Free Software Foundation, Inc.
|
||||
# This file is distributed under the same license as the falkon package.
|
||||
# Oliver Kellogg <olivermkellogg@gmail.com, 2023.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-07-02 22:07+0100\n"
|
||||
"Last-Translator: Oliver Kellogg <olivermkellogg@gmail.com>\n"
|
||||
"Language-Team: Esperanto <kde-i18n-eo@kde.org>\n"
|
||||
"Language: eo\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
|
||||
#: hellopython.py:69
|
||||
msgid "My first plugin action"
|
||||
msgstr "Mia unua kromprogram-aktivo"
|
||||
|
||||
#: hellopython.py:76
|
||||
msgid "Hello"
|
||||
msgstr "Saluton"
|
||||
|
||||
#: hellopython.py:76
|
||||
msgid "First plugin action works :-)"
|
||||
msgstr "Mia unua kromprogram-aktivo funkcias :-)"
|
||||
|
||||
#: hellopython.py:81
|
||||
msgid "Close"
|
||||
msgstr "Fermi"
|
||||
|
||||
#: hellopython.py:91
|
||||
msgid "Hello Python Settings"
|
||||
msgstr "Agordoj de Hello Python"
|
||||
|
||||
#: sidebar.py:24 sidebar.py:27
|
||||
msgid "Hello Python Sidebar"
|
||||
msgstr "Flankbreto de Hello Python"
|
@ -1,72 +0,0 @@
|
||||
# translation of falkon_helloqml.pot to esperanto
|
||||
# Copyright (C) 2023, Free Software Foundation, Inc.
|
||||
# This file is distributed under the same license as the falkon package.
|
||||
# Oliver Kellogg <olivermkellogg@gmail.com, 2023.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-11-15 22:01+0100\n"
|
||||
"Last-Translator: Oliver Kellogg <olivermkellogg@gmail.com>\n"
|
||||
"Language-Team: Esperanto <kde-i18n-eo@kde.org>\n"
|
||||
"Language: eo\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Qt-Contexts: true\n"
|
||||
"X-Generator: translate-po (https://github.com/zcribe/translate-po)\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
|
||||
#: main.qml:23
|
||||
msgid "\"Hello QML\" plugin loaded"
|
||||
msgstr "\"Hello QML\" kromaĵo ŝargita"
|
||||
|
||||
#: main.qml:35
|
||||
msgid "Bye!"
|
||||
msgstr "Ĝis revido!"
|
||||
|
||||
#: main.qml:52
|
||||
msgid "Testing QML Title"
|
||||
msgstr "Testante QML-Titolon"
|
||||
|
||||
#: main.qml:53
|
||||
msgid "Testing QML Tooltip"
|
||||
msgstr "Testado de QML Tooltip"
|
||||
|
||||
#: main.qml:81
|
||||
msgid "Click Me!"
|
||||
msgstr "Klaku Min!"
|
||||
|
||||
#: main.qml:97
|
||||
msgid "Testing QML SideBar"
|
||||
msgstr "Testante QML SideBar"
|
||||
|
||||
#: main.qml:109
|
||||
msgid "Hello Qml Plugin"
|
||||
msgstr "Hello-Qml Kromprogramo"
|
||||
|
||||
#: main.qml:126
|
||||
msgid "Hello QML"
|
||||
msgstr "Saluton QML"
|
||||
|
||||
#: main.qml:127
|
||||
msgid "First qml plugin action works :-)"
|
||||
msgstr "Unua ago de qml kromaĵo funkcias :-)"
|
||||
|
||||
#: main.qml:152
|
||||
msgid "Enter text to save"
|
||||
msgstr "Enigu tekston por konservi"
|
||||
|
||||
#: main.qml:157 main.qml:162
|
||||
msgid "Save"
|
||||
msgstr "Konservi"
|
||||
|
||||
#: main.qml:172
|
||||
msgid "Saved!"
|
||||
msgstr "Konservita!"
|
||||
|
||||
#: main.qml:174
|
||||
msgid "Error occurred, try again!"
|
||||
msgstr "Eraro okazis, provu denove!"
|
@ -1,46 +0,0 @@
|
||||
# translation of falkon_middleclickloader.pot to esperanto
|
||||
# Copyright (C) 2019 Free Software Foundation, Inc.
|
||||
# This file is distributed under the same license as the falkon package.
|
||||
# Oliver Kellogg <olivermkellogg@gmail.com, 2023.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-07-02 22:07+0100\n"
|
||||
"Last-Translator: Oliver Kellogg <olivermkellogg@gmail.com>\n"
|
||||
"Language-Team: Esperanto <kde-i18n-eo@kde.org>\n"
|
||||
"Language: eo\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
|
||||
#: mcl_settings.py:43
|
||||
msgid "MiddleClickLoader Setting"
|
||||
msgstr "Agordo de MiddleClickLoader"
|
||||
|
||||
#: mcl_settings.py:44
|
||||
msgid "MiddleClickLoader"
|
||||
msgstr "MiddleClickLoader"
|
||||
|
||||
#: mcl_settings.py:45
|
||||
msgid "Open url in:"
|
||||
msgstr "Malfermi url en:"
|
||||
|
||||
#: mcl_settings.py:46
|
||||
msgid "Use only valid url"
|
||||
msgstr "Uzi nur validan url"
|
||||
|
||||
#: mcl_settings.py:48
|
||||
msgid "New Tab"
|
||||
msgstr "Nova Langeto"
|
||||
|
||||
#: mcl_settings.py:49
|
||||
msgid "Current Tab"
|
||||
msgstr "Aktuala Langeto"
|
||||
|
||||
#: mcl_settings.py:50
|
||||
msgid "New Window"
|
||||
msgstr "Nove Fenestro"
|
@ -1,42 +0,0 @@
|
||||
# translation of falkon_runaction.pot to esperanto
|
||||
# Copyright (C) 2019 Free Software Foundation, Inc.
|
||||
# This file is distributed under the same license as the falkon package.
|
||||
# Oliver Kellogg <olivermkellogg@gmail.com, 2023.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-07-02 22:07+0100\n"
|
||||
"Last-Translator: Oliver Kellogg <olivermkellogg@gmail.com>\n"
|
||||
"Language-Team: Esperanto <kde-i18n-eo@kde.org>\n"
|
||||
"Language: eo\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
|
||||
#: button.py:30
|
||||
msgid "Run Action"
|
||||
msgstr "Lanĉi agon"
|
||||
|
||||
#: button.py:31
|
||||
msgid "Run action on current page"
|
||||
msgstr "Lanĉi agon sur aktuala paĝo"
|
||||
|
||||
#: button.py:39
|
||||
msgid "RunAction button"
|
||||
msgstr "RunAction-butono"
|
||||
|
||||
#: button.py:48
|
||||
msgid "Configure..."
|
||||
msgstr "Agordi..."
|
||||
|
||||
#: settingsdialog.py:38
|
||||
msgid "Run Action Settings"
|
||||
msgstr "Agordoj de Agolanĉo"
|
||||
|
||||
#: settingsdialog.py:39
|
||||
msgid "Available actions"
|
||||
msgstr "Disponblaj agoj"
|
@ -1,17 +1,16 @@
|
||||
# Spanish translations for falkon_hellopython.po package.
|
||||
# Copyright (C) 2018-2025 This file is copyright:
|
||||
# This file is distributed under the same license as the falkon package.
|
||||
# Automatically generated, 2018.
|
||||
# Copyright (C) 2018 This_file_is_part_of_KDE
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2018 Eloy Cuadra <ecuadra@eloihr.net>
|
||||
# SPDX-FileCopyrightText: 2025 Víctor Rodrigo Córdoba <vrcordoba@gmail.com>
|
||||
# Automatically generated, 2018.
|
||||
# Eloy Cuadra <ecuadra@eloihr.net>, 2018.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon_hellopython\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2025-06-09 01:45+0100\n"
|
||||
"Last-Translator: Víctor Rodrigo Córdoba <vrcordoba@gmail.com>\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-04-09 13:26+0200\n"
|
||||
"Last-Translator: Javier Viñal <fjvinal@gmail.com>\n"
|
||||
"Language-Team: Spanish <kde-l10n-es@kde.org>\n"
|
||||
"Language: es\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -1,16 +1,14 @@
|
||||
# Spanish translations for falkon_helloqml.po package.
|
||||
# Copyright (C) 2018-2025 This file is copyright:
|
||||
# This file is distributed under the same license as the falkon package.
|
||||
# Copyright (C) YEAR This_file_is_part_of_KDE
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2018 Javier Vinal <fjvinal@gmail.com>
|
||||
# SPDX-FileCopyrightText: 2025 Víctor Rodrigo Córdoba <vrcordoba@gmail.com>
|
||||
# Javier Vinal <fjvinal@gmail.com>, 2018.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon_helloqml\n"
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2025-06-09 01:45+0100\n"
|
||||
"Last-Translator: Víctor Rodrigo Córdoba <vrcordoba@gmail.com>\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-10-03 22:32+0100\n"
|
||||
"Last-Translator: Javier Vinal <fjvinal@gmail.com>\n"
|
||||
"Language-Team: Spanish <kde-l10n-es@kde.org>\n"
|
||||
"Language: es\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -1,17 +1,16 @@
|
||||
# Spanish translations for falkon_middleclickloader.po package.
|
||||
# Copyright (C) 2018-2025 This file is copyright:
|
||||
# This file is distributed under the same license as the falkon package.
|
||||
# Automatically generated, 2018.
|
||||
# Copyright (C) 2018 This_file_is_part_of_KDE
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2018 Eloy Cuadra <ecuadra@eloihr.net>
|
||||
# SPDX-FileCopyrightText: 2025 Víctor Rodrigo Córdoba <vrcordoba@gmail.com>
|
||||
# Automatically generated, 2018.
|
||||
# Eloy Cuadra <ecuadra@eloihr.net>, 2018.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon_middleclickloader\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2025-06-09 01:45+0100\n"
|
||||
"Last-Translator: Víctor Rodrigo Córdoba <vrcordoba@gmail.com>\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-07-18 20:07+0100\n"
|
||||
"Last-Translator: Eloy Cuadra <ecuadra@eloihr.net>\n"
|
||||
"Language-Team: Spanish <kde-l10n-es@kde.org>\n"
|
||||
"Language: es\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -1,17 +1,16 @@
|
||||
# Spanish translations for falkon_runaction.po package.
|
||||
# Copyright (C) 2018-2025 This file is copyright:
|
||||
# This file is distributed under the same license as the falkon package.
|
||||
# Automatically generated, 2018.
|
||||
# Copyright (C) 2018 This_file_is_part_of_KDE
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2018 Eloy Cuadra <ecuadra@eloihr.net>
|
||||
# SPDX-FileCopyrightText: 2025 Víctor Rodrigo Córdoba <vrcordoba@gmail.com>
|
||||
# Automatically generated, 2018.
|
||||
# Eloy Cuadra <ecuadra@eloihr.net>, 2018.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon_runaction\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2025-06-09 01:47+0100\n"
|
||||
"Last-Translator: Víctor Rodrigo Córdoba <vrcordoba@gmail.com>\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-03-20 22:22+0100\n"
|
||||
"Last-Translator: Eloy Cuadra <ecuadra@eloihr.net>\n"
|
||||
"Language-Team: Spanish <kde-l10n-es@kde.org>\n"
|
||||
"Language: es\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@ -34,7 +33,7 @@ msgstr "Botón «Ejecutar acción»"
|
||||
|
||||
#: button.py:48
|
||||
msgid "Configure..."
|
||||
msgstr "Configurar…"
|
||||
msgstr "Configurar..."
|
||||
|
||||
#: settingsdialog.py:38
|
||||
msgid "Run Action Settings"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2019-12-02 17:30+0200\n"
|
||||
"Last-Translator: Marek Laane <qiilaq69@gmail.com>\n"
|
||||
"Language-Team: Estonian <kde-et@lists.linux.ee>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2019-12-02 17:34+0200\n"
|
||||
"Last-Translator: Marek Laane <qiilaq69@gmail.com>\n"
|
||||
"Language-Team: Estonian <kde-et@lists.linux.ee>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2019-12-02 18:34+0200\n"
|
||||
"Last-Translator: Marek Laane <qiilaq69@gmail.com>\n"
|
||||
"Language-Team: Estonian <kde-et@lists.linux.ee>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2019-12-02 19:07+0200\n"
|
||||
"Last-Translator: Marek Laane <qiilaq69@gmail.com>\n"
|
||||
"Language-Team: Estonian <kde-et@lists.linux.ee>\n"
|
||||
|
@ -9,7 +9,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-04-25 18:35+0200\n"
|
||||
"Last-Translator: Iñigo Salvador Azurmendi <xalba@euskalnet.net>\n"
|
||||
"Language-Team: Basque <kde-i18n-eu@kde.org>\n"
|
||||
|
@ -9,7 +9,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-04-25 18:42+0200\n"
|
||||
"Last-Translator: Iñigo Salvador Azurmendi <xalba@euskalnet.net>\n"
|
||||
"Language-Team: Basque <kde-i18n-eu@kde.org>\n"
|
||||
|
@ -9,7 +9,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-04-28 20:45+0200\n"
|
||||
"Last-Translator: Iñigo Salvador Azurmendi <xalba@euskalnet.net>\n"
|
||||
"Language-Team: Basque <kde-i18n-eu@kde.org>\n"
|
||||
|
@ -9,7 +9,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-05-10 09:23+0200\n"
|
||||
"Last-Translator: Iñigo Salvador Azurmendi <xalba@euskalnet.net>\n"
|
||||
"Language-Team: Basque <kde-i18n-eu@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-07-24 19:53+0200\n"
|
||||
"Last-Translator: Tommi Nieminen <translator@legisign.org>\n"
|
||||
"Language-Team: Finnish <kde-i18n-doc@kde.org>\n"
|
||||
@ -15,6 +15,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Lokalize 2.0\n"
|
||||
|
||||
#: hellopython.py:69
|
||||
msgid "My first plugin action"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2019-01-10 12:27+0200\n"
|
||||
"Last-Translator: Tommi Nieminen <translator@legisign.org>\n"
|
||||
"Language-Team: Finnish <kde-i18n-doc@kde.org>\n"
|
||||
@ -15,6 +15,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Lokalize 2.0\n"
|
||||
|
||||
#: main.qml:23
|
||||
msgid "\"Hello QML\" plugin loaded"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-07-24 19:51+0200\n"
|
||||
"Last-Translator: Tommi Nieminen <translator@legisign.org>\n"
|
||||
"Language-Team: Finnish <kde-i18n-doc@kde.org>\n"
|
||||
@ -15,6 +15,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Lokalize 2.0\n"
|
||||
|
||||
#: mcl_settings.py:43
|
||||
msgid "MiddleClickLoader Setting"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-07-24 19:50+0200\n"
|
||||
"Last-Translator: Tommi Nieminen <translator@legisign.org>\n"
|
||||
"Language-Team: Finnish <kde-i18n-doc@kde.org>\n"
|
||||
@ -15,6 +15,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Lokalize 2.0\n"
|
||||
|
||||
#: button.py:30
|
||||
msgid "Run Action"
|
||||
|
@ -3,7 +3,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon_hellopython\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-06-05 12:05+0800\n"
|
||||
"Last-Translator: Simon Depiets <sdepiets@gmail.com>\n"
|
||||
"Language-Team: French <kde-francophone@kde.org>\n"
|
||||
|
@ -1,19 +1,18 @@
|
||||
# SPDX-FileCopyrightText: 2024 Xavier Besnard <xavier.besnard@kde.org>
|
||||
# Simon Depiets <sdepiets@gmail.com>, 2018.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon_helloqml\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2024-04-25 14:02+0200\n"
|
||||
"Last-Translator: Xavier Besnard <xavier.besnard@kde.org>\n"
|
||||
"Language-Team: French <French <kde-francophone@kde.org>>\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-12-19 16:36+0800\n"
|
||||
"Last-Translator: Simon Depiets <sdepiets@gmail.com>\n"
|
||||
"Language-Team: French <kde-francophone@kde.org>\n"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
"X-Generator: Lokalize 23.08.5\n"
|
||||
"X-Generator: Lokalize 2.0\n"
|
||||
"X-Environment: kde\n"
|
||||
"X-Accelerator-Marker: &\n"
|
||||
"X-Text-Markup: kde4\n"
|
||||
@ -44,7 +43,7 @@ msgstr "Test de la barre de navigation latérale QML"
|
||||
|
||||
#: main.qml:109
|
||||
msgid "Hello Qml Plugin"
|
||||
msgstr "Module externe « Bonjour QML »"
|
||||
msgstr "Module externe « Bonjour Qml »"
|
||||
|
||||
#: main.qml:126
|
||||
msgid "Hello QML"
|
||||
|
@ -3,7 +3,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon_middleclickloader\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-07-19 13:17+0800\n"
|
||||
"Last-Translator: Simon Depiets <sdepiets@gmail.com>\n"
|
||||
"Language-Team: French <kde-francophone@kde.org>\n"
|
||||
|
@ -3,7 +3,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: falkon_runaction\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-06-05 12:20+0800\n"
|
||||
"Last-Translator: Simon Depiets <sdepiets@gmail.com>\n"
|
||||
"Language-Team: French <kde-francophone@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-04-22 12:01+0100\n"
|
||||
"Last-Translator: Adrian Chaves <adrian@chaves.io>\n"
|
||||
"Language-Team: Galician <kde-i18n-doc@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-10-22 20:29+0100\n"
|
||||
"Last-Translator: Adrián Chaves (Gallaecio) <adrian@chaves.io>\n"
|
||||
"Language-Team: Galician <kde-i18n-doc@kde.org>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2020-01-12 12:00+0100\n"
|
||||
"Last-Translator: Adrián Chaves (Gallaecio) <adrian@chaves.io>\n"
|
||||
"Language-Team: Galician <proxecto@trasno.gal>\n"
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"POT-Creation-Date: 2019-07-01 02:41+0200\n"
|
||||
"PO-Revision-Date: 2018-04-22 12:01+0100\n"
|
||||
"Last-Translator: Adrian Chaves <adrian@chaves.io>\n"
|
||||
"Language-Team: Galician <kde-i18n-doc@kde.org>\n"
|
||||
|
@ -1,43 +0,0 @@
|
||||
# Copyright (C) YEAR This_file_is_part_of_KDE
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2024 Yaron Shahrabani <sh.yaron@gmail.com>
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2024-08-04 00:47+0300\n"
|
||||
"Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>\n"
|
||||
"Language-Team: צוות התרגום של KDE ישראל\n"
|
||||
"Language: he\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 && "
|
||||
"n % 10 == 0) ? 2 : 3));\n"
|
||||
"X-Generator: Lokalize 24.05.2\n"
|
||||
|
||||
#: hellopython.py:69
|
||||
msgid "My first plugin action"
|
||||
msgstr "הפעולה הראשונה של התוסף שלי"
|
||||
|
||||
#: hellopython.py:76
|
||||
msgid "Hello"
|
||||
msgstr "שלום"
|
||||
|
||||
#: hellopython.py:76
|
||||
msgid "First plugin action works :-)"
|
||||
msgstr "הפעולה בתוסף הראשון עובדת :-)"
|
||||
|
||||
#: hellopython.py:81
|
||||
msgid "Close"
|
||||
msgstr "סגירה"
|
||||
|
||||
#: hellopython.py:91
|
||||
msgid "Hello Python Settings"
|
||||
msgstr "הגדרות שלום פיית׳ון"
|
||||
|
||||
#: sidebar.py:24 sidebar.py:27
|
||||
msgid "Hello Python Sidebar"
|
||||
msgstr "סרגל צד של שלום פיית׳ון"
|
@ -1,71 +0,0 @@
|
||||
# Copyright (C) YEAR This_file_is_part_of_KDE
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2024 Yaron Shahrabani <sh.yaron@gmail.com>
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2024-08-06 17:15+0300\n"
|
||||
"Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>\n"
|
||||
"Language-Team: צוות התרגום של KDE ישראל\n"
|
||||
"Language: he\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 && "
|
||||
"n % 10 == 0) ? 2 : 3));\n"
|
||||
"X-Generator: Lokalize 24.05.2\n"
|
||||
|
||||
#: main.qml:23
|
||||
msgid "\"Hello QML\" plugin loaded"
|
||||
msgstr "תוסף „שלום QML” נטען"
|
||||
|
||||
#: main.qml:35
|
||||
msgid "Bye!"
|
||||
msgstr "להתראות!"
|
||||
|
||||
#: main.qml:52
|
||||
msgid "Testing QML Title"
|
||||
msgstr "בדיקת כותרת QML"
|
||||
|
||||
#: main.qml:53
|
||||
msgid "Testing QML Tooltip"
|
||||
msgstr "בדיקת חלונית עצה של QML"
|
||||
|
||||
#: main.qml:81
|
||||
msgid "Click Me!"
|
||||
msgstr "ללחוץ עליי!"
|
||||
|
||||
#: main.qml:97
|
||||
msgid "Testing QML SideBar"
|
||||
msgstr "בדיקת סרגל צד של QML"
|
||||
|
||||
#: main.qml:109
|
||||
msgid "Hello Qml Plugin"
|
||||
msgstr "תוסף שלום Qml"
|
||||
|
||||
#: main.qml:126
|
||||
msgid "Hello QML"
|
||||
msgstr "שלום QML"
|
||||
|
||||
#: main.qml:127
|
||||
msgid "First qml plugin action works :-)"
|
||||
msgstr "הפעולה הראשונה של תוסף ה־qml עובדת :-)"
|
||||
|
||||
#: main.qml:152
|
||||
msgid "Enter text to save"
|
||||
msgstr "נא למלא טקסט כדי לשמור"
|
||||
|
||||
#: main.qml:157 main.qml:162
|
||||
msgid "Save"
|
||||
msgstr "שמירה"
|
||||
|
||||
#: main.qml:172
|
||||
msgid "Saved!"
|
||||
msgstr "נשמר!"
|
||||
|
||||
#: main.qml:174
|
||||
msgid "Error occurred, try again!"
|
||||
msgstr "אירעה שגיאה, נא לנסות שוב!"
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user