aboutsummaryrefslogtreecommitdiff
path: root/lumina-desktop/LSession.cpp
Commit message (Collapse)AuthorAge
...
* Very minor clean-up to avoid compiler warnings.Jesse Smith2015-05-21
| | | | | | | On a clean compile of the code I found two compiler warnings, both indicating declarations of unused variables. In both cases I think these variables were used for debugging, originally, and are no longer needed. Their declarations have been removed.
* Add a new boot splash screen to be used during the Lumina initialization ↵Ken Moore2015-05-21
| | | | phase. This is *not* a QSplashScreen, so we avoid the issues with VirtualBox/3D acceleration and it loads/updates much faster (almost no change in the startup time on my system).
* A couple adjustments to the session startup procedures:Ken Moore2015-05-14
| | | | | 1) Ensure that numlockx is actually installed before running that check/enable routine. 2) Add a 250ms delay (non-blocking) between auto-started applications. This just helps prevent overloading the system and is a bit nicer about starting a lot of processes in a short time frame.
* Integrate the new conversion from the old "startApps" file to the new XDG ↵Ken Moore2015-05-13
| | | | | | autostart spec, and disable all the usage of the "startApps" files. NOTE FOR SYSTEM ADMINS: If you have system-specific startapps files hanging around, you will need to convert them to the XDG autostart spec manually - they will NO LONGER BE USED!!!
* 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).
* Move the timer to launch the startup applications into the session itself ↵Ken Moore2015-04-28
| | | | (instead of main.cpp). This should prevent the random occasions when that timer never seems to go off.
* Update the system window a bit and how it is used in the session. Now there ↵Ken Moore2015-04-28
| | | | is only a single system window per session, and it is simply shown/hidden as necesary. This allow it to become visible *much* faster than creating the window from scratch every time.
* Setup the lumina-desktop to use the new favorites system:Ken Moore2015-04-27
| | | | | | 1) Convert any old system to the new one on login (0.8.4-devel users will need to wait until 0.8.4-release or 0.8.5-devel - the next change to the session version). 2) Update the User Buton plugin to use the new system and streamline when it actually probes the filesystem for changes (makes it even faster) 3) Update the Desktop Bar plugin to use the new system as well.
* 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.
* Merge branch 'master' of github.com:pcbsd/luminaKen Moore2015-04-24
|\
| * Re-arrange the startup procedures a bit:Ken Moore2015-04-23
| | | | | | | | | | *Run the audio/brightness setting routines *after* doing the XDG autostart stuff. This catches situations where the audio system (such as pulseaudio) is getting started by the XDG autostart routines. *Run the login chimes at the end of the startup procedures, instead of right before the autostart functionality. This ensures that the audio volume was already reset to the previous value before playing the music.
* | 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.
* Move the initial screen brightness and volume setting routines into the ↵Ken Moore2015-04-22
| | | | session initialization (out of the system dashboard plugin).
* Make sure to check the list of watched files and reset it if something was ↵Ken Moore2015-04-20
| | | | removed temporarily (to ensure that the watcher functionality does not stop working while a session is in progress).
* Add a special flag to prevent the lumina-open crash handler from starting up ↵Ken Moore2015-04-20
| | | | during the session cleanup procedures.
* Fix the session chimes (and possible stability issue) by removing the ↵Ken Moore2015-04-16
| | | | | | special audio thread and using the QMediaPlayer within the main thread (no stuttering/delays in my initial tests so far). Add a PC-BSD specific routine for setting brightness so that hardware brightness controls are attempted (through pc-sysconfig) before the software brightness is modified (using xbrightness)
* Clean up a *lot* of the general XCB warnings that sometimes occur, and also ↵Ken Moore2015-04-15
| | | | tinker with the session cleanup routine quite a bit to streamline the order in which things are closed down (particularly with system tray apps).
* Update the internal version number handling for backwards compatibility ↵Ken Moore2015-03-30
| | | | checks. This is just to future-proof the routine - now each version number piece can be anywhere from 0->999 (instead of the old limitation of 0->9).
* Add usage support for the XDG autostart specifications. This is currently on ↵Ken Moore2015-03-30
| | | | top of the older Lumina autostart specification, until I can get the writing support for the XDG spec in place as well - at which time I will convert any Lumina-spec entries to the XDG spec (for backwards compat).
* Add support for the older WM_NAME and WM_ICON_NAME standards in addition to ↵Ken Moore2015-03-15
| | | | the EWMH standards (_NET_WM_NAME, etc..)
* Ensure that on session-start the audio volume is reset back to the ↵Ken Moore2015-03-10
| | | | previously-used value before starting the login chimes.
* Make sure that Fluxbox get prompted to reload configs as well after the ↵Ken Moore2015-03-03
| | | | Lumina session detects screen modifications/changes.
* 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.
* Make sure to kill any leftover windows that did not close properly during ↵Ken Moore2015-02-18
| | | | the session cleanup, and tag version 0.8.2-Release
* Use the XCB CloseWindow routine instead of the old XLib routine during the ↵Ken Moore2015-02-17
| | | | session cleanup.
* 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).
* Add the ability to set different date/time formats on a session-wide scale, ↵Ken Moore2015-02-05
| | | | and have the clock plugin instantly update to the new format (backwards compatible with no formats set)
* Clean up how Lumina loads the startapps files. Now it will combine any files ↵Ken Moore2015-01-28
| | | | that are found, allowing for system-wide defaults in addition to user-set defaults.NOTE: all the system files are named "luminaStartapps" whereas the file in the user's config is "~/.lumina/startapps"
* read /etc/luminaStartapps aswellChristopher Roy Bratusek2015-01-28
|
* Add knowledge of the lumina-info utility to the Lumina desktop (userbutton, ↵Ken Moore2015-01-28
| | | | | | config menu). Also make sure that there is a *.desktop shortcut for the application (and update the pkg-plist) Also allow for "-<something>" to be put in the version number without messing up the version checking routine, and tag the current version on the master branch as 0.8.2-devel (once the stable/official release is branched, the "-devel" tag will get either dropped or changed to "-release" in that branch, with the master branch moving on to the next <version>-devel)
* 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.
* Clean up a couple other session options:Ken Moore2015-01-21
| | | | | | 1) Fix the "Open Home Dir" option in the application menu. 2) Have the logout window open on the current screen (instead of always the left screen) 3) Hide the logout window when starting the logout procedure.
* Clean up the active window detection/usage for the task manager.Ken Moore2015-01-19
|
* Turn off some of the debugging for the lumina-desktop session in preparation ↵Ken Moore2015-01-05
| | | | for releasing 0.8.0
* Put another couple quick fixes in:Ken Moore2015-01-05
| | | | | 1) Do not adjust the width of new windows (even if they go off the right side of the screen, they still have some part of them on the main screen) 2) Add better crash handling to lumina-open (put the standard error text or standard output text of the application in the "details" for the message box).
* Clean up the Panel/Taskmanager XCB usage quite a bit. Now the panel is ↵Ken Moore2015-01-05
| | | | "seen" by fluxbox when a window is maximized, and the task manager works with the highly asynchronous XCB events.
* Quick checkpoint of additional XCB improvements/fixes. Still having an issue ↵Ken Moore2015-01-05
| | | | with fluxbox maximizing windows underneath panels at the moment.
* 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
* Clean up how translations are loaded for all the Lumina utilities, and also ↵Ken Moore2014-12-30
| | | | apply the relative path fixes to all LSingleApplication's forwarded inputs.
* 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).
* Tag Lumina version 0.7.2:Ken Moore2014-11-19
| | | | | | | | | | | | | | | | | Changes: Streamlined startup process and utilities Enable login/logout chimes New Desktop Plugins: - Note Pad: Take text notes on your desktop - Desktop View: Auto-generate icons for everything in the ~/Desktop folder New Utility: - lumina-search: Quickly search for applications/files/directories New Color Schemes: - Lumina-[Green, Gold, Purple, Red, Glass] now available out of box (default: Glass) New Backend system for registering default applications: - Uses mime-types instead of extensions now - All lumina utilities have been updated to work with the new system - WARNING: Previously registered defaults might not be transfered to the new system, so you may need to reset your default web browser/email client through lumina-config.
* 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 randomization to the wallpaper image that is used on first start of a ↵Ken Moore2014-10-21
| | | | desktop.
* Adjust how the backend for the system tray works:Ken Moore2014-10-17
| | | | | | | 1) Now the Lumina session registeres the system-wide tray, and just keeps track of the windows that should be visible (preventing any loss of service or apps starting up before the tray is registered). 2) The system tray plugin is now just a "visual tray" for embedding the applications in the panel. The Session only allows a single visual tray to be registered at a time, but sends out signals whenever there is an opening for a visual tray (allowing near-instant transfer of tray applications from one visual tray to another). Also fix a quick bug in lumina-config where the save button was getting activated simply by changing the appearance/plugins tab in the panel configuration (without actually changing anything).
* Fix a couple other bugs in the Lumina startup routine. Looks like the ↵Ken Moore2014-10-15
| | | | effects of a bad conflict merge...
* Make sure to "fully" disable the Phonon usage in LSession: It appears some ↵Ken Moore2014-10-15
| | | | commit re-enabled it.
* 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 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.
bgstack15