pax_global_header00006660000000000000000000000064126150135420014511gustar00rootroot0000000000000052 comment=a6acb54f459ad136c8b420b6709b55f1159e994b lxqt-session-0.10.0/000077500000000000000000000000001261501354200142405ustar00rootroot00000000000000lxqt-session-0.10.0/.gitignore000066400000000000000000000000161261501354200162250ustar00rootroot00000000000000build *.kdev4 lxqt-session-0.10.0/AUTHORS000066400000000000000000000004161261501354200153110ustar00rootroot00000000000000Upstream Authors: LXQt team: http://lxqt.org Razor team: http://razor-qt.org Copyright: Copyright (c) 2010-2012 Razor team Copyright (c) 2012-2014 LXQt team License: GPL-2 and LGPL-2.1+ The full text of the licenses can be found in the 'COPYING' file. lxqt-session-0.10.0/CMakeLists.txt000066400000000000000000000023351261501354200170030ustar00rootroot00000000000000cmake_minimum_required(VERSION 3.0.2 FATAL_ERROR) project(lxqt-session) option(UPDATE_TRANSLATIONS "Update source translation translations/*.ts files" OFF) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_POSITION_INDEPENDENT_CODE ON) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTOUIC ON) include(GNUInstallDirs) find_package(KF5WindowSystem REQUIRED) find_package(Qt5Widgets REQUIRED QUIET) find_package(Qt5DBus REQUIRED QUIET) find_package(Qt5X11Extras REQUIRED QUIET) find_package(Qt5LinguistTools REQUIRED QUIET) find_package(lxqt REQUIRED QUIET) include(LXQtCompilerSettings NO_POLICY_SCOPE) include(LXQtTranslate) find_package(PkgConfig REQUIRED QUIET) pkg_check_modules(XCB REQUIRED xcb) find_package(X11 REQUIRED) add_subdirectory(lxqt-session) add_subdirectory(lxqt-config-session) add_subdirectory(lxqt-leave) # building tarball with CPack ------------------------------------------------- include(InstallRequiredSystemLibraries) set(CPACK_PACKAGE_VERSION_MAJOR ${LXQT_MAJOR_VERSION}) set(CPACK_PACKAGE_VERSION_MINOR ${LXQT_MINOR_VERSION}) set(CPACK_PACKAGE_VERSION_PATCH ${LXQT_PATCH_VERSION}) set(CPACK_GENERATOR TBZ2) set(CPACK_SOURCE_GENERATOR TBZ2) set(CPACK_SOURCE_IGNORE_FILES /build/;.gitignore;.*~;.git;.kdev4;temp) include(CPack) lxqt-session-0.10.0/LICENSE000066400000000000000000000576361261501354200152660ustar00rootroot00000000000000 GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 Copyright (C) 1991, 1999 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS lxqt-session-0.10.0/lxqt-config-session/000077500000000000000000000000001261501354200201545ustar00rootroot00000000000000lxqt-session-0.10.0/lxqt-config-session/CMakeLists.txt000066400000000000000000000035601261501354200227200ustar00rootroot00000000000000project(lxqt-config-session) set(lxqt-sessioncfg_HDRS sessionconfigwindow.h basicsettings.h modulemodel.h autostartpage.h autostartmodel.h autostartitem.h autostartedit.h autostartutils.h defaultappspage.h environmentpage.h userlocationspage.h ) set(lxqt-sessioncfg_SRCS main.cpp sessionconfigwindow.cpp basicsettings.cpp modulemodel.cpp autostartpage.cpp autostartmodel.cpp autostartitem.cpp autostartedit.cpp autostartutils.cpp defaultappspage.cpp environmentpage.cpp userlocationspage.cpp ../lxqt-session/src/windowmanager.cpp ) set(lxqt-sessioncfg_UI_FILES basicsettings.ui autostartpage.ui autostartedit.ui defaultappspage.ui environmentpage.ui ) # Translations lxqt_translate_ts(lxqt-sessioncfg_QM_FILES UPDATE_TRANSLATIONS ${UPDATE_TRANSLATIONS} SOURCES ${lxqt-sessioncfg_HDRS} ${lxqt-sessioncfg_SRCS} ${lxqt-sessioncfg_UI_FILES} INSTALL_DIR "${LXQT_TRANSLATIONS_DIR}/${PROJECT_NAME}" ) lxqt_app_translation_loader(lxqt-sessioncfg_QM_LOADER ${PROJECT_NAME}) lxqt_translate_desktop(lxqt-sessioncfg_DESKTOP_FILES SOURCES lxqt-config-session.desktop.in) add_executable(lxqt-config-session ${lxqt-sessioncfg_SRCS} ${lxqt-sessioncfg_DESKTOP_FILES} ${lxqt-sessioncfg_QM_FILES} ${lxqt-sessioncfg_QM_LOADER}) target_link_libraries(lxqt-config-session KF5::WindowSystem Qt5::Widgets Qt5::DBus Qt5::X11Extras lxqt ) INSTALL(TARGETS lxqt-config-session RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" COMPONENT Runtime ) install(FILES ${lxqt-sessioncfg_DESKTOP_FILES} DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications" COMPONENT Runtime ) install(FILES man/lxqt-config-session.1 DESTINATION "${CMAKE_INSTALL_MANDIR}/man1" COMPONENT Runtime ) lxqt-session-0.10.0/lxqt-config-session/autostartedit.cpp000066400000000000000000000035751261501354200235660ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright (C) 2011 Alec Moskvin * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include #include "autostartedit.h" #include "ui_autostartedit.h" AutoStartEdit::AutoStartEdit(QString name, QString command, bool needTray, QWidget *parent) : QDialog(parent), ui(new Ui::AutoStartEdit) { ui->setupUi(this); ui->nameEdit->setFocus(); ui->nameEdit->setText(name); ui->commandEdit->setText(command); ui->trayCheckBox->setChecked(needTray); connect(ui->browseButton, SIGNAL(clicked()), SLOT(browse())); } QString AutoStartEdit::name() { return ui->nameEdit->text(); } QString AutoStartEdit::command() { return ui->commandEdit->text(); } bool AutoStartEdit::needTray() { return ui->trayCheckBox->isChecked(); } void AutoStartEdit::browse() { QString filePath = QFileDialog::getOpenFileName(this, tr("Select Application"), "/usr/bin/"); if (!filePath.isEmpty()) ui->commandEdit->setText(filePath); } AutoStartEdit::~AutoStartEdit() { delete ui; } lxqt-session-0.10.0/lxqt-config-session/autostartedit.h000066400000000000000000000026221261501354200232230ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright (C) 2011 Alec Moskvin * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef AUTOSTARTEDIT_H #define AUTOSTARTEDIT_H #include namespace Ui { class AutoStartEdit; } class AutoStartEdit : public QDialog { Q_OBJECT public: explicit AutoStartEdit(QString name, QString command, bool needTray, QWidget* parent = 0); ~AutoStartEdit(); QString name(); QString command(); bool needTray(); private slots: void browse(); private: Ui::AutoStartEdit *ui; }; #endif // AUTOSTARTEDIT_H lxqt-session-0.10.0/lxqt-config-session/autostartedit.ui000066400000000000000000000050051261501354200234070ustar00rootroot00000000000000 AutoStartEdit 0 0 296 118 Edit Name: Search... Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok Command: Wait for system tray nameEdit commandEdit trayCheckBox buttonBox browseButton buttonBox accepted() AutoStartEdit accept() 254 96 157 102 buttonBox rejected() AutoStartEdit reject() 322 96 286 102 lxqt-session-0.10.0/lxqt-config-session/autostartitem.cpp000066400000000000000000000043541261501354200235730ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright (C) 2012 Alec Moskvin * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "autostartitem.h" #include #include #include AutostartItem::AutostartItem() : LXQt::AutostartEntry() { } AutostartItem::AutostartItem(const XdgDesktopFile& systemFile) : LXQt::AutostartEntry() { mSystemFile = systemFile; mSystem = true; } void AutostartItem::setLocalFromFile(const XdgDesktopFile& file) { mLocalFile = file; mLocalState = StateExists; } QMap AutostartItem::createItemMap() { QMap items; XdgDesktopFileList systemList = XdgAutoStart::desktopFileList(XdgDirs::autostartDirs(), false); foreach (const XdgDesktopFile& file, systemList) { QString name = QFileInfo(file.fileName()).fileName(); items.insert(name, AutostartItem(file)); } XdgDesktopFileList localList = XdgAutoStart::desktopFileList(QStringList(XdgDirs::autostartHome()), false); foreach (const XdgDesktopFile& file, localList) { QString name = QFileInfo(file.fileName()).fileName(); if (items.contains(name)) { items[name].setLocalFromFile(file); } else { AutostartItem item; item.setLocalFromFile(file); items.insert(name, item); } } return items; } lxqt-session-0.10.0/lxqt-config-session/autostartitem.h000066400000000000000000000056331261501354200232410ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright (C) 2012 Alec Moskvin * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef AUTOSTARTITEM_H #define AUTOSTARTITEM_H #include /*! \brief The AutostartItem class provides an interface for staging configuration of individual autostart items. All changes are made in memory until commit() is called. - "system" file refers to a read-only file in /etc/xdg/autostart (or a directory in $XDG_CONFIG_DIRS) - "local" file refers to the file in user's ~/.config/autostart (or in $XDG_CONFIG_HOME/autostart) When a "local" file has the same name as the "system" file, the local one overrides it. This class tries to ensure that the "local" file is deleted if it's the same as the "system" file. */ class AutostartItem : public LXQt::AutostartEntry { public: //! \brief Default constructor AutostartItem(); /*! Creates an autostart item with a "system" file * \param systemFile */ AutostartItem(const XdgDesktopFile& systemFile); //! Returns the "system" file const XdgDesktopFile& systemfile() const { return mSystemFile; } /*! Sets the local version that exists on disk * \param file the desktop file, must already exist in user's autostart directory */ void setLocalFromFile(const XdgDesktopFile &file); /*! Removes the "local" version of the file * \return true if there is no "system" version left (i.e. the item was entirely deleted) */ bool removeLocal() { return LXQt::AutostartEntry::removeLocal(); } //! Returns true if both the "local" and "system" versions exist bool overrides() const { return mSystem && isLocal(); } //! Returns true if the local version exists bool isLocal() const { return LXQt::AutostartEntry::isLocal(); } //! Returns true if the local file does not exist on disk bool isTransient() const { return mLocalState == StateTransient; } //! Creates a mapping of file name (a unique ID) to AutostartItem for the running system static QMap createItemMap(); }; #endif // AUTOSTARTITEM_H lxqt-session-0.10.0/lxqt-config-session/autostartmodel.cpp000066400000000000000000000200201261501354200237210ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - The Lightweight Desktop Environment * http://lxqt.org * * Copyright (C) 2011 Alec Moskvin * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include #include #include #include "autostartmodel.h" #include "autostartutils.h" AutoStartItemModel::AutoStartItemModel(QObject* parent) : QAbstractItemModel(parent), mItemMap(AutostartItem::createItemMap()), mGlobalIndex(QAbstractItemModel::createIndex(0, 0)), mLXQtIndex(QAbstractItemModel::createIndex(1, 0)) { QMap::iterator iter; for (iter = mItemMap.begin(); iter != mItemMap.end(); ++iter) { if (!AutostartUtils::isLXQtModule(iter.value().file())) { if (showOnlyInLXQt(iter.value().file())) mLXQtItems.append(iter.key()); else mGlobalItems.append(iter.key()); } } } AutoStartItemModel::~AutoStartItemModel() { } /* * All actual file operations are perfomed here when the window is closed. */ bool AutoStartItemModel::writeChanges() { foreach (AutostartItem item, mItemMap.values()) item.commit(); return true; } QMap AutoStartItemModel::items() { QMap allItems; QString s; foreach(s, mLXQtItems) allItems[s] = mItemMap.value(s); foreach(s, mGlobalItems) allItems[s] = mItemMap.value(s); return allItems; } /* * Creates or replaces an autostart entry */ bool AutoStartItemModel::setEntry(const QModelIndex& index, XdgDesktopFile entry, bool overwrite) { QModelIndex parent; if (index.parent().isValid()) parent = index.parent(); else if (index.isValid()) parent = index; else parent = mGlobalIndex; QString fileName = QFileInfo(entry.fileName()).fileName(); bool replacing = mItemMap.contains(fileName); if (!overwrite && replacing) return false; if (parent == mLXQtIndex) entry.setValue("OnlyShowIn", "LXQt;"); mItemMap[fileName].setFile(entry); if (replacing) { emit dataChanged(index, index); return true; } beginInsertRows(parent, 0, 0); if (parent == mGlobalIndex) mGlobalItems.append(fileName); else mLXQtItems.append(fileName); endInsertRows(); return true; } bool AutoStartItemModel::setData(const QModelIndex& index, const QVariant& value, int role) { if (role == Qt::CheckStateRole) { QString name; if (index.parent() == mGlobalIndex) name = mGlobalItems.value(index.row()); else name = mLXQtItems.value(index.row()); mItemMap[name].setEnabled(value == Qt::Checked); emit dataChanged(index, index); return true; } return false; } /* * When user clicks "Delete", removes the local item. If there is a "system" item, * it replaces it. */ bool AutoStartItemModel::removeRow(int row, const QModelIndex& parent) { if (!parent.isValid()) return false; QString item; if (parent == mGlobalIndex) item = mGlobalItems[row]; else item = mLXQtItems[row]; if (!mItemMap[item].removeLocal()) { QModelIndex index = parent.child(row, 0); emit dataChanged(index, index); return false; } beginRemoveRows(parent, row, row); if (parent == mGlobalIndex) mGlobalItems.removeAt(row); else mLXQtItems.removeAt(row); endRemoveRows(); if (mItemMap.value(item).isEmpty()) mItemMap.remove(item); return true; } QModelIndex AutoStartItemModel::index(int row, int column, const QModelIndex& parent) const { if (!parent.isValid()) { if (row == 0) return mGlobalIndex; else if (row == 1) return mLXQtIndex; } else if (parent == mGlobalIndex && row < mGlobalItems.size()) return QAbstractItemModel::createIndex(row, column, (void*)&mGlobalItems[row]); else if (parent == mLXQtIndex && row < mLXQtItems.size()) return QAbstractItemModel::createIndex(row, column, (void*)&mLXQtItems[row]); return QModelIndex(); } QVariant AutoStartItemModel::data(const QModelIndex& index, int role) const { if (!index.parent().isValid()) { if (role == Qt::DisplayRole) { if (index.row() == 0) return QString(tr("Global Autostart")); else if (index.row() == 1) return QString(tr("LXQt Autostart")); } return QVariant(); } QString name = indexToName(index); const AutostartItem& item = mItemMap.value(name); if (role == Qt::DisplayRole) { QString title = item.file().name(); if (title.isEmpty()) return name; return title; } else if (role == Qt::ToolTipRole) { QStringList tooltip; if (!item.isTransient()) tooltip << tr("Location: %1").arg(item.file().fileName()); if (item.overrides()) tooltip << tr("Overrides: %1").arg(item.systemfile().fileName()); return tooltip.join("\n"); } else if (role == Qt::DecorationRole) { if (item.overrides()) return XdgIcon::fromTheme("dialog-warning"); else if (!item.isLocal()) return XdgIcon::fromTheme("computer"); } else if (role == Qt::CheckStateRole) { return item.isEnabled() ? Qt::Checked : Qt::Unchecked; } return QVariant(); } Qt::ItemFlags AutoStartItemModel::flags(const QModelIndex& index) const { if (index.parent().isValid()) return Qt::ItemIsEnabled | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable; if (index.isValid()) return Qt::ItemIsEnabled | Qt::ItemIsSelectable; return 0; } /* * Controls which buttons are enabled/disabled based on the selecton. */ AutoStartItemModel::ActiveButtons AutoStartItemModel::activeButtons(const QModelIndex& selection) const { if (!selection.isValid() || !selection.parent().isValid()) return AddButton; else if (!mItemMap.value(indexToName(selection)).isLocal()) return AddButton | EditButton; else return AddButton | EditButton | DeleteButton; } QModelIndex AutoStartItemModel::parent(const QModelIndex& child) const { QString name = indexToName(child); if (!name.isEmpty()) { if (showOnlyInLXQt(mItemMap.value(name).file())) return mLXQtIndex; return mGlobalIndex; } return QModelIndex(); } int AutoStartItemModel::columnCount(const QModelIndex& parent) const { Q_UNUSED(parent); return 1; } int AutoStartItemModel::rowCount(const QModelIndex& parent) const { if (!parent.isValid()) return 2; if (parent == mGlobalIndex) return mGlobalItems.size(); if (parent == mLXQtIndex) return mLXQtItems.size(); return 0; } bool AutoStartItemModel::showOnlyInLXQt(const XdgDesktopFile& file) { return file.value("OnlyShowIn") == "LXQt;"; } /* * Maps the index to file name */ QString AutoStartItemModel::indexToName(const QModelIndex& index) { QString* data = static_cast(index.internalPointer()); if (data) return *data; return QString(); } XdgDesktopFile AutoStartItemModel::desktopFile(const QModelIndex& index) const { return mItemMap.value(indexToName(index)).file(); } lxqt-session-0.10.0/lxqt-config-session/autostartmodel.h000066400000000000000000000052461261501354200234030ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright (C) 2011 Alec Moskvin * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef AUTOSTARTMODEL_H #define AUTOSTARTMODEL_H #include #include #include "autostartitem.h" class AutoStartItemModel : public QAbstractItemModel { Q_OBJECT public: enum ActiveButton { AddButton = 1, EditButton = 2, DeleteButton = 4 }; Q_DECLARE_FLAGS(ActiveButtons, ActiveButton) explicit AutoStartItemModel(QObject* parent = 0); ~AutoStartItemModel(); int columnCount(const QModelIndex& parent = QModelIndex()) const; int rowCount(const QModelIndex& parent = QModelIndex()) const; QModelIndex index(int row, int column, const QModelIndex& parent = QModelIndex()) const; Qt::ItemFlags flags(const QModelIndex& index) const; QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const; QModelIndex parent(const QModelIndex &child) const; bool setData(const QModelIndex& index, const QVariant& value, int role = Qt::EditRole); bool removeRow(int row, const QModelIndex& parent = QModelIndex()); bool setEntry(const QModelIndex& index, XdgDesktopFile entry, bool overwrite=false); ActiveButtons activeButtons(const QModelIndex& selection) const; XdgDesktopFile desktopFile(const QModelIndex& index) const; public slots: bool writeChanges(); public: QMap items(); private: QMap mItemMap; QPersistentModelIndex mGlobalIndex; QPersistentModelIndex mLXQtIndex; QStringList mGlobalItems; QStringList mLXQtItems; static QString indexToName(const QModelIndex& index); static bool showOnlyInLXQt(const XdgDesktopFile& file); }; Q_DECLARE_OPERATORS_FOR_FLAGS(AutoStartItemModel::ActiveButtons) #endif // AUTOSTARTMODEL_H lxqt-session-0.10.0/lxqt-config-session/autostartpage.cpp000066400000000000000000000130431261501354200235440ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright (C) 2012 Alec Moskvin * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "autostartpage.h" #include "ui_autostartpage.h" #include "autostartedit.h" #include "autostartutils.h" #include AutoStartPage::AutoStartPage(QWidget* parent) : QWidget(parent), ui(new Ui::AutoStartPage) { ui->setupUi(this); connect(ui->addButton, SIGNAL(clicked()), SLOT(addButton_clicked())); connect(ui->editButton, SIGNAL(clicked()), SLOT(editButton_clicked())); connect(ui->deleteButton, SIGNAL(clicked()), SLOT(deleteButton_clicked())); restoreSettings(); } AutoStartPage::~AutoStartPage() { delete ui; } void AutoStartPage::restoreSettings() { QAbstractItemModel* oldModel = ui->autoStartView->model(); mXdgAutoStartModel = new AutoStartItemModel(ui->autoStartView); ui->autoStartView->setModel(mXdgAutoStartModel); delete oldModel; ui->autoStartView->setExpanded(mXdgAutoStartModel->index(0, 0), true); ui->autoStartView->setExpanded(mXdgAutoStartModel->index(1, 0), true); updateButtons(); connect(mXdgAutoStartModel, SIGNAL(dataChanged(QModelIndex,QModelIndex)), SLOT(updateButtons())); connect(ui->autoStartView->selectionModel(), SIGNAL(currentChanged(QModelIndex,QModelIndex)), SLOT(selectionChanged(QModelIndex))); } void AutoStartPage::save() { bool doRestart = false; /* * Get the previous settings */ QMap previousItems(AutostartItem::createItemMap()); QMutableMapIterator i(previousItems); while (i.hasNext()) { i.next(); if (AutostartUtils::isLXQtModule(i.value().file())) i.remove(); } /* * Get the settings from the Ui */ QMap currentItems = mXdgAutoStartModel->items(); QMutableMapIterator j(currentItems); while (j.hasNext()) { j.next(); if (AutostartUtils::isLXQtModule(j.value().file())) j.remove(); } /* Compare the settings */ if (previousItems.count() != currentItems.count()) { doRestart = true; } else { QMap::const_iterator k = currentItems.constBegin(); while (k != currentItems.constEnd()) { if (previousItems.contains(k.key())) { if (k.value().file() != previousItems.value(k.key()).file()) { doRestart = true; break; } } else { doRestart = true; break; } ++k; } } if (doRestart) emit needRestart(); mXdgAutoStartModel->writeChanges(); } void AutoStartPage::addButton_clicked() { AutoStartEdit edit(QString(), QString(), false); bool success = false; while (!success && edit.exec() == QDialog::Accepted) { QModelIndex index = ui->autoStartView->selectionModel()->currentIndex(); XdgDesktopFile file(XdgDesktopFile::ApplicationType, edit.name(), edit.command()); if (edit.needTray()) file.setValue("X-LXQt-Need-Tray", true); if (mXdgAutoStartModel->setEntry(index, file)) success = true; else QMessageBox::critical(this, tr("Error"), tr("File '%1' already exists!").arg(file.fileName())); } } void AutoStartPage::editButton_clicked() { QModelIndex index = ui->autoStartView->selectionModel()->currentIndex(); XdgDesktopFile file = mXdgAutoStartModel->desktopFile(index); AutoStartEdit edit(file.name(), file.value("Exec").toString(), file.contains("X-LXQt-Need-Tray")); if (edit.exec() == QDialog::Accepted) { file.setLocalizedValue("Name", edit.name()); file.setValue("Exec", edit.command()); if (edit.needTray()) file.setValue("X-LXQt-Need-Tray", true); else file.removeEntry("X-LXQt-Need-Tray"); mXdgAutoStartModel->setEntry(index, file, true); } } void AutoStartPage::deleteButton_clicked() { QModelIndex index = ui->autoStartView->selectionModel()->currentIndex(); mXdgAutoStartModel->removeRow(index.row(), index.parent()); } void AutoStartPage::selectionChanged(QModelIndex curr) { AutoStartItemModel::ActiveButtons active = mXdgAutoStartModel->activeButtons(curr); ui->addButton->setEnabled(active & AutoStartItemModel::AddButton); ui->editButton->setEnabled(active & AutoStartItemModel::EditButton); ui->deleteButton->setEnabled(active & AutoStartItemModel::DeleteButton); } void AutoStartPage::updateButtons() { selectionChanged(ui->autoStartView->selectionModel()->currentIndex()); } lxqt-session-0.10.0/lxqt-config-session/autostartpage.h000066400000000000000000000031631261501354200232130ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright (C) 2012 Alec Moskvin * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef AUTOSTARTPAGE_H #define AUTOSTARTPAGE_H #include #include #include "autostartmodel.h" namespace Ui { class AutoStartPage; } class AutoStartPage : public QWidget { Q_OBJECT public: explicit AutoStartPage(QWidget* parent = 0); ~AutoStartPage(); signals: void needRestart(); public slots: void save(); void restoreSettings(); private: AutoStartItemModel* mXdgAutoStartModel; Ui::AutoStartPage* ui; private slots: void addButton_clicked(); void editButton_clicked(); void deleteButton_clicked(); void selectionChanged(QModelIndex curr); void updateButtons(); }; #endif // AUTOSTARTPAGE_H lxqt-session-0.10.0/lxqt-config-session/autostartpage.ui000066400000000000000000000033161261501354200234010ustar00rootroot00000000000000 AutoStartPage 0 0 320 240 Delete Add Edit 75 true Application Autostart Qt::Vertical 20 40 false lxqt-session-0.10.0/lxqt-config-session/autostartutils.cpp000066400000000000000000000023231261501354200237670ustar00rootroot00000000000000/* This file is part of the LXQt project. * Copyright (C) 2015 Luís Pereira * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #include "autostartutils.h" #include #include bool AutostartUtils::showOnlyInLXQt(const XdgDesktopFile &file) { return file.value(QLatin1String("OnlyShowIn")) == QLatin1String("LXQt;"); } bool AutostartUtils::isLXQtModule(const XdgDesktopFile& file) { return file.value(QLatin1String("X-LXQt-Module"), false).toBool(); } lxqt-session-0.10.0/lxqt-config-session/autostartutils.h000066400000000000000000000021511261501354200234330ustar00rootroot00000000000000/* This file is part of the LXQt project. * Copyright (C) 2015 Luís Pereira * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #ifndef AUTOSTARTUTILS_H #define AUTOSTARTUTILS_H class XdgDesktopFile; class AutostartUtils { public: static bool showOnlyInLXQt(const XdgDesktopFile& file); static bool isLXQtModule(const XdgDesktopFile& file); }; #endif // AUTOSTARTUTILS_H lxqt-session-0.10.0/lxqt-config-session/basicsettings.cpp000066400000000000000000000107651261501354200235330ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2012 LXQt team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "basicsettings.h" #include "ui_basicsettings.h" #include "../lxqt-session/src/windowmanager.h" #include "sessionconfigwindow.h" #include "autostartutils.h" static const QLatin1String windowManagerKey("window_manager"); static const QLatin1String leaveConfirmationKey("leave_confirmation"); static const QLatin1String openboxValue("openbox"); BasicSettings::BasicSettings(LXQt::Settings *settings, QWidget *parent) : QWidget(parent), m_settings(settings), m_moduleModel(new ModuleModel()), ui(new Ui::BasicSettings) { ui->setupUi(this); connect(ui->findWmButton, SIGNAL(clicked()), this, SLOT(findWmButton_clicked())); connect(ui->startButton, SIGNAL(clicked()), this, SLOT(startButton_clicked())); connect(ui->stopButton, SIGNAL(clicked()), this, SLOT(stopButton_clicked())); restoreSettings(); ui->moduleView->setModel(m_moduleModel); ui->moduleView->header()->setSectionResizeMode(0, QHeaderView::Stretch); ui->moduleView->header()->setSectionResizeMode(1, QHeaderView::ResizeToContents); } BasicSettings::~BasicSettings() { delete ui; } void BasicSettings::restoreSettings() { QStringList knownWMs; foreach (WindowManager wm, getWindowManagerList(true)) { knownWMs << wm.command; } QString wm = m_settings->value(windowManagerKey, openboxValue).toString(); SessionConfigWindow::handleCfgComboBox(ui->wmComboBox, knownWMs, wm); m_moduleModel->reset(); ui->leaveConfirmationCheckBox->setChecked(m_settings->value(leaveConfirmationKey, false).toBool()); } void BasicSettings::save() { /* If the setting actually changed: * * Save the setting * * Emit a needsRestart signal */ bool doRestart = false; const QString windowManager = ui->wmComboBox->currentText(); const bool leaveConfirmation = ui->leaveConfirmationCheckBox->isChecked(); QMap previousItems(AutostartItem::createItemMap()); QMutableMapIterator i(previousItems); while (i.hasNext()) { i.next(); if (!AutostartUtils::isLXQtModule(i.value().file())) i.remove(); } if (windowManager != m_settings->value(windowManagerKey, openboxValue).toString()) { m_settings->setValue(windowManagerKey, windowManager); doRestart = true; } if (leaveConfirmation != m_settings->value(leaveConfirmationKey, false).toBool()) { m_settings->setValue(leaveConfirmationKey, leaveConfirmation); doRestart = true; } QMap currentItems = m_moduleModel->items(); QMap::const_iterator k = currentItems.constBegin(); while (k != currentItems.constEnd()) { if (previousItems.contains(k.key())) { if (k.value().file() != previousItems.value(k.key()).file()) { doRestart = true; break; } } else { doRestart = true; break; } ++k; } if (doRestart) emit needRestart(); m_moduleModel->writeChanges(); } void BasicSettings::findWmButton_clicked() { SessionConfigWindow::updateCfgComboBox(ui->wmComboBox, tr("Select a window manager")); } void BasicSettings::startButton_clicked() { m_moduleModel->toggleModule(ui->moduleView->selectionModel()->currentIndex(), true); } void BasicSettings::stopButton_clicked() { m_moduleModel->toggleModule(ui->moduleView->selectionModel()->currentIndex(), false); } lxqt-session-0.10.0/lxqt-config-session/basicsettings.h000066400000000000000000000032101261501354200231630ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2012 LXQt team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef BASICSETTINGS_H #define BASICSETTINGS_H #include #include #include "modulemodel.h" namespace Ui { class BasicSettings; } class BasicSettings : public QWidget { Q_OBJECT public: explicit BasicSettings(LXQt::Settings *settings, QWidget *parent = 0); ~BasicSettings(); signals: void needRestart(); public slots: void restoreSettings(); void save(); private: LXQt::Settings* m_settings; ModuleModel* m_moduleModel; Ui::BasicSettings* ui; private slots: void findWmButton_clicked(); void startButton_clicked(); void stopButton_clicked(); }; #endif // BASICSETTINGS_H lxqt-session-0.10.0/lxqt-config-session/basicsettings.ui000066400000000000000000000067431261501354200233670ustar00rootroot00000000000000 BasicSettings 0 0 320 380 75 true Basic Settings Window Manager 0 0 true Search... LXQt Modules Start Stop Qt::Horizontal 40 20 true false true false Leave Session Ask for confirmation to leave session lxqt-session-0.10.0/lxqt-config-session/defaultappspage.cpp000066400000000000000000000053441261501354200240330ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2012 LXQt team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include #include "defaultappspage.h" #include "ui_defaultappspage.h" #include "sessionconfigwindow.h" DefaultApps::DefaultApps(QWidget *parent) : QWidget(parent), ui(new Ui::DefaultAppsPage) { ui->setupUi(this); connect(ui->terminalButton, SIGNAL(clicked()), this, SLOT(terminalButton_clicked())); connect(ui->terminalComboBox->lineEdit(), SIGNAL(editingFinished()), SLOT(terminalChanged())); connect(ui->browserButton, SIGNAL(clicked()), this, SLOT(browserButton_clicked())); connect(ui->browserComboBox->lineEdit(), SIGNAL(editingFinished()), SLOT(browserChanged())); } DefaultApps::~DefaultApps() { delete ui; } void DefaultApps::updateEnvVar(const QString& var, const QString& val) { if (var == "BROWSER") { QStringList knownBrowsers; knownBrowsers << "firefox" << "qupzilla" << "arora" << "konqueror" << "opera"; SessionConfigWindow::handleCfgComboBox(ui->browserComboBox, knownBrowsers, val); } else if (var == "TERM") { QStringList knownTerms; knownTerms << "qterminal" << "xterm" << "konsole" << "uterm"; SessionConfigWindow::handleCfgComboBox(ui->terminalComboBox, knownTerms, val); } } void DefaultApps::terminalButton_clicked() { SessionConfigWindow::updateCfgComboBox(ui->terminalComboBox, tr("Select a terminal emulator")); } void DefaultApps::browserButton_clicked() { SessionConfigWindow::updateCfgComboBox(ui->browserComboBox, tr("Select a web browser")); } void DefaultApps::terminalChanged() { emit defaultAppChanged("TERM", ui->terminalComboBox->lineEdit()->text()); } void DefaultApps::browserChanged() { emit defaultAppChanged("BROWSER", ui->browserComboBox->lineEdit()->text()); } lxqt-session-0.10.0/lxqt-config-session/defaultappspage.h000066400000000000000000000031051261501354200234710ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2012 LXQt team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef DEFAULTAPPS_H #define DEFAULTAPPS_H #include namespace Ui { class DefaultAppsPage; } class DefaultApps : public QWidget { Q_OBJECT public: explicit DefaultApps(QWidget *parent = 0); ~DefaultApps(); signals: void defaultAppChanged(const QString&, const QString&); public slots: void updateEnvVar(const QString &var, const QString &val); private: Ui::DefaultAppsPage *ui; private slots: void browserButton_clicked(); void terminalButton_clicked(); void browserChanged(); void terminalChanged(); }; #endif // DEFAULTAPPS_H lxqt-session-0.10.0/lxqt-config-session/defaultappspage.ui000066400000000000000000000052711261501354200236650ustar00rootroot00000000000000 DefaultAppsPage 0 0 340 135 75 true Default Applications Terminal Emulation: 0 0 true Search... Web Browser: 0 0 true Search... Qt::Vertical 118 186 lxqt-session-0.10.0/lxqt-config-session/environmentpage.cpp000066400000000000000000000106711261501354200240660ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2012 LXQt team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "environmentpage.h" #include "ui_environmentpage.h" EnvironmentPage::EnvironmentPage(LXQt::Settings *settings, QWidget *parent) : QWidget(parent), m_settings(settings), ui(new Ui::EnvironmentPage) { ui->setupUi(this); connect(ui->addButton, SIGNAL(clicked()), SLOT(addButton_clicked())); connect(ui->deleteButton, SIGNAL(clicked()), SLOT(deleteButton_clicked())); connect(ui->treeWidget, SIGNAL(itemChanged(QTreeWidgetItem*,int)), SLOT(itemChanged(QTreeWidgetItem*,int))); /* restoreSettings() is called from SessionConfigWindow after connections with DefaultApps have been set up */ } EnvironmentPage::~EnvironmentPage() { delete ui; } void EnvironmentPage::restoreSettings() { m_settings->beginGroup("Environment"); QString value; ui->treeWidget->clear(); foreach (const QString& i, m_settings->childKeys()) { value = m_settings->value(i).toString(); QTreeWidgetItem *item = new QTreeWidgetItem(ui->treeWidget, QStringList() << i << value); item->setFlags(item->flags() | Qt::ItemIsEditable); ui->treeWidget->addTopLevelItem(item); emit envVarChanged(i, value); } if (m_settings->value("BROWSER").isNull()) emit envVarChanged("BROWSER", ""); if (m_settings->value("TERM").isNull()) emit envVarChanged("TERM", ""); m_settings->endGroup(); } void EnvironmentPage::save() { bool doRestart = false; QMap oldSettings; m_settings->beginGroup("Environment"); /* We erase the Enviroment group and them write the Ui settings. To know if they changed or not we need to save them to memory. */ foreach (const QString &key, m_settings->childKeys()) oldSettings[key] = m_settings->value(key, QString()).toString(); m_settings->remove(""); for(int i = 0; i < ui->treeWidget->topLevelItemCount(); ++i) { QTreeWidgetItem *item = ui->treeWidget->topLevelItem(i); const QString key = item->text(0); const QString value = item->text(1); if (oldSettings.value(key) != value) doRestart = true; m_settings->setValue(item->text(0), item->text(1)); } m_settings->endGroup(); if (doRestart) emit needRestart(); } void EnvironmentPage::addButton_clicked() { QTreeWidgetItem *item = new QTreeWidgetItem(ui->treeWidget, QStringList() << "" << ""); item->setFlags(item->flags() | Qt::ItemIsEditable); ui->treeWidget->addTopLevelItem(item); ui->treeWidget->setCurrentItem(item); } void EnvironmentPage::deleteButton_clicked() { foreach (QTreeWidgetItem* item, ui->treeWidget->selectedItems()) { emit envVarChanged(item->text(0), ""); delete item; } } void EnvironmentPage::itemChanged(QTreeWidgetItem *item, int column) { Q_UNUSED(column); emit envVarChanged(item->text(0), item->text(1)); } void EnvironmentPage::updateItem(const QString& var, const QString& val) { QList itemList = ui->treeWidget->findItems(var, Qt::MatchExactly); if (itemList.isEmpty()) { QTreeWidgetItem *item = new QTreeWidgetItem(ui->treeWidget, QStringList() << var << val); item->setFlags(item->flags() | Qt::ItemIsEditable); ui->treeWidget->addTopLevelItem(item); return; } foreach (QTreeWidgetItem* item, itemList) { if (!val.isEmpty()) item->setText(1, val); else delete item; } } lxqt-session-0.10.0/lxqt-config-session/environmentpage.h000066400000000000000000000033631261501354200235330ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2012 LXQt team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef ENVIRONMENTPAGE_H #define ENVIRONMENTPAGE_H #include #include namespace Ui { class EnvironmentPage; } class EnvironmentPage : public QWidget { Q_OBJECT public: explicit EnvironmentPage(LXQt::Settings *settings, QWidget *parent = 0); ~EnvironmentPage(); signals: void needRestart(); void envVarChanged(const QString&, const QString&); public slots: void restoreSettings(); void save(); void updateItem(const QString &var, const QString &val); private: LXQt::Settings *m_settings; Ui::EnvironmentPage *ui; private slots: void addButton_clicked(); void deleteButton_clicked(); void itemChanged(QTreeWidgetItem *item, int column); }; #endif // ENVIRONMENTPAGE_H lxqt-session-0.10.0/lxqt-config-session/environmentpage.ui000066400000000000000000000034111261501354200237130ustar00rootroot00000000000000 EnvironmentPage 0 0 400 320 Add Delete Qt::Vertical 59 96 75 true Environment Variables (Advanced) true Variable Name Value lxqt-session-0.10.0/lxqt-config-session/lxqt-config-session.desktop.in000066400000000000000000000004411261501354200260670ustar00rootroot00000000000000[Desktop Entry] Type=Application Name=Session Settings GenericName=LXQt Session Settings Comment=Configuration for LXQt sessions Exec=lxqt-config-session Icon=preferences-system-session-services Categories=Settings;DesktopSettings;Qt;LXQt; OnlyShowIn=LXQt; #TRANSLATIONS_DIR=translations lxqt-session-0.10.0/lxqt-config-session/main.cpp000066400000000000000000000024321261501354200216050ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2011 LXQt team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include #include #include #include "sessionconfigwindow.h" int main(int argc, char** argv) { LXQt::SingleApplication a(argc, argv); SessionConfigWindow w; a.setActivationWindow(&w); w.show(); return a.exec(); } lxqt-session-0.10.0/lxqt-config-session/man/000077500000000000000000000000001261501354200207275ustar00rootroot00000000000000lxqt-session-0.10.0/lxqt-config-session/man/lxqt-config-session.1000066400000000000000000000033661261501354200247350ustar00rootroot00000000000000.TH lxqt-config-session "1" "October 2015" "LXQt\ 0.9.0" "LXQt\ Application" .SH NAME \fBlxqt-config-session\fR \- Session settings of \fBLXQt\fR, the Lightweight Desktop Environment .SH SYNOPSIS .B lxqt-config-session .br .SH DESCRIPTION This application handle settings and configuration around autostart applications on \fBLXQt\fR desktop environment. .P Through this applicaton you can manage settings related to applications startup and \fBLXQt\fR modules. .P \fBLXQt\fR is an advanced, easy-to-use, and fast desktop environment based on Qt technologies, ships several core desktop components, all of which are optional: .P * Panel * Desktop * Application launcher * Settings center * Session handler \fI(related to this)\fR * Polkit handler * SSH password access * Display manager handler .P These components perform similar actions to those available in other desktop environments, and their names are self-descriptive. They are usually not launched by hand but automatically, when choosing a \fBLXQt\fR session in the Display Manager. .SH "REPORTING BUGS" Report bugs to https://github.com/lxde/lxqt/issues .SH "SEE ALSO" \fBLXQt\fR has been tailored for users who value simplicity, speed, and an intuitive interface, also intended for less powerful machines. See: .\" any module must refers to session app, for more info on start it .P \fBlxqt-config(1)\fR \fBLXQt\fR application to manage configuration and settings .P \fBlxqt-session(1)\fR \fBLXQt\fR module to manage \fBLXQt\fR autostart session applications \".P \"\fBstart-lxqt(1)\fR \fBLXQt\fR display manager independent startup. .P .SH AUTHOR This manual page was created by \fBPICCORO Lenz McKAY\fR \fI\fR for \fBLXQt\fR project and VENENUX GNU/Linux but can be used by others. lxqt-session-0.10.0/lxqt-config-session/modulemodel.cpp000066400000000000000000000105441261501354200231720ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright (C) 2012 Alec Moskvin * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include #include #include #include #include "modulemodel.h" #include "autostartutils.h" ModuleModel::ModuleModel(QObject* parent) : QAbstractListModel(parent) { mInterface = new QDBusInterface("org.lxqt.session", "/LXQtSession", "", QDBusConnection::sessionBus(), this); connect(mInterface, SIGNAL(moduleStateChanged(QString,bool)), SLOT(updateModuleState(QString,bool))); } ModuleModel::~ModuleModel() { delete mInterface; } void ModuleModel::reset() { mKeyList.clear(); mStateMap.clear(); mItemMap = AutostartItem::createItemMap(); QMap::iterator iter; for (iter = mItemMap.begin(); iter != mItemMap.end(); ++iter) { if (AutostartUtils::isLXQtModule(iter.value().file())) mKeyList.append(iter.key()); } QDBusReply reply = mInterface->call("listModules"); QStringList moduleList = reply.value().toStringList(); foreach (const QString& moduleName, moduleList) { if (mItemMap.contains(moduleName)) mStateMap[moduleName] = true; } } QVariant ModuleModel::data(const QModelIndex& index, int role) const { QString name = mKeyList.at(index.row()); if (index.column() == 0) { switch (role) { case Qt::DisplayRole: return mItemMap.value(name).file().name(); case Qt::CheckStateRole: return mItemMap.value(name).isEnabled() ? Qt::Checked : Qt::Unchecked; case Qt::ToolTipRole: return mItemMap.value(name).file().value("Comment"); } } else if (index.column() == 1 && (role == Qt::DisplayRole || role == Qt::DecorationRole)) { if (role == Qt::DisplayRole && mStateMap[name] == true) return tr("Running") + " "; } return QVariant(); } bool ModuleModel::setData(const QModelIndex& index, const QVariant& value, int role) { if (role == Qt::CheckStateRole) { QString key = mKeyList.at(index.row()); mItemMap[key].setEnabled(value == Qt::Checked); emit dataChanged(index, index); return true; } return false; } Qt::ItemFlags ModuleModel::flags(const QModelIndex& index) const { Q_UNUSED(index); return Qt::ItemIsEnabled | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable; } QMap ModuleModel::items() { QMap allItems; QString s; foreach(s, mKeyList) allItems[s] = mItemMap.value(s); return allItems; } int ModuleModel::rowCount(const QModelIndex& parent) const { Q_UNUSED(parent); return mKeyList.size(); } void ModuleModel::writeChanges() { foreach (const QString& key, mKeyList) mItemMap[key].commit(); } void ModuleModel::updateModuleState(QString moduleName, bool state) { if (mItemMap.contains(moduleName)) { mStateMap[moduleName] = state; QModelIndex i = index(mKeyList.indexOf(moduleName), 1); emit dataChanged(i, i); } } void ModuleModel::toggleModule(const QModelIndex &index, bool status) { if (!index.isValid()) return; QList arg; arg.append(mKeyList.at(index.row())); mInterface->callWithArgumentList(QDBus::NoBlock, status ? "startModule" : "stopModule", arg); } lxqt-session-0.10.0/lxqt-config-session/modulemodel.h000066400000000000000000000036621261501354200226420ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright (C) 2012 Alec Moskvin * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef MODULEMODEL_H #define MODULEMODEL_H #include #include #include "autostartitem.h" class ModuleModel : public QAbstractListModel { Q_OBJECT public: ModuleModel(QObject *parent = 0); ~ModuleModel(); void reset(); void writeChanges(); void toggleModule(const QModelIndex &index, bool status); QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const; bool setData(const QModelIndex& index, const QVariant& value, int role); int rowCount(const QModelIndex& parent) const; int columnCount(const QModelIndex&) const { return 2; } Qt::ItemFlags flags(const QModelIndex& index) const; QMap items(); private slots: void updateModuleState(QString moduleName, bool state); private: QMap mItemMap; QMap mStateMap; QStringList mKeyList; QDBusInterface* mInterface; }; #endif // MODULEMODEL_H lxqt-session-0.10.0/lxqt-config-session/sessionconfigwindow.cpp000066400000000000000000000116551261501354200247710ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2011 LXQt team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include #include #include #include #include "sessionconfigwindow.h" #include "../lxqt-session/src/windowmanager.h" #include "basicsettings.h" #include "autostartpage.h" #include "defaultappspage.h" #include "environmentpage.h" #include "userlocationspage.h" SessionConfigWindow::SessionConfigWindow() : LXQt::ConfigDialog(tr("LXQt Session Settings"), new LXQt::Settings("session"), 0) { BasicSettings* basicSettings = new BasicSettings(mSettings, this); addPage(basicSettings, tr("Basic Settings"), "preferences-desktop-display-color"); connect(basicSettings, SIGNAL(needRestart()), SLOT(setRestart())); connect(this, SIGNAL(reset()), basicSettings, SLOT(restoreSettings())); connect(this, SIGNAL(save()), basicSettings, SLOT(save())); DefaultApps* defaultApps = new DefaultApps(this); addPage(defaultApps, tr("Default Applications"), "preferences-desktop-filetype-association"); UserLocationsPage* userLocations = new UserLocationsPage(this); addPage(userLocations, tr("Locations"), QStringLiteral("folder")); connect(userLocations, SIGNAL(needRestart()), SLOT(setRestart())); connect(this, SIGNAL(reset()), userLocations, SLOT(restoreSettings())); connect(this, SIGNAL(save()), userLocations, SLOT(save())); AutoStartPage* autoStart = new AutoStartPage(this); addPage(autoStart, tr("Autostart"), "preferences-desktop-launch-feedback"); connect(autoStart, SIGNAL(needRestart()), SLOT(setRestart())); connect(this, SIGNAL(reset()), autoStart, SLOT(restoreSettings())); connect(this, SIGNAL(save()), autoStart, SLOT(save())); EnvironmentPage* environmentPage = new EnvironmentPage(mSettings, this); addPage(environmentPage, tr("Environment (Advanced)"), "preferences-system-session-services"); connect(environmentPage, SIGNAL(needRestart()), SLOT(setRestart())); connect(this, SIGNAL(reset()), environmentPage, SLOT(restoreSettings())); connect(this, SIGNAL(save()), environmentPage, SLOT(save())); // sync Default Apps and Environment connect(environmentPage, SIGNAL(envVarChanged(QString,QString)), defaultApps, SLOT(updateEnvVar(QString,QString))); connect(defaultApps, SIGNAL(defaultAppChanged(QString,QString)), environmentPage, SLOT(updateItem(QString,QString))); environmentPage->restoreSettings(); connect(this, SIGNAL(reset()), SLOT(clearRestart())); m_restart = false; } SessionConfigWindow::~SessionConfigWindow() { delete mSettings; } void SessionConfigWindow::closeEvent(QCloseEvent * event) { LXQt::ConfigDialog::closeEvent(event); if (m_restart) { QMessageBox::information(this, tr("Session Restart Required"), tr("Some settings will not take effect until the next log in.") ); } } void SessionConfigWindow::handleCfgComboBox(QComboBox * cb, const QStringList &availableValues, const QString &value ) { QStringList realValues; foreach (QString s, availableValues) { if (findProgram(s)) realValues << s; } cb->clear(); cb->addItems(realValues); int ix = cb->findText(value); if (ix == -1) cb->lineEdit()->setText(value); else cb->setCurrentIndex(ix); } void SessionConfigWindow::updateCfgComboBox(QComboBox * cb, const QString &prompt ) { QString fname = QFileDialog::getOpenFileName(cb, prompt, "/usr/bin/"); if (fname.isEmpty()) return; QFileInfo fi(fname); if (!fi.exists() || !fi.isExecutable()) return; cb->lineEdit()->setText(fname); } void SessionConfigWindow::setRestart() { m_restart = true; } void SessionConfigWindow::clearRestart() { m_restart = false; } lxqt-session-0.10.0/lxqt-config-session/sessionconfigwindow.h000066400000000000000000000032741261501354200244340ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2011 LXQt team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef SESSIONCONFIGWINDOW_H #define SESSIONCONFIGWINDOW_H #include #include class SessionConfigWindow : public LXQt::ConfigDialog { Q_OBJECT public: SessionConfigWindow(); ~SessionConfigWindow(); static void handleCfgComboBox(QComboBox * cb, const QStringList &availableValues, const QString &value ); static void updateCfgComboBox(QComboBox * cb, const QString &prompt); void closeEvent(QCloseEvent * event); public slots: void setRestart(); private: // display restart warning bool m_restart; private slots: void clearRestart(); }; #endif lxqt-session-0.10.0/lxqt-config-session/translations/000077500000000000000000000000001261501354200226755ustar00rootroot00000000000000lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session.ts000066400000000000000000000263111261501354200271640ustar00rootroot00000000000000 AutoStartEdit Edit Name: Search... Command: Wait for system tray Select Application AutoStartItemModel Global Autostart LXQt Autostart Location: %1 Overrides: %1 AutoStartPage Delete Add Edit Application Autostart Error File '%1' already exists! BasicSettings Basic Settings Window Manager Search... LXQt Modules Start Stop Leave Session Ask for confirmation to leave session Select a window manager DefaultApps Select a terminal emulator Select a web browser DefaultAppsPage Default Applications Terminal Emulation: Search... Web Browser: EnvironmentPage Add Delete Environment Variables (Advanced) Variable Name Value ModuleModel Running SessionConfigWindow LXQt Session Settings Basic Settings Default Applications Locations Autostart Environment (Advanced) Session Restart Required Some settings will not take effect until the next log in. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ar.desktop000066400000000000000000000002561261501354200306710ustar00rootroot00000000000000# Translations Comment[ar]=تهيئة وحدة جلسة ريزركيوت GenericName[ar]=أداة تهيئة جلسة ريزر Name[ar]=أداة تهيئة جلسة ريزر lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ar.ts000066400000000000000000000301741261501354200276500ustar00rootroot00000000000000 AutoStartEdit Edit تنقيح Name: الاسم: Search... بحث... Command: اﻷمر: Wait for system tray بانتظار صفيحة النِّظام Select Application اختيار التطبيق AutoStartItemModel Global Autostart التشغيل التلقائي العام LXQt Autostart التشغيل التلقائي لنظام ريزر Location: %1 الموقع: %1 Overrides: %1 التَّجاوزات: %1 AutoStartPage Delete حذف Add إضافة Edit تنقيح Application Autostart البدء التِّلقائيُّ للتطبيق Error خطأ File '%1' already exists! الملفُّ `%1` موجودٌ مسبقاً BasicSettings Window Manager مدير النَّوافذ Search... بحث... LXQt Modules أقسام نظام ريزر Leave Session Ask for confirmation to leave session Basic Settings اﻹعدادات اﻷساسيَّة Start Stop Select a window manager اختيار مدير النَّوافذ DefaultApps Select a terminal emulator اختيار محاكي سطر اﻷوامر Select a web browser اختيار المتصفِّح DefaultAppsPage Default Applications التطبيقات الافتراضيَّة Terminal Emulation: محاكي سطر اﻷوامر: Search... بحث... Web Browser: المتصفِّح: EnvironmentPage Add إضافة Delete حذف Environment Variables (Advanced) متحوِّلات البيئة (متقدِّم) Variable Name اسم المتحوِّل Value القيمة ModuleModel Running SessionConfigWindow LXQt Session Configuration تهيئة جلسة نظام ريزر LXQt Session Settings Basic Settings اﻹعدادات اﻷساسيَّة Default Applications التطبيقات الافتراضيَّة Locations Autostart البدء التِّلقائيّ Environment (Advanced) البيئة (متقدِّم) Session Restart Required من الضِّروريِّ إعادة التَّشغيل Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. يجب إعادة تشغيل جلسة سطح المكتب -جلسة ريزر- من أجل إعادة تحميل الإعدادات. استخدم خيار الخروج من القائمة الرَّئيسيَّة.. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ca.ts000066400000000000000000000263271261501354200276360ustar00rootroot00000000000000 AutoStartEdit Edit Name: Search... Command: Wait for system tray Select Application AutoStartItemModel Global Autostart LXQt Autostart Location: %1 Overrides: %1 AutoStartPage Delete Add Edit Application Autostart Error File '%1' already exists! BasicSettings Window Manager Search... LXQt Modules Start Stop Leave Session Ask for confirmation to leave session Basic Settings Select a window manager DefaultApps Select a terminal emulator Select a web browser DefaultAppsPage Default Applications Terminal Emulation: Search... Web Browser: EnvironmentPage Add Delete Environment Variables (Advanced) Variable Name Value ModuleModel Running SessionConfigWindow LXQt Session Settings Basic Settings Default Applications Locations Autostart Environment (Advanced) Session Restart Required Some settings will not take effect until the next log in. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_cs.desktop000066400000000000000000000002001261501354200306610ustar00rootroot00000000000000# Translations Comment[cs]=Nastavit modul sezení LXQt GenericName[cs]=Nastavení sezení LXQt Name[cs]=Nastavení sezení LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_cs.ts000066400000000000000000000272611261501354200276560ustar00rootroot00000000000000 AutoStartEdit Edit Upravit Name: Název: Search... Hledat... Command: Příkaz: Wait for system tray Počkat na oznamovací oblast panelu Select Application Vybrat program AutoStartItemModel Global Autostart Celkové automatické spuštění LXQt Autostart Automatické spuštění LXQt Location: %1 Umístění: %1 Overrides: %1 Zruší: %1 AutoStartPage Delete Smazat Add Přidat Edit Upravit Application Autostart Automatické spuštění programu Error Chyba File '%1' already exists! Soubor '%1' již existuje! BasicSettings Window Manager Správce oken Search... Hledat... LXQt Modules Moduly LXQtu Leave Session Ask for confirmation to leave session Basic Settings Základní nastavení Start Spustit Stop Zastavit Select a window manager Vybrat správce oken DefaultApps Select a terminal emulator Vybrat emulátor terminálu Select a web browser Vybrat prohlížeč internetu DefaultAppsPage Default Applications Výchozí programy Terminal Emulation: Emulace terminálu: Search... Hledat... Web Browser: Prohlížeč internetu: EnvironmentPage Add Přidat Delete Smazat Environment Variables (Advanced) Proměnné prostředí (pokročilé) Variable Name Název proměnné Value Hodnota ModuleModel Running Běží SessionConfigWindow LXQt Session Configuration Nastavení sezení LXQt Session Settings Basic Settings Základní nastavení Default Applications Výchozí programy Locations Autostart Automatické spuštění Environment (Advanced) Prostředí (pokročilé) Session Restart Required Požadováno opětovné spuštění sezení Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Je třeba spustit sezení plochy znovu (lxqt-session) pro znovunahrání nastavení. Použijte odhlášení v hlavní nabídce. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_cs_CZ.desktop000066400000000000000000000002141261501354200312620ustar00rootroot00000000000000# Translations Comment[cs_CZ]=Nastavit modul sezení LXQtu GenericName[cs_CZ]=Nastavení sezení LXQtu Name[cs_CZ]=Nastavení sezení LXQtu lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_cs_CZ.ts000066400000000000000000000272501261501354200302500ustar00rootroot00000000000000 AutoStartEdit Edit Upravit Name: Název: Search... Hledat... Command: Příkaz: Wait for system tray Počkat na oznamovací oblast panelu Select Application Vybrat program AutoStartItemModel Global Autostart Celkové automatické spuštění LXQt Autostart Automatické spuštění LXQt Location: %1 Umístění: %1 Overrides: %1 Zruší: %1 AutoStartPage Delete Smazat Add Přidat Edit Upravit Application Autostart Automatické spuštění programu Error Chyba File '%1' already exists! Soubor '%1' již existuje! BasicSettings Window Manager Správce oken Search... Hledat... LXQt Modules Moduly LXQtu Leave Session Ask for confirmation to leave session Basic Settings Základní nastavení Start Spustit Stop Zastavit Select a window manager Vybrat správce oken DefaultApps Select a terminal emulator Vybrat emulátor terminálu Select a web browser Vybrat prohlížeč internetu DefaultAppsPage Default Applications Výchozí programy Terminal Emulation: Emulace terminálu: Search... Hledat... Web Browser: Prohlížeč internetu: EnvironmentPage Add Přidat Delete Smazat Environment Variables (Advanced) Proměnné prostředí (pokročilé) Variable Name Název proměnné Value Hodnota ModuleModel Running Běží SessionConfigWindow LXQt Session Configuration Nastavení sezení LXQt Session Settings Basic Settings Základní nastavení Default Applications Výchozí programy Locations Autostart Automatické spuštění Environment (Advanced) Prostředí (pokročilé) Session Restart Required Požadováno opětovné spuštění sezení Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Je třeba spustit sezení plochy znovu kvůli znovunahrání nastavení. Použijte odhlášení v hlavní nabídce. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_da.desktop000066400000000000000000000002131261501354200306440ustar00rootroot00000000000000# Translations Comment[da]=Indstil LXQt Sessionsmodul GenericName[da]=Indstilling af LXQt-sessioner Name[da]=Indstilling af LXQt-sessioner lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_da.ts000066400000000000000000000263271261501354200276370ustar00rootroot00000000000000 AutoStartEdit Edit Name: Search... Command: Wait for system tray Select Application AutoStartItemModel Global Autostart LXQt Autostart Location: %1 Overrides: %1 AutoStartPage Delete Add Edit Application Autostart Error File '%1' already exists! BasicSettings Window Manager Search... LXQt Modules Start Stop Leave Session Ask for confirmation to leave session Basic Settings Select a window manager DefaultApps Select a terminal emulator Select a web browser DefaultAppsPage Default Applications Terminal Emulation: Search... Web Browser: EnvironmentPage Add Delete Environment Variables (Advanced) Variable Name Value ModuleModel Running SessionConfigWindow LXQt Session Settings Basic Settings Default Applications Locations Autostart Environment (Advanced) Session Restart Required Some settings will not take effect until the next log in. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_da_DK.desktop000066400000000000000000000002271261501354200312270ustar00rootroot00000000000000# Translations Comment[da_DK]=Indstilling af LXQt sessionsmodul GenericName[da_DK]=Indstilling af LXQt Session Name[da_DK]=Indstilling af LXQt Session lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_da_DK.ts000066400000000000000000000270231261501354200302070ustar00rootroot00000000000000 AutoStartEdit Edit Rediger Name: Navn: Search... Søg... Command: Kommando: Wait for system tray Vent på system bakke Select Application Vælg program AutoStartItemModel Global Autostart Global Autostart LXQt Autostart LXQt Autostart Location: %1 Placering:%1 Overrides: %1 Tilsidesætter: %1 AutoStartPage Delete Slet Add Tilføj Edit Rediger Application Autostart Program Autostart Error Fejl File '%1' already exists! Fil '%1' eksisterer allerede! BasicSettings Window Manager Window Manager Search... Søg... LXQt Modules LXQt Moduler Leave Session Ask for confirmation to leave session Basic Settings Basale Indstillinger Start Start Stop Stop Select a window manager Vælg en window manager DefaultApps Select a terminal emulator Vælg en terminal emulator Select a web browser Vælg en web browser DefaultAppsPage Default Applications Standardprogrammer Terminal Emulation: Terminal Emulation: Search... Søg... Web Browser: Web Browser: EnvironmentPage Add Tilføj Delete Slet Environment Variables (Advanced) Miljøvariabler (Advanceret) Variable Name Variabelnavn Value Værdi ModuleModel Running Kører SessionConfigWindow LXQt Session Configuration LXQt Sessionsindstillinger LXQt Session Settings Basic Settings Basale Indstillinger Default Applications Standardprogrammer Locations Autostart Autostart Environment (Advanced) Miljø (Advanceret) Session Restart Required Genstart Af Session Er Påkrævet Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. For at genindlæse indstillinger skal skrivebordssessionen genstartes. Brug log Ud fra hovedmenuen. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_de.desktop000066400000000000000000000001651261501354200306560ustar00rootroot00000000000000Name[de]=Sitzungskonfiguration GenericName[de]=LXQt Sitzungskonfiguration Comment[de]=Die LXQt Sitzung konfigurieren lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_de.ts000066400000000000000000000266771261501354200276530ustar00rootroot00000000000000 AutoStartEdit Edit Bearbeiten Name: Name: Search... Suche... Command: Befehl: Wait for system tray Warte auf System Tray Select Application Anwendung auswählen AutoStartItemModel Global Autostart Globaler Autostart LXQt Autostart LXQt Autostart Location: %1 Ort: %1 Overrides: %1 Überschreibt: %1 AutoStartPage Delete Löschen Add Hinzufügen Edit Bearbeiten Application Autostart Anwendung-Autostart Error Fehler File '%1' already exists! Datei '%1' existiert bereits! BasicSettings Basic Settings Grundeinstellungen Window Manager Fenstermanager Search... Suchen... LXQt Modules LXQt Module Start Start Stop Stopp Select a window manager Fenstermanager auswählen Leave Session Sitzung beenden Ask for confirmation to leave session Beenden der Sitzung bestätigen DefaultApps Select a terminal emulator Terminal-Emulator auswählen Select a web browser Web-Browser auswählen DefaultAppsPage Default Applications Standardanwendungen Terminal Emulation: Terminal-Emulator: Search... Suche... Web Browser: Web-Browser: EnvironmentPage Add Hinzufügen Delete Löschen Environment Variables (Advanced) Umgebungsvariablen (Erweitert) Variable Name Variablenname Value Wert ModuleModel Running Läuft SessionConfigWindow LXQt Session Settings LXQt Sitzungseinstellungen Basic Settings Grundeinstellungen Default Applications Standardanwendungen Locations Autostart Autostart Environment (Advanced) Umgebung (Erweitert) Session Restart Required Erneute Anmeldung erforderlich Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Sie müssen sich erneut anmelden (lxqt-session), damit Ihre Änderungen aktiv werden. Klicken Sie dafür auf "Abmelden" im Hauptmenü. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_el.desktop000066400000000000000000000003001261501354200306550ustar00rootroot00000000000000# Translations Name[el]=Ρυθμίσεις συνεδρίας GenericName[el]=Ρυθμίσεις συνεδρίας του LXQt Comment[el]=Διαμόρφωση των συνεδριών LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_el.ts000066400000000000000000000314311261501354200276430ustar00rootroot00000000000000 AutoStartEdit Edit Επεξεργασία Name: Όνομα: Search... Αναζήτηση... Command: Εντολή: Wait for system tray Αναμονή για το πλαίσιο συστήματος Select Application Επιλογή εφαρμογής AutoStartItemModel Global Autostart Καθολική αυτόματη εκκίνηση LXQt Autostart Αυτόματη εκκίνηση LXQt Location: %1 Τοποθεσία: %1 Overrides: %1 Αντικατάσταση: %1 AutoStartPage Delete Διαγραφή Add Προσθήκη Edit Επεξεργασία Application Autostart Αυτόματη εκκίνηση εφαρμογής Error Σφάλμα File '%1' already exists! Το αρχείο "%1" υπάρχει ήδη! BasicSettings Window Manager Διαχειριστής παραθύρων Search... Αναζήτηση... LXQt Modules Αρθρώματα LXQt Leave Session Εγκατάλειψη της συνεδρίας Ask for confirmation to leave session Ερώτηση επιβεβαίωσης κατά την εγκατάλειψη της συνεδρίας Ask confirmation to leave session Ερώτηση επιβεβαίωσης κατά την εγκατάλειψη της συνεδρίας Basic Settings Βασικές ρυθμίσεις Start Εκκίνηση Stop Διακοπή Select a window manager Επιλογή διαχειριστή παραθύρων DefaultApps Select a terminal emulator Επιλογή εξομοιωτή τερματικού Select a web browser Επιλογή περιηγητή ιστού DefaultAppsPage Default Applications Προεπιλεγμένες εφαρμογές Terminal Emulation: Εξομοιωτής τερματικού: Search... Αναζήτηση... Web Browser: Περιηγητής ιστού: EnvironmentPage Add Προσθήκη Delete Διαγραφή Environment Variables (Advanced) Μεταβλητές περιβάλλοντος (για προχωρημένους) Variable Name Όνομα μεταβλητής Value Τιμή ModuleModel Running Εκτελείται SessionConfigWindow LXQt Session Configuration Διαμόρφωση συνεδρίας LXQt LXQt Session Settings Ρυθμίσεις συνεδρίας LXQt Basic Settings Βασικές ρυθμίσεις Default Applications Προεπιλεγμένες εφαρμογές Locations Autostart Αυτόματη εκκίνηση Environment (Advanced) Περιβάλλον (για προχωρημένους) Session Restart Required Απαιτείται επανεκκίνηση συνεδρίας Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Πρέπει να επανεκκινήσετε τη συνεδρία lxqt για να φορτώσετε τις ρυθμίσεις. Χρησιμοποιήστε την αποσύνδεση από το κυρίως μενού. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_eo.desktop000066400000000000000000000002131261501354200306630ustar00rootroot00000000000000# Translations Comment[eo]=Agordi modulon de seanco de LXQt GenericName[eo]=Agordilo de seanco de LXQt Name[eo]=Agordilo de seanco de LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_eo.ts000066400000000000000000000272131261501354200276510ustar00rootroot00000000000000 AutoStartEdit Edit Redakti Name: Nomo: Search... Serĉi... Command: Komando: Wait for system tray Atendado de sistempleto Select Application Elektu aplikaĵon AutoStartItemModel Global Autostart Ĉiea aŭtomata starto LXQt Autostart Aŭtomata starto de LXQto Location: %1 Loko: %1 Overrides: %1 Ĝi anstataŭigas: %1 AutoStartPage Delete Forigi Add Aldoni Edit Redakti Application Autostart Aŭtomata startigo de aplikaĵoj Error Eraro File '%1' already exists! Dosiero '%1' jam ekzistas! BasicSettings Window Manager Fenestra mastrumilo Search... Serĉi... LXQt Modules Moduloj de LXQto Leave Session Ask for confirmation to leave session Basic Settings Bazaj agordoj Start Stop Select a window manager Elektu fenestran mastrumilon DefaultApps Select a terminal emulator Elektu simulilon de terminalo Select a web browser Elektu retumilon DefaultAppsPage Default Applications Aprioraj aplikaĵoj Terminal Emulation: Simulilo de terminalo: Search... Serĉi... Web Browser: Retumilo: EnvironmentPage Add Aldoni Delete Forigi Environment Variables (Advanced) Ĉirkaŭaĵaj variabloj (progresinta) Variable Name Nomo de variablo Value Valoro ModuleModel Running SessionConfigWindow LXQt Session Configuration Agordoj de seanco de LXQt LXQt Session Settings Basic Settings Bazaj agordoj Default Applications Aprioraj aplikaĵoj Locations Autostart Aŭtomata startigo Environment (Advanced) Ĉirkaŭaĵo (progresinta) Session Restart Required Postulata restartigo de seanco Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Vi devas restartigi la seancon de labortablo (lxqt-session) por reŝargi agordojn. Uzu ensaluton en la ĉefa menuo. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_es.desktop000066400000000000000000000002351261501354200306730ustar00rootroot00000000000000# Translations Comment[es]=Configura el módulo de sesiones de LXQt GenericName[es]=Configuración de sesiones LXQt Name[es]=Configuración de sesiones LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_es.ts000066400000000000000000000273251261501354200276610ustar00rootroot00000000000000 AutoStartEdit Edit Editar Name: Nombre: Search... Buscar... Command: Comando: Wait for system tray Espere al área de notificaciones Select Application Seleccionar aplicación AutoStartItemModel Global Autostart Autoinicio global LXQt Autostart Autoinicio de LXQt Location: %1 Lugar: %1 Overrides: %1 Sobreescrito: %1 AutoStartPage Delete Eliminar Add Añadir Edit Editar Application Autostart Aplicaciones de inicio automático Error Error File '%1' already exists! !Archivo '%1' actualmente existe¡ BasicSettings Window Manager Gestor de ventanas Search... Buscar... LXQt Modules Módulos de LXQt Leave Session Ask for confirmation to leave session Basic Settings Configuración básica Start Iniciar Stop Detener Select a window manager Seleccione un gestor de ventanas DefaultApps Select a terminal emulator Seleccione un emulador de terminal Select a web browser Seleccione un navegador web DefaultAppsPage Default Applications Aplicaciones predeterminadas Terminal Emulation: Emulación de terminal: Search... Buscar... Web Browser: Navegador web: EnvironmentPage Add Añadir Delete Eliminar Environment Variables (Advanced) Variables de entorno (avanzado) Variable Name Nombre de la variable Value Valor ModuleModel Running Ejecutandose SessionConfigWindow LXQt Session Configuration Configuración de la sesión de LXQt LXQt Session Settings Basic Settings Configuración básica Default Applications Aplicaciones predeterminadas Locations Autostart Inicio automático Environment (Advanced) Entorno (avanzado) Session Restart Required Se requiere un reinicio de sesión Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Necesita reiniciar la sesión de escritorio (lxqt-session) para recargar la configuración. Cierre la sesión desde el menú principal. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_es_UY.ts000066400000000000000000000263321261501354200302730ustar00rootroot00000000000000 AutoStartEdit Edit Name: Search... Command: Wait for system tray Select Application AutoStartItemModel Global Autostart LXQt Autostart Location: %1 Overrides: %1 AutoStartPage Delete Add Edit Application Autostart Error File '%1' already exists! BasicSettings Window Manager Search... LXQt Modules Start Stop Leave Session Ask for confirmation to leave session Basic Settings Select a window manager DefaultApps Select a terminal emulator Select a web browser DefaultAppsPage Default Applications Terminal Emulation: Search... Web Browser: EnvironmentPage Add Delete Environment Variables (Advanced) Variable Name Value ModuleModel Running SessionConfigWindow LXQt Session Settings Basic Settings Default Applications Locations Autostart Environment (Advanced) Session Restart Required Some settings will not take effect until the next log in. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_es_VE.desktop000066400000000000000000000002351261501354200312650ustar00rootroot00000000000000# Translations Comment[es_VE]=Configuracion de modulo de LXQt GenericName[es_VE]=Configuracion de sesion de LXQt Name[es_VE]=Configuracion de sesion de LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_es_VE.ts000066400000000000000000000272521261501354200302520ustar00rootroot00000000000000 AutoStartEdit Edit Editar Name: Nombre: Search... Buscar... Command: Comando: Wait for system tray Esperar aparezca la barra tray Select Application Seleccionar programa AutoStartItemModel Global Autostart Autoarranque Global LXQt Autostart Autoarranque en LXQt Location: %1 Localización %1 Overrides: %1 Sobreescribe %1 AutoStartPage Delete Borrar Add Agregar Edit Editar Application Autostart Autoejecutar aplicacion Error Error File '%1' already exists! Archivo %1 ya existe! BasicSettings Window Manager Manejador de Ventanas Search... Buscar... LXQt Modules Modulos lxqt a habilitar en el inicio Leave Session Ask for confirmation to leave session Basic Settings Configuracion Basica Start Arrancar Stop Detener Select a window manager Seleccione un manejador de ventanas DefaultApps Select a terminal emulator Seleccione un emulador de terminal Select a web browser Seleccione un navegador web DefaultAppsPage Default Applications Aplicaciones por defecto Terminal Emulation: Emulador de terminal: Search... Buscar... Web Browser: Navegador web: EnvironmentPage Add Agregar Delete Borrar Environment Variables (Advanced) Entorno de variables (Avanzado) Variable Name Nombre de variable Value Valor ModuleModel Running Corriendo SessionConfigWindow LXQt Session Configuration Configuracion de sesion de LXQt LXQt Session Settings Basic Settings Configuraciones básicas Default Applications Aplicaciones por defecto Locations Autostart Autoinicio Environment (Advanced) Entorno (Avanzado) Session Restart Required Reinicio de sesion es requerido Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Tu necesitas reiniciar la sesion (lxqt-session) para recargar los ajustes. Usa el formulario de salida desde el menu principal. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_eu.desktop000066400000000000000000000002241261501354200306730ustar00rootroot00000000000000# Translations Comment[eu]=Konfiguratu LXQt saioaren modulua GenericName[eu]=LXQt saioaren konfiguratzailea Name[eu]=LXQt saioaren konfiguratzailea lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_eu.ts000066400000000000000000000272021261501354200276550ustar00rootroot00000000000000 AutoStartEdit Edit Editatu Name: Izena: Search... Bilatu... Command: Komandoa: Wait for system tray Itxaron ataza-barrari Select Application Hautatu aplikazioa AutoStartItemModel Global Autostart Autoabio globala LXQt Autostart LXQt autoabioa Location: %1 Kokalekua: %1 Overrides: %1 Indargabetu: %1 AutoStartPage Delete Ezabatu Add Gehitu Edit Editatu Application Autostart Aplikazioaren autoabioa Error Errorea File '%1' already exists! '%1' fitxategia dagoeneko existitzen da! BasicSettings Window Manager Leiho-kudeatzailea Search... Bilatu... LXQt Modules LXQt moduluak Leave Session Ask for confirmation to leave session Basic Settings Oinarrizko ezarpenak Start Abiatu Stop Gelditu Select a window manager Hautatu leiho-kudeatzaile bat DefaultApps Select a terminal emulator Hautatu terminal-emuladore bat Select a web browser Hautatu web-arakatzaile bat DefaultAppsPage Default Applications Aplikazio lehenetsiak Terminal Emulation: Terminal emulazioa: Search... Bilatu... Web Browser: Web-arakatzailea: EnvironmentPage Add Gehitu Delete Ezabatu Environment Variables (Advanced) Ingurune-aldagaiak (aurreratua) Variable Name Aldagaiaren izena Value Balioa ModuleModel Running Martxan SessionConfigWindow LXQt Session Configuration LXQt saioaren konfigurazioa LXQt Session Settings Basic Settings Oinarrizko ezarpenak Default Applications Aplikazio lehenetsiak Locations Autostart Autoabioa Environment (Advanced) Ingurunea (aurreratua) Session Restart Required Saioa berrabiarazi behar da Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Mahaigaineko saioa (lxqt saioa) berrabiarazi behar duzu ezarpenak birkargatzeko. Erabili menu nagusiko 'Amaitu saioa' aukera. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_fi.desktop000066400000000000000000000002051261501354200306570ustar00rootroot00000000000000# Translations Comment[fi]=Hallinnoi LXQt:n istuntomoduulia GenericName[fi]=LXQtin istunnonhallinta Name[fi]=LXQtin istunnonhallinta lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_fi.ts000066400000000000000000000271471261501354200276520ustar00rootroot00000000000000 AutoStartEdit Edit Muokkaa Name: Nimi: Search... Etsi... Command: Komento: Wait for system tray Select Application Valitse sovellus AutoStartItemModel Global Autostart Yleinen automaattikäynnistys LXQt Autostart LXQtin automaattikäynnistys Location: %1 Sijainti: %1 Overrides: %1 AutoStartPage Delete Poista Add Lisää Edit Muokkaa Application Autostart Sovellusten automaattikäynnistys Error Virhe File '%1' already exists! Tiedosto "%1" on jo olemassa! BasicSettings Window Manager Ikkunahallinta Search... Etsi... LXQt Modules LXQt-moduulit Leave Session Ask for confirmation to leave session Basic Settings Perusasetukset Start Käynnistä Stop Pysäytä Select a window manager Valitse ikkunahallinta DefaultApps Select a terminal emulator Valitse pääte Select a web browser Valitse nettiselain DefaultAppsPage Default Applications Oletussovellukset Terminal Emulation: Pääte: Search... Etsi... Web Browser: Nettiselain: EnvironmentPage Add Lisää Delete Poista Environment Variables (Advanced) Ympäristömuuttujat (lisäasetukset) Variable Name Muuttujan nimi Value Arvo ModuleModel Running Käynnissä SessionConfigWindow LXQt Session Configuration LXQtin istuntohallinta LXQt Session Settings Basic Settings Perusasetukset Default Applications Oletussovellukset Locations Autostart Automaattikäynnistys Environment (Advanced) Ympäristö (lisäasetukset) Session Restart Required Istunnon uudelleenkäynnistys vaaditaan Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Asetusten voimaantulo vaatii työpöytäistunnon (lxqt-session) uudelleenkäynnistyksen. Kirjaudu ulos päävalikkoa käyttäen. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_fr_FR.desktop000066400000000000000000000002361261501354200312630ustar00rootroot00000000000000# Translations Comment[fr_FR]=Configurer le module 'session' de LXQt GenericName[fr_FR]=Paramétreur de session LXQt Name[fr_FR]=Paramétreur de session LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_fr_FR.ts000066400000000000000000000274211261501354200302450ustar00rootroot00000000000000 AutoStartEdit Edit Éditer Name: Nom : Search... Chercher... Command: Commande : Wait for system tray En attente de la boîte à miniatures Select Application Choisir l'application AutoStartItemModel Global Autostart Lancement automatique global LXQt Autostart Lancement automatique de LXQt Location: %1 Emplacement : %1 Overrides: %1 Ignorer : %1 AutoStartPage Delete Supprimer Add Ajouter Edit Éditer Application Autostart Lancement automatique de l'application Error Erreur File '%1' already exists! Le fichier '%1' existe déjà ! BasicSettings Window Manager Gestionnaire de fenêtres Search... Chercher... LXQt Modules Modules de LXQt Leave Session Ask for confirmation to leave session Basic Settings Paramètres de base Start Démarrer Stop Arrêter Select a window manager Choisir un gestionnaire de fenêtres DefaultApps Select a terminal emulator Choisir un émulateur de terminal Select a web browser Choisir un navigateur de bureau DefaultAppsPage Default Applications Applications par défaut Terminal Emulation: Émulateur de terminal : Search... Chercher... Web Browser: Navigateur web : EnvironmentPage Add Ajouter Delete Supprimer Environment Variables (Advanced) Variables d'environnement (avancé) Variable Name Nom de la variable Value Valeur ModuleModel Running Lancé SessionConfigWindow LXQt Session Configuration Configuration de la session LXQt LXQt Session Settings Basic Settings Paramètres de base Default Applications Applications par défaut Locations Autostart Lancement automatique Environment (Advanced) Environnement (avancé) Session Restart Required Redémarrage de session requis Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Vous devez redémarrer votre session de bureau (lxqt-session) pour recharger les paramètres. Déconnectez-vous depuis le menu principal. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_hu.desktop000066400000000000000000000002151261501354200306760ustar00rootroot00000000000000# Translations Comment[hu]=A LXQt munkamenetmodul beállítása GenericName[hu]=LXQt munkamenetbeállíó Name[hu]=LXQt munkamenetbeállíó lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_hu.ts000066400000000000000000000275661261501354200276750ustar00rootroot00000000000000 AutoStartEdit Edit Szerkesztés Name: Név: Search... Keresés… Command: Parancs: Wait for system tray Várakozás a paneltálcára Select Application Alkalmazás kiválasztása AutoStartItemModel Global Autostart Automatikus indítás LXQt Autostart LXQt automatikus indítás Location: %1 Hely: %1 Overrides: %1 Felülbírálások: %1 AutoStartPage Delete Törlés Add Hozzáadás Edit Szerkesztés Application Autostart Alkalmazás automatikus indítása Error Hiba File '%1' already exists! Van már '%1' fájl! BasicSettings Window Manager Ablakkezelő Search... Keresés… LXQt Modules LXQt modulok Leave Session Munkamenet elhagyása Ask for confirmation to leave session Ask confirmation to leave session Jóváhagyás az elhagyás előtt Basic Settings Alapbeállítások Start Indítás Stop Leállítás Select a window manager Ablakkezelő választása DefaultApps Select a terminal emulator Terminálemulátor választása Select a web browser Webböngésző választása DefaultAppsPage Default Applications Alapértelmezett alkalmazások Terminal Emulation: Terminálemuláció: Search... Keresés… Web Browser: Webböngésző: EnvironmentPage Add Hozzáadás Delete Törlés Environment Variables (Advanced) Környezeti változók (speciális) Variable Name Változónév Value Érték ModuleModel Running Futó SessionConfigWindow LXQt Session Configuration LXQt munkamenet konfiguráció LXQt Session Settings LXQt munkamenet-beállítás Basic Settings Alapbeállítások Default Applications Alapértelmezett alkalmazások Locations Autostart Automatikus indítás Environment (Advanced) Környezet (speciális) Session Restart Required A munkamenet újraindítandó Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Újra kell indítania a munkamenetet (lxqt-session) a beállítások újratöltéséhez. Használja a főmenü kijelentkezés pontját. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_hu_HU.ts000066400000000000000000000273261261501354200302630ustar00rootroot00000000000000 AutoStartEdit Edit Szerkesztés Name: Név: Search... Keresés... Command: Parancs: Wait for system tray Várakozás a paneltálcára Select Application Alkalmazás kiválasztása AutoStartItemModel Global Autostart Automatikus indítás LXQt Autostart LXQt automatikus indítás Location: %1 Hely: %1 Overrides: %1 Felülbírálások: %1 AutoStartPage Delete Törlés Add Hozzáadás Edit Szerkesztés Application Autostart Alkalmazás automatikus indítása Error Hiba File '%1' already exists! Van már '%1' fájl! BasicSettings Window Manager Ablakkezelő Search... Keresés... LXQt Modules LXQt modulok Start Indítás Stop Leállítás Leave Session Munkamenet elhagyása Ask for confirmation to leave session Ask confirmation to leave session Jóváhagyás az elhagyás előtt Basic Settings Alapbeállítások Select a window manager Ablakkezelő választása DefaultApps Select a terminal emulator Terminálemulátor választása Select a web browser Webböngésző választása DefaultAppsPage Default Applications Alapértelmezett alkalmazások Terminal Emulation: Terminálemuláció: Search... Keresés… Web Browser: Webböngésző: EnvironmentPage Add Hozzáadás Delete Törlés Environment Variables (Advanced) Környezeti változók (speciális) Variable Name Változónév Value Érték ModuleModel Running Futó SessionConfigWindow LXQt Session Settings LXQt munkamenet-beállítás Basic Settings Alapbeállítások Default Applications Alapértelmezett alkalmazások Locations Autostart Automatikus indítás Environment (Advanced) Környezet (speciális) Session Restart Required A munkamenet újraindítandó Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Újra kell indítania a munkamenetet (lxqt-session) a beállítások újratöltéséhez. Használja a főmenü kijelentkezés pontját. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ia.desktop000066400000000000000000000000171261501354200306530ustar00rootroot00000000000000# Translations lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ia.ts000066400000000000000000000263271261501354200276440ustar00rootroot00000000000000 AutoStartEdit Edit Name: Search... Command: Wait for system tray Select Application AutoStartItemModel Global Autostart LXQt Autostart Location: %1 Overrides: %1 AutoStartPage Delete Add Edit Application Autostart Error File '%1' already exists! BasicSettings Window Manager Search... LXQt Modules Start Stop Leave Session Ask for confirmation to leave session Basic Settings Select a window manager DefaultApps Select a terminal emulator Select a web browser DefaultAppsPage Default Applications Terminal Emulation: Search... Web Browser: EnvironmentPage Add Delete Environment Variables (Advanced) Variable Name Value ModuleModel Running SessionConfigWindow LXQt Session Settings Basic Settings Default Applications Locations Autostart Environment (Advanced) Session Restart Required Some settings will not take effect until the next log in. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_id_ID.desktop000066400000000000000000000002071261501354200312330ustar00rootroot00000000000000# Translations Comment[id_ID]=Konfigurasi modul sesi LXQt GenericName[id_ID]=Konfigurator Sesi LXQt Name[id_ID]=Konfigurator Sesi LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_id_ID.ts000066400000000000000000000263321261501354200302170ustar00rootroot00000000000000 AutoStartEdit Edit Name: Search... Command: Wait for system tray Select Application AutoStartItemModel Global Autostart LXQt Autostart Location: %1 Overrides: %1 AutoStartPage Delete Add Edit Application Autostart Error File '%1' already exists! BasicSettings Window Manager Search... LXQt Modules Start Stop Leave Session Ask for confirmation to leave session Basic Settings Select a window manager DefaultApps Select a terminal emulator Select a web browser DefaultAppsPage Default Applications Terminal Emulation: Search... Web Browser: EnvironmentPage Add Delete Environment Variables (Advanced) Variable Name Value ModuleModel Running SessionConfigWindow LXQt Session Settings Basic Settings Default Applications Locations Autostart Environment (Advanced) Session Restart Required Some settings will not take effect until the next log in. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_it.desktop000066400000000000000000000001531261501354200306770ustar00rootroot00000000000000# Translations Name[it]=Impostazioni della sessione Comment[it]=Configura i moduli della sessione di LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_it.ts000066400000000000000000000275731261501354200276730ustar00rootroot00000000000000 AutoStartEdit Edit Modifica Name: Nome: Search... Cerca... Command: Comando: Wait for system tray Attendi il vassoio di sistema Select Application Seleziona applicazione AutoStartItemModel Global Autostart Avvio automatico globale LXQt Autostart Avvio automatico di LXQt Location: %1 Posizione: %1 Overrides: %1 Sostituisce: %1 AutoStartPage Delete Cancella Add Aggiungi Edit Modifica Application Autostart Avvio automatico delle applicazioni Error Errore File '%1' already exists! Il file '%1' esiste già! BasicSettings Window Manager Gestore delle finestre Search... Cerca... LXQt Modules Moduli di LXQt Leave Session Chiusura sessione Ask for confirmation to leave session Ask confirmation to leave session Chiedi una conferma per terminare la sessione Basic Settings Impostazioni di base Start Avvia Stop Ferma Select a window manager Seleziona un gestore delle finestre DefaultApps Select a terminal emulator Seleziona un emulatore di terminale Select a web browser Seleziona un browser web DefaultAppsPage Default Applications Applicazioni predefinite Terminal Emulation: Emulatore di terminale: Search... Cerca... Web Browser: Browser web: EnvironmentPage Add Aggiungi Delete Cancella Environment Variables (Advanced) Variabili dell'ambiente (avanzato) Variable Name Nome variabile Value Valore ModuleModel Running In esecuzione SessionConfigWindow LXQt Session Configuration Configurazione della sessione di LXQt LXQt Session Settings Impostazioni della sessione LXQt Basic Settings Impostazioni di base Default Applications Applicazioni predefinite Locations Autostart Avvio automatico Environment (Advanced) Ambiente (avanzato) Session Restart Required Necessario riavvio della sessione Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Devi riavviare la sessione desktop (lxqt-session) per ricaricare le impostazioni. Termina la sessione tramite il menu principale. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ja.desktop000066400000000000000000000002321261501354200306530ustar00rootroot00000000000000# Translations Comment[ja]=LXQtセッションもジュールを設定 GenericName[ja]=LXQtセッションの設定 Name[ja]=LXQtセッションの設定 lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ja.ts000066400000000000000000000271461261501354200276450ustar00rootroot00000000000000 AutoStartEdit Edit 編集 Name: 名称: Search... 検索... Command: コマンド: Wait for system tray システムトレイを待つ Select Application アプリケーションの選択 AutoStartItemModel Global Autostart 全体的な自動起動 LXQt Autostart LXQt自動起動 Location: %1 位置:%1 Overrides: %1 上書き:%1 AutoStartPage Delete 削除 Add 追加 Edit 編集 Application Autostart アプリケーション自動起動 Error エラー File '%1' already exists! File'%1'は既にあります! BasicSettings Basic Settings 基本的な設定 Window Manager ウィンドウマネージャ Search... 検索... LXQt Modules LXQtモジュール Start 開始 Stop 終了 Leave Session セッションの終了 Ask for confirmation to leave session セッション終了時に確認する Select a window manager ウィンドウマネージャの選択 DefaultApps Select a terminal emulator ターミナルエミュレータの選択 Select a web browser ウェブブラウザの選択 DefaultAppsPage Default Applications 既定のアプリケーション Terminal Emulation: ターミナルエミュレーション: Search... 検索... Web Browser: ウェブブラウザ: EnvironmentPage Add 追加 Delete 削除 Environment Variables (Advanced) 環境変数(詳細) Variable Name 変数名 Value ModuleModel Running 実行中 SessionConfigWindow LXQt Session Settings LXQtセッションの設定 Basic Settings 基本設定 Default Applications 既定のアプリケーション Locations Autostart 自動起動 Environment (Advanced) 環境(詳細) Session Restart Required セッション再起動の要求 Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. デスクトップセッション(lxqt-session)を再起動する必要があります。メインメニューからログアウトしてください。 UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ko.desktop000066400000000000000000000000171261501354200306730ustar00rootroot00000000000000# Translations lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ko.ts000066400000000000000000000263271261501354200276640ustar00rootroot00000000000000 AutoStartEdit Edit Name: Search... Command: Wait for system tray Select Application AutoStartItemModel Global Autostart LXQt Autostart Location: %1 Overrides: %1 AutoStartPage Delete Add Edit Application Autostart Error File '%1' already exists! BasicSettings Window Manager Search... LXQt Modules Start Stop Leave Session Ask for confirmation to leave session Basic Settings Select a window manager DefaultApps Select a terminal emulator Select a web browser DefaultAppsPage Default Applications Terminal Emulation: Search... Web Browser: EnvironmentPage Add Delete Environment Variables (Advanced) Variable Name Value ModuleModel Running SessionConfigWindow LXQt Session Settings Basic Settings Default Applications Locations Autostart Environment (Advanced) Session Restart Required Some settings will not take effect until the next log in. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_lt.desktop000066400000000000000000000002211261501354200306760ustar00rootroot00000000000000# Translations Comment[lt]=Konfigūruoti LXQt sesijų modulį GenericName[lt]=LXQt sesijų konfigūravimas Name[lt]=LXQt sesijų konfigūravimas lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_lt.ts000066400000000000000000000273631261501354200276730ustar00rootroot00000000000000 AutoStartEdit Edit Keisti Name: Pavadinimas: Search... Ieškoti... Command: Komanda: Wait for system tray Laukti sistemos dėklo Select Application Pasirinkite programą AutoStartItemModel Global Autostart Nuo aplinkos nepriklausomas programų paleidimas LXQt Autostart LXQt automatinis programų paleidimas Location: %1 Vieta: %1 Overrides: %1 Nustelbia: %1 AutoStartPage Delete Šalinti Add Pridėti Edit Keisti Application Autostart Automatinis programų paleidimas Error Klaida File '%1' already exists! Failas „%1“ jau yra! BasicSettings Window Manager Langų tvarkyklė Search... Ieškoti... LXQt Modules Leave Session Ask for confirmation to leave session Basic Settings Pagrindinės nuostatos Start Stop Select a window manager Pasirinkite langų tvarkyklę DefaultApps Select a terminal emulator Pasirinkite terminalo emuliatorių Select a web browser Pasirinkite saityno naršyklę DefaultAppsPage Default Applications Numatytosios programos Terminal Emulation: Terminalo emuliatorius: Search... Ieškoti... Web Browser: Saityno naršyklė: EnvironmentPage Add Pridėti Delete Šalinti Environment Variables (Advanced) Aplinkos kintamieji (sudėtingiau) Variable Name Kintamasis Value Reikšmė ModuleModel Running SessionConfigWindow LXQt Session Configuration LXQt sesijų konfigūravimas LXQt Session Settings Basic Settings Pagrindinės nuostatos Default Applications Numatytosios programos Locations Autostart Automatinis paleidimas Environment (Advanced) Aplinka (sudėtingiau) Session Restart Required Reikia iš naujo paleisti sesiją Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Tam, kad įsigaliotų pakeitimai, iš naujo paleiskite darbalaukio sesiją (lxqt-session). Atsijungti galite naudodamiesi pagrindiniu meniu. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_nl.desktop000066400000000000000000000002051261501354200306720ustar00rootroot00000000000000# Translations Comment[nl]=Configureer LXQt sessie module GenericName[nl]=LXQt sessie Configurator Name[nl]=LXQt sessie Configurator lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_nl.ts000066400000000000000000000272021261501354200276550ustar00rootroot00000000000000 AutoStartEdit Edit Bewerken Name: Naam: Search... Zoek... Command: Uitvoeren: Wait for system tray Wacht op systeemvak. Select Application Selecteer Programma AutoStartItemModel Global Autostart Algemene Autostart LXQt Autostart LXQt Autostart Location: %1 Locatie: %1 Overrides: %1 Overschrijvingen: %1 AutoStartPage Delete Verwijder Add Toevoegen Edit Bewerken Application Autostart Autostart Programma Error Fout File '%1' already exists! Bestand '%1' bestaat al! BasicSettings Window Manager Venster Beheer Search... Zoek... LXQt Modules LXQt Modules Leave Session Ask for confirmation to leave session Basic Settings Basis Instellingen Start Stop Select a window manager Selecteer een window manager DefaultApps Select a terminal emulator Selecteer een terminal Select a web browser Selecteer een web browser DefaultAppsPage Default Applications Standaard Programma's Terminal Emulation: Terminal emulatie: Search... Zoek... Web Browser: Web Browser: EnvironmentPage Add Toevoegen Delete Verwijder Environment Variables (Advanced) Omgevings Variabelen (geavanceerd) Variable Name Variabele Naam Value Waarde ModuleModel Running SessionConfigWindow LXQt Session Configuration LXQt Sessie Configuratie LXQt Session Settings Basic Settings Basis Instellingen Default Applications Standaard Programma's Locations Autostart Autostart Environment (Advanced) Omgeving (geavanceerd) Session Restart Required Sessie herstart vereist Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. U moet de Sessie herstarten (LXQt-sessie) om de instellingen op te slaan. Gebruik hiervoor "uitloggen" vanuit het hoofd menu. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_pl.desktop000066400000000000000000000001661261501354200307020ustar00rootroot00000000000000# Translations Comment[pl]=Ustawienia sesji LXQt GenericName[pl]=Ustawienia sesji LXQt Name[pl]=Ustawienia sesji LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_pl_PL.desktop000066400000000000000000000002121261501354200312650ustar00rootroot00000000000000# Translations Comment[pl_PL]=Konfiguruj moduł sesji LXQt GenericName[pl_PL]=Konfigurator sesji LXQt Name[pl_PL]=Konfigurator sesji LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_pl_PL.ts000066400000000000000000000271421261501354200302550ustar00rootroot00000000000000 AutoStartEdit Edit Edytuj Name: Nazwa: Search... Szukaj... Command: Polecenie: Wait for system tray Czekaj na systemowy tray Select Application Wybierz program AutoStartItemModel Global Autostart Ogólne LXQt Autostart LXQt Location: %1 Położenie:%1 Overrides: %1 AutoStartPage Delete Usuń Add Dodaj Edit Edytuj Application Autostart Automatyczne uruchamianie Error Błąd File '%1' already exists! Plik'%1' już istnieje! BasicSettings Window Manager Menedżer okien Search... Szukaj... LXQt Modules Moduły LXQt Leave Session Ask for confirmation to leave session Basic Settings Ogólne Start Start Stop Stop Select a window manager Wybierz menedżer okien DefaultApps Select a terminal emulator Wybór emulatora terminala Select a web browser Wybór przedlądarki internetowej DefaultAppsPage Default Applications Domyślne programy Terminal Emulation: Emulator terminala: Search... Szukaj... Web Browser: Przeglądarka internetowa: EnvironmentPage Add Dodaj Delete Usuń Environment Variables (Advanced) Zmienne środowiskowe (zaawansowane) Variable Name Nazwa zmiennej Value Wartość ModuleModel Running Uruchomiony SessionConfigWindow LXQt Session Configuration Konfiguracja sesji LXQt LXQt Session Settings Basic Settings Ogólne Default Applications Domyślne programy Locations Autostart Automatyczne uruchamianie Environment (Advanced) Środowisko (zaawansowane) Session Restart Required Wymagane ponowne uruchomienie sesji Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Należy ponownie uruchomić sesję (lxqt-session), aby wprowadzić zmiany. W tym celu proszę wylogować i ponownie zalogować użytkownika. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_pt.desktop000066400000000000000000000002161261501354200307060ustar00rootroot00000000000000# Translations Name[pt]=Definições da sessão GenericName[pt]=Definições da sessão LXQt Comment[pt]=Configuração das sessões do LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_pt.ts000066400000000000000000000275541261501354200277010ustar00rootroot00000000000000 AutoStartEdit Edit Editar Name: Nome: Search... Procurar... Command: Comando: Wait for system tray Esperar pela bandeja do sistema Select Application Escolha a aplicação AutoStartItemModel Global Autostart Arranque automático global LXQt Autostart Arranque automático do LXQt Location: %1 Localização: %1 Overrides: %1 Substitui: %1 AutoStartPage Delete Eliminar Add Adicionar Edit Editar Application Autostart Aplicações com arranque automático Error Erro File '%1' already exists! O ficheiro "%1" já existe! BasicSettings Window Manager Gestor de janelas Search... Procurar... LXQt Modules Módulos do LXQt Leave Session Sair da sessão Ask for confirmation to leave session Ask confirmation to leave session Confirmar ao sair da sessão Basic Settings Definições básicas Start Iniciar Stop Parar Select a window manager Escolha um gestor de janelas DefaultApps Select a terminal emulator Escolha o emulador de terminal Select a web browser Escolha o navegador web DefaultAppsPage Default Applications Aplicações pré-definidas Terminal Emulation: Emulador de terminal: Search... Procurar... Web Browser: Navegador web: EnvironmentPage Add Adicionar Delete Eliminar Environment Variables (Advanced) Variáveis de ambiente (avançado) Variable Name Nome da variável Value Valor ModuleModel Running Em execução SessionConfigWindow LXQt Session Configuration Configuração da sessão LXQt LXQt Session Settings Definições da sessão LXQt Basic Settings Definições básicas Default Applications Aplicações pré-definidas Locations Autostart Arranque automático Environment (Advanced) Ambiente (avançado) Session Restart Required Tem que reiniciar a sessão Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Tem que reiniciar a sessão (lxqt-session) para carregar as novas definições. Utilize "Terminar sessão" no menu principal. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_pt_BR.desktop000066400000000000000000000002501261501354200312670ustar00rootroot00000000000000# Translations Comment[pt_BR]=Módulo de configurador de sessão do LXQt GenericName[pt_BR]=Configurador de sessão do LXQt Name[pt_BR]=Configurador de sessão do LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_pt_BR.ts000066400000000000000000000274251261501354200302610ustar00rootroot00000000000000 AutoStartEdit Edit Editar Name: Nome: Search... Pesquisar... Command: Comando: Wait for system tray Esperar pela área de notificação Select Application Selecionar aplicativo AutoStartItemModel Global Autostart Iniciar automaticamente global LXQt Autostart Iniciar automaticamente do LXQt Location: %1 Localização: %1 Overrides: %1 Sobrescreve: %1 AutoStartPage Delete Excluir Add Adicionar Edit Editar Application Autostart Início automático dos aplicativos Error Erro File '%1' already exists! O arquivo '%1' já existe! BasicSettings Window Manager Gerenciador de janelas Search... Pesquisar... LXQt Modules Módulos do LXQt Leave Session Ask for confirmation to leave session Basic Settings Configurações básicas Start Iniciar Stop Parar Select a window manager Selecionar um gerenciador de janelas DefaultApps Select a terminal emulator Selecionar um emulador de terminal Select a web browser Selecionar um navegador de internet DefaultAppsPage Default Applications Aplicativos padrão Terminal Emulation: Emulador de terminal: Search... Pesquisar... Web Browser: Navegador de internet: EnvironmentPage Add Adicionar Delete Excluir Environment Variables (Advanced) Variáveis de ambiente (avançado) Variable Name Nome da variável Value Valor ModuleModel Running Em execução SessionConfigWindow LXQt Session Configuration Configuração da sessão do LXQt LXQt Session Settings Basic Settings Configurações básicas Default Applications Aplicativos padrão Locations Autostart Iniciar automaticamente Environment (Advanced) Ambiente (avançado) Session Restart Required Reinício de sessão necessário Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Você precisa reiniciar a sessão da área de trabalho (lxqt-session) para recarregar as configurações. Use encerrar sessão a partir do menu principal. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ro_RO.desktop000066400000000000000000000002221261501354200313000ustar00rootroot00000000000000# Translations Comment[ro_RO]=Configurează modulul sesiune LXQt GenericName[ro_RO]=Configurare sesiune LXQt Name[ro_RO]=Configurare sesiune LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ro_RO.ts000066400000000000000000000272141261501354200302670ustar00rootroot00000000000000 AutoStartEdit Edit Editează Name: Nume: Search... Se caută... Command: Comandă: Wait for system tray Așteaptă după tava sistem Select Application Selectează aplicația AutoStartItemModel Global Autostart Autostart global LXQt Autostart Autostart LXQt Location: %1 Locație: %1 Overrides: %1 Înlocuiri: %1 AutoStartPage Delete Șterge Add Adaugă Edit Editează Application Autostart Autostart aplicație Error Eroare File '%1' already exists! Fișierul '%1' există deja! BasicSettings Window Manager Gestiune ferestre Search... Se caută... LXQt Modules Module LXQt Leave Session Ask for confirmation to leave session Basic Settings Setări de bază Start Pornire Stop Oprire Select a window manager Selectați un administrator de ferestre DefaultApps Select a terminal emulator Selectați un emulator de terminal Select a web browser Selectați un navigator web DefaultAppsPage Default Applications Aplicații implicite Terminal Emulation: Emulatoare de terminal: Search... Se caută... Web Browser: Navigator web: EnvironmentPage Add Adaugă Delete Șterge Environment Variables (Advanced) Variabile de mediu (mod avansat) Variable Name Nume variabilă Value Valoare ModuleModel Running Rulează SessionConfigWindow LXQt Session Configuration Configurare sesiune LXQt LXQt Session Settings Basic Settings Setări de bază Default Applications Aplicații implicite Locations Autostart Autostart Environment (Advanced) Mediu (mod avansat) Session Restart Required Se necesită repornirea sesiunii Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Trebuie să reporniți sesiunea (lxqt-session) pentru a reîncărca setările. Utilizați opțiunea de ieșire din meniul principal. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ru.desktop000066400000000000000000000002461261501354200307140ustar00rootroot00000000000000# Translations Comment[ru]=Настройка для сеансов LXQt GenericName[ru]=Настройка сеанса LXQt Name[ru]=Настройка сеансаlxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ru.ts000066400000000000000000000303531261501354200276730ustar00rootroot00000000000000 AutoStartEdit Edit Изменить Name: Имя: Search... Искать… Command: Команда: Wait for system tray Ожидание системного лотка Select Application Выбрать программу AutoStartItemModel Global Autostart Общие программы LXQt Autostart Автозапуск только для LXQt Location: %1 Расположение: %1 Overrides: %1 Переопределяет: %1 AutoStartPage Delete Удалить Add Добавить Edit Редактировать Application Autostart Автозапуск приложений Error Ошибка File '%1' already exists! Файл '%1' уже существует! BasicSettings Window Manager Оконный менеджер Search... Выбрать… Basic Settings Основные настройки LXQt Modules Модули LXQt Start Старт Stop Стоп Leave Session Завершить сеанс Ask for confirmation to leave session Ask confirmation to leave session Спрашивать подтверждение завершения сеанса Select a window manager Укажите менеджер окон DefaultApps Select a terminal emulator Укажите эмулятор терминала Select a web browser Укажите браузер DefaultAppsPage Default Applications Программы по умолчанию Terminal Emulation: Терминал: Search... Выбрать… Web Browser: Браузер: EnvironmentPage Add Добавить Delete Удалить Environment Variables (Advanced) Переменные среды (для опытных) Variable Name Переменная Value Значение ModuleModel Running Запущено SessionConfigWindow LXQt Session Settings Настройки сессии LXQt Basic Settings Основные настройки Default Applications Программы по умолчанию Locations Autostart Автозапуск Environment (Advanced) Окружение (для опытных) Session Restart Required Понадобится перезапуск сессии Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Изменения вступят в силу только после перезапуска сессии (lxqt-session). Используйте пункт «Завершить сеанс» в главном меню. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ru_RU.desktop000066400000000000000000000002571261501354200313240ustar00rootroot00000000000000# Translations Comment[ru_RU]=Настройка для сеансов LXQt GenericName[ru_RU]=Настройка сеанса LXQt Name[ru_RU]=Настройка сеансаlxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_ru_RU.ts000066400000000000000000000303561261501354200303040ustar00rootroot00000000000000 AutoStartEdit Edit Изменить Name: Имя: Search... Искать… Command: Команда: Wait for system tray Ожидание системного лотка Select Application Выбрать программу AutoStartItemModel Global Autostart Общие программы LXQt Autostart Автозапуск только для LXQt Location: %1 Расположение: %1 Overrides: %1 Переопределяет: %1 AutoStartPage Delete Удалить Add Добавить Edit Редактировать Application Autostart Автозапуск приложений Error Ошибка File '%1' already exists! Файл '%1' уже существует! BasicSettings Window Manager Оконный менеджер Search... Выбрать… Basic Settings Основные настройки LXQt Modules Модули LXQt Start Старт Stop Стоп Leave Session Завершить сеанс Ask for confirmation to leave session Ask confirmation to leave session Спрашивать подтверждение завершения сеанса Select a window manager Укажите менеджер окон DefaultApps Select a terminal emulator Укажите эмулятор терминала Select a web browser Укажите браузер DefaultAppsPage Default Applications Программы по умолчанию Terminal Emulation: Терминал: Search... Выбрать… Web Browser: Браузер: EnvironmentPage Add Добавить Delete Удалить Environment Variables (Advanced) Переменные среды (для опытных) Variable Name Переменная Value Значение ModuleModel Running Запущено SessionConfigWindow LXQt Session Settings Настройки сессии LXQt Basic Settings Основные настройки Default Applications Программы по умолчанию Locations Autostart Автозапуск Environment (Advanced) Окружение (для опытных) Session Restart Required Понадобится перезапуск сессии Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Изменения вступят в силу только после перезапуска сессии (lxqt-session). Используйте пункт «Завершить сеанс» в главном меню. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_sk.desktop000066400000000000000000000002201261501354200306730ustar00rootroot00000000000000# Translations Comment[sk]=Nastavenie relácie prostredia LXQt GenericName[sk]=Nastavenie relácie prostredia LXQt Name[sk]=Nastavenie relácie lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_sk_SK.ts000066400000000000000000000263321261501354200302610ustar00rootroot00000000000000 AutoStartEdit Edit Name: Search... Command: Wait for system tray Select Application AutoStartItemModel Global Autostart LXQt Autostart Location: %1 Overrides: %1 AutoStartPage Delete Add Edit Application Autostart Error File '%1' already exists! BasicSettings Window Manager Search... LXQt Modules Start Stop Leave Session Ask for confirmation to leave session Basic Settings Select a window manager DefaultApps Select a terminal emulator Select a web browser DefaultAppsPage Default Applications Terminal Emulation: Search... Web Browser: EnvironmentPage Add Delete Environment Variables (Advanced) Variable Name Value ModuleModel Running SessionConfigWindow LXQt Session Settings Basic Settings Default Applications Locations Autostart Environment (Advanced) Session Restart Required Some settings will not take effect until the next log in. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_sl.desktop000066400000000000000000000001611261501354200307000ustar00rootroot00000000000000# Translations Comment[sl]=Nastavite modul seje za LXQt GenericName[sl]=Nastavitev seje Name[sl]=Nastavitev seje lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_sl.ts000066400000000000000000000271731261501354200276710ustar00rootroot00000000000000 AutoStartEdit Edit Urejanje Name: Ime: Search... Iskanje ... Command: Ukaz: Wait for system tray Počakaj na sistemsko vrstico Select Application Izberite program AutoStartItemModel Global Autostart Globalni samodejni zagon LXQt Autostart Samodejni zagon za lxqt Location: %1 Lokacija: %1 Overrides: %1 Povozi: %1 AutoStartPage Delete Izbriši Add Dodaj Edit Urejanje Application Autostart Samodejni zagon programa Error Napaka File '%1' already exists! Datoteka »%1« že obstaja. BasicSettings Window Manager Upravljalnik oken Search... Iskanje ... LXQt Modules Leave Session Ask for confirmation to leave session Basic Settings Osnovne nastavitve Start Stop Select a window manager Izberite upravljalnika oken DefaultApps Select a terminal emulator Izberite posnemovalnika terminala Select a web browser Izberite spletni brskalnik DefaultAppsPage Default Applications Privzeti programi Terminal Emulation: Posnemovalnik termina: Search... Iskanje ... Web Browser: Spletni brskalnik: EnvironmentPage Add Dodaj Delete Izbriši Environment Variables (Advanced) Okoljske spremenljivke (napredno) Variable Name Ime spremenljivke Value Vrednost ModuleModel Running SessionConfigWindow LXQt Session Configuration Nastavitve seje LXQt LXQt Session Settings Basic Settings Osnovne nastavitve Default Applications Privzeti programi Locations Autostart Samodejni zagon Environment (Advanced) Okolje (napredno) Session Restart Required Potreben je ponoven zagon seje Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Za ponovno naložitev nastavitev morate znova zagnati sejo namizja (lxqt-session). Iz glavnega menija izberite Odjavi. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_sr.desktop000066400000000000000000000003011261501354200307020ustar00rootroot00000000000000# Translations Comment[sr]=Подесите Рејзоров модул сесије GenericName[sr]=Подешавање сесије Name[sr]=Подешавање сесије Рејзора lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_sr@ijekavian.desktop000066400000000000000000000003201261501354200326650ustar00rootroot00000000000000Name[sr@ijekavian]=Подешавање сесије Рејзора Comment[sr@ijekavian]=Подесите Рејзоров модул сесије GenericName[sr@ijekavian]=Подешавање сесије lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_sr@ijekavianlatin.desktop000066400000000000000000000002411261501354200337170ustar00rootroot00000000000000Name[sr@ijekavianlatin]=Podešavanje sesije Rejzora Comment[sr@ijekavianlatin]=Podesite Rejzorov modul sesije GenericName[sr@ijekavianlatin]=Podešavanje sesije lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_sr@latin.desktop000066400000000000000000000002251261501354200320370ustar00rootroot00000000000000# Translations Comment[sr@latin]=Podesite Rejzorov modul sesije GenericName[sr@latin]=Podešavanje sesije Name[sr@latin]=Podešavanje sesije Rejzora lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_sr@latin.ts000066400000000000000000000263351261501354200310260ustar00rootroot00000000000000 AutoStartEdit Edit Name: Search... Command: Wait for system tray Select Application AutoStartItemModel Global Autostart LXQt Autostart Location: %1 Overrides: %1 AutoStartPage Delete Add Edit Application Autostart Error File '%1' already exists! BasicSettings Window Manager Search... LXQt Modules Start Stop Leave Session Ask for confirmation to leave session Basic Settings Select a window manager DefaultApps Select a terminal emulator Select a web browser DefaultAppsPage Default Applications Terminal Emulation: Search... Web Browser: EnvironmentPage Add Delete Environment Variables (Advanced) Variable Name Value ModuleModel Running SessionConfigWindow LXQt Session Settings Basic Settings Default Applications Locations Autostart Environment (Advanced) Session Restart Required Some settings will not take effect until the next log in. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_sr_RS.ts000066400000000000000000000263401261501354200302760ustar00rootroot00000000000000 AutoStartEdit Edit Уреди Name: Име: Search... Тражи... Command: Наредба: Wait for system tray Select Application Изабери програм AutoStartItemModel Global Autostart Глобално аутопокретање LXQt Autostart Рејзорово аутопокретање Location: %1 Overrides: %1 AutoStartPage Delete Обриши Add Edit Уреди Application Autostart Error File '%1' already exists! BasicSettings Window Manager Search... Тражи... LXQt Modules Start Stop Leave Session Ask for confirmation to leave session Basic Settings Select a window manager DefaultApps Select a terminal emulator Select a web browser DefaultAppsPage Default Applications Terminal Emulation: Search... Тражи... Web Browser: EnvironmentPage Add Delete Обриши Environment Variables (Advanced) Variable Name Value ModuleModel Running SessionConfigWindow LXQt Session Settings Basic Settings Default Applications Locations Autostart Environment (Advanced) Session Restart Required Some settings will not take effect until the next log in. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_th_TH.desktop000066400000000000000000000003561261501354200312760ustar00rootroot00000000000000# Translations Comment[th_TH]=ตั้งค่ามอดูลวาระงาน LXQt GenericName[th_TH]=ตัวตั้งค่าวาระงาน LXQt Name[th_TH]=ตัวตั้งค่าวาระงาน LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_th_TH.ts000066400000000000000000000313631261501354200302550ustar00rootroot00000000000000 AutoStartEdit Edit แก้ไข Name: ชื่อ: Search... ค้นหา... Command: คำสั่ง: Wait for system tray รอสำหรับถาดระบบ Select Application เลือกโปแกรม AutoStartItemModel Global Autostart การเริ่มโปรแกรมอัตโนมัติ (ส่วนกลาง) LXQt Autostart เริ่มโปรแกรมอัตโนมัติ LXQt Location: %1 สถานที่: %1 Overrides: %1 ล้มเลิก: %1 AutoStartPage Delete ลบ Add เพิ่ม Edit แก้ไข Application Autostart การเริ่มโปรแกรมอัตโนมัติ Error ขัดข้อง File '%1' already exists! มีแฟ้ม '%1' อยู่ก่อนแล้ว BasicSettings Window Manager ตัวจัดการหน้าต่าง Search... ค้นหา... LXQt Modules มอดูลต่างๆ LXQt Leave Session Ask for confirmation to leave session Basic Settings การตั้งค่าพื้นฐาน Start เริ่ม Stop หยุด Select a window manager เลือกตัวจัดการหน้าต่าง DefaultApps Select a terminal emulator เลือกโปรแกรมจำลองเทอร์มินัล Select a web browser เลือกโปรแกรมท่องเว็บ DefaultAppsPage Default Applications โปรแกรมปริยาย Terminal Emulation: โปรแกรมจำลองเทอร์มินัล: Search... ค้นหา... Web Browser: โปรแกรมท่องเว็บ EnvironmentPage Add เพิ่ม Delete ลบ Environment Variables (Advanced) ตัวแปรสภาพแวดล้อม (ขั้นสูง) Variable Name ชื่อตัวแปร Value ค่า ModuleModel Running กำลังทำงาน SessionConfigWindow LXQt Session Configuration การตั้งค่าวาระงาน LXQt LXQt Session Settings Basic Settings ค่าตั้งพื้นฐาน Default Applications โปรแกรมปริยาย Locations Autostart การเริ่มโปรแกรมอัตโนมัติ Environment (Advanced) สภวาดแวดล้อม (ขั้นสูง) Session Restart Required จำเป็นต้องทำการเริ่มวาระงานใหม่ Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. คุณจำเป็นต้องทำการเริ่มวาระงานพื้นโต๊ะ(วาระงาน-lxqt)ใหม่ เพื่อโหลดค่าตั้ง ใช้การออกระบบจากเมนูหลัก UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_tr.desktop000066400000000000000000000002251261501354200307100ustar00rootroot00000000000000# Translations Comment[tr]=LXQt oturum modülünü yapılandır GenericName[tr]=LXQt Oturum Yapılandırıcı Name[tr]=LXQt Oturum Yapılandırıcı lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_tr.ts000066400000000000000000000272671261501354200277040ustar00rootroot00000000000000 AutoStartEdit Edit Düzenle Name: İsim: Search... Ara... Command: Komut: Wait for system tray Sistem çekmecesi için bekleyin Select Application Uygulama Seç AutoStartItemModel Global Autostart Genel Kendiliğinden Başlatma LXQt Autostart LXQt Kendilğinden Başlatma Location: %1 Konum: %1 Overrides: %1 AutoStartPage Delete Sil Add Ekle Edit Düzenle Application Autostart Uygulama Kendiliğinden Çalıştırıcı Error Hata File '%1' already exists! '%1' dosyası zaten var! BasicSettings Window Manager Pencere Yönetici Search... Ara... LXQt Modules Leave Session Ask for confirmation to leave session Basic Settings Temel Ayarlar Start Stop Select a window manager Bir pencere yöneticisi seçin DefaultApps Select a terminal emulator Bir terminal öykünücü seçin Select a web browser Bir web tarayıcı seçin DefaultAppsPage Default Applications Öntanımlı Uygulamalar Terminal Emulation: Terminal Öykünümü: Search... Ara... Web Browser: Web Tarayıcı: EnvironmentPage Add Ekle Delete Sil Environment Variables (Advanced) Ortam Değişkenleri (Gelişmiş) Variable Name Değişken Adı Value Değer ModuleModel Running SessionConfigWindow LXQt Session Configuration LXQt Oturum Yapılandırma LXQt Session Settings Basic Settings Temel Ayarlar Default Applications Öntanımlı Uygulamalar Locations Autostart Kendilğinden Başlatma Environment (Advanced) Ortam (Gelişmiş) Session Restart Required Oturumun yeniden başlatılması gerekli Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Ayarların etkin olması için masaüstü oturumunu (lxqt-session) yeniden başlatmanız gerekli. Ana menüden çıkış işlevini kullanın. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_uk.desktop000066400000000000000000000003001261501354200306740ustar00rootroot00000000000000# Translations Comment[uk]=Налаштувати модуль сеансу LXQt GenericName[uk]=Налаштування сеансу LXQt Name[uk]=Налаштування сеансу LXQt lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_uk.ts000066400000000000000000000301651261501354200276650ustar00rootroot00000000000000 AutoStartEdit Edit Редагувати Name: Ім’я: Search... Пошук... Command: Команда: Wait for system tray Очікувати на системний лоток Select Application Обрати програму AutoStartItemModel Global Autostart Глобальний автозапуск LXQt Autostart Автозапуск LXQt Location: %1 Місце: %1 Overrides: %1 Перекриває: %1 AutoStartPage Delete Вилучити Add Додати Edit Редагувати Application Autostart Автозапуск програм Error Помилка File '%1' already exists! Файл '%1' вже існує! BasicSettings Window Manager Менеджер вікон Search... Пошук... LXQt Modules Модулі LXQt Leave Session Ask for confirmation to leave session Basic Settings Базові налаштування Start Запустити Stop Зупинити Select a window manager Оберіть менеджер вікон DefaultApps Select a terminal emulator Оберіть емулятор терміналу Select a web browser Оберіть веб-переглядач DefaultAppsPage Default Applications Типові програми Terminal Emulation: Емуляція терміналу: Search... Пошук... Web Browser: Веб-переглядач: EnvironmentPage Add Додати Delete Вилучити Environment Variables (Advanced) Змінні середовища (розширено) Variable Name Назва змінної Value Значення ModuleModel Running Запущено SessionConfigWindow LXQt Session Configuration Налаштування сеансу LXQt LXQt Session Settings Basic Settings Базові налаштування Default Applications Типові програми Locations Autostart Автозапуск Environment (Advanced) Середовище (розширено) Session Restart Required Необхідно перезапустити сеанс Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. Нові налаштування діятимуть у новому сеансі (lxqt-session). Вийдіть із поточного через головне меню. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_zh_CN.GB2312.desktop000066400000000000000000000000171261501354200320620ustar00rootroot00000000000000# Translations lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_zh_CN.GB2312.ts000066400000000000000000000263411261501354200310470ustar00rootroot00000000000000 AutoStartEdit Edit Name: Search... Command: Wait for system tray Select Application AutoStartItemModel Global Autostart LXQt Autostart Location: %1 Overrides: %1 AutoStartPage Delete Add Edit Application Autostart Error File '%1' already exists! BasicSettings Window Manager Search... LXQt Modules Start Stop Leave Session Ask for confirmation to leave session Basic Settings Select a window manager DefaultApps Select a terminal emulator Select a web browser DefaultAppsPage Default Applications Terminal Emulation: Search... Web Browser: EnvironmentPage Add Delete Environment Variables (Advanced) Variable Name Value ModuleModel Running SessionConfigWindow LXQt Session Settings Basic Settings Default Applications Locations Autostart Environment (Advanced) Session Restart Required Some settings will not take effect until the next log in. UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_zh_CN.desktop000066400000000000000000000001721261501354200312650ustar00rootroot00000000000000# Translations Comment[zh_CN]=配置 LXQt 会话模块 GenericName[zh_CN]=LXQt 会话配置 Name[zh_CN]=LXQt 会话配置 lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_zh_CN.ts000066400000000000000000000267321261501354200302540ustar00rootroot00000000000000 AutoStartEdit Edit 编辑 Name: 名称: Search... 查找... Command: 命令: Wait for system tray 等待系统托盘 Select Application 选择程序 AutoStartItemModel Global Autostart 全局自动启动 LXQt Autostart LXQt 自动启动 Location: %1 位置:%1 Overrides: %1 覆盖:%1 AutoStartPage Delete 删除 Add 添加 Edit 编辑 Application Autostart 程序自动启动 Error 错误 File '%1' already exists! 文件 '%1' 已存在! BasicSettings Window Manager 窗口管理器 Search... 查找... LXQt Modules LXQt 模块 Leave Session Ask for confirmation to leave session Basic Settings 基本设置 Start 启动 Stop 停止 Select a window manager 选择窗口管理器 DefaultApps Select a terminal emulator 选择终端模拟器 Select a web browser 选择网页浏览器 DefaultAppsPage Default Applications 默认程序 Terminal Emulation: 终端模拟器: Search... 查找... Web Browser: 网页浏览器: EnvironmentPage Add 添加 Delete 删除 Environment Variables (Advanced) 环境变量(高级) Variable Name 变量名 Value ModuleModel Running 正在运行 SessionConfigWindow LXQt Session Configuration LXQt 会话配置 LXQt Session Settings Basic Settings 基本设置 Default Applications 默认程序 Locations Autostart 自动启动 Environment (Advanced) 环境(高级) Session Restart Required 需要重启会话 Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. 需要重启桌面会话(lxqt-session)才能重新装入新设置。使用主菜单的登出按钮。 UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_zh_TW.desktop000066400000000000000000000001661261501354200313220ustar00rootroot00000000000000# Translations Comment[zh_TW]=LXQt會話模組設定 GenericName[zh_TW]=LXQt會話設定 Name[zh_TW]=LXQt會話設定 lxqt-session-0.10.0/lxqt-config-session/translations/lxqt-config-session_zh_TW.ts000066400000000000000000000267751261501354200303150ustar00rootroot00000000000000 AutoStartEdit Edit 編輯 Name: 名稱: Search... 搜尋... Command: 命令: Wait for system tray 等候系統欄 Select Application 選擇應用程式 AutoStartItemModel Global Autostart 系統自動啟動 LXQt Autostart LXQt自動啟動 Location: %1 位置 :%1 Overrides: %1 覆蓋 : %1 AutoStartPage Delete 移除 Add 新增 Edit 編輯 Application Autostart 自動啟動程式 Error 錯誤 File '%1' already exists! 檔案 '%1' 已經存在! BasicSettings Window Manager 視窗管理員 Search... 搜尋... LXQt Modules LXQt模組 Leave Session Ask for confirmation to leave session Basic Settings 基本設定 Start 啟動 Stop 停止 Select a window manager 選擇一個視窗管理員 DefaultApps Select a terminal emulator 選擇一個終端模擬機 Select a web browser 選擇一個網頁瀏覽器 DefaultAppsPage Default Applications 預設程式 Terminal Emulation: 終端模擬機 : Search... 搜尋... Web Browser: 網頁瀏覽器 : EnvironmentPage Add 新增 Delete 移除 Environment Variables (Advanced) 環境參數(進階) Variable Name 參數名稱 Value 數值 ModuleModel Running 運行中 SessionConfigWindow LXQt Session Configuration LXQt會話設定 LXQt Session Settings Basic Settings 基本設定 Default Applications 預設程式 Locations Autostart 自動啟動程式 Environment (Advanced) 環境參數(進階) Session Restart Required 重新啟動會話請求 Some settings will not take effect until the next log in. You need to restart desktop session (lxqt-session) to reload settings. Use logout from the main menu. 您需要重新啟動桌面會話(lxqt-session)來重新載入設定。使用主選單裡的登出。 UserLocationsPage Locations for Personal Files LXQt Session Settings - Locations An error ocurred while applying the settings for the %1 location Choose Location UserLocationsPrivate Desktop Downloads Templates Public Share Documents Music Pictures Videos lxqt-session-0.10.0/lxqt-config-session/userlocationspage.cpp000066400000000000000000000130411261501354200244060ustar00rootroot00000000000000/* * This file is part of the LXQt project. * Copyright (C) 2015 Luís Pereira * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this library; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #include "userlocationspage.h" #include #include #include #include #include #include #include #include #include #include #include #include class UserLocationsPagePrivate { public: UserLocationsPagePrivate(); static const QStringList locationsName; QList initialLocations; QList locations; QSignalMapper *signalMapper; void getUserDirs(); void populate(); }; UserLocationsPagePrivate::UserLocationsPagePrivate() : locations(), signalMapper(0) { } // This labels haveto match XdgDirs::UserDirectories const QStringList UserLocationsPagePrivate::locationsName = QStringList() << qApp->translate("UserLocationsPrivate", "Desktop") << qApp->translate("UserLocationsPrivate", "Downloads") << qApp->translate("UserLocationsPrivate", "Templates") << qApp->translate("UserLocationsPrivate", "Public Share") << qApp->translate("UserLocationsPrivate", "Documents") << qApp->translate("UserLocationsPrivate", "Music") << qApp->translate("UserLocationsPrivate", "Pictures") << qApp->translate("UserLocationsPrivate", "Videos"); void UserLocationsPagePrivate::getUserDirs() { const int N = locationsName.count(); for(int i = 0; i < N; ++i) { const QString userDir = XdgDirs::userDir(static_cast (i)); const QDir dir(userDir); initialLocations.append(dir.canonicalPath()); } } void UserLocationsPagePrivate::populate() { const int N = initialLocations.count(); Q_ASSERT(N == locationsName.count()); for (int i = 0; i < N; ++i) { locations.at(i)->setText(initialLocations.at(i)); } } UserLocationsPage::UserLocationsPage(QWidget *parent) : QWidget(parent), d(new UserLocationsPagePrivate()) { d->signalMapper = new QSignalMapper(this); QGridLayout *gridLayout = new QGridLayout(this); int row = 0; QLabel *description = new QLabel(tr("Locations for Personal Files"), this); QFont font; font.setBold(true); description->setFont(font); gridLayout->addWidget(description, row++, 0, 1, -1); for (int i = 0; i < d->locationsName.size(); ++i, ++row) { QLabel *label = new QLabel(d->locationsName.at(i), this); QLineEdit *edit = new QLineEdit(this); d->locations.append(edit); edit->setClearButtonEnabled(true); QToolButton *button = new QToolButton(this); button->setIcon(XdgIcon::fromTheme(QStringLiteral("folder"))); connect(button, SIGNAL(clicked()), d->signalMapper, SLOT(map())); d->signalMapper->setMapping(button, i); gridLayout->addWidget(label, row, 0); gridLayout->addWidget(edit, row, 1); gridLayout->addWidget(button, row, 2); } connect(d->signalMapper, SIGNAL(mapped(int)), this, SLOT(clicked(int))); QSpacerItem *verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); gridLayout->addItem(verticalSpacer, row++, 1, 1, 1); setLayout(gridLayout); d->getUserDirs(); d->populate(); } UserLocationsPage::~UserLocationsPage() { // It's fine to delete a null pointer. No need to check. delete d; d = 0; } void UserLocationsPage::restoreSettings() { d->populate(); } void UserLocationsPage::save() { bool restartWarn = false; const int N = d->locations.count(); for (int i = 0; i < N; ++i) { const QDir dir(d->locations.at(i)->text()); const QString s = dir.canonicalPath(); if (s != d->initialLocations.at(i)) { const bool ok = XdgDirs::setUserDir( static_cast (i), s, true); if (!ok) { const int ret = QMessageBox::warning(this, tr("LXQt Session Settings - Locations"), tr("An error ocurred while applying the settings for the %1 location").arg(d->locationsName.at(i)), QMessageBox::Ok); Q_UNUSED(ret); } restartWarn = true; } } if (restartWarn) emit needRestart(); } void UserLocationsPage::clicked(int id) { const QString& currentDir = d->locations.at(id)->text(); const QString dir = QFileDialog::getExistingDirectory(this, tr("Choose Location"), currentDir, QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks); if (!dir.isEmpty()) { const QDir dd(dir); d->locations.at(id)->setText(dd.canonicalPath()); } } lxqt-session-0.10.0/lxqt-config-session/userlocationspage.h000066400000000000000000000025101261501354200240520ustar00rootroot00000000000000/* * This file is part of the LXQt project. * Copyright (C) 2015 Luís Pereira * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this library; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #ifndef USERLOCATIONSPAGE_H #define USERLOCATIONSPAGE_H #include class UserLocationsPagePrivate; class UserLocationsPage : public QWidget { Q_OBJECT public: explicit UserLocationsPage(QWidget *parent = 0); ~UserLocationsPage(); Q_SIGNALS: void needRestart(); public Q_SLOTS: void restoreSettings(); void save(); private Q_SLOTS: void clicked(int id); private: UserLocationsPagePrivate *d; }; #endif // USERLOCATIONSPAGE_H lxqt-session-0.10.0/lxqt-leave/000077500000000000000000000000001261501354200163225ustar00rootroot00000000000000lxqt-session-0.10.0/lxqt-leave/CMakeLists.txt000066400000000000000000000025261261501354200210670ustar00rootroot00000000000000project(lxqt-leave) set(CPP_FILES main.cpp leavedialog.cpp ) set(H_FILES leavedialog.h ) set(UI_FILES leavedialog.ui ) # Translations ********************************** lxqt_translate_desktop(DESKTOP_FILES SOURCES resources/lxqt-leave.desktop.in resources/lxqt-hibernate.desktop.in resources/lxqt-lockscreen.desktop.in resources/lxqt-logout.desktop.in resources/lxqt-reboot.desktop.in resources/lxqt-shutdown.desktop.in resources/lxqt-suspend.desktop.in ) lxqt_translate_ts(lxqt-leave_QM_FILES UPDATE_TRANSLATIONS ${UPDATE_TRANSLATIONS} SOURCES ${CPP_FILES} ${UI_FILES} ${H_FILES} INSTALL_DIR "${LXQT_TRANSLATIONS_DIR}/${PROJECT_NAME}" ) lxqt_app_translation_loader(lxqt-leave_QM_LOADER ${PROJECT_NAME}) #************************************************ add_executable(lxqt-leave ${CPP_FILES} ${DESKTOP_FILES} ${lxqt-leave_QM_LOADER} ${lxqt-leave_QM_FILES} ) target_link_libraries(lxqt-leave lxqt ) install(TARGETS lxqt-leave RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" COMPONENT Runtime ) install(FILES ${DESKTOP_FILES} DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications" COMPONENT Runtime ) install(FILES resources/lxqt-leave.1 DESTINATION "${CMAKE_INSTALL_MANDIR}/man1" COMPONENT Runtime ) lxqt-session-0.10.0/lxqt-leave/leavedialog.cpp000066400000000000000000000047431261501354200213120ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2015 LXQt team * Authors: * Paulo Lieuthier * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "leavedialog.h" LeaveDialog::LeaveDialog(QWidget* parent) : QDialog(parent), ui(new Ui::LeaveDialog), mPower(new LXQt::Power(this)), mScreensaver(new LXQt::ScreenSaver(this)) { ui->setupUi(this); ui->logoutButton->setEnabled(mPower->canAction(LXQt::Power::PowerLogout)); ui->rebootButton->setEnabled(mPower->canAction(LXQt::Power::PowerReboot)); ui->shutdownButton->setEnabled(mPower->canAction(LXQt::Power::PowerShutdown)); ui->suspendButton->setEnabled(mPower->canAction(LXQt::Power::PowerSuspend)); ui->hibernateButton->setEnabled(mPower->canAction(LXQt::Power::PowerHibernate)); connect(ui->logoutButton, &QPushButton::clicked, [&] { close(); mPower->logout(); }); connect(ui->rebootButton, &QPushButton::clicked, [&] { close(); mPower->reboot(); }); connect(ui->shutdownButton, &QPushButton::clicked, [&] { close(); mPower->shutdown(); }); connect(ui->suspendButton, &QPushButton::clicked, [&] { close(); mPower->suspend(); }); connect(ui->hibernateButton, &QPushButton::clicked, [&] { close(); mPower->hibernate(); }); connect(ui->lockscreenButton, &QPushButton::clicked, [&] { close(); QEventLoop loop; connect(mScreensaver, &LXQt::ScreenSaver::done, &loop, &QEventLoop::quit); mScreensaver->lockScreen(); loop.exec(); }); connect(ui->cancelButton, &QPushButton::clicked, [&] { close(); }); } LeaveDialog::~LeaveDialog() { delete ui; } lxqt-session-0.10.0/lxqt-leave/leavedialog.h000066400000000000000000000026541261501354200207560ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2015 LXQt team * Authors: * Paulo Lieuthier * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef LEAVEDIALOG_H #define LEAVEDIALOG_H #include "ui_leavedialog.h" #include #include #include namespace Ui { class LeaveDialog; } class LeaveDialog : public QDialog { Q_OBJECT public: explicit LeaveDialog(QWidget *parent = 0); ~LeaveDialog(); private: Ui::LeaveDialog *ui; LXQt::Power *mPower; LXQt::ScreenSaver *mScreensaver; }; #endif lxqt-session-0.10.0/lxqt-leave/leavedialog.ui000066400000000000000000000101001261501354200211250ustar00rootroot00000000000000 LeaveDialog 0 0 617 135 0 0 Leave QFrame::NoFrame <html><head/><body><p><span style=" font-size:12pt;">What do you want the computer to do?</span></p></body></html> Qt::AutoText Qt::AlignCenter Logout Reboot Shutdown Suspend Lock screen Hibernate Qt::Horizontal 170 20 Cancel lxqt-session-0.10.0/lxqt-leave/main.cpp000066400000000000000000000067601261501354200177630ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXDE-Qt - a lightweight, Qt based, desktop toolset * http://razor-qt.org * * Copyright: 2010-2011 Razor team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include #include #include #include #include #include #include #include "leavedialog.h" int main(int argc, char *argv[]) { LXQt::SingleApplication a(argc, argv); LXQt::Translator::translateApplication(); LXQt::PowerManager powermanager(&a); LXQt::ScreenSaver screensaver(&a); QCommandLineParser parser; parser.setApplicationDescription(QStringLiteral("lxqt-leave")); parser.addHelpOption(); parser.addVersionOption(); QCommandLineOption logoutOption(QStringLiteral("logout"), QCoreApplication::translate("main", "Logout.")); parser.addOption(logoutOption); QCommandLineOption lockscreenOption(QStringLiteral("lockscreen"), QCoreApplication::translate("main", "Lockscreen.")); parser.addOption(lockscreenOption); QCommandLineOption suspendOption(QStringLiteral("suspend"), QCoreApplication::translate("main", "Suspend.")); parser.addOption(suspendOption); QCommandLineOption hibernateOption(QStringLiteral("hibernate"), QCoreApplication::translate("main", "Hibernate.")); parser.addOption(hibernateOption); QCommandLineOption shutdownOption(QStringLiteral("shutdown"), QCoreApplication::translate("main", "Shutdown.")); parser.addOption(shutdownOption); QCommandLineOption rebootOption(QStringLiteral("reboot"), QCoreApplication::translate("main", "Reboot.")); parser.addOption(rebootOption); parser.process(a); if (parser.isSet(logoutOption)) { powermanager.logout(); return 0; } if (parser.isSet(lockscreenOption)) { a.connect(&screensaver, &LXQt::ScreenSaver::done, &a, &LXQt::Application::quit); screensaver.lockScreen(); a.exec(); return 0; } if (parser.isSet(suspendOption)) { powermanager.suspend(); return 0; } if (parser.isSet(hibernateOption)) { powermanager.hibernate(); return 0; } if (parser.isSet(shutdownOption)) { powermanager.shutdown(); return 0; } if (parser.isSet(rebootOption)) { powermanager.reboot(); return 0; } LeaveDialog dialog; a.setActivationWindow(&dialog); dialog.setGeometry(QStyle::alignedRect(Qt::LeftToRight, Qt::AlignCenter, dialog.size(), qApp->desktop()->screenGeometry(QCursor::pos()))); dialog.setMaximumSize(dialog.minimumSize()); return dialog.exec(); } lxqt-session-0.10.0/lxqt-leave/resources/000077500000000000000000000000001261501354200203345ustar00rootroot00000000000000lxqt-session-0.10.0/lxqt-leave/resources/lxqt-hibernate.desktop.in000066400000000000000000000003531261501354200252640ustar00rootroot00000000000000[Desktop Entry] Type=Application Name=Hibernate GenericName=Hibernate Comment=hibernate the machine Exec=lxqt-leave --hibernate Icon=system-suspend-hibernate Categories=System;X-Leave OnlyShowIn=LXQt #TRANSLATIONS_DIR=../translations lxqt-session-0.10.0/lxqt-leave/resources/lxqt-leave.1000066400000000000000000000015761261501354200225110ustar00rootroot00000000000000.TH lxqt-leave 1 "" "" "LXQt\ Helper" .SH NAME \fBlxqt-leave\fR \- easily logout, reboot, shutdown, suspend, hibernate and lock screen from a dialog .SH SYNOPSIS \fBlxqt-leave\fR [\fIargument\fR] .SH DESCRIPTION \fBlxqt-leave\fR is a graphical Qt tool for easily triggering leave session actions: logout, reboot, shutdown, hibernate and lock screen. If run with an argument, the dialog is not shown and the action is executed directly. .SH OPTIONS .PP The options which apply to the \fBlxqt-leave\fR command are: .PP \fB\-\-logout\fR .RE .PP \fB\-\-lockscreen\fR .RE .PP \fB\-\-suspend\fR .RE .PP \fB\-\-hibernate\fR .RE .PP \fB\-\-shutdown\fR .RE .PP \fB\-\-reboot\fR .RE .PP \fB\-\-help\fR .RE .SH "REPORTING BUGS" Report bugs to https://github.com/lxde/lxqt/issues .SH AUTHOR This manual page was created by \fBPaulo Lieuthier\fR \fI\fR for the \fBLXQt\fR project. lxqt-session-0.10.0/lxqt-leave/resources/lxqt-leave.desktop.in000066400000000000000000000003061261501354200244150ustar00rootroot00000000000000[Desktop Entry] Type=Application Name=Leave GenericName=Leave Comment=Leave dialog Exec=lxqt-leave Icon=system-shutdown Categories=System;X-Leave OnlyShowIn=LXQt; #TRANSLATIONS_DIR=../translations lxqt-session-0.10.0/lxqt-leave/resources/lxqt-lockscreen.desktop.in000066400000000000000000000003621261501354200254530ustar00rootroot00000000000000[Desktop Entry] Type=Application Name=Lock Screen GenericName=Lock Screen Comment=Lock the current session Exec=lxqt-leave --lockscreen Icon=system-lock-screen Categories=System;Screensaver OnlyShowIn=LXQt; #TRANSLATIONS_DIR=../translations lxqt-session-0.10.0/lxqt-leave/resources/lxqt-logout.desktop.in000066400000000000000000000003431261501354200246330ustar00rootroot00000000000000[Desktop Entry] Type=Application Name=Logout GenericName=Logout Comment=Logout from the current session Exec=lxqt-leave --logout Icon=system-log-out Categories=System;X-Leave OnlyShowIn=LXQt; #TRANSLATIONS_DIR=../translations lxqt-session-0.10.0/lxqt-leave/resources/lxqt-reboot.desktop.in000066400000000000000000000003251261501354200246140ustar00rootroot00000000000000[Desktop Entry] Type=Application Name=Reboot GenericName=Reboot Comment=reboot the machine Exec=lxqt-leave --reboot Icon=system-reboot Categories=System;X-Leave OnlyShowIn=LXQt; #TRANSLATIONS_DIR=../translations lxqt-session-0.10.0/lxqt-leave/resources/lxqt-shutdown.desktop.in000066400000000000000000000003371261501354200252000ustar00rootroot00000000000000[Desktop Entry] Type=Application Name=Shutdown GenericName=Shutdown Comment=shutdown the machine Exec=lxqt-leave --shutdown Icon=system-shutdown Categories=System;X-Leave OnlyShowIn=LXQt; #TRANSLATIONS_DIR=../translations lxqt-session-0.10.0/lxqt-leave/resources/lxqt-suspend.desktop.in000066400000000000000000000003311261501354200250000ustar00rootroot00000000000000[Desktop Entry] Type=Application Name=Suspend GenericName=Suspend Comment=suspend the machine Exec=lxqt-leave --suspend Icon=system-suspend Categories=System;X-Leave OnlyShowIn=LXQt #TRANSLATIONS_DIR=../translations lxqt-session-0.10.0/lxqt-leave/translations/000077500000000000000000000000001261501354200210435ustar00rootroot00000000000000lxqt-session-0.10.0/lxqt-leave/translations/lxqt-hibernate_de.desktop000066400000000000000000000001001261501354200260240ustar00rootroot00000000000000Comment[de]=Rechner in Tiefschlaf versetzen Name[de]=Tiefschlaf lxqt-session-0.10.0/lxqt-leave/translations/lxqt-hibernate_el.desktop000066400000000000000000000001631261501354200260450ustar00rootroot00000000000000#Translations Name[el]=Νάρκη GenericName[el]=Νάρκη Comment[el]=Nάρκωση του υπολογιστή lxqt-session-0.10.0/lxqt-leave/translations/lxqt-hibernate_hu.desktop000066400000000000000000000001011261501354200260510ustar00rootroot00000000000000Comment[hu]=Mélykészenléti állapot Name[hu]=Mélykészenlét lxqt-session-0.10.0/lxqt-leave/translations/lxqt-hibernate_it.desktop000066400000000000000000000000611261501354200260560ustar00rootroot00000000000000Name[it]=Iberna Comment[it]=Ibernare il computer lxqt-session-0.10.0/lxqt-leave/translations/lxqt-hibernate_ja.desktop000066400000000000000000000001111261501354200260300ustar00rootroot00000000000000Name[ja]=ハイバネート Comment[ja]=PCをハイバネートします lxqt-session-0.10.0/lxqt-leave/translations/lxqt-hibernate_pt.desktop000066400000000000000000000000641261501354200260700ustar00rootroot00000000000000Name[pt]=Hibernar Comment[pt]=Hibernar o computador lxqt-session-0.10.0/lxqt-leave/translations/lxqt-hibernate_ru.desktop000066400000000000000000000001561261501354200260750ustar00rootroot00000000000000Name[ru]=Спящий режим Comment[ru]=Перевести компьютер в спящий режим lxqt-session-0.10.0/lxqt-leave/translations/lxqt-leave.ts000066400000000000000000000056011261501354200234770ustar00rootroot00000000000000 LeaveDialog Leave <html><head/><body><p><span style=" font-size:12pt;">What do you want the computer to do?</span></p></body></html> Logout Reboot Shutdown Suspend Lock screen Hibernate Cancel main Logout. Lockscreen. Suspend. Hibernate. Shutdown. Reboot. lxqt-session-0.10.0/lxqt-leave/translations/lxqt-leave_de.desktop000066400000000000000000000000561261501354200251710ustar00rootroot00000000000000Name[de]=Verlassen Comment[de]=Beenden-Dialog lxqt-session-0.10.0/lxqt-leave/translations/lxqt-leave_de.ts000066400000000000000000000057021261501354200241510ustar00rootroot00000000000000 LeaveDialog Leave Verlassen <html><head/><body><p><span style=" font-size:12pt;">What do you want the computer to do?</span></p></body></html> <html><head/><body><p><span style=" font-size:12pt;">Was soll der Computer tun?</span></p></body></html> Logout Abmelden Reboot Neustart Shutdown Herunterfahren Suspend Bereitschaft Lock screen Bildschirm sperren Hibernate Tiefschlaf Cancel Abbrechen main Logout. Abmelden. Lockscreen. Sperren. Suspend. Bereitschaft. Hibernate. Tiefschlaf. Shutdown. Herunterfahren. Reboot. Neustart. lxqt-session-0.10.0/lxqt-leave/translations/lxqt-leave_el.desktop000066400000000000000000000002121261501354200251730ustar00rootroot00000000000000#Translation Name[el]=Εγκατάλειψη GenericName[el]=Εγκατάλειψη Comment[el]=Διάλογος εγκατάλειψης lxqt-session-0.10.0/lxqt-leave/translations/lxqt-leave_el.ts000066400000000000000000000061711261501354200241620ustar00rootroot00000000000000 LeaveDialog Leave Έξοδος <html><head/><body><p><span style=" font-size:12pt;">What do you want the computer to do?</span></p></body></html> <html><head/><body><p><span style=" font-size:12pt;">Τι επιθυμείτε να πραγματοποιήσει ο υπολογιστής;</span></p></body></html> Logout Αποσύνδεση Reboot Επανεκκίνηση Shutdown Τερματισμός Suspend Αναστολή Lock screen Κλείδωμα οθόνης Hibernate Νάρκη Cancel Ακύρωση main Logout. Αποσύνδεση. Lockscreen. Κλείδωμα οθόνης. Suspend. Αναστολή. Hibernate. Νάρκη. Shutdown. Τερματισμός. Reboot. Επανεκκίνηση. lxqt-session-0.10.0/lxqt-leave/translations/lxqt-leave_hu.desktop000066400000000000000000000000761261501354200252170ustar00rootroot00000000000000Name[hu]=Kiléptetés Comment[hu]=Kiléptető párbeszédablaklxqt-session-0.10.0/lxqt-leave/translations/lxqt-leave_hu.ts000066400000000000000000000061341261501354200241750ustar00rootroot00000000000000 LeaveDialog Form Űrlap Leave <html><head/><body><p><span style=" font-size:12pt;">What do you want the computer to do?</span></p></body></html> <html><head/><body><p><span style=" font-size:12pt;">Mi legyen a számítógéppel?</span></p></body></html> Logout Kilépés Reboot Újraindítás Shutdown Kikapcsolás Suspend Készenlét Lock screen Hibernate Mélykészenlét Cancel Mégse main Logout. Kilépés. Lockscreen. Képernyőzár. Suspend. Készenlét. Hibernate. Mélykészenlét. Shutdown. Kikapcsolás. Reboot. Újraindítás. lxqt-session-0.10.0/lxqt-leave/translations/lxqt-leave_it.desktop000066400000000000000000000000541261501354200252130ustar00rootroot00000000000000Name[it]=Esci Comment[it]=Opzioni di uscita lxqt-session-0.10.0/lxqt-leave/translations/lxqt-leave_it.ts000066400000000000000000000061421261501354200241740ustar00rootroot00000000000000 LeaveDialog Form Esci Leave <html><head/><body><p><span style=" font-size:12pt;">What do you want the computer to do?</span></p></body></html> <html><head/><body><p><span style=" font-size:12pt;">Terminare la sessione di LXQt?</span></p></body></html> Logout Chiudi sessione Reboot Riavvia Shutdown Spegni Suspend Sospendi Lock screen Hibernate Iberna Cancel Cancella main Logout. Lockscreen. Suspend. Hibernate. Shutdown. Reboot. lxqt-session-0.10.0/lxqt-leave/translations/lxqt-leave_ja.desktop000066400000000000000000000001041261501354200251650ustar00rootroot00000000000000Name[ja]=終了 Comment[ja]=終了ダイアログを表示します lxqt-session-0.10.0/lxqt-leave/translations/lxqt-leave_ja.ts000066400000000000000000000060161261501354200241520ustar00rootroot00000000000000 LeaveDialog Leave 終了 <html><head/><body><p><span style=" font-size:12pt;">What do you want the computer to do?</span></p></body></html> <html><head/><body><p><span style=" font-size:12pt;">どの操作を選択しますか?</span></p></body></html> Logout ログアウト Reboot 再起動 Shutdown シャットダウン Suspend サスペンド Lock screen 画面のロック Hibernate ハイバネート Cancel キャンセル main Logout. ログアウト. Lockscreen. 画面のロック. Suspend. サスペンド. Hibernate. ハイバネート. Shutdown. シャットダウン. Reboot. 再起動. lxqt-session-0.10.0/lxqt-leave/translations/lxqt-leave_ru.desktop000066400000000000000000000000651261501354200252270ustar00rootroot00000000000000Name[ru]=Выйти Comment[ru]=Меню выходаlxqt-session-0.10.0/lxqt-leave/translations/lxqt-leave_ru.ts000066400000000000000000000065141261501354200242110ustar00rootroot00000000000000 LeaveDialog Form Меню выхода Leave <html><head/><body><p><span style=" font-size:12pt;">What do you want the computer to do?</span></p></body></html> <html><head/><body><p><span style=" font-size:12pt;">Что вы хотите сделать с компьютером?</span></p></body></html> Logout Выйти Reboot Перезагрузить Shutdown Выключить Suspend Перевести в ждущий режим Lock screen Hibernate Перевести в спящий режим Cancel Отмена main Logout. Выйти. Lockscreen. Блокировать экран. Suspend. Перевести в ждущий режим. Hibernate. Перевести в спящий режим. Shutdown. Выключить. Reboot. Перезагрузить. lxqt-session-0.10.0/lxqt-leave/translations/lxqt-leave_ru_RU.ts000066400000000000000000000065171261501354200246220ustar00rootroot00000000000000 LeaveDialog Form Меню выхода Leave <html><head/><body><p><span style=" font-size:12pt;">What do you want the computer to do?</span></p></body></html> <html><head/><body><p><span style=" font-size:12pt;">Что вы хотите сделать с компьютером?</span></p></body></html> Logout Выйти Reboot Перезагрузить Shutdown Выключить Suspend Перевести в ждущий режим Lock screen Hibernate Перевести в спящий режим Cancel Отмена main Logout. Выйти. Lockscreen. Блокировать экран. Suspend. Перевести в ждущий режим. Hibernate. Перевести в спящий режим. Shutdown. Выключить. Reboot. Перезагрузить. lxqt-session-0.10.0/lxqt-leave/translations/lxqt-lockscreen_de.desktop000066400000000000000000000001011261501354200262140ustar00rootroot00000000000000Comment[de]=aktuelle Sitzung sperren Name[de]=Bildschirm sperren lxqt-session-0.10.0/lxqt-leave/translations/lxqt-lockscreen_el.desktop000066400000000000000000000002541261501354200262350ustar00rootroot00000000000000#Translation Name[el]=Κλείδωμα οθόνης GenericName[el]=Κλείδωμα οθόνης Comment[el]=Κλείδωμα της τρέχουσας συνεδρίας lxqt-session-0.10.0/lxqt-leave/translations/lxqt-lockscreen_fr.desktop000066400000000000000000000001671261501354200262470ustar00rootroot00000000000000Comment[fr]=Verrouillage de la session courante GenericName[fr]=Verrouiller l’écran Name[fr]=Verrouiller l’écran lxqt-session-0.10.0/lxqt-leave/translations/lxqt-lockscreen_hu.desktop000066400000000000000000000000661261501354200262520ustar00rootroot00000000000000Comment[hu]=A gép zárolása Name[hu]=Képernyőzár lxqt-session-0.10.0/lxqt-leave/translations/lxqt-lockscreen_it.desktop000066400000000000000000000000771261501354200262540ustar00rootroot00000000000000Name[it]=Blocca schermo Comment[it]=Blocca la sessione attuale lxqt-session-0.10.0/lxqt-leave/translations/lxqt-lockscreen_ja.desktop000066400000000000000000000001041261501354200262210ustar00rootroot00000000000000Name[ja]=画面のロック Comment[ja]=画面をロックします lxqt-session-0.10.0/lxqt-leave/translations/lxqt-lockscreen_pt.desktop000066400000000000000000000000671261501354200262620ustar00rootroot00000000000000Name[pt]=Bloquear Comment[pt]=Bloquear a sessão atual lxqt-session-0.10.0/lxqt-leave/translations/lxqt-lockscreen_ru.desktop000066400000000000000000000001501261501354200262560ustar00rootroot00000000000000Name[ru]=Блокировать экран Comment[ru]=Блокировать текущий сеанс lxqt-session-0.10.0/lxqt-leave/translations/lxqt-logout_de.desktop000066400000000000000000000000561261501354200254060ustar00rootroot00000000000000Comment[de]=Sitzung beenden Name[de]=Abmelden lxqt-session-0.10.0/lxqt-leave/translations/lxqt-logout_el.desktop000066400000000000000000000002411261501354200254120ustar00rootroot00000000000000#Translation Name[el]=Αποσύνδεση GenericName[el]=Αποσύνδεση Comment[el]=Αποσύνδεση από την τρέχουσα συνεδρία lxqt-session-0.10.0/lxqt-leave/translations/lxqt-logout_hu.desktop000066400000000000000000000000651261501354200254320ustar00rootroot00000000000000Comment[hu]=LXQt munkamenet vége Name[hu]=Kilépés lxqt-session-0.10.0/lxqt-leave/translations/lxqt-logout_it.desktop000066400000000000000000000001021261501354200254220ustar00rootroot00000000000000Name[it]=Chiudi sessione Comment[it]=Chiudere la sessione attuale lxqt-session-0.10.0/lxqt-leave/translations/lxqt-logout_ja.desktop000066400000000000000000000001231261501354200254030ustar00rootroot00000000000000Name[ja]=ログアウト Comment[ja]=セッションからログアウトします lxqt-session-0.10.0/lxqt-leave/translations/lxqt-logout_pt.desktop000066400000000000000000000000521261501354200254350ustar00rootroot00000000000000Name[pt]=Sair Comment[pt]=Sair da sessão lxqt-session-0.10.0/lxqt-leave/translations/lxqt-logout_ru.desktop000066400000000000000000000001421261501354200254400ustar00rootroot00000000000000Name[ru]=Выйти из системы Comment[ru]=Выйти из текущего сеанса lxqt-session-0.10.0/lxqt-leave/translations/lxqt-reboot_de.desktop000066400000000000000000000000611261501354200253630ustar00rootroot00000000000000Comment[de]=Rechner neustarten Name[de]=Neustart lxqt-session-0.10.0/lxqt-leave/translations/lxqt-reboot_el.desktop000066400000000000000000000002331261501354200253740ustar00rootroot00000000000000#Translation Name[el]=Επανεκκίνηση GenericName[el]=Επανεκκίνηση Comment[el]=Επανεκκίνηση του μηχανήματος lxqt-session-0.10.0/lxqt-leave/translations/lxqt-reboot_hu.desktop000066400000000000000000000000731261501354200254120ustar00rootroot00000000000000Comment[hu]=A gép újraindítása Name[hu]=Újraindítás lxqt-session-0.10.0/lxqt-leave/translations/lxqt-reboot_it.desktop000066400000000000000000000000631261501354200254110ustar00rootroot00000000000000Name[it]=Riavvia Comment[it]=Riavviare il computer lxqt-session-0.10.0/lxqt-leave/translations/lxqt-reboot_ja.desktop000066400000000000000000000000671261501354200253730ustar00rootroot00000000000000Name[ja]=再起動 Comment[ja]=PCを再起動します lxqt-session-0.10.0/lxqt-leave/translations/lxqt-reboot_pt.desktop000066400000000000000000000000661261501354200254230ustar00rootroot00000000000000Name[pt]=Reiniciar Comment[pt]=Reiniciar o computador lxqt-session-0.10.0/lxqt-leave/translations/lxqt-reboot_ru.desktop000066400000000000000000000001341261501354200254220ustar00rootroot00000000000000Name[ru]=Перезагрузка Comment[ru]=Перезагрузить компьютер lxqt-session-0.10.0/lxqt-leave/translations/lxqt-shutdown_de.desktop000066400000000000000000000000731261501354200257470ustar00rootroot00000000000000Comment[de]=Rechner herunterfahren Name[de]=Herunterfahren lxqt-session-0.10.0/lxqt-leave/translations/lxqt-shutdown_el.desktop000066400000000000000000000002251261501354200257560ustar00rootroot00000000000000#Translation Name[el]=Τερματισμός GenericName[el]=Τερματισμός Comment[el]=Τερματισμός του μηχανήματος lxqt-session-0.10.0/lxqt-leave/translations/lxqt-shutdown_hu.desktop000066400000000000000000000001011261501354200257630ustar00rootroot00000000000000Comment[hu]=A számítógép kikapcsolása Name[hu]=Kikapcsolás lxqt-session-0.10.0/lxqt-leave/translations/lxqt-shutdown_it.desktop000066400000000000000000000000621261501354200257710ustar00rootroot00000000000000Name[it]=Arresta Comment[it]=Spegnere il computer lxqt-session-0.10.0/lxqt-leave/translations/lxqt-shutdown_ja.desktop000066400000000000000000000001171261501354200257500ustar00rootroot00000000000000Name[ja]=シャットダウン Comment[ja]=PCをシャットダウンします lxqt-session-0.10.0/lxqt-leave/translations/lxqt-shutdown_pt.desktop000066400000000000000000000000641261501354200260020ustar00rootroot00000000000000Name[pt]=Desligar Comment[pt]=Desligar o computador lxqt-session-0.10.0/lxqt-leave/translations/lxqt-shutdown_ru.desktop000066400000000000000000000001201261501354200257760ustar00rootroot00000000000000Name[ru]=Выключение Comment[ru]=Выключить компьютер lxqt-session-0.10.0/lxqt-leave/translations/lxqt-suspend_de.desktop000066400000000000000000000001121261501354200255470ustar00rootroot00000000000000Comment[de]=Rechner in Bereitschaftsmodus versetzen Name[de]=Bereitschaft lxqt-session-0.10.0/lxqt-leave/translations/lxqt-suspend_el.desktop000066400000000000000000000002031261501354200255600ustar00rootroot00000000000000#Translation Name[el]=Αναστολή GenericName[el]=Αναστολή Comment[el]=Αναστολή του μηχανήματος lxqt-session-0.10.0/lxqt-leave/translations/lxqt-suspend_hu.desktop000066400000000000000000000001251261501354200255770ustar00rootroot00000000000000Comment[hu]=A számítógép készenléti állapotba helyezése Name[hu]=Készenlét lxqt-session-0.10.0/lxqt-leave/translations/lxqt-suspend_it.desktop000066400000000000000000000000701261501354200255760ustar00rootroot00000000000000Name[it]=Sospensione Comment[it]=Sospendere il computer lxqt-session-0.10.0/lxqt-leave/translations/lxqt-suspend_ja.desktop000066400000000000000000000001031261501354200255510ustar00rootroot00000000000000Name[ja]=サスペンド Comment[ja]=PCをサスペンドします lxqt-session-0.10.0/lxqt-leave/translations/lxqt-suspend_pt.desktop000066400000000000000000000000661261501354200256120ustar00rootroot00000000000000Name[pt]=Suspender Comment[pt]=Suspender o computador lxqt-session-0.10.0/lxqt-leave/translations/lxqt-suspend_ru.desktop000066400000000000000000000001561261501354200256150ustar00rootroot00000000000000Name[ru]=Ждущий режим Comment[ru]=Перевести компьютер в ждущий режим lxqt-session-0.10.0/lxqt-session/000077500000000000000000000000001261501354200167115ustar00rootroot00000000000000lxqt-session-0.10.0/lxqt-session/CMakeLists.txt000066400000000000000000000033431261501354200214540ustar00rootroot00000000000000project(lxqt-session) if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Release) endif() if(LIBUDEV_MONITOR) set(LIBUDEV_MONITOR Yes) find_package(PkgConfig) pkg_check_modules(LIBUDEV REQUIRED libudev) include_directories(${LIBUDEV_INCLUDE_DIRS}) add_definitions(-DWITH_LIBUDEV_MONITOR) endif() include_directories( ${XCB_INCLUDE_DIRS} ${X11_INCLUDE_DIR} ) if(LIBUDEV_MONITOR) include_directories(${LIBUDEV_INCLUDE_DIRS}) endif() set(lxqt-session_HDRS "") set(lxqt-session_SRCS src/main.cpp src/lxqtmodman.cpp src/wmselectdialog.cpp src/windowmanager.cpp src/sessionapplication.cpp src/sessiondbusadaptor.h src/numlock.cpp src/numlock.h ) if(LIBUDEV_MONITOR) list(APPEND lxqt-session_SRCS src/UdevNotifier.cpp) endif() set(lxqt-session_UI src/wmselectdialog.ui ) # Translations lxqt_translate_ts(lxqt-session_QM_FILES UPDATE_TRANSLATIONS ${UPDATE_TRANSLATIONS} SOURCES ${lxqt-session_HDRS} ${lxqt-session_SRCS} ${lxqt-session_UI} INSTALL_DIR "${LXQT_TRANSLATIONS_DIR}/${PROJECT_NAME}" ) lxqt_app_translation_loader(lxqt-session_QM_LOADER ${PROJECT_NAME}) add_executable(lxqt-session ${lxqt-session_SRCS} ${RSCS} ${lxqt-session_QM_FILES} ${lxqt-session_QM_LOADER} ) target_link_libraries(lxqt-session Qt5::Widgets Qt5::DBus Qt5::X11Extras ${XCB_LDFLAGS} X11 lxqt KF5::WindowSystem ) if(LIBUDEV_MONITOR) target_link_libraries(lxqt-session ${LIBUDEV_LDFLAGS}) endif() INSTALL(TARGETS lxqt-session RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" COMPONENT Runtime ) install(FILES man/lxqt-session.1 DESTINATION "${CMAKE_INSTALL_MANDIR}/man1" COMPONENT Runtime ) lxqt-session-0.10.0/lxqt-session/man/000077500000000000000000000000001261501354200174645ustar00rootroot00000000000000lxqt-session-0.10.0/lxqt-session/man/lxqt-session.1000066400000000000000000000042211261501354200222160ustar00rootroot00000000000000.TH lxqt-session "1" "October 2015" "LXQt\ 0.9.0" "LXQt\ Module" .SH NAME \fBlxqt-session\fR \- Session manager of \fBLXQt\fR, the Lightweight Desktop Environment .SH SYNOPSIS .B lxqt-session .br .SH DESCRIPTION This module handles session autostart application over \fBLXQt\fR desktop environment startup. .P The \fBLXQt modules\fR are desktop independent tools, and operate as daemons for the local user for desktop specific operations. .P \fBLXQt\fR ships several core desktop components, all of which are optional: .P * Panel * Desktop * Application launcher * Settings center * Session handler \fI(this)\fR * Polkit handler * SSH password access * Display manager handler .P These components perform similar actions to those available in other desktop environments, and their names are self-descriptive. They are usually not launched by hand but automatically, when choosing a \fBLXQt\fR session in the Display Manager. .SH BEHAVIOR Through this application \fBLXQt\fR desktop environment manage the session desktop behavior, module loading and related startup programs before user gets a working area. By default this module loads the panel, desktop and power modules of \fBLXQt\fR environment, thus it is an important module for a working \fBLXQt\fR session. .P Each of any desktop environment has any way to configure applications need or want to start at logon, so user can manage manually in the \fBlxqt-config-session\fR application. .SH "REPORTING BUGS" Report bugs to https://github.com/lxde/lxqt/issues .SH "SEE ALSO" \fBLXQt\fR has been tailored for users who value simplicity, speed, and an intuitive interface, also intended for less powerful machines. See also: .\" any module must refers to session app, for more info on start it .P \fBlxqt-config(1)\fR \fBLXQt\fR application to manage configuration and settings .P \fBlxqt-config-session(1)\fR \fBLXQt\fR module to manage \fBLXQt\fR autostart session applications \".P \"\fBstart-lxqt(1)\fR LXQt display management independient starup. .P .SH AUTHOR This manual page was created by \fBPICCORO Lenz McKAY\fR \fI\fR for \fBLXQt\fR project and VENENUX GNU/Linux but can be used by others. lxqt-session-0.10.0/lxqt-session/src/000077500000000000000000000000001261501354200175005ustar00rootroot00000000000000lxqt-session-0.10.0/lxqt-session/src/UdevNotifier.cpp000066400000000000000000000063241261501354200226140ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://lxqt.org * * Copyright: 2015 LXQt team * Authors: * Palo Kisa * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "UdevNotifier.h" #include #include #include class UdevNotifier::Impl { public: struct udev * udev; struct udev_monitor * monitor; QScopedPointer notifier; }; UdevNotifier::UdevNotifier(QString const & subsystem, QObject * parent/* = nullptr*/) : QObject(parent) , d(new Impl) { d->udev = udev_new(); d->monitor = udev_monitor_new_from_netlink(d->udev, "udev"); if (nullptr == d->monitor) { qWarning() << QStringLiteral("UdevNotifier: unable to initialize udev_monitor, monitoring will be disabled"); return; } int ret = udev_monitor_filter_add_match_subsystem_devtype(d->monitor, subsystem.toUtf8().constData(), nullptr); if (0 != ret) qWarning() << QStringLiteral("UdevNotifier: unable to add match subsystem, monitor will receive all devices"); ret = udev_monitor_enable_receiving(d->monitor); if (0 != ret) { qWarning() << QStringLiteral("UdevNotifier: unable to enable receiving(%1), monitoring will be disabled").arg(ret); return; } d->notifier.reset(new QSocketNotifier(udev_monitor_get_fd(d->monitor), QSocketNotifier::Read)); connect(d->notifier.data(), &QSocketNotifier::activated, this, &UdevNotifier::eventReady); d->notifier->setEnabled(true); } UdevNotifier::~UdevNotifier() { if (d->monitor) udev_monitor_unref(d->monitor); udev_unref(d->udev); } void UdevNotifier::eventReady(int socket) { struct udev_device * dev; while (nullptr != (dev = udev_monitor_receive_device(d->monitor))) { QString const action = udev_device_get_action(dev); QString const device = udev_device_get_devpath(dev); if (QStringLiteral("add") == action) emit deviceAdded(std::move(device)); else if (QStringLiteral("remove") == action) emit deviceRemoved(std::move(device)); else if (QStringLiteral("change") == action) emit deviceChanged(std::move(device)); else if (QStringLiteral("online") == action) emit deviceOnline(std::move(device)); else if (QStringLiteral("offline") == action) emit deviceOffline(std::move(device)); udev_device_unref(dev); } } lxqt-session-0.10.0/lxqt-session/src/UdevNotifier.h000066400000000000000000000031461261501354200222600ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://lxqt.org * * Copyright: 2015 LXQt team * Authors: * Palo Kisa * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #if !defined(UdevNotifier_h) #define UdevNotifier_h #if defined(WITH_LIBUDEV_MONITOR) #include #include class UdevNotifier : public QObject { Q_OBJECT public: UdevNotifier(QString const & subsystem, QObject * parent = nullptr); ~UdevNotifier(); signals: void deviceAdded(QString path); void deviceRemoved(QString path); void deviceChanged(QString path); void deviceOnline(QString path); void deviceOffline(QString path); private slots: void eventReady(int socket); private: class Impl; QScopedPointer d; }; #endif //WITH_LIBUDEV_MONITOR #endif //UdevNotifier_h lxqt-session-0.10.0/lxqt-session/src/lxqtmodman.cpp000066400000000000000000000312241261501354200223720ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2011 LXQt team * Authors: * Petr Vanek * Hong Jen Yee (PCMan) * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "lxqtmodman.h" #include #include #include #include #include #include #include #include #include #include #include #include "wmselectdialog.h" #include "windowmanager.h" #include #include #include #include #define MAX_CRASHES_PER_APP 5 using namespace LXQt; /** * @brief the constructor, needs a valid modules.conf */ LXQtModuleManager::LXQtModuleManager(const QString & windowManager, QObject* parent) : QObject(parent), mWindowManager(windowManager), mWmProcess(new QProcess(this)), mThemeWatcher(new QFileSystemWatcher(this)), mWmStarted(false), mTrayStarted(false), mWaitLoop(NULL) { connect(mThemeWatcher, SIGNAL(directoryChanged(QString)), SLOT(themeFolderChanged(QString))); connect(LXQt::Settings::globalSettings(), SIGNAL(lxqtThemeChanged()), SLOT(themeChanged())); qApp->installNativeEventFilter(this); } void LXQtModuleManager::startup(LXQt::Settings& s) { // The lxqt-confupdate can update the settings of the WM, so run it first. startConfUpdate(); // Start window manager startWm(&s); startAutostartApps(); QStringList paths; paths << XdgDirs::dataHome(false); paths << XdgDirs::dataDirs(); foreach(QString path, paths) { QFileInfo fi(QString("%1/lxqt/themes").arg(path)); if (fi.exists()) mThemeWatcher->addPath(fi.absoluteFilePath()); } themeChanged(); } void LXQtModuleManager::startAutostartApps() { // XDG autostart XdgDesktopFileList fileList = XdgAutoStart::desktopFileList(); QList trayApps; for (XdgDesktopFileList::iterator i = fileList.begin(); i != fileList.end(); ++i) { if (i->value("X-LXQt-Need-Tray", false).toBool()) trayApps.append(&(*i)); else { startProcess(*i); qDebug() << "start" << i->fileName(); } } if (!trayApps.isEmpty()) { mTrayStarted = QSystemTrayIcon::isSystemTrayAvailable(); if(!mTrayStarted) { QEventLoop waitLoop; mWaitLoop = &waitLoop; // add a timeout to avoid infinite blocking if a WM fail to execute. QTimer::singleShot(60 * 1000, &waitLoop, SLOT(quit())); waitLoop.exec(); mWaitLoop = NULL; } foreach (XdgDesktopFile* f, trayApps) { qDebug() << "start tray app" << f->fileName(); startProcess(*f); } } } void LXQtModuleManager::themeFolderChanged(const QString& /*path*/) { QString newTheme; if (!QFileInfo(mCurrentThemePath).exists()) { const QList &allThemes = lxqtTheme.allThemes(); if (!allThemes.isEmpty()) newTheme = allThemes[0].name(); else return; } else newTheme = lxqtTheme.currentTheme().name(); LXQt::Settings settings("lxqt"); if (newTheme == settings.value("theme")) { // force the same theme to be updated settings.setValue("__theme_updated__", QDateTime::currentMSecsSinceEpoch()); } else settings.setValue("theme", newTheme); sync(); } void LXQtModuleManager::themeChanged() { if (!mCurrentThemePath.isEmpty()) mThemeWatcher->removePath(mCurrentThemePath); if (lxqtTheme.currentTheme().isValid()) { mCurrentThemePath = lxqtTheme.currentTheme().path(); mThemeWatcher->addPath(mCurrentThemePath); } } void LXQtModuleManager::startWm(LXQt::Settings *settings) { // if the WM is active do not run WM. // all window managers must set their name according to the spec if (!QString(NETRootInfo(QX11Info::connection(), NET::SupportingWMCheck).wmName()).isEmpty()) { mWmStarted = true; return; } if (mWindowManager.isEmpty()) { mWindowManager = settings->value("window_manager").toString(); } // If previuos WM was removed, we show dialog. if (mWindowManager.isEmpty() || ! findProgram(mWindowManager.split(' ')[0])) { mWindowManager = showWmSelectDialog(); settings->setValue("window_manager", mWindowManager); settings->sync(); } mWmProcess->start(mWindowManager); // other autostart apps will be handled after the WM becomes available // Wait until the WM loads QEventLoop waitLoop; mWaitLoop = &waitLoop; // add a timeout to avoid infinite blocking if a WM fail to execute. QTimer::singleShot(30 * 1000, &waitLoop, SLOT(quit())); waitLoop.exec(); mWaitLoop = NULL; // FIXME: blocking is a bad idea. We need to start as many apps as possible and // only wait for the start of WM when it's absolutely needed. // Maybe we can add a X-Wait-WM=true key in the desktop entry file? } void LXQtModuleManager::startProcess(const XdgDesktopFile& file) { if (!file.value("X-LXQt-Module", false).toBool()) { file.startDetached(); return; } QStringList args = file.expandExecString(); if (args.isEmpty()) { qWarning() << "Wrong desktop file" << file.fileName(); return; } LXQtModule* proc = new LXQtModule(file, this); connect(proc, SIGNAL(moduleStateChanged(QString,bool)), this, SIGNAL(moduleStateChanged(QString,bool))); proc->start(); QString name = QFileInfo(file.fileName()).fileName(); mNameMap[name] = proc; connect(proc, SIGNAL(finished(int, QProcess::ExitStatus)), this, SLOT(restartModules(int, QProcess::ExitStatus))); } void LXQtModuleManager::startProcess(const QString& name) { if (!mNameMap.contains(name)) { foreach (const XdgDesktopFile& file, XdgAutoStart::desktopFileList(false)) { if (QFileInfo(file.fileName()).fileName() == name) { startProcess(file); return; } } } } void LXQtModuleManager::stopProcess(const QString& name) { if (mNameMap.contains(name)) mNameMap[name]->terminate(); } QStringList LXQtModuleManager::listModules() const { return QStringList(mNameMap.keys()); } void LXQtModuleManager::startConfUpdate() { XdgDesktopFile desktop(XdgDesktopFile::ApplicationType, ":lxqt-confupdate", "lxqt-confupdate --watch"); desktop.setValue("Name", "LXQt config updater"); desktop.setValue("X-LXQt-Module", true); startProcess(desktop); } void LXQtModuleManager::restartModules(int exitCode, QProcess::ExitStatus exitStatus) { LXQtModule* proc = qobject_cast(sender()); Q_ASSERT(proc); if (!proc->isTerminating()) { QString procName = proc->file.name(); switch (exitStatus) { case QProcess::NormalExit: qDebug() << "Process" << procName << "(" << proc << ") exited correctly."; break; case QProcess::CrashExit: { qDebug() << "Process" << procName << "(" << proc << ") has to be restarted"; time_t now = time(NULL); mCrashReport[proc].prepend(now); while (now - mCrashReport[proc].back() > 60) mCrashReport[proc].pop_back(); if (mCrashReport[proc].length() >= MAX_CRASHES_PER_APP) { QMessageBox::warning(0, tr("Crash Report"), tr("%1 crashed too many times. Its autorestart has been disabled until next login.").arg(procName)); } else { proc->start(); return; } break; } } } mNameMap.remove(proc->fileName); proc->deleteLater(); } LXQtModuleManager::~LXQtModuleManager() { qApp->removeNativeEventFilter(this); qDeleteAll(mNameMap); delete mWmProcess; } /** * @brief this logs us out by terminating our session **/ void LXQtModuleManager::logout() { // modules ModulesMapIterator i(mNameMap); while (i.hasNext()) { i.next(); qDebug() << "Module logout" << i.key(); LXQtModule* p = i.value(); p->terminate(); } i.toFront(); while (i.hasNext()) { i.next(); LXQtModule* p = i.value(); if (p->state() != QProcess::NotRunning && !p->waitForFinished()) { qWarning() << QString("Module '%1' won't terminate ... killing.").arg(i.key()); p->kill(); } } mWmProcess->terminate(); if (mWmProcess->state() != QProcess::NotRunning && !mWmProcess->waitForFinished()) { qWarning() << QString("Window Manager won't terminate ... killing."); mWmProcess->kill(); } QCoreApplication::exit(0); } QString LXQtModuleManager::showWmSelectDialog() { WindowManagerList availableWM = getWindowManagerList(true); if (availableWM.count() == 1) return availableWM.at(0).command; WmSelectDialog dlg(availableWM); dlg.exec(); return dlg.windowManager(); } void LXQtModuleManager::resetCrashReport() { mCrashReport.clear(); } bool LXQtModuleManager::nativeEventFilter(const QByteArray & eventType, void * message, long * result) { if (eventType != "xcb_generic_event_t") // We only want to handle XCB events return false; if(!mWmStarted && mWaitLoop) { // all window managers must set their name according to the spec if (!QString(NETRootInfo(QX11Info::connection(), NET::SupportingWMCheck).wmName()).isEmpty()) { qDebug() << "Window Manager started"; mWmStarted = true; if (mWaitLoop->isRunning()) mWaitLoop->exit(); } } if (!mTrayStarted && QSystemTrayIcon::isSystemTrayAvailable() && mWaitLoop) { qDebug() << "System Tray started"; mTrayStarted = true; if (mWaitLoop->isRunning()) mWaitLoop->exit(); // window manager and system tray have started qApp->removeNativeEventFilter(this); } return false; } void lxqt_setenv(const char *env, const QByteArray &value) { wordexp_t p; wordexp(value, &p, 0); if (p.we_wordc == 1) { qDebug() << "Environment variable" << env << "=" << p.we_wordv[0]; qputenv(env, p.we_wordv[0]); } else { qWarning() << "Error expanding environment variable" << env << "=" << value; qputenv(env, value); } wordfree(&p); } void lxqt_setenv_prepend(const char *env, const QByteArray &value, const QByteArray &separator) { QByteArray orig(qgetenv(env)); orig = orig.prepend(separator); orig = orig.prepend(value); qDebug() << "Setting special" << env << " variable:" << orig; lxqt_setenv(env, orig); } LXQtModule::LXQtModule(const XdgDesktopFile& file, QObject* parent) : QProcess(parent), file(file), fileName(QFileInfo(file.fileName()).fileName()), mIsTerminating(false) { connect(this, SIGNAL(stateChanged(QProcess::ProcessState)), SLOT(updateState(QProcess::ProcessState))); } void LXQtModule::start() { mIsTerminating = false; QStringList args = file.expandExecString(); QString command = args.takeFirst(); QProcess::start(command, args); } void LXQtModule::terminate() { mIsTerminating = true; QProcess::terminate(); } bool LXQtModule::isTerminating() { return mIsTerminating; } void LXQtModule::updateState(QProcess::ProcessState newState) { if (newState != QProcess::Starting) emit moduleStateChanged(fileName, (newState == QProcess::Running)); } lxqt-session-0.10.0/lxqt-session/src/lxqtmodman.h000066400000000000000000000144201261501354200220360ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, deskop environment * http://razor-qt.org, http://lxqt.org/ * * Copyright: 2010-2011 LXQt team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef LXQTMODMAN_H #define LXQTMODMAN_H #include #include #include #include #include #include #include #include class LXQtModule; namespace LXQt { class Settings; } class QFileSystemWatcher; typedef QMap ModulesMap; typedef QMapIterator ModulesMapIterator; typedef QList ModuleCrashReport; typedef QMap ModulesCrashReport; /*! \brief LXQtModuleManager manages the processes of the session and which modules of lxqt are about to load. LXQtModuleManager handles the session management (logout/restart/shutdown) as well. Also it watches the current theme to react if it was removed or modified. Processes in LXQtModuleManager are started as follows: - run lxqt-confupdate - start the window manager and wait until it's active - start all normal autostart items (including LXQt modules) - if there are any applications that need a system tray, wait until a system tray implementation becomes active, and then start those Potential process recovering is done in \see restartModules() */ class LXQtModuleManager : public QObject, public QAbstractNativeEventFilter { Q_OBJECT public: //! \brief Construct LXQtModuleManager LXQtModuleManager(const QString& windowManager, QObject* parent = 0); virtual ~LXQtModuleManager(); //! \brief Start a module given its file name (e.g. "lxqt-panel.desktop") void startProcess(const QString& name); //! \brief Stop a running module void stopProcess(const QString& name); //! \brief List the running modules, identified by their file names QStringList listModules() const; //! \brief Read configuration and start processes void startup(LXQt::Settings& s); // Qt5 uses native event filter virtual bool nativeEventFilter(const QByteArray & eventType, void * message, long * result); public slots: /*! \brief Exit LXQt session. It tries to terminate processes from procMap and autostartList gracefully (to kill it if it is not possible). Then the session exits - it returns to the kdm/gdm in most cases. */ void logout(); signals: void moduleStateChanged(QString moduleName, bool state); private: //! \brief Start Window Manager void startWm(LXQt::Settings *settings); void wmStarted(); void startAutostartApps(); //! \brief Show Window Manager select dialog QString showWmSelectDialog(); //! \brief Start a process described in a desktop file void startProcess(const XdgDesktopFile &file); //! \brief Start the lxqt-confupdate. void startConfUpdate(); //! \brief Window manager command QString mWindowManager; //! \brief map file names to module processes ModulesMap mNameMap; //! \brief the window manager QProcess* mWmProcess; /*! \brief Keep creashes for given process to raise a message in the case of repeating crashes */ ModulesCrashReport mCrashReport; //! \brief file system watcher to react on theme modifications QFileSystemWatcher *mThemeWatcher; QString mCurrentThemePath; bool mWmStarted; bool mTrayStarted; QEventLoop* mWaitLoop; private slots: /*! \brief this slot is called by the QProcesses if they end. \warning The slot *has* to be called as a slot only due sender() cast. There are 2 types of handling in this slot. If the process has ended correctly (no crash or kill) nothing happens except when the process is *not* specified with doespower in the configuration. If there is no "doespower" (window manager mainly) entire session performs logout. (Handling of the window manager 3rd party "logout") If the process crashed and is set as "doespower" it's tried to be restarted automatically. */ void restartModules(int exitCode, QProcess::ExitStatus exitStatus); /*! Clear m_crashReport after some amount of time */ void resetCrashReport(); void themeFolderChanged(const QString&); void themeChanged(); }; /*! \brief platform independent way how to set up an environment variable. It sets env variable for all lxqt-session childs. \param env a raw string variable name (PATH, TERM, ...) \param value a QByteArray with the value. Variable will use this new value only - no appending/prepending is performed. See lxqt_setenv_prepend. */ void lxqt_setenv(const char *env, const QByteArray &value); /*! \brief Set up a environment variable with original value with new value prepending. \param env a raw string with variable name \param value a QByteArray value to be pre-pend to original content of the variable \param separator an optional string with separator character. Eg. ":" for PATH. See lxqt_setenv. */ void lxqt_setenv_prepend(const char *env, const QByteArray &value, const QByteArray &separator=":"); class LXQtModule : public QProcess { Q_OBJECT public: LXQtModule(const XdgDesktopFile& file, QObject *parent = 0); void start(); void terminate(); bool isTerminating(); const XdgDesktopFile file; const QString fileName; signals: void moduleStateChanged(QString name, bool state); private slots: void updateState(QProcess::ProcessState newState); private: bool mIsTerminating; }; #endif lxqt-session-0.10.0/lxqt-session/src/main.cpp000066400000000000000000000032511261501354200211310ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2011 LXQt team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "sessionapplication.h" /** * @file main.cpp * @author Christopher "VdoP" Regali * @brief just starts the sub-apps and in future maybe saves the windowstates lxqt-session can be called as is (without any argument) - it will start "failback" session (sessionf.conf). When there will be used -c foo argument lxqt-session -c foo it will use foo.conf. Currently there are launchers for windowmanagers: session-openbox.conf session-eggwm.conf */ /** * @brief our main function doing the loading */ int main(int argc, char **argv) { SessionApplication app(argc, argv); //qDebug() << "LXQt Session start"; app.setQuitOnLastWindowClosed(false); return app.exec(); } lxqt-session-0.10.0/lxqt-session/src/numlock.cpp000066400000000000000000000050241261501354200216550ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LxQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2011 LxQt team * Authors: * Hong Jen Yee (PCMan) * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ // the following XKB code is taken from numlockx which is licensed under MIT. // Copyright (C) 2000-2001 Lubos Lunak // Copyright (C) 2001 Oswald Buddenhagen #include #include #include #include #include #include /* the XKB stuff is based on code created by Oswald Buddenhagen */ static unsigned int xkb_mask_modifier(Display* dpy, XkbDescPtr xkb, const char *name ) { int i; if( !xkb || !xkb->names ) return 0; for( i = 0; i < XkbNumVirtualMods; i++ ) { char* modStr = XGetAtomName( xkb->dpy, xkb->names->vmods[i] ); if( modStr != NULL && strcmp(name, modStr) == 0 ) { unsigned int mask; XkbVirtualModsToReal( xkb, 1 << i, &mask ); return mask; } } return 0; } static unsigned int xkb_numlock_mask(Display* dpy) { XkbDescPtr xkb; if(( xkb = XkbGetKeyboard( dpy, XkbAllComponentsMask, XkbUseCoreKbd )) != NULL ) { unsigned int mask = xkb_mask_modifier( dpy, xkb, "NumLock" ); XkbFreeKeyboard( xkb, 0, True ); return mask; } return 0; } static int xkb_set_on(Display* dpy) { unsigned int mask; mask = xkb_numlock_mask(dpy); if( mask == 0 ) return 0; XkbLockModifiers ( dpy, XkbUseCoreKbd, mask, mask); return 1; } void enableNumlock() { // this currently only works for X11 if(QX11Info::isPlatformX11()) xkb_set_on(QX11Info::display()); } lxqt-session-0.10.0/lxqt-session/src/numlock.h000066400000000000000000000021141261501354200213170ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LxQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2011 LxQt team * Authors: * Hong Jen Yee (PCMan) * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef _NUMLOCK_H_ #define _NUMLOCK_H_ void enableNumlock(); #endif lxqt-session-0.10.0/lxqt-session/src/sessionapplication.cpp000066400000000000000000000226221261501354200241170ustar00rootroot00000000000000/* * Copyright (C) 2014 Hong Jen Yee (PCMan) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * */ #include "sessionapplication.h" #include "sessiondbusadaptor.h" #include "lxqtmodman.h" #include "UdevNotifier.h" #include "numlock.h" #include #include #include #include #include // XKB, this should be disabled in Wayland? #include SessionApplication::SessionApplication(int& argc, char** argv) : LXQt::Application(argc, argv) { char* winmanager = NULL; int c; while ((c = getopt (argc, argv, "c:w:")) != -1) { if (c == 'c') { configName = optarg; break; } else if (c == 'w') { winmanager = optarg; break; } } if(configName.isEmpty()) configName = "session"; // tell the world which config file we're using. qputenv("LXQT_SESSION_CONFIG", configName.toUtf8()); modman = new LXQtModuleManager(winmanager); new SessionDBusAdaptor(modman); // connect to D-Bus and register as an object: QDBusConnection::sessionBus().registerService("org.lxqt.session"); QDBusConnection::sessionBus().registerObject("/LXQtSession", modman); // Wait until the event loop starts QTimer::singleShot(0, this, SLOT(startup())); } SessionApplication::~SessionApplication() { delete modman; } bool SessionApplication::startup() { LXQt::Settings settings(configName); qDebug() << __FILE__ << ":" << __LINE__ << "Session" << configName << "about to launch (default 'session')"; loadEnvironmentSettings(settings); // loadFontSettings(settings); loadKeyboardSettings(settings); loadMouseSettings(settings); #if defined(WITH_LIBUDEV_MONITOR) UdevNotifier * dev_notifier = new UdevNotifier{QStringLiteral("input"), this}; //will be released upon our destruction QTimer * dev_timer = new QTimer{this}; //will be released upon our destruction dev_timer->setSingleShot(true); dev_timer->setInterval(500); //give some time to xorg... we need to reset keyboard afterwards connect(dev_timer, &QTimer::timeout, [this] { //XXX: is this a race? (because settings can be currently changed by lxqt-config-input) // but with such a little probablity we can live... LXQt::Settings settings(configName); loadKeyboardSettings(settings); }); connect(dev_notifier, &UdevNotifier::deviceAdded, [this, dev_timer] (QString device) { qWarning() << QStringLiteral("Session '%1', new input device '%2', keyboard setting will be (optionaly) reloaded...").arg(configName).arg(device); dev_timer->start(); }); #endif // launch module manager and autostart apps modman->startup(settings); return true; } void SessionApplication::mergeXrdb(const char* content, int len) { qDebug() << "xrdb:" << content; QProcess xrdb; xrdb.start("xrdb -merge -"); xrdb.write(content, len); xrdb.closeWriteChannel(); xrdb.waitForFinished(); } void SessionApplication::loadEnvironmentSettings(LXQt::Settings& settings) { // first - set some user defined environment variables (like TERM...) settings.beginGroup("Environment"); QByteArray envVal; Q_FOREACH (QString i, settings.childKeys()) { envVal = settings.value(i).toByteArray(); lxqt_setenv(i.toUtf8().constData(), envVal); } settings.endGroup(); } // FIXME: how to set keyboard layout in Wayland? void SessionApplication::setxkbmap(QString layout, QString variant, QString model, QStringList options) { QStringList args; if(!model.isEmpty()) { args << QStringLiteral("-model"); args << model; } if(!layout.isEmpty()) { args << QStringLiteral("-layout"); args << layout; if(!variant.isEmpty()) { args << QStringLiteral("-variant"); args << variant; } } if(!options.isEmpty()) { Q_FOREACH(const QString& option, options) { args << QStringLiteral("-option"); args << option; } } // execute the command line if (!args.isEmpty()) QProcess::startDetached(QStringLiteral("setxkbmap"), args); } void SessionApplication::loadKeyboardSettings(LXQt::Settings& settings) { qDebug() << settings.fileName(); settings.beginGroup("Keyboard"); XKeyboardControl values; /* Keyboard settings */ unsigned int delay, interval; if(XkbGetAutoRepeatRate(QX11Info::display(), XkbUseCoreKbd, (unsigned int*) &delay, (unsigned int*) &interval)) { delay = settings.value("delay", delay).toUInt(); interval = settings.value("interval", interval).toUInt(); XkbSetAutoRepeatRate(QX11Info::display(), XkbUseCoreKbd, delay, interval); } // turn on/off keyboard beep bool beep = settings.value("beep").toBool(); values.bell_percent = beep ? -1 : 0; XChangeKeyboardControl(QX11Info::display(), KBBellPercent, &values); // turn on numlock as needed if(settings.value("numlock").toBool()) enableNumlock(); // keyboard layout support using setxkbmap QString layout = settings.value("layout").toString(); QString variant = settings.value("variant").toString(); QString model = settings.value("model").toString(); QStringList options = settings.value("options").toStringList(); setxkbmap(layout, variant, model, options); settings.endGroup(); } void SessionApplication::loadMouseSettings(LXQt::Settings& settings) { settings.beginGroup("Mouse"); // mouse cursor (does this work?) QString cursorTheme = settings.value("cursor_theme").toString(); int cursorSize = settings.value("cursor_size").toInt(); QByteArray buf; if(!cursorTheme.isEmpty()) { buf += "Xcursor.theme:"; buf += cursorTheme; buf += '\n'; } if(cursorSize > 0) { buf += "Xcursor.size:"; buf += QString("%1").arg(cursorSize); buf += '\n'; } if(!buf.isEmpty()) { buf += "Xcursor.theme_core:true\n"; mergeXrdb(buf.constData(), buf.length()); } // other mouse settings int accel_factor = settings.value("accel_factor").toInt(); int accel_threshold = settings.value("accel_threshold").toInt(); if(accel_factor || accel_threshold) XChangePointerControl(QX11Info::display(), accel_factor != 0, accel_threshold != 0, accel_factor, 10, accel_threshold); // left handed mouse? bool left_handed = settings.value("left_handed", false).toBool(); setLeftHandedMouse(left_handed); settings.endGroup(); } # if 0 // already deprecated by direct fontconfig support of lxqt-config void SessionApplication::loadFontSettings(LXQt::Settings& settings) { // set some Xft config values, such as antialiasing & subpixel // may call mergeXrdb() to do it. (will this work?) // font settings of gtk+ programs are controlled by gtkrc and settings.ini files. settings.beginGroup("Font"); QByteArray buf; bool antialias = settings.value("antialias", true).toBool(); buf += "Xft.antialias:"; buf += antialias ? "true" : "false"; buf += '\n'; buf += "Xft.rgba:"; buf += settings.value("subpixel", "none").toByteArray(); buf += '\n'; bool hinting = settings.value("hinting", true).toBool(); buf += "Xft.hinting:"; buf += hinting ? "true" : "false"; buf += '\n'; buf += "Xft.hintstyle:hint"; buf += settings.value("hint_style", "none").toByteArray(); buf += '\n'; int dpi = settings.value("dpi", 96).toInt(); buf += "Xft.dpi:"; buf += QString("%1").arg(dpi); buf += '\n'; mergeXrdb(buf.constData(), buf.length()); settings.endGroup(); } #endif /* This function is taken from Gnome's control-center 2.6.0.3 (gnome-settings-mouse.c) and was modified*/ #define DEFAULT_PTR_MAP_SIZE 128 void SessionApplication::setLeftHandedMouse(bool mouse_left_handed) { unsigned char *buttons; int n_buttons, i; int idx_1 = 0, idx_3 = 1; buttons = (unsigned char*)malloc(DEFAULT_PTR_MAP_SIZE); n_buttons = XGetPointerMapping(QX11Info::display(), buttons, DEFAULT_PTR_MAP_SIZE); if (n_buttons > DEFAULT_PTR_MAP_SIZE) { buttons = (unsigned char*)realloc(buttons, n_buttons); n_buttons = XGetPointerMapping(QX11Info::display(), buttons, n_buttons); } for (i = 0; i < n_buttons; i++) { if (buttons[i] == 1) idx_1 = i; else if (buttons[i] == ((n_buttons < 3) ? 2 : 3)) idx_3 = i; } if ((mouse_left_handed && idx_1 < idx_3) || (!mouse_left_handed && idx_1 > idx_3)) { buttons[idx_1] = ((n_buttons < 3) ? 2 : 3); buttons[idx_3] = 1; XSetPointerMapping(QX11Info::display(), buttons, n_buttons); } free(buttons); } lxqt-session-0.10.0/lxqt-session/src/sessionapplication.h000066400000000000000000000032151261501354200235610ustar00rootroot00000000000000/* * Copyright (C) 2014 Hong Jen Yee (PCMan) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * */ #ifndef SESSIONAPPLICATION_H #define SESSIONAPPLICATION_H #include #include class LXQtModuleManager; class SessionApplication : public LXQt::Application { Q_OBJECT public: SessionApplication(int& argc, char** argv); ~SessionApplication(); private Q_SLOTS: bool startup(); private: void loadEnvironmentSettings(LXQt::Settings& settings); void loadKeyboardSettings(LXQt::Settings& settings); void loadMouseSettings(LXQt::Settings& settings); // void loadFontSettings(LXQt::Settings& settings); void setxkbmap(QString layout, QString variant, QString model, QStringList options); void mergeXrdb(const char* content, int len); void setLeftHandedMouse(bool mouse_left_handed); private: LXQtModuleManager* modman; QString configName; }; #endif // SESSIONAPPLICATION_H lxqt-session-0.10.0/lxqt-session/src/sessiondbusadaptor.h000066400000000000000000000045521261501354200235730ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2011 LXQt team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef SESSIONDBUS_H #define SESSIONDBUS_H #include #include "lxqtmodman.h" /*! \brief Simple DBus adaptor for LXQtSession. It allows 3rd party apps/lxqt modules to logout from session. It's a part of "LXQt Power Management" - see liblxqt. \author Petr Vanek */ class SessionDBusAdaptor : public QDBusAbstractAdaptor { Q_OBJECT Q_CLASSINFO("D-Bus Interface", "org.lxqt.session") public: SessionDBusAdaptor(LXQtModuleManager * manager) : QDBusAbstractAdaptor(manager), m_manager(manager) { connect(m_manager, SIGNAL(moduleStateChanged(QString,bool)), SIGNAL(moduleStateChanged(QString,bool))); } signals: void moduleStateChanged(QString moduleName, bool state); public slots: // there can be a situation when is the session asked for availability. // And the lxqt-session is not always required to be started... bool canLogout() { return true; } Q_NOREPLY void logout() { m_manager->logout(); } QDBusVariant listModules() { return QDBusVariant(m_manager->listModules()); } Q_NOREPLY void startModule(const QString& name) { m_manager->startProcess(name); } Q_NOREPLY void stopModule(const QString& name) { m_manager->stopProcess(name); } private: LXQtModuleManager * m_manager; }; #endif lxqt-session-0.10.0/lxqt-session/src/windowmanager.cpp000066400000000000000000000042541261501354200230530ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2011 LXQt team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "windowmanager.h" #include #include #include #include #include #include bool findProgram(const QString &program) { QFileInfo fi(program); if (fi.isExecutable()) return true; QString path = qgetenv("PATH"); foreach(QString dir, path.split(":")) { QFileInfo fi= QFileInfo(dir + QDir::separator() + program); if (fi.isExecutable() ) return true; } return false; } WindowManagerList getWindowManagerList(bool onlyAvailable) { LXQt::Settings cfg("windowmanagers"); cfg.beginGroup("KnownManagers"); QStringList names = cfg.childGroups(); WindowManagerList ret; foreach (QString name, names) { bool exists = findProgram(name); if (!onlyAvailable || exists) { cfg.beginGroup(name); WindowManager wm; wm.command = name; wm.name = cfg.localizedValue("Name", wm.command).toString(); wm.comment = cfg.localizedValue("Comment").toString(); wm.exists = exists; ret << wm; cfg.endGroup(); } } return ret; } lxqt-session-0.10.0/lxqt-session/src/windowmanager.h000066400000000000000000000026251261501354200225200ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2011 LXQt team * Authors: * Petr Vanek * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef WINDOWMANAGER_H #define WINDOWMANAGER_H #include #include struct WindowManager { QString name; QString command; QString comment; bool exists; }; typedef QList WindowManagerList; /*! Helper functions for window manager detection */ WindowManagerList getWindowManagerList(bool onlyAvailable=true); bool findProgram(const QString &program); #endif lxqt-session-0.10.0/lxqt-session/src/wmselectdialog.cpp000066400000000000000000000073641261501354200232210ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2011 LXQt team * Authors: * Alexander Sokoloff * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "wmselectdialog.h" #include "ui_wmselectdialog.h" #include #include #include #include #include #include #include #include #include #define TYPE_ROLE Qt::UserRole + 1 #define SELECT_DLG_TYPE 12345 WmSelectDialog::WmSelectDialog(const WindowManagerList &availableWindowManagers, QWidget *parent) : QDialog(parent), ui(new Ui::WmSelectDialog) { qApp->setStyle("plastique"); ui->setupUi(this); setModal(true); connect(ui->wmList, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(accept())); connect(ui->wmList, SIGNAL(clicked(QModelIndex)), this, SLOT(selectFileDialog(QModelIndex))); connect(ui->wmList, SIGNAL(activated(QModelIndex)), this, SLOT(changeBtnStatus(QModelIndex))); foreach (WindowManager wm, availableWindowManagers) { addWindowManager(wm); } QTreeWidgetItem *item = new QTreeWidgetItem(); item->setText(0, tr("Other ...")); item->setText(1, tr("Choose your favorite one.")); item->setData(1, TYPE_ROLE, SELECT_DLG_TYPE); ui->wmList->setCurrentItem(ui->wmList->topLevelItem(0)); ui->wmList->addTopLevelItem(item); } WmSelectDialog::~WmSelectDialog() { delete ui; } void WmSelectDialog::done( int r ) { QString wm = windowManager(); if (r==1 && !wm.isEmpty() && findProgram(wm)) { QDialog::done( r ); close(); } } QString WmSelectDialog::windowManager() const { QTreeWidgetItem *item = ui->wmList->currentItem(); if (item) return item->data(0, Qt::UserRole).toString(); return QString(); } void WmSelectDialog::addWindowManager(const WindowManager &wm) { QTreeWidgetItem *item = new QTreeWidgetItem(); item->setText(0, wm.name); item->setText(1, wm.comment); item->setData(0, Qt::UserRole, wm.command); ui->wmList->addTopLevelItem(item); } void WmSelectDialog::selectFileDialog(const QModelIndex &index) { QTreeWidget *wmList = ui->wmList; QTreeWidgetItem *item = wmList->currentItem(); if (item->data(1, TYPE_ROLE) != SELECT_DLG_TYPE) return; QString fname = QFileDialog::getOpenFileName(this, "", "/usr/bin/"); if (fname.isEmpty()) return; QFileInfo fi(fname); if (!fi.exists() || !fi.isExecutable()) return; QTreeWidgetItem *wmItem = new QTreeWidgetItem(); wmItem->setText(0, fi.baseName()); wmItem->setData(0, Qt::UserRole, fi.absoluteFilePath()); wmList->insertTopLevelItem(wmList->topLevelItemCount() -1, wmItem); ui->wmList->setCurrentItem(wmItem); } void WmSelectDialog::changeBtnStatus(const QModelIndex &index) { QString wm = windowManager(); ui->buttonBox->setEnabled(!wm.isEmpty() && findProgram(wm)); } lxqt-session-0.10.0/lxqt-session/src/wmselectdialog.h000066400000000000000000000032641261501354200226610ustar00rootroot00000000000000/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * LXQt - a lightweight, Qt based, desktop toolset * http://razor-qt.org, http://lxde.org/ * * Copyright: 2010-2011 LXQt team * Authors: * Alexander Sokoloff * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef WMSELECTDIALOG_H #define WMSELECTDIALOG_H #include #include "windowmanager.h" class QModelIndex; namespace Ui { class WmSelectDialog; } class WmSelectDialog : public QDialog { Q_OBJECT public: explicit WmSelectDialog(const WindowManagerList &availableWindowManagers, QWidget *parent = 0); ~WmSelectDialog(); QString windowManager() const; public slots: void done(int); private slots: void selectFileDialog(const QModelIndex &index); void changeBtnStatus(const QModelIndex &index); private: Ui::WmSelectDialog *ui; void addWindowManager(const WindowManager &wm); }; #endif // WMSELECTDIALOG_H lxqt-session-0.10.0/lxqt-session/src/wmselectdialog.ui000066400000000000000000000062141261501354200230450ustar00rootroot00000000000000 WmSelectDialog 0 0 352 276 Welcome to LXQt <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> true 50 false QAbstractItemView::NoEditTriggers true false true true 2 false 1 2 You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. true Qt::Horizontal QDialogButtonBox::Ok buttonBox accepted() WmSelectDialog accept() 248 254 157 274 buttonBox rejected() WmSelectDialog reject() 316 260 286 274 lxqt-session-0.10.0/lxqt-session/translations/000077500000000000000000000000001261501354200214325ustar00rootroot00000000000000lxqt-session-0.10.0/lxqt-session/translations/lxqt-session.ts000066400000000000000000000035471261501354200244640ustar00rootroot00000000000000 LXQtModuleManager Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. Other ... Choose your favorite one. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_ar.ts000066400000000000000000000062021261501354200251350ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report تقرير انهيار جلسة ريزر Application '%1' crashed too many times. Its autorestart has been disabled for current session. انهار التطبيق %1 عدَّة مرَّاتٍ وتم ابطال بدئه التَّلقائيِّ لهذه الجلسة.. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt أهلاً بكم في ريزركيوت <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>أهلاً بكم في ريزركيوت</b> <p> قد تودُّ اختيار مدير النَّوافذ قبل الشُّروع باستخدام ريزركيوت: You can change the Window Manager later at any time via LXQt Session Configurator. يمكنك تغيير مدير النَّوافذ في أيِّ وقتٍ ﻻحقاً باستخدام أداة تهيئة جلسة ريزر. Other ... أُخرى... Choose your favorite one. اختر المفضَّلة لديك. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_ca.ts000066400000000000000000000035651261501354200251270ustar00rootroot00000000000000 LXQtModuleManager Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Other ... Choose your favorite one. Welcome to LXQt <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_cs.ts000066400000000000000000000056671261501354200251560ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report Zpráva o pádu sezení LXQtu Application '%1' crashed too many times. Its autorestart has been disabled for current session. Program '%1' spadl příliš mnohokrát. Jeho automatické spuštění bylo pro nynější sezení zakázáno. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Vítejte v LXQt-Qt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Vítejte v LXQt-Qt</b> <p> Před započetím s prací byste mohl chtít vybrat si správce oken: You can change the Window Manager later at any time via LXQt Session Configurator. Správce oken můžete později změnit v nastavení sezení pro LXQt. Other ... Jiné... Choose your favorite one. Vyberte oblíbené. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_cs_CZ.ts000066400000000000000000000056531261501354200255450ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report Zpráva o pádu sezení LXQtu Application '%1' crashed too many times. Its autorestart has been disabled for current session. Program '%1' spadl příliš mnohokrát. Jeho automatické spuštění bylo pro nynější sezení zakázáno. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Vítejte v LXQtu <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Vítejte v prostředí LXQt</b> <p> Než LXQt začnete používat, vyberte si správce oken: You can change the Window Manager later at any time via LXQt Session Configurator. Správce oken můžete později změnit v nastavení sezení. Other ... Jiné... Choose your favorite one. Vyberte oblíbené. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_da.ts000066400000000000000000000035651261501354200251300ustar00rootroot00000000000000 LXQtModuleManager Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Other ... Choose your favorite one. Welcome to LXQt <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_da_DK.ts000066400000000000000000000056541261501354200255070ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report LXQt-session Nedbrudsrapport Application '%1' crashed too many times. Its autorestart has been disabled for current session. Program '%1' har haft nedbrud for mange gange. Programmets autostart er blevet slået fra i denne session. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Velkommen til LXQt-Qt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Velkommen til LXQt-Qt</b> <p> Før du starter LXQt-Qt, skal du vælge window manager: You can change the Window Manager later at any time via LXQt Session Configurator. Du kan ændre valget af window manager på et vilkårligt tidspunkt. Other ... Andre ... Choose your favorite one. Vælg din favorit. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_de.ts000066400000000000000000000044171261501354200251310ustar00rootroot00000000000000 LXQtModuleManager Crash Report Absturzbericht <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. <b>%1</b> stürzte zu oft ab. Ihr automatischer Neustart wurde bis zum nächsten Einloggen deaktiviert. WmSelectDialog Welcome to LXQt Willkommen zu LXQt <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> <html><head/><body><p><span style=" font-weight:600;">Willkommen zu LXQt</span></p><p>Bitte den Default-Fenstermanager auswählen.</p></body></html> Other ... Andere... Choose your favorite one. Den Favoriten auswählen. You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. Der Fenstermanager kann jederzeit über Einstellungen -> Sitzungs-Konfigurator -> Grundeinstellungen wieder geändert werden. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_el.ts000066400000000000000000000077151261501354200251450ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report Αναφορά κατάρρευσης συνεδρίας LXQt Application '%1' crashed too many times. Its autorestart has been disabled for current session. Η εφαρμογή "%1" κατέρρευσε πολλές φορές. Η αυτόματη εκκίνησή της έχει απενεργοποιηθεί για την τρέχουσα συνεδρία. Crash Report Αναφορά κατάρρευσης <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. Το <b>%1</b> κατέρρευσε πάρα πολλές φορές. Η επανεκκίνησή του απενεργοποιήθηκε μέχρι την επόμενη σύνδεση. WmSelectDialog Welcome to LXQt Καλώς ήλθατε στο LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Καλώς ήλθατε στο LXQt</b> <p> Πριν ξεκινήσετε να χρησιμοποιείτε το LXQt, ίσως θέλετε να επιλέξετε τον διαχειριστή παραθύρων: You can change the Window Manager later at any time via LXQt Session Configurator. Μπορείτε να αλλάξετε τον διαχειριστή παραθύρων αργότερα μέσω της διαμόρφωσης συνεδρίας LXQt. Other ... Άλλο... Choose your favorite one. Επιλέξτε το αγαπημένο σας. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> <html><head/><body><p><span style=" font-weight:600;">Καλώς ήλθατε στο LXQt</span></p><p>Παρακαλώ επιλέξτε τον εξ ορισμού διαχειριστή παραθύρων.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. Μπορείτε να αλλάξετε αυτήν τη ρύθμιση από τις Προτιμήσεις -> Διαμόρφωση συνεδρίας -> Βασικές ρυθμίσεις. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_eo.ts000066400000000000000000000057371261501354200251520ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report Raporto de kolapsoj de LXQt-seancoj Application '%1' crashed too many times. Its autorestart has been disabled for current session. Aplikaĵo '%1' kolapsis tro ofte. Sia aŭtomata restarto estis malŝaltita por ĉi tiu seanco. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Bonvenon en LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Bonvenon en LXQt</b> <p> Antaŭ startigi uzadon de LXQt, vi eble volas elekti la fenestran mastrumilon: You can change the Window Manager later at any time via LXQt Session Configurator. Vi povas ŝanĝi la fenestran mastrumilon poste iam ajn per la agordilo de seanco de LXQt. Other ... Alia... Choose your favorite one. Elektu vian preferatan fenestran mastrumilon. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_es.ts000066400000000000000000000060011261501354200251370ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report Reporte de errores de sesión de LXQt Application '%1' crashed too many times. Its autorestart has been disabled for current session. La aplicación '%1' ha fallado demasiadas veces. Su reinicio automático se ha deshabilitado para la sesión actual. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Bienvenido a LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Bienvenido a LXQt</b> <p> Antes de comenzar a usar LXQt, podría desear seleccionar el gestor de ventanas: You can change the Window Manager later at any time via LXQt Session Configurator. Puede cambiar el gestor de ventanas posteriormente en cualquier momento mediante el configurador de sesiones de LXQt. Other ... Otros ... Choose your favorite one. Seleccione su favorito <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_es_UY.ts000066400000000000000000000050251261501354200255610ustar00rootroot00000000000000 LXQtModuleManager Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Bienvenido a LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Bienvenido a LXQt</b> <p> Antes de empezar a usar LXQt puede querer seleccionar el administrador de ventanas: You can change the Window Manager later at any time via LXQt Session Configurator. Puede cambiar el administrador de ventanas más adelante en cualquier momento usando el Configurador de Sesiones de LXQt. Other ... Choose your favorite one. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_es_VE.ts000066400000000000000000000057701261501354200255450ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report Reporte de fallos de LXQt Session Application '%1' crashed too many times. Its autorestart has been disabled for current session. Aplicacion '%1' se reinicio demasiadas veces, Su reinicio en si se ha desabilitado para la sesion en curso. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Bienvenido a LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Bienvenido a LXQt</b> <p> Antes de empezar a usar LXQt puede querer seleccionar el administrador de ventanas: You can change the Window Manager later at any time via LXQt Session Configurator. Puede cambiar el administrador de ventanas más adelante en cualquier momento usando el Configurador de Sesiones de LXQt. Other ... Otro.. Choose your favorite one. Escoja su favorito. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_eu.ts000066400000000000000000000056631261501354200251560ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report LXQt saioaren kraskatze-txostena Application '%1' crashed too many times. Its autorestart has been disabled for current session. '%1' aplikazioa gehiegitan kraskatu da. Bere berrabio-automatikoa desgaitu da uneko saiorako. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Ongi etorri LXQt-ra <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Ongi etorri LXQt-ra</b> <p> LXQt erabiltzen hasi aurretik, leiho-kudeatzailea aukera dezakezu: You can change the Window Manager later at any time via LXQt Session Configurator. Leiho-kudeatzailea alda dezakezu geroago LXQt saio-konfiguratzailea erabiliz. Other ... Beste bat... Choose your favorite one. Aukeratu gogokoena. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_fi.ts000066400000000000000000000057741261501354200251460ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report LXQtin kaatumisraportti Application '%1' crashed too many times. Its autorestart has been disabled for current session. Sovellus '%1' kaatui liian monta kertaa. Sen automaattikäynnistys on estetty nykyisen istunnon ajaksi. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Tervetuloa LXQt-työpöytäympäristöön <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Tervetuloa LXQt-työpöytäympäristöön</b> <p> Ennen kuin alat käyttää LXQt-työpöytäympäristöä, halunnet määrittää ikkunahallinnan: You can change the Window Manager later at any time via LXQt Session Configurator. Voit vaihtaa ikkunahallintaa milloin tahansa käyttäen LXQtin istunnonhallintaa. Other ... Muu... Choose your favorite one. Valitse suosikkisi <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_fr_FR.ts000066400000000000000000000060241261501354200255330ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report Rapport de plantage de session LXQt Application '%1' crashed too many times. Its autorestart has been disabled for current session. L'application '%1' a planté trop souvent. Son redémarrage automatique a été désactivé pour la session courante. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Bienvenue sur LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Bienvenue sur LXQt</b> <p> Avant de commencer à utiliser LXQt, vous voulez peut-être choisir un gestionnaire de fenêtres : You can change the Window Manager later at any time via LXQt Session Configurator. Vous pouvez changer de gestionnaire de fenêtres à tout moment dans le paneau de configuration de LXQt. Other ... Autre… Choose your favorite one. Choisissez votre préféré. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_hu.ts000066400000000000000000000043441261501354200251540ustar00rootroot00000000000000 LXQtModuleManager Crash Report Összeomlás <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. A <b>%1</b> gyorsan többször összeomlott. Az autorestart a következő bejeltkezésig letiltva. WmSelectDialog Other ... Más... Choose your favorite one. Válassz egy kedvencet. Welcome to LXQt Üdvözli az LXQt <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> <html><head/><body><p><span style=" font-weight:600;">Íme az LXQt!</span></p><p>Ablakkezelőt kell választani.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. Ez a választás később módosítható a Beállítások -> Munkamenet beállítás -> Alapbeállítás helyen. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_hu_HU.ts000066400000000000000000000055231261501354200255500ustar00rootroot00000000000000 LXQtModuleManager Crash Report Összeomlás <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. A <b>%1</b> gyorsan többször összeomlott. Az autorestart a következő bejeltkezésig letiltva. WmSelectDialog Welcome to LXQt Üdvözli a LXQt! <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Üdvözli a LXQt!</b> <p> Mielőtt elkezdené a LXQt használatát, válasszon ablakkezelőt: You can change the Window Manager later at any time via LXQt Session Configurator. Az ablakkezelőt később bármikor megváltoztathatja a LXQt munkamenetbeállítóban. Other ... Más... Choose your favorite one. Válassz egy kedvencet. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> <html><head/><body><p><span style=" font-weight:600;">Íme az LXQt!</span></p><p>Ablakkezelőt kell választani.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. Ez a választás később módosítható a Beállítások -> Munkamenet beállítás -> Alapbeállítás helyen. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_ia.ts000066400000000000000000000035651261501354200251350ustar00rootroot00000000000000 LXQtModuleManager Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Other ... Choose your favorite one. Welcome to LXQt <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_id_ID.ts000066400000000000000000000035701261501354200255100ustar00rootroot00000000000000 LXQtModuleManager Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Other ... Choose your favorite one. Welcome to LXQt <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_it.ts000066400000000000000000000066501261501354200251560ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report Resoconto di errori della sessione di LXQt Application '%1' crashed too many times. Its autorestart has been disabled for current session. L'applicazione '%1' si è chiusa per errore troppe volte. Il suo riavvio automatico è stato disattivato per l'attuale sessione. Crash Report Rapporto di crash <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. <b>%1</b> è andato in crash troppe volte. Il suo avvio automatico è stato disabilitato fino al prossimo login. WmSelectDialog Welcome to LXQt Benvenuto in LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Benvenuto in LXQt</b> <p> Prima di iniziare a usare LXQt dovresti selezionare il gestore delle finestre: You can change the Window Manager later at any time via LXQt Session Configurator. Puoi cambiare il gestore delle finestre quando vuoi tramite lo strumento di configurazione della sessione di LXQt. Other ... Altro... Choose your favorite one. Scegli il tuo preferito. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> <html><head/><body><p><span style=" font-weight:600;">Benvenuto in LXQt</span></p><p>Scegli il gestore delle finestre.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. E' possibile cambiarlo in ogni momento da: Preferenze ->Impostazioni della sessione -> Impostazioni di base. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_ja.ts000066400000000000000000000071671261501354200251400ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report LXQtセッションのクラッシュ報告 Application '%1' crashed too many times. Its autorestart has been disabled for current session. アプリケーション'%1'はクラッシュしすぎました。現在のセッションにおける自動起動は無効化されました。 Crash Report クラッシュリポート <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. <b>%1</b>はクラッシュしすぎました。次回ログイン時に自動起動は無効化されます。 WmSelectDialog Welcome to LXQt LXQtにようこそ <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>LXQtへようこそ</b> <p>LXQtを使い始める前に、ウィンドウマネージャを選択することもできます: You can change the Window Manager later at any time via LXQt Session Configurator. ウィンドウマネージャは後からいつでもLXQtセッション設定で変更することができます。 Other ... その他... Choose your favorite one. お好みのものを選んでください。 <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> <html><head/><body><p><span style=" font-weight:600;">LXQtへようこそ</span></p><p>既定のウィンドウマネージャを選択してください。</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. 動作を確認後、翻訳を要修正 設定-> セッションの設定-> 基本の設定 からいつでも変更することができるようになります。 lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_ko.ts000066400000000000000000000035651261501354200251550ustar00rootroot00000000000000 LXQtModuleManager Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Other ... Choose your favorite one. Welcome to LXQt <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_lt.ts000066400000000000000000000056751261501354200251670ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report Pranešimas apie LXQt sesijų lūžimus Application '%1' crashed too many times. Its autorestart has been disabled for current session. Programa „%1“ dažnai nulūžta. Jos automatinis paleidimas išjungiamas šiai sesijai. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Jus sveikina LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Jus sveikina LXQt</b> <p> Prieš pradėdami dirbti LXQt aplinkoje, pasirinkite norimą langų tvarkyklę. You can change the Window Manager later at any time via LXQt Session Configurator. Langų tvarkyklę bet kada vėliau galėsite pasikeisti LXQt sesijų konfigūracijoje. Other ... Kita ... Choose your favorite one. Pasirinkite norimą. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_nl.ts000066400000000000000000000057121261501354200251510ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report LXQt Sessie Fout Rapport Application '%1' crashed too many times. Its autorestart has been disabled for current session. Programma '%1' is te vaak gecrashed. De autorestart functie is uitgeschakeld voor deze sessie. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Welkom bij LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Welkom bij LXQt</b>⏎ <p>⏎ Voordat u gebruik maakt van LXQt-Qt, wilt u wellicht een Window Manager selecteren: You can change the Window Manager later at any time via LXQt Session Configurator. U kunt ook op een later tijdstip van Window Manager wisselen, via de LXQt Sessie Configurator. Other ... Overige ... Choose your favorite one. Kies uw favoriete. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_pl_PL.ts000066400000000000000000000057121261501354200255460ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report Zgłoszenie błędu sesji LXQt Application '%1' crashed too many times. Its autorestart has been disabled for current session. Aplikacja '%1' uległa awarii zbyt wiele razy. Automatyczne uruchamianie aplikacji zostało wyłączone w bieżącej sesji. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Witamy w LXQt-Qt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Witamy w LXQt-Qt</b> <p> Przed rozpoczęciem korzystania z komputera, proszę wybrać menedżer okien: You can change the Window Manager later at any time via LXQt Session Configurator. Można zmienić menedżer okien w oknie konfiguracji sesji LXQt. Other ... Inne ... Choose your favorite one. Wybierz swój ulubiony. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_pt.ts000066400000000000000000000065311261501354200251630ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report Relatório de erros do LXQt Application '%1' crashed too many times. Its autorestart has been disabled for current session. A aplicação '%1' terminou muitas vezes. O seu arranque automático foi desativado nesta sessão. Crash Report Relatório de erros <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. <b>%1</b> terminou muitas vezes. O seu arranque automático foi desativado até à próxima sessão. WmSelectDialog Welcome to LXQt Bem-vindo ao LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Bem-vindo ao LXQt</b> <p> Antes de começar a utilizar o LXQt, deve escolher o seu gestor de janelas: You can change the Window Manager later at any time via LXQt Session Configurator. Posteriormente, pode mudar o gestor de janelas através do configurador de sessões do LXQt. Other ... Outro... Choose your favorite one. Escolha o seu preferido. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> <html><head/><body><p><span style=" font-weight:600;">Bem-vindo ao LXQt</span></p><p>Por favor escolha o seu gestor de janelas.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. Posteriormente, pode mudar o gestor de janelas em Preferências -> Definiçoes da sessão -> Definições básicas. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_pt_BR.ts000066400000000000000000000057761261501354200255600ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report Relatar falha da sessão do LXQt Application '%1' crashed too many times. Its autorestart has been disabled for current session. O aplicativo '%1' falhou muitas vezes. Sua inicialização automática foi desativada para a sessão atual. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Bem-vindo ao LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Bem-vindo ao LXQt</b> <p> Antes de iniciar o uso do LXQt, você pode querer selecionar o gerenciador de janelas: You can change the Window Manager later at any time via LXQt Session Configurator. Você pode alterar o gerenciador de janelas mais tarde, a qualquer momento através do configurador de sessão do LXQt. Other ... Outro... Choose your favorite one. Escolha o seu favorito. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_ro_RO.ts000066400000000000000000000050731261501354200255600ustar00rootroot00000000000000 LXQtModuleManager Application '%1' crashed too many times. Its autorestart has been disabled for current session. Aplicația '%1' a eșuat de prea multe ori. Repornirea automată a acestei aplicații a fost dezactivată pentru sesiunea curentă. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Bine ați venit în LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Bine ați venit în LXQt</b> <p> Înainte de a utiliza LXQt, selectați un administrator de ferestre: Other ... Altele... Choose your favorite one. Alegeți favoritul dvs. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_ru.ts000066400000000000000000000047711261501354200251720ustar00rootroot00000000000000 LXQtModuleManager Crash Report Отчёт о падении <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. <b>%1</b> упало слишком много раз. его автозапуск был отменён до следующего входа в систему. WmSelectDialog Welcome to LXQt Добро пожаловать в LXQt <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> <html><head/><body><p><span style=" font-weight:600;">Добро пожаловать в LXQt</span></p><p>Выберите оконный менеджер по-умолчанию.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. Вы можете изменить это в любое время через Настройки -> Настройки сесии -> Основные настройки. Other ... Другое… Choose your favorite one. Выберите то, что вам больше нравится. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_ru_RU.ts000066400000000000000000000047741261501354200256030ustar00rootroot00000000000000 LXQtModuleManager Crash Report Отчёт о падении <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. <b>%1</b> упало слишком много раз. его автозапуск был отменён до следующего входа в систему. WmSelectDialog Welcome to LXQt Добро пожаловать в LXQt <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> <html><head/><body><p><span style=" font-weight:600;">Добро пожаловать в LXQt</span></p><p>Выберите оконный менеджер по-умолчанию.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. Вы можете изменить это в любое время через Настройки -> Настройки сесии -> Основные настройки. Other ... Другое… Choose your favorite one. Выберите то, что вам больше нравится. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_sk_SK.ts000066400000000000000000000047771261501354200255640ustar00rootroot00000000000000 LXQtModuleManager Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Víta vás LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Víta vás LXQt</b> <p> Predtým, než začnete používať LXQt si možno budete chcieť zvoliť správcu okien: You can change the Window Manager later at any time via LXQt Session Configurator. Správcu okien môžete kedykoľvek neskôr zmeniť prostredníctvom Konfigurácie relácie LXQt. Other ... Choose your favorite one. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_sl.ts000066400000000000000000000057121261501354200251560ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report Poročilo o sesutju seje LXQt Application '%1' crashed too many times. Its autorestart has been disabled for current session. Program »%1« se je sesul prevečkrat. Njegov samodejni zagon za trenutno sejo je bil onemogočen. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Dobrodošli v LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Dobrodošli v LXQt</b>
<p>
Preden začnete uporabljati LXQt si verjetno želite izbrati upravljalnika oken: You can change the Window Manager later at any time via LXQt Session Configurator. Upravljalnika oken lahko kadarkoli spremenite iz nastavitev seje LXQt. Other ... Drugo ... Choose your favorite one. Izberite priljubljenega upravljalnika oken. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_sr@latin.ts000066400000000000000000000035731261501354200263170ustar00rootroot00000000000000 LXQtModuleManager Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Other ... Choose your favorite one. Welcome to LXQt <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_sr_BA.ts000066400000000000000000000127161261501354200255300ustar00rootroot00000000000000 AutoStartEdit Edit Уреди Name: Име: Search... Тражи... Command: Наредба: Select Application Изабери програм AutoStartItemModel Global Autostart Глобално аутопокретање LXQt Autostart Рејзорово аутопокретање LXQtModuleManager Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. QObject Openbox - light-weight window manager Опенбокс - лагани менаџер прозора KWin - window manager of the KDE Software Compilation КВин - менаџер прозора за КДЕ Metacity - window manager of the GNOME desktop environment Метасити - менаџер прозора за ГНОМ Windowmaker - a classical lightweight window manager Виндоумејкер - класични лагани менаџер прозора Enlightenement 16 Enlightenement 16 Fvwm2 - a classical lightweight window manager Fvwm2 - класични лагани менаџер прозора Xfwm4 - a window manager for the Xfce desktop environment Xfwm4 - менаџер прозора за Иксфце Sawfish - a lightweight, flexible window manager Софиш - лагани, прилагодиви менаџер прозора WmSelectDialog Welcome to LXQt Добро дошли у Рејзор-кјут <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Добро дошли у Рејзор-кјут</b> <p> Прије него почнете да користите Рејзор-кјут морате да изаберете менаџер прозора: You can change the Window Manager later at any time via LXQt Session Configurator. Можете да промијените менаџера прозора касније помоћу Рејзоровог Подешавања сесије. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. Other ... Choose your favorite one. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_sr_RS.ts000066400000000000000000000052531261501354200255700ustar00rootroot00000000000000 LXQtModuleManager Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Добро дошли у Рејзор-кјут <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Добро дошли у Рејзор-кјут</b> <p> Пре него почнете да користите Рејзор-кјут морате да изаберете менаџер прозора: You can change the Window Manager later at any time via LXQt Session Configurator. Можете да промените менаџера прозора касније помоћу Рејзоровог Подешавања сесије. Other ... Choose your favorite one. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_th_TH.ts000066400000000000000000000070711261501354200255460ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report รายงานความเสียหายของวาระงาน LXQt Application '%1' crashed too many times. Its autorestart has been disabled for current session. โปรแกรม '%1' เสียหายหลายครั้งมาก การเริ่มงานอัตโนมัติของมันจะถูกปิดใช้งาานสำหรับวาระงานปัจจุบัน Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt ยินดีต้อนรับเข้าสู่ LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>ยินดีต้อนรับสู่ LXQt</b> <p> ก่อนเริ่มการใช้งาน LXQt คุณจะต้องเลือกโปรแกรมจัดการหน้าต่าง: You can change the Window Manager later at any time via LXQt Session Configurator. คุณสามารถเปลี่ยนโปรแกรมจัดการหน้าต่างทีหลังในเวลาใดก็ได้ทางตัวตั้งค่าวาระงาน LXQt Other ... อย่างอื่น ... Choose your favorite one. เลื่อกที่คุณชอบมาหนึ่งอย่าง <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_tr.ts000066400000000000000000000060441261501354200251640ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report LXQt Oturum Çökme Bildirimi Application '%1' crashed too many times. Its autorestart has been disabled for current session. '%1' uygulaması çok kere çöktü. Geçerli oturum için bu uygulamanın kendiliğinden yeniden başlatma işlevi devre dışı bırakıldı. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt LXQt' ye hoş geldiniz <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>LXQt' ye hoş geldiniz</b> <p> LXQt' yi kullanmaya başlamadan önce, Pencere Yöneticisini seçiniz: You can change the Window Manager later at any time via LXQt Session Configurator. Pencere Yöneticisini istediğiniz zaman LXQt Oturum Yapılandırıcıyı kullanarak değiştirebilirsiniz. Other ... Diğer ... Choose your favorite one. Sık kullandığınızı seçin. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_uk.ts000066400000000000000000000062551261501354200251620ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report Звіт про крах сеансу LXQt Application '%1' crashed too many times. Its autorestart has been disabled for current session. Програма "%1" зазнала краху забагато разів, тож для цього сеансу її автоматичний перезапуск вимкнено. Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt Вітаємо в LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>Вітаємо в LXQt!</b> <p> Перед тим, як почати користуватись LXQt, будь ласка, оберіть менеджер вікон: You can change the Window Manager later at any time via LXQt Session Configurator. Ви можете обрати менеджер вікон пізніше через налаштування сеансу LXQt. Other ... Інший ... Choose your favorite one. Оберіть Ваш улюблений. <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_zh_CN.GB2312.ts000066400000000000000000000035771261501354200263470ustar00rootroot00000000000000 LXQtModuleManager Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Other ... Choose your favorite one. Welcome to LXQt <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_zh_CN.ts000066400000000000000000000056121261501354200255400ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report LXQt 会话崩溃报告 Application '%1' crashed too many times. Its autorestart has been disabled for current session. 程序 '%1' 崩溃了很多次,当前会话禁止其自动启动。 Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt 欢迎来到 LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>欢迎来到 LXQt</b> <p> 在开始使用LXQt之前,也许你想选择窗口管理器: You can change the Window Manager later at any time via LXQt Session Configurator. 你可以在任何时候通过LXQt会话配置器更改窗口管理器。 Other ... 其它... Choose your favorite one. 选择最喜欢的。 <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings. lxqt-session-0.10.0/lxqt-session/translations/lxqt-session_zh_TW.ts000066400000000000000000000056531261501354200255770ustar00rootroot00000000000000 LXQtModuleManager LXQt Session Crash Report LXQt會話錯誤回報 Application '%1' crashed too many times. Its autorestart has been disabled for current session. 應用程式 '%1' 不正常結束過於頻繁。所以它在此會話中的自動啟動將被取消。 Crash Report <b>%1</b> crashed too many times. Its autorestart has been disabled until next login. WmSelectDialog Welcome to LXQt 歡迎使用 LXQt <b>Welcome to LXQt</b> <p> Before starting to use the LXQt, you might want to select the Windows Manager: <b>歡迎使用 LXQt</b> <p> 在開始探索LXQt之前,您也許會想先選擇視窗管理器: You can change the Window Manager later at any time via LXQt Session Configurator. 您以在任何時間透過LXQt會話設定更改視窗管理員。 Other ... 其他... Choose your favorite one. 選擇您最喜愛的。 <html><head/><body><p><span style=" font-weight:600;">Welcome to LXQt</span></p><p>Please select your default Window Manager.</p></body></html> You will be able to change this at any time through Preferences -> Session Settings -> Basic Settings.