diff options
Diffstat (limited to 'src-qt5/core/lumina-desktop')
25 files changed, 364 insertions, 335 deletions
diff --git a/src-qt5/core/lumina-desktop/LDesktop.cpp b/src-qt5/core/lumina-desktop/LDesktop.cpp index f9ea1534..71b10bd5 100644 --- a/src-qt5/core/lumina-desktop/LDesktop.cpp +++ b/src-qt5/core/lumina-desktop/LDesktop.cpp @@ -341,7 +341,7 @@ void LDesktop::UpdateMenu(bool fast){ void LDesktop::UpdateWinMenu(){ winMenu->clear(); //Get the current list of windows - QList<WId> wins = LSession::handle()->XCB->WindowList(); + QList<WId> wins = LSession::handle()->XCB->WindowList(); //Now add them to the menu for(int i=0; i<wins.length(); i++){ LWinInfo info(wins[i]); @@ -352,7 +352,7 @@ void LDesktop::UpdateWinMenu(){ } void LDesktop::winClicked(QAction* act){ - LSession::handle()->XCB->ActivateWindow( act->data().toString().toULong() ); + LSession::handle()->XCB->ActivateWindow( act->data().toString().toULong() ); } void LDesktop::UpdateDesktop(){ @@ -393,7 +393,7 @@ void LDesktop::UpdateDesktop(){ if(settings->value(DPREFIX+"generateMediaIcons",true).toBool()){ QDir media("/media"); QStringList mediadirs = media.entryList(QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot, QDir::Name); - for(int i=0; i<mediadirs.length(); i++){ + for(int i=0; i<mediadirs.length(); i++){ filelist << media.absoluteFilePath(mediadirs[i]); } } @@ -406,8 +406,8 @@ void LDesktop::RemoveDeskPlugin(QString ID){ //This is called after a plugin is manually removed by the user // just need to ensure that the plugin is also removed from the settings file QStringList plugs = settings->value(DPREFIX+"pluginlist", QStringList()).toStringList(); - if(plugs.contains(ID)){ - plugs.removeAll(ID); + if(plugs.contains(ID)){ + plugs.removeAll(ID); issyncing=true; //don't let the change cause a refresh settings->setValue(DPREFIX+"pluginlist", plugs); settings->sync(); @@ -437,7 +437,7 @@ void LDesktop::DecreaseDesktopPluginIcons(){ settings->setValue(DPREFIX+"GridSize",cur); settings->sync(); QTimer::singleShot(200, this, SLOT(UnlockSettings()) ); - bgDesktop->SetIconSize(cur); + bgDesktop->SetIconSize(cur); } void LDesktop::UpdatePanels(){ @@ -484,18 +484,18 @@ void LDesktop::UpdateDesktopPluginArea(){ QRegion shifted = visReg; QString loc = settings->value(PANELS[i]->prefix()+"location","top").toString().toLower(); int vis = PANELS[i]->visibleWidth(); - if(loc=="top"){ + if(loc=="top"){ if(!shifted.contains(QRect(rawRect.x(), rawRect.y(), rawRect.width(), vis))){ continue; } - shifted.translate(0, (rawRect.top()+vis)-shifted.boundingRect().top() ); + shifted.translate(0, (rawRect.top()+vis)-shifted.boundingRect().top() ); }else if(loc=="bottom"){ - if(!shifted.contains(QRect(rawRect.x(), rawRect.bottom()-vis, rawRect.width(), vis))){ continue; } - shifted.translate(0, (rawRect.bottom()-vis)-shifted.boundingRect().bottom()); - }else if(loc=="left"){ + if(!shifted.contains(QRect(rawRect.x(), rawRect.bottom()-vis, rawRect.width(), vis))){ continue; } + shifted.translate(0, (rawRect.bottom()-vis)-shifted.boundingRect().bottom()); + }else if(loc=="left"){ if( !shifted.contains(QRect(rawRect.x(), rawRect.y(), vis,rawRect.height())) ){ continue; } - shifted.translate((rawRect.left()+vis)-shifted.boundingRect().left() ,0); + shifted.translate((rawRect.left()+vis)-shifted.boundingRect().left() ,0); }else{ //right if(!shifted.contains(QRect(rawRect.right()-vis, rawRect.y(), vis,rawRect.height())) ){ continue; } - shifted.translate((rawRect.right()-vis)-shifted.boundingRect().right(),0); + shifted.translate((rawRect.right()-vis)-shifted.boundingRect().right(),0); } visReg = visReg.intersected( shifted ); } @@ -535,11 +535,20 @@ void LDesktop::UpdateBackground(){ //Get the list of background(s) to show QStringList bgL = settings->value(DPREFIX+"background/filelist-workspace-"+QString::number( LSession::handle()->XCB->CurrentWorkspace()), QStringList()).toStringList(); if(bgL.isEmpty()){ bgL = settings->value(DPREFIX+"background/filelist", QStringList()).toStringList(); } - + //qDebug() << " - List:" << bgL << CBG; //Remove any invalid files for(int i=0; i<bgL.length(); i++){ - if( (!QFile::exists(bgL[i]) && bgL[i]!="default" && !bgL[i].startsWith("rgb(") ) || bgL[i].isEmpty()){ bgL.removeAt(i); i--; } + if(bgL[i]=="default" || bgL[i].startsWith("rgb(") ){ continue; } //built-in definitions - treat them as valid + if(bgL[i].isEmpty()){ bgL.removeAt(i); i--; } + if( !QFile::exists(bgL[i]) ){ + //Quick Detect/replace for new path for Lumina wallpapers (change in 1.3.4) + if(bgL[i].contains("/wallpapers/Lumina-DE/")){ + bgL[i] = bgL[i].replace("/wallpapers/Lumina-DE/", "/wallpapers/lumina-desktop/"); i--; //modify the path and re-check it + }else{ + bgL.removeAt(i); i--; + } + } } if(bgL.isEmpty()){ bgL << "default"; } //always fall back on the default //Determine if the background needs to be changed @@ -552,13 +561,32 @@ void LDesktop::UpdateBackground(){ } oldBGL = bgL; //save this for later //Determine which background to use next - int index ( qrand() % bgL.length() ); - if(index== bgL.indexOf(CBG)){ //if the current wallpaper was selected by the randomization again - //Go to the next in the list - if(index < 0 || index >= bgL.length()-1){ index = 0; } //if invalid or last item in the list - go to first - else{ index++; } //go to next + QString bgFile; + while(bgFile.isEmpty() || QFileInfo(bgFile).isDir()){ + QString prefix; + if(!bgFile.isEmpty()){ + //Got a directory - update the list of files and re-randomize the selection + QStringList imgs = LUtils::imageExtensions(); + for(int i=0; i<imgs.length(); i++){ imgs[i].prepend("*."); } + QDir tdir(bgFile); + prefix=bgFile+"/"; + bgL = tdir.entryList(imgs, QDir::Files | QDir::NoDotAndDotDot, QDir::Name); + //If directory no longer has any valid images - remove it from list and try again + if(bgL.isEmpty()){ + oldBGL.removeAll(bgFile); //invalid directory - remove it from the list for the moment + bgL = oldBGL; //reset the list back to the original list (not within a directory) + } + } + //Verify that there are files in the list - otherwise use the default + if(bgL.isEmpty()){ bgFile="default"; break; } + int index = ( qrand() % bgL.length() ); + if(index== bgL.indexOf(CBG)){ //if the current wallpaper was selected by the randomization again + //Go to the next in the list + if(index < 0 || index >= bgL.length()-1){ index = 0; } //if invalid or last item in the list - go to first + else{ index++; } //go to next + } + bgFile = prefix+bgL[index]; } - QString bgFile = bgL[index]; //Save this file as the current background CBG = bgFile; //qDebug() << " - Set Background to:" << CBG << index << bgL; @@ -570,7 +598,7 @@ void LDesktop::UpdateBackground(){ bgDesktop->setBackground(backPix); //Now reset the timer for the next change (if appropriate) if(bgtimer->isActive()){ bgtimer->stop(); } - if(bgL.length() > 1){ + if(bgL.length()>1 || oldBGL.length()>1){ //get the length of the timer (in minutes) int min = settings->value(DPREFIX+"background/minutesToChange",5).toInt(); //restart the internal timer @@ -633,9 +661,9 @@ void LDesktop::NewDesktopFile(QString name){ QDir desktop(QDir::homePath()); if(desktop.exists(tr("Desktop"))){ desktop.cd(tr("Desktop")); } //translated folder else{ desktop.cd("Desktop"); } //default/english folder - if(!desktop.exists(name)){ + if(!desktop.exists(name)){ QFile file(desktop.absoluteFilePath(name)); - if(file.open(QIODevice::WriteOnly) ){ file.close(); } + if(file.open(QIODevice::WriteOnly) ){ file.close(); } } } } diff --git a/src-qt5/core/lumina-desktop/LDesktopPluginSpace.cpp b/src-qt5/core/lumina-desktop/LDesktopPluginSpace.cpp index 41a1017d..9e964f5d 100644 --- a/src-qt5/core/lumina-desktop/LDesktopPluginSpace.cpp +++ b/src-qt5/core/lumina-desktop/LDesktopPluginSpace.cpp @@ -21,7 +21,7 @@ LDesktopPluginSpace::LDesktopPluginSpace() : QWidget(){ //this->setAttribute(Qt::WA_TranslucentBackground); //this->setAttribute(Qt::WA_NoSystemBackground); this->setAutoFillBackground(false); - this->setStyleSheet("QWidget#LuminaDesktopPluginSpace{ border: none; background: transparent; }"); + this->setStyleSheet("QWidget#LuminaDesktopPluginSpace{ border: none; background: transparent; }"); this->setWindowFlags(Qt::WindowStaysOnBottomHint | Qt::CustomizeWindowHint | Qt::FramelessWindowHint); this->setAcceptDrops(true); this->setContextMenuPolicy(Qt::NoContextMenu); @@ -34,7 +34,7 @@ LDesktopPluginSpace::LDesktopPluginSpace() : QWidget(){ } LDesktopPluginSpace::~LDesktopPluginSpace(){ - + } void LDesktopPluginSpace::LoadItems(QStringList plugs, QStringList files){ @@ -76,7 +76,7 @@ void LDesktopPluginSpace::setBackground(QPixmap pix){ void LDesktopPluginSpace::setDesktopArea(QRect area){ //qDebug() << "Setting Desktop Plugin Area:" << area; desktopRect = area; - + } // =================== @@ -222,7 +222,7 @@ QRect LDesktopPluginSpace::findOpenSpot(int gridwidth, int gridheight, int start //else{ row++; } } if(!found){ col++; row=0; } //go to the next column - } + } }else if(reversed && (startRow>0 || startCol>0) ){ //Arrange Left->Right (work backwards) while(row>=0 && !found){ @@ -242,7 +242,7 @@ QRect LDesktopPluginSpace::findOpenSpot(int gridwidth, int gridheight, int start //else{ col++; } } if(!found){ row--; col=colCount-gridwidth;} //go to the previous row - } + } }else{ //Arrange Left->Right while(row<(rowCount-gridheight) && !found){ @@ -296,8 +296,8 @@ void LDesktopPluginSpace::reloadPlugins(bool ForceIconUpdate ){ QStringList plugs = plugins; QStringList items = deskitems; for(int i=0; i<ITEMS.length(); i++){ - - if( ITEMS[i]->whatsThis().startsWith("applauncher") && ForceIconUpdate){ + + if( ITEMS[i]->whatsThis().startsWith("applauncher") && ForceIconUpdate){ //Change the size of the existing plugin - preserving the location if possible /*QRect geom = ITEMS[i]->loadPluginGeometry(); //pixel coords if(!geom.isNull()){ @@ -306,14 +306,14 @@ void LDesktopPluginSpace::reloadPlugins(bool ForceIconUpdate ){ ITEMS[i]->savePluginGeometry( gridToGeom(geom)); //save it back in pixel coords }*/ //Now remove the plugin for the moment - run it through the re-creation routine below - ITEMS.takeAt(i)->deleteLater(); + ITEMS.takeAt(i)->deleteLater(); i--; } else if(plugs.contains(ITEMS[i]->whatsThis())){ plugs.removeAll(ITEMS[i]->whatsThis()); } else if(items.contains(ITEMS[i]->whatsThis().section("---",0,0).section("::",1,50))){ items.removeAll(ITEMS[i]->whatsThis().section("---",0,0).section("::",1,50)); } else{ ITEMS[i]->removeSettings(true); ITEMS.takeAt(i)->deleteLater(); i--; } //this is considered a permanent removal (cleans settings) } - + //Now create any new items //First load the plugins (almost always have fixed locations) for(int i=0; i<plugs.length(); i++){ diff --git a/src-qt5/core/lumina-desktop/LSession.cpp b/src-qt5/core/lumina-desktop/LSession.cpp index 2a1ec783..dab30f01 100644 --- a/src-qt5/core/lumina-desktop/LSession.cpp +++ b/src-qt5/core/lumina-desktop/LSession.cpp @@ -98,7 +98,7 @@ void LSession::setupSession(){ qDebug() << "Initializing Session"; if(QFile::exists("/tmp/.luminastopping")){ QFile::remove("/tmp/.luminastopping"); } QTime* timer = 0; - //if(DEBUG){ timer = new QTime(); timer->start(); qDebug() << " - Init srand:" << timer->elapsed();} + if(DEBUG){ timer = new QTime(); timer->start(); qDebug() << " - Init srand:" << timer->elapsed();} //Setup the QSettings default paths splash.showScreen("settings"); @@ -118,9 +118,9 @@ void LSession::setupSession(){ } //use the system settings //Setup the user's lumina settings directory as necessary - splash.showScreen("user"); - if(DEBUG){ qDebug() << " - Init User Files:" << timer->elapsed();} - checkUserFiles(); //adds these files to the watcher as well + //splash.showScreen("user"); + //if(DEBUG){ qDebug() << " - Init User Files:" << timer->elapsed();} + //checkUserFiles(); //adds these files to the watcher as well //Initialize the internal variables DESKTOPS.clear(); @@ -147,11 +147,12 @@ void LSession::setupSession(){ if(DEBUG){ qDebug() << " - Init Desktops:" << timer->elapsed();} desktopFiles = QDir(QDir::homePath()+"/Desktop").entryInfoList(QDir::NoDotAndDotDot | QDir::Files | QDir::Dirs, QDir::Name | QDir::IgnoreCase | QDir::DirsFirst); updateDesktops(); - for(int i=0; i<6; i++){ LSession::processEvents(); } //Run through this a few times so the interface systems get up and running + //if(DEBUG){ qDebug() << " - Process Events (6x):" << timer->elapsed();} + //for(int i=0; i<6; i++){ LSession::processEvents(); } //Run through this a few times so the interface systems get up and running //Now setup the system watcher for changes splash.showScreen("final"); - qDebug() << " - Initialize file system watcher"; + //qDebug() << " - Initialize file system watcher"; if(DEBUG){ qDebug() << " - Init QFileSystemWatcher:" << timer->elapsed();} watcher = new QFileSystemWatcher(this); QString confdir = sessionsettings->fileName().section("/",0,-2); @@ -171,14 +172,18 @@ void LSession::setupSession(){ connect(watcher, SIGNAL(directoryChanged(QString)), this, SLOT(watcherChange(QString)) ); connect(watcher, SIGNAL(fileChanged(QString)), this, SLOT(watcherChange(QString)) ); connect(this, SIGNAL(aboutToQuit()), this, SLOT(SessionEnding()) ); - if(DEBUG){ qDebug() << " - Init Finished:" << timer->elapsed(); delete timer;} - for(int i=0; i<4; i++){ LSession::processEvents(); } //Again, just a few event loops here so thing can settle before we close the splash screen + //if(DEBUG){ qDebug() << " - Process Events (4x):" << timer->elapsed();} + //for(int i=0; i<4; i++){ LSession::processEvents(); } //Again, just a few event loops here so thing can settle before we close the splash screen + if(DEBUG){ qDebug() << " - Launch Startup Apps:" << timer->elapsed();} //launchStartupApps(); QTimer::singleShot(500, this, SLOT(launchStartupApps()) ); - splash.hide(); - LSession::processEvents(); + //if(DEBUG){ qDebug() << " - Hide Splashscreen:" << timer->elapsed();} + //splash.hide(); + //LSession::processEvents(); + if(DEBUG){ qDebug() << " - Close Splashscreen:" << timer->elapsed();} splash.close(); - LSession::processEvents(); + //LSession::processEvents(); + if(DEBUG){ qDebug() << " - Init Finished:" << timer->elapsed(); delete timer;} } void LSession::CleanupSession(){ @@ -289,7 +294,7 @@ void LSession::launchStartupApps(){ qDebug() << " - - Screen Brightness:" << QString::number(tmp)+"%"; } //QProcess::startDetached("nice lumina-open -autostart-apps"); - ExternalProcess::launch("nice lumina-open -autostart-apps"); + ExternalProcess::launch("lumina-open", QStringList() << "-autostart-apps", false); //Re-load the screen brightness and volume settings from the previous session // Wait until after the XDG-autostart functions, since the audio system might be started that way @@ -303,7 +308,7 @@ void LSession::launchStartupApps(){ QString sfile = sessionsettings->value("audiofiles/login", LOS::LuminaShare()+"Login.ogg").toString(); playAudioFile(sfile); } - qDebug() << "[DESKTOP INIT FINISHED]"; + //qDebug() << "[DESKTOP INIT FINISHED]"; } void LSession::StartLogout(){ @@ -384,15 +389,26 @@ void LSession::checkWindowGeoms(){ } } -void LSession::checkUserFiles(){ +bool LSession::checkUserFiles(){ //internal version conversion examples: // [1.0.0 -> 1000000], [1.2.3 -> 1002003], [0.6.1 -> 6001] - QString OVS = sessionsettings->value("DesktopVersion","0").toString(); //Old Version String - bool changed = LDesktopUtils::checkUserFiles(OVS); + qDebug() << "Check User Files"; + //char tmp[] = "junk\0"; + //int tmpN = 0; + //QApplication A(tmpN, (char **)&tmp); + QSettings sset("lumina-desktop", "sessionsettings"); + QString OVS = sset.value("DesktopVersion","0").toString(); //Old Version String + qDebug() << " - Old Version:" << OVS; + qDebug() << " - Current Version:" << LDesktopUtils::LuminaDesktopVersion(); + bool changed = LDesktopUtils::checkUserFiles(OVS, LDesktopUtils::LuminaDesktopVersion()); + qDebug() << " - Made Changes:" << changed; if(changed){ //Save the current version of the session to the settings file (for next time) - sessionsettings->setValue("DesktopVersion", this->applicationVersion()); + sset.setValue("DesktopVersion", LDesktopUtils::LuminaDesktopVersion()); } + qDebug() << "Finished with user files check"; + //delete A; + return changed; } void LSession::refreshWindowManager(){ @@ -573,7 +589,7 @@ void LSession::SessionEnding(){ //=============== void LSession::LaunchApplication(QString cmd){ //LSession::setOverrideCursor(QCursor(Qt::BusyCursor)); - ExternalProcess::launch(cmd); + ExternalProcess::launch(cmd, QStringList(), true); //QProcess::startDetached(cmd); } @@ -674,7 +690,7 @@ void LSession::WindowPropertyEvent(){ if(RunningApps.length() < newapps.length()){ //New Window found //qDebug() << "New window found"; - LSession::restoreOverrideCursor(); //restore the mouse cursor back to normal (new window opened?) + //LSession::restoreOverrideCursor(); //restore the mouse cursor back to normal (new window opened?) //Perform sanity checks on any new window geometries for(int i=0; i<newapps.length() && !TrayStopping; i++){ if(!RunningApps.contains(newapps[i])){ @@ -826,7 +842,7 @@ void LSession::attachTrayWindow(WId win){ if(RunningTrayApps.contains(win)){ return; } //already managed qDebug() << "Session Tray: Window Added"; RunningTrayApps << win; - LSession::restoreOverrideCursor(); + //LSession::restoreOverrideCursor(); if(DEBUG){ qDebug() << "Tray List Changed"; } emit TrayListChanged(); } diff --git a/src-qt5/core/lumina-desktop/LSession.h b/src-qt5/core/lumina-desktop/LSession.h index 0d69df84..a25f3c15 100644 --- a/src-qt5/core/lumina-desktop/LSession.h +++ b/src-qt5/core/lumina-desktop/LSession.h @@ -39,7 +39,7 @@ #define SYSTEM_TRAY_CANCEL_MESSAGE 2 /*class MenuProxyStyle : public QProxyStyle{ -public: +public: int pixelMetric(PixelMetric metric, const QStyleOption *option=0, const QWidget *widget=0) const{ if(metric==PM_SmallIconSize){ return 22; } //override QMenu icon size (make it larger) else{ return QProxyStyle::pixelMetric(metric, option, widget); } //use the current style for everything else @@ -51,6 +51,8 @@ class LSession : public LSingleApplication{ public: LSession(int &argc, char **argv); ~LSession(); + + static bool checkUserFiles(); //Functions to be called during startup void setupSession(); @@ -63,7 +65,7 @@ public: bool registerStartButton(QString ID); void unregisterStartButton(QString ID); - //Special functions for XCB event filter parsing only + //Special functions for XCB event filter parsing only // (DO NOT USE MANUALLY) void RootSizeChange(); void WindowPropertyEvent(); @@ -73,37 +75,37 @@ public: void WindowConfigureEvent(WId); void WindowDamageEvent(WId); void WindowSelectionClearEvent(WId); - + //System Access //Return a pointer to the current session static LSession* handle(){ return static_cast<LSession*>(LSession::instance()); } - + static void LaunchApplication(QString cmd); QFileInfoList DesktopFiles(); - + QRect screenGeom(int num); - + AppMenu* applicationMenu(); void systemWindow(); SettingsMenu* settingsMenu(); LXCB *XCB; //class for XCB usage - + QSettings* sessionSettings(); QSettings* DesktopPluginSettings(); - + //Keep track of which non-desktop window should be treated as active WId activeWindow(); //This will return the last active window if a desktop element is currently active - + //Temporarily change the session locale (nothing saved between sessions) void switchLocale(QString localeCode); - + //Play System Audio void playAudioFile(QString filepath); //Window Adjustment Routine (due to Fluxbox not respecting _NET_WM_STRUT) void adjustWindowGeom(WId win, bool maximize = false); - + private: //WMProcess *WM; QList<LDesktop*> DESKTOPS; @@ -136,9 +138,9 @@ private: QFileInfoList desktopFiles; void CleanupSession(); - + int VersionStringToNumber(QString version); - + public slots: void StartLogout(); void StartShutdown(bool skipupdates = false); @@ -161,7 +163,6 @@ private slots: void removeTrayWindow(WId); //Internal simplification functions - void checkUserFiles(); void refreshWindowManager(); void updateDesktops(); void registerDesktopWindows(); @@ -189,7 +190,7 @@ signals: void DesktopFilesChanged(); void MediaFilesChanged(); void WorkspaceChanged(); - + }; #endif diff --git a/src-qt5/core/lumina-desktop/LXcbEventFilter.cpp b/src-qt5/core/lumina-desktop/LXcbEventFilter.cpp index ca7fb38d..038872ff 100644 --- a/src-qt5/core/lumina-desktop/LXcbEventFilter.cpp +++ b/src-qt5/core/lumina-desktop/LXcbEventFilter.cpp @@ -52,8 +52,8 @@ bool XCBEventFilter::nativeEventFilter(const QByteArray &eventType, void *messag session->emit WorkspaceChanged(); }else if( SysNotifyAtoms.contains( ((xcb_property_notify_event_t*)ev)->atom ) ){ //Update the status/list of all running windows - session->WindowPropertyEvent(); - + session->WindowPropertyEvent(); + //window-specific property change }else if( WinNotifyAtoms.contains( ((xcb_property_notify_event_t*)ev)->atom ) ){ //Ping only that window @@ -61,7 +61,7 @@ bool XCBEventFilter::nativeEventFilter(const QByteArray &eventType, void *messag session->WindowPropertyEvent(); } break; -//============================== +//============================== case XCB_CLIENT_MESSAGE: //qDebug() << "Client Message Event"; //qDebug() << " - Root Window:" << QX11Info::appRootWindow(); @@ -72,7 +72,7 @@ bool XCBEventFilter::nativeEventFilter(const QByteArray &eventType, void *messag session->SysTrayDockRequest( ((xcb_client_message_event_t*)ev)->data.data32[2] ); } //Ignore the System Tray messages at the moment (let the WM handle it) - + //window-specific property changes /*}else if( ((xcb_client_message_event_t*)ev)->type == session->XCB->EWMH._NET_WM_STATE ){ if( session->XCB->WindowIsMaximized( ((xcb_client_message_event_t*)ev)->window ) ){ @@ -86,22 +86,22 @@ bool XCBEventFilter::nativeEventFilter(const QByteArray &eventType, void *messag session->WindowPropertyEvent(); } break; -//============================== +//============================== case XCB_DESTROY_NOTIFY: //qDebug() << "Window Closed Event"; session->WindowClosedEvent( ( (xcb_destroy_notify_event_t*)ev )->window ); break; -//============================== +//============================== case XCB_CONFIGURE_NOTIFY: //qDebug() << "Configure Notify Event"; session->WindowConfigureEvent( ((xcb_configure_notify_event_t*)ev)->window ); break; -//============================== +//============================== case XCB_SELECTION_CLEAR: //qDebug() << "Selection Clear Event"; - session->WindowSelectionClearEvent( ((xcb_selection_clear_event_t*)ev)->owner ); + session->WindowSelectionClearEvent( ((xcb_selection_clear_event_t*)ev)->owner ); break; -//============================== +//============================== default: if(TrayDmgFlag!=0){ //if( (ev->response_type & ~0x80)==TrayDmgFlag){ diff --git a/src-qt5/core/lumina-desktop/WMProcess.cpp b/src-qt5/core/lumina-desktop/WMProcess.cpp index aa01b730..0687c1fe 100644 --- a/src-qt5/core/lumina-desktop/WMProcess.cpp +++ b/src-qt5/core/lumina-desktop/WMProcess.cpp @@ -30,7 +30,7 @@ void WMProcess::startWM(){ if(!isRunning()){this->start(cmd); } /*if(ssaver->state() == QProcess::NotRunning \ && LSession::handle()->sessionSettings()->value("WindowManager", "fluxbox").toString() != "lumina-wm"){ - ssaver->start("xscreensaver -no-splash"); + ssaver->start("xscreensaver -no-splash"); }*/ } @@ -52,8 +52,8 @@ void WMProcess::restartWM(){ inShutdown = true; this->kill(); if(!this->waitForFinished(5000) ){ this->terminate(); }; - inShutdown = false; - } + inShutdown = false; + } this->startWM(); } diff --git a/src-qt5/core/lumina-desktop/defaults/luminaDesktop-TrueOS.conf b/src-qt5/core/lumina-desktop/defaults/luminaDesktop-TrueOS.conf index e453c0b8..e9520a3c 100644 --- a/src-qt5/core/lumina-desktop/defaults/luminaDesktop-TrueOS.conf +++ b/src-qt5/core/lumina-desktop/defaults/luminaDesktop-TrueOS.conf @@ -53,7 +53,7 @@ mime_default_application/x-tar_ifexists=lumina-archiver.desktop #THEME SETTINGS theme_themefile=DarkGlass #Name of the theme to use (disable for Lumina-Default) -theme_colorfile=Black #Name of the color spec file to use for theming +theme_colorfile=darker #Name of the color spec file to use for theming theme_iconset=material-design-dark #Name of the icon theme to use theme_font=Noto Sans #Name of the font family to use theme_fontsize=10pt #Default size of the fonts to use on the desktop (can also use a percentage of the screen height (<number>%) ) diff --git a/src-qt5/core/lumina-desktop/defaults/luminaDesktop.conf b/src-qt5/core/lumina-desktop/defaults/luminaDesktop.conf index 1327f148..40ece4f0 100644 --- a/src-qt5/core/lumina-desktop/defaults/luminaDesktop.conf +++ b/src-qt5/core/lumina-desktop/defaults/luminaDesktop.conf @@ -51,7 +51,7 @@ mime_default_application/x-shellscript=lumina-textedit.desktop #THEME SETTINGS theme_themefile=DarkGlass #Name of the theme to use (disable for Lumina-Default) -theme_colorfile=Black #Name of the color spec file to use for theming +theme_colorfile=darker #Name of the color spec file to use for theming theme_iconset=material-design-dark #Name of the icon theme to use theme_font=Arial #Name of the font family to use theme_fontsize=10pt #Default size of the fonts to use on the desktop (can also use a percentage of the screen height (<number>%) ) diff --git a/src-qt5/core/lumina-desktop/desktop-plugins/applauncher/AppLauncherPlugin.cpp b/src-qt5/core/lumina-desktop/desktop-plugins/applauncher/AppLauncherPlugin.cpp index 0258d561..0bf087c1 100644 --- a/src-qt5/core/lumina-desktop/desktop-plugins/applauncher/AppLauncherPlugin.cpp +++ b/src-qt5/core/lumina-desktop/desktop-plugins/applauncher/AppLauncherPlugin.cpp @@ -44,7 +44,8 @@ void AppLauncherPlugin::loadButton(){ QFileInfo info(path); this->contextMenu()->clear(); //qDebug() << "Default Application Launcher:" << def << path; - bool ok = QFile::exists(path); + bool ok = info.canonicalPath().startsWith("/net/"); + if(!ok){ ok = QFile::exists(path); } //do it this way to ensure the file existance check never runs for /net/ files if(!ok){ emit RemovePlugin(this->ID()); return;} icosize = this->height()-4 - 2.2*button->fontMetrics().height(); button->setFixedSize( this->width()-4, this->height()-4); diff --git a/src-qt5/core/lumina-desktop/i18n/lumina-desktop_et.ts b/src-qt5/core/lumina-desktop/i18n/lumina-desktop_et.ts index ef19e5a0..456d5aff 100644 --- a/src-qt5/core/lumina-desktop/i18n/lumina-desktop_et.ts +++ b/src-qt5/core/lumina-desktop/i18n/lumina-desktop_et.ts @@ -40,47 +40,47 @@ <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="73"/> <source>Launch %1</source> - <translation type="unfinished">Käivita %1</translation> + <translation>Käivita %1</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="134"/> <source>Open</source> - <translation type="unfinished">Ava</translation> + <translation>Ava</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="136"/> <source>Open With</source> - <translation type="unfinished"></translation> + <translation>Ava Kasutades</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="139"/> <source>View Properties</source> - <translation type="unfinished"></translation> + <translation>Vaata Omadusi</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="141"/> <source>File Operations</source> - <translation type="unfinished"></translation> + <translation>Failioperatsioonid</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="143"/> <source>Rename</source> - <translation type="unfinished"></translation> + <translation>Nimeta Ümber</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="146"/> <source>Copy</source> - <translation type="unfinished">Kopeeri</translation> + <translation>Kopeeri</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="149"/> <source>Cut</source> - <translation type="unfinished">Lõika</translation> + <translation>Lõika</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="151"/> <source>Delete</source> - <translation type="unfinished">Kustuta</translation> + <translation>Kustuta</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="213"/> @@ -95,7 +95,7 @@ <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="299"/> <source>New Filename</source> - <translation type="unfinished"></translation> + <translation>Uus Failinimi</translation> </message> </context> <context> @@ -103,12 +103,12 @@ <message> <location filename="../AppMenu.cpp" line="48"/> <source>Desktop</source> - <translation type="unfinished">Töölaud</translation> + <translation>Töölaud</translation> </message> <message> <location filename="../AppMenu.cpp" line="85"/> <source>Manage Applications</source> - <translation type="unfinished"></translation> + <translation>Halda Rakendusi</translation> </message> <message> <location filename="../AppMenu.cpp" line="90"/> @@ -196,47 +196,47 @@ <message> <location filename="../BootSplash.ui" line="94"/> <source>Starting the Lumina Desktop...</source> - <translation type="unfinished"></translation> + <translation>Lumina Töölaua käivitumine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="17"/> <source>Version %1</source> - <translation type="unfinished"></translation> + <translation>Versioon %1</translation> </message> <message> <location filename="../BootSplash.cpp" line="41"/> <source>This desktop is powered by coffee, coffee, and more coffee.</source> - <translation type="unfinished"></translation> + <translation>Töölaua valmimist on toetanud kohvi, kohvi ja veel rohkem kohvi.</translation> </message> <message> <location filename="../BootSplash.cpp" line="43"/> <source>Keep up with desktop news!</source> - <translation type="unfinished"></translation> + <translation>Pea silm peal töölaua uudistel!</translation> </message> <message> <location filename="../BootSplash.cpp" line="45"/> <source>There is a full handbook of information about the desktop available online.</source> - <translation type="unfinished"></translation> + <translation>Võrgus on Töölaua kohta olemas täiemahuline käsiraamat (ingl.k)</translation> </message> <message> <location filename="../BootSplash.cpp" line="47"/> <source>Want to change the interface? Everything is customizable in the desktop configuration!</source> - <translation type="unfinished"></translation> + <translation>Soovid muuta kasutajaliidest? Kõik töölaua konfiguratsioonis on muudetav!</translation> </message> <message> <location filename="../BootSplash.cpp" line="49"/> <source>Lumina can easily reproduce the interface from most other desktop environments.</source> - <translation type="unfinished"></translation> + <translation>Lumina võimaldab kergesti taasluua kasutajaliideseid enamikest muudest töölauakeskkondadest</translation> </message> <message> <location filename="../BootSplash.cpp" line="51"/> <source>This desktop is generously sponsored by iXsystems</source> - <translation type="unfinished"></translation> + <translation>Selle töölaua valmimist on heldelt toetanud iXsystems</translation> </message> <message> <location filename="../BootSplash.cpp" line="53"/> <source>I have never been hurt by what I have not said</source> - <translation type="unfinished"></translation> + <translation>Mulle ei ole kunagi haiget teenud ütlemata jäänud asjad</translation> </message> <message> <location filename="../BootSplash.cpp" line="55"/> @@ -246,22 +246,22 @@ <message> <location filename="../BootSplash.cpp" line="57"/> <source>Everything has its beauty but not everyone sees it.</source> - <translation type="unfinished"></translation> + <translation>Kõigel on oma ilu kuid mitte kõik ei oska seda näha</translation> </message> <message> <location filename="../BootSplash.cpp" line="59"/> <source>Before God we are all equally wise - and equally foolish.</source> - <translation type="unfinished"></translation> + <translation>Jumala ees oleme kõik võrdselt targad - ja võrdselt lollid.</translation> </message> <message> <location filename="../BootSplash.cpp" line="61"/> <source>We cannot do everything at once, but we can do something at once.</source> - <translation type="unfinished"></translation> + <translation>Me ei saa teha kõike ühekorraga, kuid me saame teha midagi kohe.</translation> </message> <message> <location filename="../BootSplash.cpp" line="63"/> <source>One with the law is a majority.</source> - <translation type="unfinished"></translation> + <translation type="unfinished></translation> </message> <message> <location filename="../BootSplash.cpp" line="65"/> @@ -271,217 +271,218 @@ <message> <location filename="../BootSplash.cpp" line="67"/> <source>You can't know too much, but you can say too much.</source> - <translation type="unfinished"></translation> + <translation>Sa ei saa kunagi teada liiga palju, kuid saad öelda.</translation> </message> <message> <location filename="../BootSplash.cpp" line="69"/> <source>Duty is not collective; it is personal.</source> - <translation type="unfinished"></translation> + <translation>Kohusetunne ei ole kollektiivne, see on isiklik</translation> </message> <message> <location filename="../BootSplash.cpp" line="71"/> <source>Any society that would give up a little liberty to gain a little security will deserve neither and lose both.</source> - <translation type="unfinished"></translation> + <translation>Ühiskond, mis annab ära veidikene vabadust et lisada veidikene turvalisust, ei vääri kumbagi ning kaotab mõlemad.</translation> </message> <message> <location filename="../BootSplash.cpp" line="73"/> <source>Never trust a computer you can’t throw out a window.</source> - <translation type="unfinished"></translation> + <translation>Ära kunagi usalda kompuutrit, mida ei ole võimalik aknast välja visata.</translation> </message> <message> <location filename="../BootSplash.cpp" line="75"/> <source>Study the past if you would define the future.</source> - <translation type="unfinished"></translation> + <translation>Tuleviku ennustamiseks õpi minevikku.</translation> </message> <message> <location filename="../BootSplash.cpp" line="77"/> <source>The way to get started is to quit talking and begin doing.</source> - <translation type="unfinished"></translation> + <translation>Meetod alustamiseks: lõpeta seletamine ja hakka tegema.</translation> </message> <message> <location filename="../BootSplash.cpp" line="79"/> <source>Ask and it will be given to you; search, and you will find; knock and the door will be opened for you.</source> - <translation type="unfinished"></translation> + <translation>Küsi, ja sulle antakse; Otsi, ning sa leiad; Koputa, ning uks avatakse sulle.</translation> </message> <message> <location filename="../BootSplash.cpp" line="81"/> <source>Start where you are. Use what you have. Do what you can.</source> - <translation type="unfinished"></translation> + <translation>Alusta, sealt kus sa oled. Kasuta, mis sul on. Tee, mis saad.</translation> </message> <message> <location filename="../BootSplash.cpp" line="83"/> <source>A person who never made a mistake never tried anything new.</source> - <translation type="unfinished"></translation> + <translation>Inimene, kes kunagi pole eksinud, ei ole kunagi proovinud teha midagi uut.</translation> </message> <message> <location filename="../BootSplash.cpp" line="85"/> <source>It does not matter how slowly you go as long as you do not stop.</source> - <translation type="unfinished"></translation> + <translation>Pole oluline kui aeglaselt sa kulged, kuni sa ei peatu.</translation> </message> <message> <location filename="../BootSplash.cpp" line="87"/> <source>Do what you can, where you are, with what you have.</source> - <translation type="unfinished"></translation> + <translation>Tee mis saad, kus parajasti oled, mis käepärast on.</translation> </message> <message> <location filename="../BootSplash.cpp" line="89"/> <source>Remember no one can make you feel inferior without your consent.</source> - <translation type="unfinished"></translation> + <translation>Pea meeles et mitte keegi ei saa sind panna tundma alaväärtuslikuna ilma su enda nõusolekuta</translation> </message> <message> <location filename="../BootSplash.cpp" line="91"/> <source>It’s not the years in your life that count. It’s the life in your years.</source> - <translation type="unfinished"></translation> + <translation>Olulised pole elatud aastad. Oluline on elada igas aastas.</translation> </message> <message> <location filename="../BootSplash.cpp" line="93"/> <source>Either write something worth reading or do something worth writing.</source> - <translation type="unfinished"></translation> + <translation>Kirjuta midagi väärt lugemist või tee midagi väärt kirjutamist.</translation> </message> <message> <location filename="../BootSplash.cpp" line="95"/> <source>The only way to do great work is to love what you do.</source> - <translation type="unfinished"></translation> + <translation>Ainus valem heaks tööks on armastada seda.</translation> </message> <message> <location filename="../BootSplash.cpp" line="97"/> <source>Political correctness is tyranny with manners.</source> - <translation type="unfinished"></translation> + <translation>Poliitkorrektsus on kommetega türannia.</translation> </message> <message> <location filename="../BootSplash.cpp" line="99"/> <source>Only two things are infinite, the universe and human stupidity, and I'm not sure about the former.</source> - <translation type="unfinished"></translation> + <translation>Ainult kaks asja on lõputud. Universum ja inimese lollus. Ma ei ole kusjuures esimeses kindel.</translation> </message> + <message> <location filename="../BootSplash.cpp" line="101"/> <source>I find that the harder I work, the more luck I seem to have.</source> - <translation type="unfinished"></translation> + <translation>Olen avastanud et mida rohkem ma tööd raban, seda rohkem õnne näib mul olevat.</translation> </message> <message> <location filename="../BootSplash.cpp" line="103"/> <source>Do, or do not. There is no 'try'.</source> - <translation type="unfinished"></translation> + <translation>Tee, või ära tee. Lihtsalt proovimine ei ole variant.</translation> </message> <message> <location filename="../BootSplash.cpp" line="105"/> <source>A mathematician is a device for turning coffee into theorems.</source> - <translation type="unfinished"></translation> + <translation>Matemaatik on seade, mis muudab kohvi teoreemideks.</translation> </message> <message> <location filename="../BootSplash.cpp" line="107"/> <source>Good people do not need laws to tell them to act responsibly, while bad people will find a way around the laws.</source> - <translation type="unfinished"></translation> + <translation>Head inimesed ei vaja seadusi käitumaks vastutustundlikult, sellal kui halvad inimesed leiavad tee seadustest möödahiilimiseks.</translation> </message> <message> <location filename="../BootSplash.cpp" line="109"/> <source>Black holes are where God divided by zero.</source> - <translation type="unfinished"></translation> + <translation>Mustad augud Universumis on kohad, kus Jumal jagas nulliga.</translation> </message> <message> <location filename="../BootSplash.cpp" line="111"/> <source>It's kind of fun to do the impossible.</source> - <translation type="unfinished"></translation> + <translation>On omamoodi lõbus saata korda võimatut.</translation> </message> <message> <location filename="../BootSplash.cpp" line="113"/> <source>Knowledge speaks, but wisdom listens.</source> - <translation type="unfinished"></translation> + <translation>Teadmised räägivad, tarkus kuulab.</translation> </message> <message> <location filename="../BootSplash.cpp" line="115"/> <source>A witty saying proves nothing.</source> - <translation type="unfinished"></translation> + <translation>Kaval ütlus ei tõesta midagi.</translation> </message> <message> <location filename="../BootSplash.cpp" line="117"/> <source>Success usually comes to those who are too busy to be looking for it.</source> - <translation type="unfinished"></translation> + <translation>Edu tuleb tavaliselt nende juurde, kel on liiga kiire, selleks et seda otsida.</translation> </message> <message> <location filename="../BootSplash.cpp" line="119"/> <source>Well-timed silence hath more eloquence than speech.</source> - <translation type="unfinished"></translation> + <translation>Hästiajastatud vaikus on väljendusrikkam kui kõne</translation> </message> <message> <location filename="../BootSplash.cpp" line="121"/> <source>I have never let my schooling interfere with my education.</source> - <translation type="unfinished"></translation> + <translation>Ma ei ole kunagi lasknud koolil segada enda harimist.</translation> </message> <message> <location filename="../BootSplash.cpp" line="123"/> <source>The best way to predict the future is to invent it.</source> - <translation type="unfinished"></translation> + <translation>Parim meetod tuleviku ennustamiseks on see leiutada</translation> </message> <message> <location filename="../BootSplash.cpp" line="125"/> <source>Well done is better than well said.</source> - <translation type="unfinished"></translation> + <translation>Hästitehtu on parem kui hästiöeldu.</translation> </message> <message> <location filename="../BootSplash.cpp" line="127"/> <source>Sometimes it is not enough that we do our best; we must do what is required.</source> - <translation type="unfinished"></translation> + <translation>Vahel ei piisa meie parimast; Peame tegema seda, mis on vaja.</translation> </message> <message> <location filename="../BootSplash.cpp" line="129"/> <source>The truth is more important than the facts.</source> - <translation type="unfinished"></translation> + <translation>Tõde on olulisem kui faktid.</translation> </message> <message> <location filename="../BootSplash.cpp" line="131"/> <source>Better to remain silent and be thought a fool than to speak out and remove all doubt.</source> - <translation type="unfinished"></translation> + <translation>Parem olla vait ja lasta endast mõelda kui lollist kui teha suu lahti ja eemaldada kõik kahtlused.</translation> </message> <message> <location filename="../BootSplash.cpp" line="142"/> <source>Initializing Session …</source> - <translation type="unfinished"></translation> + <translation>Seansi käivitumine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="145"/> <source>Loading System Settings …</source> - <translation type="unfinished"></translation> + <translation>Süsteemi Seadete laadimine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="148"/> <source>Loading User Preferences …</source> - <translation type="unfinished"></translation> + <translation>Kasutajaeelistuste laadimine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="151"/> <source>Preparing System Tray …</source> - <translation type="unfinished"></translation> + <translation>Süsteemi tööriba ettevalimistamine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="154"/> <source>Starting Window Manager …</source> - <translation type="unfinished"></translation> + <translation>Aknahalduri käivitumine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="157"/> <source>Detecting Applications …</source> - <translation type="unfinished"></translation> + <translation>Olemasolevate programmide tuvastamine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="160"/> <source>Preparing Menus …</source> - <translation type="unfinished"></translation> + <translation>Kasutajamenüüde ettevalmistamine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="163"/> <source>Preparing Workspace …</source> - <translation type="unfinished"></translation> + <translation>Töölaua ettevalmistamine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="166"/> <source>Finalizing …</source> - <translation type="unfinished"></translation> + <translation>Viimased liigutused...</translation> </message> <message> <location filename="../BootSplash.cpp" line="169"/> <source>Starting App: %1</source> - <translation type="unfinished"></translation> + <translation>Käivitan rakenduse: %1</translation> </message> </context> <context> @@ -527,7 +528,7 @@ <message> <location filename="../panel-plugins/systemstart/ItemWidget.cpp" line="44"/> <source>Go Back</source> - <translation type="unfinished">Mine tagasi</translation> + <translation>Mine tagasi</translation> </message> <message> <location filename="../panel-plugins/systemstart/ItemWidget.cpp" line="190"/> @@ -547,12 +548,12 @@ <message> <location filename="../panel-plugins/systemstart/ItemWidget.cpp" line="204"/> <source>Remove from Quicklaunch</source> - <translation type="unfinished"></translation> + <translation>Eemalda Kiirkäivitusest</translation> </message> <message> <location filename="../panel-plugins/systemstart/ItemWidget.cpp" line="208"/> <source>Add to Quicklaunch</source> - <translation type="unfinished"></translation> + <translation>Lisa Kiirkäivitusse</translation> </message> </context> <context> @@ -560,7 +561,7 @@ <message> <location filename="../JsonMenu.h" line="60"/> <source>Error parsing script output: %1</source> - <translation type="unfinished"></translation> + <translation>Viga skripti väljundi töötlemisel: %1</translation> </message> </context> <context> @@ -573,92 +574,92 @@ <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="38"/> <source>Applications</source> - <translation type="unfinished">Rakendused</translation> + <translation>Rakendused</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="68"/> <source>Browse Files</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="73"/> <source>Install Applications</source> - <translation type="unfinished">Paigalda rakendusi</translation> + <translation>Paigalda rakendusi</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="79"/> <source>Control Panel</source> - <translation type="unfinished">Juhtpaneel</translation> + <translation>Juhtpaneel</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="90"/> <source>Multimedia</source> - <translation type="unfinished">Multimeedia</translation> + <translation>Multimeedia</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="91"/> <source>Development</source> - <translation type="unfinished">Arendus</translation> + <translation>Arendustarkvara</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="92"/> <source>Education</source> - <translation type="unfinished">Haridus</translation> + <translation>Haridus</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="93"/> <source>Games</source> - <translation type="unfinished">Mängud</translation> + <translation>Mängud</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="94"/> <source>Graphics</source> - <translation type="unfinished">Graafika</translation> + <translation>Graafika</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="95"/> <source>Network</source> - <translation type="unfinished">Võrk</translation> + <translation>Võrk</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="96"/> <source>Office</source> - <translation type="unfinished">Kontor</translation> + <translation>Kontor</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="97"/> <source>Science</source> - <translation type="unfinished">Teadus</translation> + <translation>Teadus</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="98"/> <source>Settings</source> - <translation type="unfinished">Sätted</translation> + <translation>Sätted</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="99"/> <source>System</source> - <translation type="unfinished">Süsteem</translation> + <translation>Süsteem</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="100"/> <source>Utility</source> - <translation type="unfinished">Tööriistad</translation> + <translation>Tööriistad</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="101"/> <source>Wine</source> - <translation type="unfinished">Wine</translation> + <translation>Wine</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="102"/> <source>Unsorted</source> - <translation type="unfinished">Sortimata</translation> + <translation>Sortimata</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="139"/> <source>Leave</source> - <translation type="unfinished"></translation> + <translation>Lahku</translation> </message> </context> <context> @@ -679,12 +680,12 @@ <message> <location filename="../panel-plugins/clock/LClock.cpp" line="139"/> <source>Time Zone (%1)</source> - <translation type="unfinished"></translation> + <translation>Ajavöönd (%1)</translation> </message> <message> <location filename="../panel-plugins/clock/LClock.cpp" line="161"/> <source>Use System Time</source> - <translation type="unfinished"></translation> + <translation>Kasuta süsteemiaega</translation> </message> </context> <context> @@ -692,32 +693,32 @@ <message> <location filename="../desktop-plugins/LDPlugin.cpp" line="37"/> <source>Modify Item</source> - <translation type="unfinished"></translation> + <translation>Muuda</translation> </message> <message> <location filename="../desktop-plugins/LDPlugin.cpp" line="45"/> <source>Start Moving Item</source> - <translation type="unfinished"></translation> + <translation>Alusta liigutamist</translation> </message> <message> <location filename="../desktop-plugins/LDPlugin.cpp" line="46"/> <source>Start Resizing Item</source> - <translation type="unfinished"></translation> + <translation>Alusta suuruse muutmist</translation> </message> <message> <location filename="../desktop-plugins/LDPlugin.cpp" line="48"/> <source>Increase Item Sizes</source> - <translation type="unfinished"></translation> + <translation>Suurenda mõõte</translation> </message> <message> <location filename="../desktop-plugins/LDPlugin.cpp" line="49"/> <source>Decrease Item Sizes</source> - <translation type="unfinished"></translation> + <translation>Vähenda mõõte</translation> </message> <message> <location filename="../desktop-plugins/LDPlugin.cpp" line="51"/> <source>Remove Item</source> - <translation type="unfinished"></translation> + <translation>Eemalda</translation> </message> </context> <context> @@ -773,24 +774,24 @@ <message> <location filename="../LDesktop.cpp" line="255"/> <source>Desktop Actions</source> - <translation type="unfinished"></translation> + <translation>Töölauategevused</translation> </message> <message> <location filename="../LDesktop.cpp" line="257"/> <location filename="../LDesktop.cpp" line="608"/> <source>New Folder</source> - <translation type="unfinished"></translation> + <translation>Uus Kaust</translation> </message> <message> <location filename="../LDesktop.cpp" line="258"/> <location filename="../LDesktop.cpp" line="628"/> <source>New File</source> - <translation type="unfinished"></translation> + <translation>Uus Fail</translation> </message> <message> <location filename="../LDesktop.cpp" line="259"/> <source>Paste</source> - <translation type="unfinished"></translation> + <translation>Aseta</translation> </message> <message> <location filename="../LDesktop.cpp" line="291"/> @@ -810,24 +811,24 @@ <message> <location filename="../LDesktop.cpp" line="303"/> <source>Lock Session</source> - <translation type="unfinished"></translation> + <translation>Lukusta sessioon</translation> </message> <message> <location filename="../LDesktop.cpp" line="304"/> <source>Browse Files</source> - <translation type="unfinished"></translation> + <translation>Sirvi Faile</translation> </message> <message> <location filename="../LDesktop.cpp" line="338"/> <source>Leave</source> - <translation type="unfinished"></translation> + <translation>Lahku</translation> </message> <message> <location filename="../LDesktop.cpp" line="614"/> <location filename="../LDesktop.cpp" line="634"/> <location filename="../LDesktop.cpp" line="655"/> <source>Desktop</source> - <translation type="unfinished">Töölaud</translation> + <translation>Töölaud</translation> </message> </context> <context> @@ -835,7 +836,7 @@ <message> <location filename="../panel-plugins/desktopswitcher/LDesktopSwitcher.cpp" line="19"/> <source>Workspace 1</source> - <translation type="unfinished"></translation> + <translation>Tööruum 1</translation> </message> <message> <location filename="../panel-plugins/desktopswitcher/LDesktopSwitcher.cpp" line="135"/> @@ -848,8 +849,8 @@ <name>LQuickLaunchButton</name> <message> <location filename="../panel-plugins/systemstart/LStartButton.h" line="52"/> - <source>Remove from Quicklaunch</source> - <translation type="unfinished"></translation> + <source>Remove from QuickLaunch</source> + <translation>Eemalda Kiirkäivitusest</translation> </message> </context> <context> @@ -858,7 +859,7 @@ <location filename="../LSession.cpp" line="164"/> <location filename="../LSession.cpp" line="347"/> <source>Desktop</source> - <translation type="unfinished">Töölaud</translation> + <translation>Töölaud</translation> </message> </context> <context> @@ -879,7 +880,7 @@ <message> <location filename="../panel-plugins/systemdashboard/SysMenuQuick.ui" line="50"/> <source>Volume</source> - <translation type="unfinished"></translation> + <translation>Helitugevus</translation> </message> <message> <location filename="../panel-plugins/systemdashboard/SysMenuQuick.ui" line="111"/> @@ -954,17 +955,17 @@ <message> <location filename="../panel-plugins/taskmanager/LTaskButton.cpp" line="160"/> <source>Show All Windows</source> - <translation type="unfinished"></translation> + <translation>Näita kõiki aknaid</translation> </message> <message> <location filename="../panel-plugins/taskmanager/LTaskButton.cpp" line="161"/> <source>Minimize All Windows</source> - <translation type="unfinished"></translation> + <translation>Minimeeri kõik aknad</translation> </message> <message> <location filename="../panel-plugins/taskmanager/LTaskButton.cpp" line="162"/> <source>Close All Windows</source> - <translation type="unfinished"></translation> + <translation>Sulge kõik aknad</translation> </message> </context> <context> @@ -1005,7 +1006,7 @@ <message> <location filename="../desktop-plugins/systemmonitor/MonitorWidget.ui" line="85"/> <source>Disk I/O</source> - <translation type="unfinished"></translation> + <translation>Ketta I/O</translation> </message> </context> <context> @@ -1028,37 +1029,37 @@ <message> <location filename="../desktop-plugins/notepad/NotepadPlugin.cpp" line="138"/> <source>Name:</source> - <translation type="unfinished">Nimi:</translation> + <translation>Nimi:</translation> </message> <message> <location filename="../desktop-plugins/notepad/NotepadPlugin.cpp" line="140"/> <source>Invalid Note Name: Try Again</source> - <translation type="unfinished"></translation> + <translation>Vigane märkmenimi: Proovi uuesti</translation> </message> <message> <location filename="../desktop-plugins/notepad/NotepadPlugin.cpp" line="141"/> <source>Select a Note Name</source> - <translation type="unfinished"></translation> + <translation>Vali märkmenimi</translation> </message> <message> <location filename="../desktop-plugins/notepad/NotepadPlugin.cpp" line="168"/> <source>Open Text File</source> - <translation type="unfinished"></translation> + <translation>Ava tekstifail</translation> </message> <message> <location filename="../desktop-plugins/notepad/NotepadPlugin.cpp" line="169"/> <source>Create a Note</source> - <translation type="unfinished"></translation> + <translation>Loo märge</translation> </message> <message> <location filename="../desktop-plugins/notepad/NotepadPlugin.cpp" line="172"/> <source>Rename Note</source> - <translation type="unfinished"></translation> + <translation>Nimeta märge ümber</translation> </message> <message> <location filename="../desktop-plugins/notepad/NotepadPlugin.cpp" line="173"/> <source>Delete Note</source> - <translation type="unfinished"></translation> + <translation>Kustuta märge</translation> </message> </context> <context> @@ -1066,57 +1067,57 @@ <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.ui" line="14"/> <source>Form</source> - <translation type="unfinished">Vorm</translation> + <translation>Vorm</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="69"/> <source>Clear Playlist</source> - <translation type="unfinished">Tühjenda esitusloend</translation> + <translation>Tühjenda esitusloend</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="70"/> <source>Shuffle Playlist</source> - <translation type="unfinished">Sega loendi järjekord</translation> + <translation>Sega loendi järjekord</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="72"/> <source>Add Files</source> - <translation type="unfinished">Lisa faile</translation> + <translation>Lisa faile</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="73"/> <source>Add Directory</source> - <translation type="unfinished">Lisa kaust</translation> + <translation>Lisa kaust</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="74"/> <source>Add URL</source> - <translation type="unfinished">Lisa URL</translation> + <translation>Lisa URL</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="102"/> <source>Multimedia Files</source> - <translation type="unfinished">Multimeediafailid</translation> + <translation>Multimeediafailid</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="103"/> <source>Select Multimedia Files</source> - <translation type="unfinished">Vali multimeediafailid</translation> + <translation>Vali multimeediafailid</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="130"/> <source>Select Multimedia Directory</source> - <translation type="unfinished">Vali multimeedia kaust</translation> + <translation>Vali multimeedia kaust</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="159"/> <source>Enter a valid URL for a multimedia file or stream:</source> - <translation type="unfinished">Sisesta multimeediafaili või -voo URL</translation> + <translation>Sisesta multimeediafaili või -voo URL</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="161"/> <source>Multimedia URL</source> - <translation type="unfinished">Multimeedia URL</translation> + <translation>Multimeedia URL</translation> </message> </context> <context> @@ -1182,155 +1183,155 @@ <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="14"/> <source>Form</source> - <translation type="unfinished">Vorm</translation> + <translation>Vorm</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="62"/> <source>View Options</source> - <translation type="unfinished"></translation> + <translation>Vaata valikuid</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="89"/> <source>Open Website</source> - <translation type="unfinished"></translation> + <translation>Ava veebileht</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="92"/> <source>More</source> - <translation type="unfinished"></translation> + <translation>Rohkem</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="154"/> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="245"/> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="391"/> <source>Back to Feeds</source> - <translation type="unfinished"></translation> + <translation>Tagasi voo juurde</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="172"/> <source>Feed Information</source> - <translation type="unfinished"></translation> + <translation>Voo informatsioon</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="212"/> <source>Remove Feed</source> - <translation type="unfinished"></translation> + <translation>Eemalda voog</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="263"/> <source>New Feed Subscription</source> - <translation type="unfinished"></translation> + <translation>Uuele voole registreerumine</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="287"/> <source>RSS URL</source> - <translation type="unfinished"></translation> + <translation>RSS URL aadress</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="302"/> <source>Load a preset RSS Feed</source> - <translation type="unfinished"></translation> + <translation>Lae eelseadistatud RSS voog</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="332"/> <source>Add to Feeds</source> - <translation type="unfinished"></translation> + <translation>Lisa voogudele</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="409"/> <source>Feed Reader Settings</source> - <translation type="unfinished"></translation> + <translation>Uudisvoogude lugeja seaded</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="430"/> <source>Manual Sync Only</source> - <translation type="unfinished"></translation> + <translation>Ainult käsitsi sünkroniseerimine</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="437"/> <source>Some RSS feeds may request custom update intervals instead of using this setting</source> - <translation type="unfinished"></translation> + <translation>Mõned uudisvood võivad nõuda erinevaid uuendusintervalle, selle seade kasutamise asemel.</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="440"/> <source>Default Sync Interval</source> - <translation type="unfinished"></translation> + <translation>Vaikimisi sünkroniseerimise intervall</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="471"/> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="483"/> <source>Hour(s)</source> - <translation type="unfinished"></translation> + <translation>Tundides</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="478"/> <source>Minutes</source> - <translation type="unfinished"></translation> + <translation>Minutites</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="522"/> <source>Save Settings</source> - <translation type="unfinished"></translation> + <translation>Salvesta seaded</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="70"/> <source>Add RSS Feed</source> - <translation type="unfinished"></translation> + <translation>Lisa uudisvoog</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="71"/> <source>View Feed Details</source> - <translation type="unfinished"></translation> + <translation>Vaata uudisvoo detaile</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="72"/> <source>Settings</source> - <translation type="unfinished">Sätted</translation> + <translation>Sätted</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="74"/> <source>Update Feeds Now</source> - <translation type="unfinished"></translation> + <translation>Uuenda uudisvooge</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="78"/> <source>Lumina Desktop RSS</source> - <translation type="unfinished"></translation> + <translation>Lumina Töölaua RSS</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="143"/> <source>Feed URL: %1</source> - <translation type="unfinished"></translation> + <translation>Uudisvoo URL: %1</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="144"/> <source>Title: %1</source> - <translation type="unfinished"></translation> + <translation>Pealkiri: %1</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="145"/> <source>Description: %1</source> - <translation type="unfinished"></translation> + <translation>Kirjeldus: %1</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="146"/> <source>Website: %1</source> - <translation type="unfinished"></translation> + <translation>Veebileht: %1</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="147"/> <source>Last Build Date: %1</source> - <translation type="unfinished"></translation> + <translation>Viimane koostamise aeg: %1</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="148"/> <source>Last Sync: %1</source> - <translation type="unfinished"></translation> + <translation>Viimane sünkr.: %1</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="149"/> <source>Next Sync: %1</source> - <translation type="unfinished"></translation> + <translation>Järgmine sünkr.: %1</translation> </message> </context> <context> @@ -1343,22 +1344,22 @@ <message> <location filename="../SettingsMenu.cpp" line="26"/> <source>Preferences</source> - <translation type="unfinished"></translation> + <translation>Eelistus</translation> </message> <message> <location filename="../SettingsMenu.cpp" line="33"/> <source>Wallpaper</source> - <translation type="unfinished"></translation> + <translation>Taustapilt</translation> </message> <message> <location filename="../SettingsMenu.cpp" line="36"/> <source>Display</source> - <translation type="unfinished"></translation> + <translation>Ekraan</translation> </message> <message> <location filename="../SettingsMenu.cpp" line="39"/> <source>All Desktop Settings</source> - <translation type="unfinished"></translation> + <translation>Kõik ekraaniseaded</translation> </message> <message> <location filename="../SettingsMenu.cpp" line="54"/> @@ -1376,42 +1377,42 @@ <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="14"/> <source>Form</source> - <translation type="unfinished">Vorm</translation> + <translation>Vorm</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="38"/> <source>Type to search</source> - <translation type="unfinished"></translation> + <translation>Trüki millegi otsimiseks</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="171"/> <source>Browse Files</source> - <translation type="unfinished"></translation> + <translation>Sirvi faile</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="199"/> <source>Browse Applications</source> - <translation type="unfinished"></translation> + <translation>Sirvi programme</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="234"/> <source>Control Panel</source> - <translation type="unfinished">Juhtpaneel</translation> + <translation>Juhtpaneel</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="305"/> <source>Leave</source> - <translation type="unfinished"></translation> + <translation>Lahku</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="379"/> <source>Manage Applications</source> - <translation type="unfinished"></translation> + <translation>Halda programme</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="408"/> <source>Show Categories</source> - <translation type="unfinished"></translation> + <translation>Näita kategooriaid</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="488"/> @@ -1421,32 +1422,32 @@ <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="924"/> <source>Suspend</source> - <translation type="unfinished">Arvuti peatamine</translation> + <translation>Arvuti unerežiim</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="989"/> <source>Restart</source> - <translation type="unfinished">Taaskäivita</translation> + <translation>Taaskäivita</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="1017"/> <source>Power Off</source> - <translation type="unfinished"></translation> + <translation>Lülita välja</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="1065"/> <source>Log Out</source> - <translation type="unfinished">Logi välja</translation> + <translation>Logi välja</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="262"/> <source>Preferences</source> - <translation type="unfinished"></translation> + <translation>Eelistused</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="1036"/> <source>(System Performing Updates)</source> - <translation type="unfinished"></translation> + <translation>(Süsteem paigaldab uuendusi)</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="1125"/> @@ -1456,49 +1457,49 @@ <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="290"/> <source>Apply Updates?</source> - <translation type="unfinished"></translation> + <translation>Alusta uuenduste paigaldamist?</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="290"/> <source>You have system updates waiting to be applied! Do you wish to install them now?</source> - <translation type="unfinished"></translation> + <translation>Sul on ootel süsteemiuuendused. Kas soovid neid nüüd paigaldada?</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="291"/> <source>Yes</source> - <translation type="unfinished"></translation> + <translation>Jah</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="292"/> <source>No</source> - <translation type="unfinished"></translation> + <translation>Ei</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="293"/> <source>Cancel</source> - <translation type="unfinished">Loobu</translation> + <translation>Loobu</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="475"/> <source>%1% (Plugged In)</source> - <translation type="unfinished"></translation> + <translation>%1% (ühendatud)</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="479"/> <source>%1% (%2 Estimated)</source> - <translation type="unfinished"></translation> + <translation>%1% (%2 hinnanguliselt)</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="480"/> <source>%1% Remaining</source> - <translation type="unfinished"></translation> + <translation>%1% jäänud</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="496"/> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="655"/> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="666"/> <source>Workspace %1/%2</source> - <translation type="unfinished">Tööruum %1/%2</translation> + <translation>Tööruum %1/%2</translation> </message> </context> <context> @@ -1521,7 +1522,7 @@ <message> <location filename="../SystemWindow.ui" line="87"/> <source>Power Off</source> - <translation type="unfinished"></translation> + <translation>Lülita välja</translation> </message> <message> <location filename="../SystemWindow.ui" line="127"/> @@ -1542,22 +1543,22 @@ <message> <location filename="../SystemWindow.cpp" line="57"/> <source>Apply Updates?</source> - <translation type="unfinished"></translation> + <translation>Paigalda uuendused?</translation> </message> <message> <location filename="../SystemWindow.cpp" line="57"/> <source>You have system updates waiting to be applied! Do you wish to install them now?</source> - <translation type="unfinished"></translation> + <translation>Sul on ootel süsteemiuuendused! Kas soovid neid kohe lasta paigaldada?</translation> </message> <message> <location filename="../SystemWindow.cpp" line="58"/> <source>Yes</source> - <translation type="unfinished"></translation> + <translation>Jah</translation> </message> <message> <location filename="../SystemWindow.cpp" line="59"/> <source>No</source> - <translation type="unfinished"></translation> + <translation>Ei</translation> </message> </context> <context> @@ -1588,7 +1589,7 @@ <message> <location filename="../panel-plugins/userbutton/UserWidget.ui" line="14"/> <source>UserWidget</source> - <translation>UserWidget</translation> + <translation>Kasutajavidin</translation> </message> <message> <location filename="../panel-plugins/userbutton/UserWidget.ui" line="24"/> @@ -1769,67 +1770,67 @@ <message> <location filename="../../libLumina/LuminaXDG.cpp" line="603"/> <source>Multimedia</source> - <translation type="unfinished">Multimeedia</translation> + <translation>Multimeedia</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="604"/> <source>Development</source> - <translation type="unfinished">Arendus</translation> + <translation>Arendus</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="605"/> <source>Education</source> - <translation type="unfinished">Haridus</translation> + <translation>Haridus</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="606"/> <source>Games</source> - <translation type="unfinished">Mängud</translation> + <translation>Mängud</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="607"/> <source>Graphics</source> - <translation type="unfinished">Graafika</translation> + <translation>Graafika</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="608"/> <source>Network</source> - <translation type="unfinished">Võrk</translation> + <translation>Võrk</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="609"/> <source>Office</source> - <translation type="unfinished">Kontor</translation> + <translation>Kontor</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="610"/> <source>Science</source> - <translation type="unfinished">Teadus</translation> + <translation>Teadus</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="611"/> <source>Settings</source> - <translation type="unfinished">Sätted</translation> + <translation>Sätted</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="612"/> <source>System</source> - <translation type="unfinished">Süsteem</translation> + <translation>Süsteem</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="613"/> <source>Utility</source> - <translation type="unfinished">Tööriistad</translation> + <translation>Tööriistad</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="614"/> <source>Wine</source> - <translation type="unfinished">Wine</translation> + <translation>Wine</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="615"/> <source>Unsorted</source> - <translation type="unfinished">Sortimata</translation> + <translation>Sortimata</translation> </message> </context> </TS> diff --git a/src-qt5/core/lumina-desktop/lumina-desktop.pro b/src-qt5/core/lumina-desktop/lumina-desktop.pro index d4e57c5c..2c944a11 100644 --- a/src-qt5/core/lumina-desktop/lumina-desktop.pro +++ b/src-qt5/core/lumina-desktop/lumina-desktop.pro @@ -77,17 +77,6 @@ fluxconf.files = fluxboxconf/fluxbox-init-rc \ fluxboxconf/fluxbox-keys fluxconf.path = $${L_SHAREDIR}/lumina-desktop/ -wallpapers.files = wallpapers/Lumina_Wispy_gold.jpg \ - wallpapers/Lumina_Wispy_green.jpg \ - wallpapers/Lumina_Wispy_purple.jpg \ - wallpapers/Lumina_Wispy_red.jpg \ - wallpapers/Lumina_Wispy_blue-grey.jpg \ - wallpapers/Lumina_Wispy_blue-grey-zoom.jpg \ - wallpapers/Lumina_Wispy_grey-blue.jpg \ - wallpapers/Lumina_Wispy_grey-blue-zoom.jpg -wallpapers.path = $${L_SHAREDIR}/wallpapers/Lumina-DE - - defaults.files = defaults/luminaDesktop.conf \ defaults/compton.conf \ audiofiles/Logout.ogg \ diff --git a/src-qt5/core/lumina-desktop/main.cpp b/src-qt5/core/lumina-desktop/main.cpp index b2bfa9be..826d697c 100644 --- a/src-qt5/core/lumina-desktop/main.cpp +++ b/src-qt5/core/lumina-desktop/main.cpp @@ -78,33 +78,19 @@ int main(int argc, char ** argv) //Startup the session LSession a(argc, argv); if(!a.isPrimaryProcess()){ return 0; } + //Ensure that the user's config files exist + /*if( LSession::checkUserFiles() ){ //make sure to create any config files before creating the QApplication + qDebug() << "User files changed - restarting the desktop session"; + return 787; //return special restart code + }*/ //Setup the log file - /* logfile.setFileName( QString(getenv("XDG_CONFIG_HOME"))+"/lumina-desktop/logs/runtime.log" ); - qDebug() << "Lumina Log File:" << logfile.fileName(); - if(QFile::exists(logfile.fileName()+".old")){ QFile::remove(logfile.fileName()+".old"); } - if(logfile.exists()){ QFile::rename(logfile.fileName(), logfile.fileName()+".old"); } - //Make sure the parent directory exists - if(!QFile::exists(QDir::homePath()+"/.lumina/logs")){ - QDir dir; - dir.mkpath(QDir::homePath()+"/.lumina/logs"); - } - logfile.open(QIODevice::WriteOnly | QIODevice::Append);*/ QTime *timer=0; if(DEBUG){ timer = new QTime(); timer->start(); } - //Setup Log File - //qInstallMessageHandler(MessageOutput); - //if(DEBUG){ qDebug() << "Theme Init:" << timer->elapsed(); } - //LuminaThemeEngine theme(&a); - //QObject::connect(&theme, SIGNAL(updateIcons()), &a, SLOT(reloadIconTheme()) ); - //if(DEBUG){ qDebug() << "Load Locale:" << timer->elapsed(); } - //LUtils::LoadTranslation(&a, "lumina-desktop"); if(DEBUG){ qDebug() << "Session Setup:" << timer->elapsed(); } a.setupSession(); - //theme.refresh(); if(DEBUG){ qDebug() << "Exec Time:" << timer->elapsed(); delete timer;} int retCode = a.exec(); //qDebug() << "Stopping the window manager"; qDebug() << "Finished Closing Down Lumina"; - //logfile.close(); return retCode; } diff --git a/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.cpp b/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.cpp index cae73d13..7a6b0e7c 100644 --- a/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.cpp +++ b/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.cpp @@ -20,6 +20,7 @@ LBattery::LBattery(QWidget *parent, QString id, bool horizontal) : LPPlugin(pare connect(timer,SIGNAL(timeout()), this, SLOT(updateBattery()) ); timer->start(); QTimer::singleShot(0,this,SLOT(OrientationChange()) ); //update the sizing/icon + sessionsettings = new QSettings("lumina-desktop", "sessionsettings"); } LBattery::~LBattery(){ @@ -78,7 +79,8 @@ void LBattery::updateBattery(bool force){ } if(icon<iconOld && icon==0){ //Play some audio warning chime when - QString sfile = LSession::handle()->sessionSettings()->value("audiofiles/batterylow", LOS::LuminaShare()+"low-battery.ogg").toString(); + bool playaudio = sessionsettings->value("PlayBatteryLowAudio",true).toBool(); + if( playaudio ){ QString sfile = LSession::handle()->sessionSettings()->value("audiofiles/batterylow", LOS::LuminaShare()+"low-battery.ogg").toString(); LSession::handle()->playAudioFile(sfile); } @@ -95,6 +97,7 @@ void LBattery::updateBattery(bool force){ else{ tt = QString( tr("%1 % (%2 Remaining)") ).arg(QString::number(charge), getRemainingTime() ); } label->setToolTip(tt); } +} QString LBattery::getRemainingTime(){ int secs = LOS::batterySecondsLeft(); diff --git a/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.h b/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.h index d14cfc53..3c23be1c 100644 --- a/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.h +++ b/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.h @@ -30,6 +30,7 @@ private: QTimer *timer; QLabel *label; int iconOld; + QSettings *sessionsettings; private slots: void updateBattery(bool force = false); diff --git a/src-qt5/core/lumina-desktop/panel-plugins/systemstart/LStartButton.cpp b/src-qt5/core/lumina-desktop/panel-plugins/systemstart/LStartButton.cpp index f44add77..30e82c47 100644 --- a/src-qt5/core/lumina-desktop/panel-plugins/systemstart/LStartButton.cpp +++ b/src-qt5/core/lumina-desktop/panel-plugins/systemstart/LStartButton.cpp @@ -26,9 +26,10 @@ LStartButtonPlugin::LStartButtonPlugin(QWidget *parent, QString id, bool horizon connect(startmenu, SIGNAL(CloseMenu()), this, SLOT(closeMenu()) ); connect(startmenu, SIGNAL(UpdateQuickLaunch(QStringList)), this, SLOT(updateQuickLaunch(QStringList))); menu->setContents(startmenu); - QSize saved = LSession::handle()->DesktopPluginSettings()->value("panelPlugs/"+this->type()+"/MenuSize", QSize(0,0)).toSize(); + QRect screenSize = QApplication::desktop()->availableGeometry(this); + QSize saved = LSession::handle()->DesktopPluginSettings()->value("panelPlugs/"+this->type()+"/MenuSize", QSize(screenSize.width() * 0.2, screenSize.height())).toSize(); if(!saved.isNull()){ startmenu->setFixedSize(saved); } //re-load the previously saved value - + button->setMenu(menu); connect(menu, SIGNAL(aboutToHide()), this, SLOT(updateButtonVisuals()) ); QTimer::singleShot(0,this, SLOT(OrientationChange())); //Update icons/sizes diff --git a/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.cpp b/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.cpp index e8df8390..c99e2b4b 100644 --- a/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.cpp +++ b/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.cpp @@ -138,7 +138,7 @@ void StartMenu::UpdateMenu(bool forceall){ } void StartMenu::ReLoadQuickLaunch(){ - emit UpdateQuickLaunch( LSession::handle()->sessionSettings()->value("QuicklaunchApps",QStringList()).toStringList() ); + emit UpdateQuickLaunch( LSession::handle()->sessionSettings()->value("QuicklaunchApps",QStringList()).toStringList() ); } void StartMenu::UpdateQuickLaunch(QString path, bool keep){ @@ -431,7 +431,9 @@ void StartMenu::UpdateFavs(){ tmp.sort(); //Sort alphabetically by name (dirs/files) for(int i=0; i<tmp.length(); i++){ if(type<2){ rest.removeAll(tmp[i]); } - if( !QFile::exists(tmp[i].section("::::",2,-1)) ){ continue; } //invalid favorite - skip it + if( !tmp[i].section("::::",2,-1).startsWith("/net/") ){ + if( !QFile::exists(tmp[i].section("::::",2,-1)) ){ continue; } //invalid favorite - skip it + } ItemWidget *it = 0; if( tmp[i].section("::::",2,-1).endsWith(".desktop")){ XDGDesktop item(tmp[i].section("::::",2,-1)); @@ -493,7 +495,7 @@ void StartMenu::on_stackedWidget_currentChanged(int val){ if(tot>1){ ui->frame_wkspace->setVisible(true); int cur = LSession::handle()->XCB->CurrentWorkspace(); - ui->label_wkspace->setText( QString(tr("Workspace %1/%2")).arg(QString::number(cur+1), QString::number(tot)) ); + ui->label_wkspace->setText( QString(tr("Workspace %1/%2")).arg(QString::number(cur+1), QString::number(tot)) ); }else{ ui->frame_wkspace->setVisible(false); } @@ -635,14 +637,14 @@ void StartMenu::on_tool_mute_audio_clicked(){ ui->slider_volume->setValue(0); } } - + //Screen Brightness void StartMenu::on_slider_bright_valueChanged(int val){ ui->label_bright->setText(QString::number(val)+"%"); LOS::setScreenBrightness(val); } - + //Workspace void StartMenu::on_tool_set_nextwkspace_clicked(){ int cur = LSession::handle()->XCB->CurrentWorkspace(); @@ -663,10 +665,10 @@ void StartMenu::on_tool_set_prevwkspace_clicked(){ if(cur<0){ cur = tot-1; } //back to end //qDebug() << " - New Current:" << cur; LSession::handle()->XCB->SetCurrentWorkspace(cur); - ui->label_wkspace->setText( QString(tr("Workspace %1/%2")).arg(QString::number(cur+1), QString::number(tot)) ); + ui->label_wkspace->setText( QString(tr("Workspace %1/%2")).arg(QString::number(cur+1), QString::number(tot)) ); } - + //Locale void StartMenu::on_combo_locale_currentIndexChanged(int){ //Get the currently selected Locale @@ -677,7 +679,7 @@ void StartMenu::on_combo_locale_currentIndexChanged(int){ LSession::handle()->switchLocale(locale); } - + //Search void StartMenu::on_line_search_textEdited(QString){ if(searchTimer->isActive()){ searchTimer->stop(); } diff --git a/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.h b/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.h index 8ab04d94..e2dbb273 100644 --- a/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.h +++ b/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.h @@ -34,13 +34,13 @@ private: Ui::StartMenu *ui; QStringList favs; QString CCat, CSearch, topsearch; //current category/search - QTimer *searchTimer; + QTimer *searchTimer; //Simple utility functions //void deleteChildren(QWidget *obj); //recursive function void ClearScrollArea(QScrollArea *area); void SortScrollArea(QScrollArea *area); - void do_search(QString search, bool force); + void do_search(QString search, bool force); bool promptAboutUpdates(bool &skip); diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_blue-grey-zoom.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_blue-grey-zoom.jpg Binary files differdeleted file mode 100644 index 481ca438..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_blue-grey-zoom.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_blue-grey.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_blue-grey.jpg Binary files differdeleted file mode 100644 index 9da67596..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_blue-grey.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_gold.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_gold.jpg Binary files differdeleted file mode 100644 index cba03cee..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_gold.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_green.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_green.jpg Binary files differdeleted file mode 100644 index 80b0d3e3..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_green.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_grey-blue-zoom.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_grey-blue-zoom.jpg Binary files differdeleted file mode 100644 index 4f753ed5..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_grey-blue-zoom.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_grey-blue.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_grey-blue.jpg Binary files differdeleted file mode 100644 index c214cd78..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_grey-blue.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_purple.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_purple.jpg Binary files differdeleted file mode 100644 index e4c3d7a8..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_purple.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_red.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_red.jpg Binary files differdeleted file mode 100644 index a092f636..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_red.jpg +++ /dev/null |