aboutsummaryrefslogtreecommitdiff
path: root/lumina-desktop/LDesktop.cpp
Commit message (Collapse)AuthorAge
* Oops, make sure that applauncher/desktop icon check is run before deleting ↵Ken Moore2015-08-20
| | | | the desktop file (just in case the user simply unchecked the icon generation option).
* Add an additional option to desktop plugins where additional cleanup ↵Ken Moore2015-08-20
| | | | routines may be added (only used for some applaunchers right now). This now makes a desktop icon which was explicitly closed/removed by the user also delete the file from the desktop folder (instead of having that plugin get re-created at a later time)
* Oops, fix a typo in the LDesktop conversion to XCBKen Moore2015-07-31
|
* Move all the X11 usage in LDesktop.cpp to XCBKen Moore2015-07-31
|
* Fix up the issues with some apps which re-configure the Xsession/screens to ↵Ken Moore2015-07-30
| | | | match their own internal specifications. On single-screen setups it works fine now, but on multi-screen setups the app does not seem to return the xsettings back to their original specs properly (Tested with OpenArena and MegaMario). This may result in the screen being "flipped" or placed on different monitors after closing the app.
* Add some work that make the Lumina desktop/panels appear in the proper ↵Ken Moore2015-07-28
| | | | locations when XINERAMA is used for combining monitors. However, the interface is still completely unresponsive because the Qt backend is completely screwed up by Xinerama (returns 0's for everything related to screens, geometries, etc, preventing menus from opening up even when manually started). This might be something where we just have to say that Xinerama is not supported for Lumina (at least until lumina-wm get finished up).
* Make sure that all the interface elements in lumina-desktop actively re-load ↵Ken Moore2015-07-22
| | | | their text/icons when the system locale is changed.
* Commit some quick fixes:Ken Moore2015-07-17
| | | | | | 1) Switch some X11->XCB functions around (SetAsDesktop(), SetDisableWMActions()). 2) Fix up some QtQuick plugin detection routines (now it will properly see the user's quickplugins if any). 3) Connect the status change signal/slots for QtQuick plugins to try and detect script failures and remove the script (still not working reliably).
* Final cleanup of debugging messages and temporary changes prior to release. ↵Ken Moore2015-07-10
| | | | | | | Aslo update the default key bindings a bit: 1) Add a shortcut to lock the screen (Pause key) 2) Adjust the tiling shortcuts to Alt+[left/right] instead of Ctrl-[left/right]. The Ctrl shortcuts were already in use by Fluxbox.
* Ok, NOW the desktop plugins layout methodology is consistent/reliable. Had ↵Ken Moore2015-07-10
| | | | to implement my own tiling algorithm for initial plugin placements (and adjust a lot of the plugins to have better auto-set default sizes depending on font settings)
* Finish cleaning up the arrangement/placement of desktop plugins with the new ↵Ken Moore2015-07-09
| | | | system. Also add a default size for the calendar plugin.
* Remove the old "forcing" of a panel with particular settings on the ↵Ken Moore2015-07-09
| | | | default/first screen. This is no longer used/needed because of the luminaDesktop.conf settings file.
* Fix up the clipping/sizing issues with the applauncher desktop icons.Ken Moore2015-07-08
|
* Update how the desktop icons (applaunchers or desktopview) are ↵Ken Moore2015-07-08
| | | | created/arranged initially. Now the desktopview should be oriented the proper way, and the applauncher icons should be the proper size (although they are still not being placed in non-overlapping locations yet).
* Clean up the desktop plugin/container interactions quite a bit to ensure ↵Ken Moore2015-06-20
| | | | consistency and proper size calculations (especially for new plugins).
* Disable some debugging and fix up the context menu on the applauncher plugins.Ken Moore2015-06-14
|
* Re-work quite a bit of the background procedures for desktop plugins and ↵Ken Moore2015-06-14
| | | | | | | | | | | watchers: 1) Move the ~/Desktop directory watcher into the Session (no extra overhead, already have a watcher there), and have te session send out signals when the contents of the ~/Desktop dir change. 2) Setup the plugins that poll the desktop to use the new session implementation (reducing overhead overall) 3) Add the ability to use files/dirs in the "applauncher" plugin as well (not exposed to user yet) 4) Add a new desktop flag for auto-creating applauncher plugins for any files/dirs on the desktop (not added to lumina-config yet) 5) Get rid of all the config files for the desktop plugins and merge them all together into a single conf file that the session maintains the pointer to (so plugins can grab that pointer as necessary) 6) Make sure that desktop plugins go through a special [read/save]Setting() functions in the plugin implementation itself so that they don't accidentally trample other plugin settings (keeps it restricted to the particular group for that plugin)
* Finish up the desktop re-scaling routines for ensure the same interface if ↵Ken Moore2015-06-05
| | | | you switch out monitors/systems with a different resolution. Also add a quick check to ensure that we don't create duplicate desktops in the same location on the X screen.
* Fix the random issue with desktop crashes when removing a desktop plugin ↵Ken Moore2015-05-23
| | | | (only able to reproduce on a 11.x VM).
* Add the ability to set solid-color backgrounds within Lumina, and add this ↵Ken Moore2015-05-20
| | | | option to lumina-config.
* Fix/Fix a couple important bugs before announcing 0.8.4-release:Ken Moore2015-04-30
| | | | | | | | 1) Desktop plugins are not getting removed. - This appears to be a bug in Qt 5.4.1 from what I can tell (any window buttons in the QMdiSubWindow are non-responsive), but for the moment the user can right-click on the plugin titlebar and select "close" from the menu for the same effect. I have fixed a couple edge cases/situations where forcibly closing/removing a desktop plugin will crash the session (it behaves properly in all situations now from my testing). 2) Disable the panel location limitations in lumina-config since with the new lenght settings it is possible to place panels in any location now (such as two panels on the top - one pinned left and the other pinned right). 3) Fix up the desktop plugin area calculations so they properly handle panels in any configuration. 4) If the desktop area was re-configured, go through and adjust the location/sizing of any desktop plugins (to ensure that they are all within the available space - use the grid alignment procedure).
* Add (but disable by default) some additional debuggin information. Also turn ↵Ken Moore2015-04-25
| | | | off the debugging for the session/desktop/panel classes by default.
* Add the ability for panels to now occupy a percentage of the screen side, ↵Ken Moore2015-04-25
| | | | with an additional setting to either center the panel on the edge or pin it to one of the corners.
* Oops, accidentally committed a change to the desktop init process (reverted ↵Ken Moore2015-04-24
| | | | becuase it slows down the DE init significantly).
* Before activating the panel on mouse-over, save the ID of the currently ↵Ken Moore2015-04-24
| | | | active window and then re-activate that other window when the mouse leaves the panel.
* Update a bunch of icons in the desktop session, and also add a few abilities ↵Ken Moore2015-03-12
| | | | | | | | | to the desktopview plugin: 1) Multi-item selection 2) cut/copy files to clipboard 3) delete files 4) increase/decrease icon sizes
* Add lumina-xconfig shortcuts into the desktop interface (userbutton, ↵Ken Moore2015-02-25
| | | | | | | settings menu). Clean up/add some desktop/panel "prepareToClose()" routines, and have them run when appropriate. Also add these close routines to the general session cleanup. Add support for a new "--noclean" CLI flag when starting LuminaDE. This flag will tell the session not to close system tray utilities and other applications on session close.
* Clean up how the lumina-desktop closes down:Ken Moore2015-02-17
| | | | Now it is run through a "CleanSession" function beforehand to try and safely close down any applications/trays. Als reduce the number of filesystem watchers: only have one in the session itself, which sends out a signal when the desktop settings config file changes (instead of a watcher in every desktop class).
* Remove some temporary debugging statements.Ken Moore2015-02-17
|
* Fix some panel interactions.Ken Moore2015-02-17
| | | | | 1) Found/fixed a bug with a panel mis-reporting which number it was. 2) Clean up the panel interface management in lumina-config.
* Quick fix for the desktop plugins system: too many different lock flags ↵Ken Moore2015-01-21
| | | | causing random issues. Cut it down to 2 boolians only now, and the desktop responds correctly/reliably again.
* Add a completely new background method for a distributor to set per-system ↵Ken Moore2015-01-21
| | | | defaults for the Lumina desktop. Also fix a bug this exposed in how the Lumina panel removes plugins.
* Oops, missed resetting one of the lock flags in the desktop.Ken Moore2015-01-19
|
* Fix a lockfile violation in the desktop plugin removal process. Now there is ↵Ken Moore2015-01-19
| | | | no chance of it crashing when plugins are removed.
* Fix a bug with removing desktop plugins.Ken Moore2015-01-15
|
* Large update of XLib -> XCB usageKen Moore2015-01-01
| | | | | 1) Add ability for task manager to minimize/maximize window from details menu 2) Add quick check/movement of new windows to make sure they are not underneath any panels
* Commit a checkpoint on the conversion of Lumina to Qt5.Ken Moore2014-12-18
| | | | It is functional at the moment, but still has a few rough edges with regards to the X11 background interface (due to the move from XLib to XCB in Qt5). This reulst in some of the window manager interactions not behaving properly (such as sticky status on panels).
* Clean up the lumina-desktop usage of the new way defaults are registered ↵Ken Moore2014-11-18
| | | | (for menu plugins in particular)
* Add a new utility: lumina-searchKen Moore2014-11-05
| | | | | This utility provides quick searching for applications (the default), or for searching the entire user's home directory. The file search also supports the "*" wildcard for the search terms.
* Large quality of life update to Lumina:Ken Moore2014-10-30
| | | | | | | | | 1) Fix up the applauncher desktop plugins so that the initial sizing is sane. 2) Completely remove all global static variables from the session. 3) Re-enable the login/logout chimes (works properly without static variables) 4) Streamline the desktop background rotation algorithms a bit. 5) Greatly streamline the Session start procedure (50% to 75% faster on my computer here) 6) Make sure the background wallpaper does not rotate every time the desktop settings file changes (only when the backgrounds for that desktop are changed, or the rotation timer goes off)
* Tag Lumina version 0.7.1:Ken Moore2014-10-29
| | | | This version mainly contains bugfixes and stability fixes from 0.7.0. The only new features are the "window list" menu plugin, and the option to have panels auto-hide.
* Add a new menu plugin:Ken Moore2014-10-23
| | | | The "Window List" will show a menu of all the current windows, and activate the one that the user clicks on.
* Add randomization to the wallpaper image that is used on first start of a ↵Ken Moore2014-10-21
| | | | desktop.
* Finish up the rest of the new Lumina Theme engine and the utilities for ↵Ken Moore2014-10-14
| | | | editing those themes in lumina-config. Also tag Lumina version 0.7.0 with this change.
* Large update to the Lumina project: provide full theming capabilities.Ken Moore2014-10-10
| | | | | | | | | | | | | 1) New libLumina classes: LuminaThemes.h 2) Single-line usage to add lumina theme usage to an application (already added to all the Lumina utilities) 3) Include a Lumina-default theme template, as well as a single color scheme (will add more later) 4) Will create a global Qt style for "lumina" so that this theme engine can be automatically applied to all Qt applications at a later date (want to make sure to beat this up and get it working reliably before turning it on for everything). Major Features: 1) Full Qt theme capabilities through Qt stylesheets (so they can be modified and applied on the fly). 2) Stylesheets are broken into a couple pieces: an "incomplete" stylesheet file (the theme template) with variables in place of colors, font size, and font family. A "color" file which variable->value definitions for the different colors. And a themesettings.cfg files which keeps track of the files/font settings. 3) Along with this, add the ability to specify the icon theme that is used as well, and make that automatically re-loaded as necessary. 4) Add the ability to read/set thes values in lumina-config. The lumina-config usage is still a bit rough: working on cleaning it up right now.
* Clean up the default filemanager/terminal settings. Put them in the main ↵Ken Moore2014-10-08
| | | | session file (instead of desktop settings), and also have lumina-config safe it to the lumina-open defaults file directly (in the case of the file manager).
* make file-manager user-chooseableChristopher Roy Bratusek2014-10-07
|
* Clean up the new global.h usage in all the Lumina subprojects.Ken Moore2014-10-06
| | | | | | | | | | 1) Move the global.h file usage into libLumina exclusively 2) Define a new "LuminaOS::LuminaShare()" function for retrieving the install directory for Lumina (based on the PREFIX/global.h) 3) Change all the other lumina sub directories/projects to use the new LuminaShare() function when necessary. 4) This also fixes up the loading of translations in many of the subprojects (found a bug in the path used in a number of them). Reason: Previous implementation *only* worked if you built lumina from the base directory, causing problems with rebuilding individual pieces of Lumina. This also cleans up the general lumina projects as they only need the LuminaOS class loaded instead of knowing about this other possible OS implementation.
* add global.h containing PREFIX and make use of it in all sub-modules,Christopher Roy Bratusek2014-10-05
| | | | | add PREFIX and LIBPREFIX to the qmake .pro files (allows to change prefix and libdir using <qmake PREFIX=/usr LIBDIR=/usr/lib/x86_64-linux-gnu/> or whatever) update debian packaging scripts accordingly
* Applied Debian patch to enable building on 32-bit Linux machines. ProjectJesse Smith2014-09-22
| | | | | | | (.pro) files now support 32-bit and 64-bit Linux builds. Should also build using Clang as well as GCC on Linux. Fixed compiler warning in LDesktop.cpp which might see wrong loop counter used under older compiler.
bgstack15