Cinnamon Changelog

What's new in Cinnamon 3.8.3

May 21, 2018
  • Use default icon names in Online Accounts (GOA) (#7559)
  • fix symbolic icons and delete obsolete (#7566)Cinnamon theme: window-list progress improvements (#7562)
  • Settings: Fix launching mintsources/mintdrivers/lightdm-settings
  • cs_startup.py: Always have delay widgets, but hide/show them depending on if there's a delay or not.
  • extension: Fix inability to force xlet installs (#7571)

New in Cinnamon 3.6.6 (Nov 28, 2017)

  • Sound settings: Assign the selected device to the profile selector.

New in Cinnamon 3.6.5 (Nov 21, 2017)

  • cs_sound.py: Replace tab with space.
  • calendar applet: Fix formatting.

New in Cinnamon 3.4.6 (Aug 12, 2017)

  • Remove strict dependency on libcjs-dbg

New in Cinnamon 3.4.4 (Jul 7, 2017)

  • classicSwitcher.js: Fix hidpi issues.
  • KeybindingWidgets.py: fix parsing of accelerators that are shifted but not alpha numeric characters.
  • xlet-settings.py: Don't crash when an invalid xlet id is provided.
  • window-list applet: fix argument warning
  • add issue template
  • ui/settings: Handle undefined old settings values
  • hotCorner.js: Fix hover delay callback.

New in Cinnamon 3.4.1 (May 24, 2017)

  • Remove usage of GTK_POLICY_EXTERNAL
  • checkBox.js: remove extra unused argument which was causing a warning with new cjs/mozjs
  • st-bin.c: Fix y_fill setter (it was setting x_fill to the value of the existing y_fill, before it is set in the same call).
  • menu applet: fix keyboard navigation of recent context menu. Fix closing of same menu when switching to another category. Also fix closing when opening another recent's context menu.
  • menu applet: notify when a recent file is activated that can't be accessed.
  • menu applet: make missing file notification transient.
  • menu applet (vector box): partially revert c0d37dd79d68c97 - there is flickering as events go from a button to the vector box and back. Remove the idle callback, and directly react to the enter even once more. To compensate, increase our maybeUpdateVectorBox delay timeout, which more or less fixes the original problem the above commit was attempting to fix.
  • menu applet: _select_category - only call displayButtons if the category has really changed.
  • menu applet: fix keyboard navigation when a second recent context menu is toggled open.
  • Sound settings: Fix device icons
  • xlet-settings.py: ignore files and directories in the config directory that aren't created by our settings api as well as instances that no longer exist
  • ExtensionCore.py: Don't scrub the config directory on load. This is no longer necessary since xlet settings now ignores anything that isn't an active instance, and some applets need a place to store extra files so they get cleaned up on uninstall.
  • cs_panel.py: Fix crash when there are no panels
  • sound-applet: remove extraneous arguments on add_actor calls
  • radioButton.js: remove extra argument to add_actor.
  • window-list-applet: fix undefined reference warning
  • [cinnamon-json-makepot] Added support to extract "title" and "units" keys on list elements
  • debian/control: use correct runtime dependency on caribou introspection only.
  • User applet: Remove ability to switch to guest with LightDM
  • runDialog.js: Fix undefined variable warning (#6539)
  • Reorganize the default applets in the panel
  • User applet: Remove trailing spaces
  • Applets: Make TextIconApplet smarter and adapt to vertical panels.
  • menu applet: use _select_category to select recents and places, so we can cache the current selection more accurately and prevent needless calls to _displayButtons.
  • window list: add missing dependency to settings (#6551)

New in Cinnamon 3.4.0 (May 4, 2017)

  • Fix gnome terminal losing desktop file association during cinnamon restart
  • cinnamon-json-makepot: Added support to scan for JS files inside sub-dirs.
  • Start systray applet first
  • Use generic marshaller
  • Fix file permissions
  • Pull functions out of loops in _refreshPlaces, _refreshApps...
  • Move uri assignment in _refreshRecent's while loop into new...
  • Use let instead of var in new handler functions
  • panel: rework allocation logic to avoid looping in edit mode this was causing the context menu animation to fail to complete causing the user not to be able to exit edit mode
  • theme-node: Fix leak on stylesheet change. From upstream https://github.com/GNOME/gnome-shell/commit/72bfa9125945919e9d69505d3e739480855f331e
  • cinnamon_dbus_acquire_name: don't leak the result from upstream https://github.com/GNOME/gnome-shell/commit/3f0fbae7e213b2fbe7267b9d25ac7fcfaa8afcff
  • cinnamon_dbus_acquire_name: Don't leak error from upstream https://github.com/GNOME/gnome-shell/commit/7f1a258ff9fc768a7fc13e5c37e1fd6d7ab5c33b
  • keyboard: destroy the key's boxpointer from upstream https://github.com/GNOME/gnome-shell/commit/9d933356e171a1dc49b61b5864826531c0f24d97
  • Fix hotcorner hover delay timeout removal This fixes a "Invalid or null source id used when attempting to run Mainloop.source_remove()" when leaving a hotcorner. The timeout is already destroyed by returning false in the callback, but we still knew about the timeout id and tried to remove the non-existing timeout.
  • st-box-layout: Don't report a paint volume when we have no allocation from upstream https://github.com/GNOME/gnome-shell/commit/aa6f352cb06d3ae8940af323f048c8c7886fa0cd
  • window-tracker: fix memory leak from upstream https://github.com/GNOME/gnome-shell/commit/ac22172a6ec37a158ca4cecf8c18f8fb29c1aa97
  • tooltips.js: Remove leftover logging.
  • Add cinnamon-stap-monitor utility.
  • panel.js: Couple fixes to previous commit. Let the panel sections cover the entire panel in edit mode. Clean up _allocate a bit - since we always have the center zone occupied (artificially or naturally,) we don't ever need to handle cases where it isn't.
  • panel.js: Fix dnd pseudo-class style application for vertical panels.
  • panel: Allow right and left panel zones to naturally fill space. Fix vertical allocate calculations in st-box-layout (align_end was only working for horizontal box layouts).
  • panel.js: Cleanup actor and style class names, simplify some code that no longer needs to differentiate between vertical and horizontal panels.
  • cs_screensaver.py: Expose setting for floating widgets.
  • panel.js: restore 'important' style flag, accidentally removed from panel zones.
  • expoThumbnail.js: Don't reposition thumbnails on position-changed.
  • cs_screensaver.py: Use a stack to switch between default screensaver and plugin previews.
  • panel.js: Restore some allocation code mistakenly removed in a previous commit. This restores the behavior of allowing left/right panels to occupy more than half the panel if the center zone is empty.
  • [Sound applet] Fix a segmentation This fixes a segmentation fault that happened when menu animations were disabled. Fixes #5977
  • cinnamon-desktop-editor: use the default icon when file is nonexistent
  • st-theme-node.c: rename a confusing variable At the moment we have an outer loop on i, and then a separately declared internal loop on i This changes the name of the variable in the internal loop to avoid confusion
  • st-theme-node: Improve error reporting from upstream https://github.com/GNOME/gnome-shell/commit/1d235395765226a981fd31f16adae505ad8642de#diff-ea7efd941b083a785ba5e4b928a26d59
  • St: support css margin property From upstream https://github.com/GNOME/gnome-shell/commit/2935fd4ffe9176d28f68192bb34bdba1a0e57a2b and https://github.com/GNOME/gnome-shell/commit/216e996f6680a3ffb797caafe1ed29990360c8f1
  • Fix cursor black background when taking screenshot
  • JS API misc/util.js: Add spawnCommandLineAsync
  • recent-applet: Fix wrong menu placement
  • Cinnamon Tutorial: Add instructions for xlet l10n
  • User applet: Remove inaccurate comment - This is not actually the shutdown applet by Shelly
  • windowManager: Move handling of workspace switch effects to one place
  • window-list: Don't lose our focus style class when opening the context menu
  • Settings widgets range: Add an optional argument to show the current value of on the scale widget. This was originally the way it worked in the xlet settings, but with the rework, that functionality wasn't reimplemented. This rendered the settings of several applets less usefull. This pull request reimplements the functionality for applets and also makes it available for cinnamon settings as well.
  • Show desktop applet: fix preview being stuck by keyboard-triggered menu open
  • settings.js: Rebuild the settings file if it becomes corrupted. If the settings have already been loaded, we use the latest version we have, otherwise we restore from defaults.
  • vertical-panels: Make proper calculations for panel intellihide
  • Keyboard applet: always show something in panel edit mode
  • Power applet: always show something in panel edit mode
  • JS API util.js: Add doNotReap parameter to trySpawn ct. itzexor
  • util.js: add documentation for spawn_async
  • added support to manage the systemd services available on the system
  • cs_startup.py: Add a "Run now" button for when a row is selected.
  • Make sure applets that don't support vertical panels don't get droped on a vertical panel. This was happening with at least some applets, causing them to 'disappear', and could only be recovered by removing them from applet settings and readding them again.
  • cinnamon-settings: Fix some sliders being drawn backwards
  • settings.js: Handle corrupt settings the right way. Fixes several issues with the previous implementation.
  • xlet settings: add list widget
  • [Xlet settings] Fix reference to new option added to wrong element
  • Settings: Add support for lightdm-settings
  • [xlets-about-dialog] show timestamp if exists else show version & show "more info" button
  • spawn_async: clean up the callbacks after we're done
  • looking-glass: use bracket notation for property accessors when inspecting
  • Environment: don't fail in toString()
  • looking-glass: set null results' value to "[null]"
  • Fix panel timeout spinbuttons jumping around Fixes #6374
  • Add Manjaro Support in System Info #6387
  • systray: add css class to permit theming
  • st-theme.c: rename confusing variable Compiler is complaining about shadow variables because the same variable names are defined in a function and in an if statement in the function
  • systray-applet: don't crash in on_applet_removed_from_panel
  • st-theme-node: remove a double declaration that gives a compiler warning
  • cinnamon-app-system: rename a doubly declared variable causing a compiler warning
  • st-background-effect: avoid a couple of ISO C90 compiler warnings
  • Start inode/directory app instead unregistered x-scheme-handler/file in case of unmounted bookmarks
  • st-entry: change variable type to avoid compiler warning
  • Add a chooser for "inode/directory" to be able to choose the default file manager
  • st-polygon: avoid a couple of ISO C90 compiler warnings
  • remove ENABLE_EXPERIMENTAL_API defines
  • xlet-settings: add missing string for l10n
  • st-box-layout: remove unused variable
  • panel.js: refactor Panel._showPanel and Panel._hidePanel
  • panel.js: don't clip the panel box shadow when showing after hide
  • cs_accessibility: Restore previous theme when disabling High Contrast
  • remove panelMenu.js, which is unused but for 2 applets. There are a bunch of applets that import it but don't use it, all of which can be fixed now.
  • hotcorners: remove the icon option
  • cinnamon-looking-glass.py: handle numpad enter in entry
  • Remove aclocal as autoreconf runs it
  • Fix for non translated applet names on Remove context menu items.
  • [Xlets] Expose config deletion request to xlet
  • Revert "Fix panel timeout spinbuttons jumping around"
  • [cs_panel.py] Remove unused methods
  • [cs_panel.py] Better fix for jumping spinbuttons This fixes it, avoiding excessive disk writing
  • st-texture-cache: use convenience function to free linked list
  • modalDialog: avoid a js warning
  • utils: add check-js, to scan for runtime-breaking javascript syntax errors.
  • Adjustments after enabling margin for st
  • st-box-layout: change variable type to avoid compiler warning
  • st-drawing-area: redefine a variable to avoid a compiler warning
  • st-private: change variable types to match and so avoid compiler warnings
  • st-button: avoid redundant redeclaration compiler warnings
  • st-label: avoid redundant redeclaration compiler warnings
  • st-theme-node: avoid compiler warnings about redundant redeclarations
  • st-widget: avoid redundant duplicate declarations giving compiler warnings
  • st_theme: add missing enums and default case avoids compiler warnings done upstream
  • cs_user.py: Save appropriately sized .face for cinnamon-screensaver
  • cs_mouse: Add new settings to control acceleration/sensitivity
  • power-applet: Add support for warning and error style classes
  • cs_panel.py: rework individual panel page to simplify code, fix some bugy behavior, and improve readability
  • st-widget: use g_clear_pointer https://github.com/GNOME/gnome-shell/commit/4d1358b7ed483b3822ab889e4851cca2c3fa8841#diff-9ad11fdf581414b0f2501e50921d1052
  • Update keybindings.js
  • Adapt Cinnamon to multi-process CSD
  • messageTray: Show critical notifications in fullscreen
  • panel.js: fix missing variable declaration
  • cs_panel.py: replace panel widgets with backended ones. This will hopefully ensure that the widgets are consistent with the rest of Cinnamon in terms of behavior and appearance, as well as easier to maintain.
  • panel.js: improve code uniformity in show/hide functions
  • panel.js: cleanup _processPanelAutoHide usage
  • panel.js: move clipping code into new _setClipRegion helper
  • panel.js: keep track of panelPosition and monitor changes
  • panel.js: refactor _moveResizePanel
  • St: support margin: corrections to PR 6271
  • st-scroll-bar: add default to case statement to avoid compiler warning done using g_return_val_if_reached as upstream
  • st-scroll-view: add missing enums and default case statements avoids compiler warnings missing enums are placed in the same places as upstream
  • layout.js: don't include clipped off areas in input region
  • st-theme-node: add defaults to case statements to avoid compiler warnings also treat an iso C warning by moving a variable declaration
  • README file to reStructuredText file
  • st-widget: add missing enums to avoid compiler warnings
  • cinnamon-window-tracker: add default to case statement to avoid compiler warnings and a couple of other very minor changes, again to avoid compiler warnings
  • St: Margin: remove margin:auto from menu applet and default theme This avoids warning messages as margin:auto is not supported And it also means third party theme developers will not copy non-functional CSS The warning messages for the programmatic insertion of margin:auto in the menu applet were particularly cryptic
  • st: Fix a couple icon/text-shadow bugs
  • cinnamon-json-makepot: Fix for undefined global name.
  • Update cs_power.py
  • Use St.Icon instead of fetching icons from St.TextureCache.
  • all: adapt to changes for new cjs (gjs 1.48/mozjs38)
  • panel.js warning fix
  • lookingGlass.js: fix warning
  • sound-applet: fix warning
  • osdWindow: Fix the level bar display
  • Remove memory info stuff from looking glass, cinnamon-global.
  • control: adjust version reqs for libcjs
  • all: Some additional warning fixes due to gjs 1.48.0->1.48.2 changes.
  • panel-launchers: Fix the panel launcher animation
  • melange: don't freeze on quit with custom log watchers
  • desklet.js: Ignore an extra argument to setContent()
  • js/ui/tooltip.js: Check if this.mousePosition is defined
  • Move this.mousePosition initial assignment to TooltipBase
  • Supress CJS mozjs38 warnings in applet, dbusMenu, indicator...
  • Correct indentation
  • reformatting and fix css (#6510)
  • cinnamon-util: sort out various compiler warnings (#6506)
  • cinnamon-perf-log: treat a couple of compiler warnings (#6503)
  • cinnamon-tray-manager: remove an ISO C compiler warning (#6505)
  • cinnamon-recorder: remove some compiler warnings (#6504)
  • cinnamon-doc-system: remove a couple of compiler warnings (#6502)
  • cinnamon-app-system: treat various compiler warnings (#6501)
  • cinnamon-app: avoid default case and integer/unsigned compiler warnings (#6498)
  • st-theme-node-drawing: add default cases to switch statements to avoid compiler warnings (#6495)
  • workspace-switcher: correct undefined property warning (#6497)
  • na-tray-manager: remove an ISO C compiler warning (#6508)
  • js/ui/dnd.js: Fix undefined error with mozjs38
  • ui/js/panel.js: Fix undefined this._dragShowId error with mozjs38
  • js/ui/appletManager: Fix undefined error with mozjs38
  • js/ui/extension: Fix undefined requiredArray[2] error with mozjs38
  • js/ui/appletManager: Fix invalid parameter count with mozjs38 for Gio.File.delete
  • main.js: improve logging of GLib.Errors and objects (#6486)
  • [menu-applet & panel-launchers] added new mouse cursors while dragging apps (#5859)
  • l10n: Update POT file
  • l10n: Generate additional files

New in Cinnamon 3.2.8 (Jan 8, 2017)

  • menu applet: Only construct one context menu for recent files, and re-use it.
  • cs_screensaver.py: Re-use the Gtk.Socket always - it can hold both Gtk.Plugs and normal Gtk.Widgets, just treat it like a normal bin/container. This seems to assist on ref-cleanup and child reaping when switching screensavers. (observed on Arch, reported on Arch and Fedora)
  • menu applet: Don't reconstruct recent files, just re-order, add, remove as required.
  • menu applet: Fix a couple of minor leaks (actors created but never added to a container - being GInitiallyUnowned, they never get their floating ref sunk, and so can't be unreffed. Fix a prototype mis-match, and just rename GenericButton to NoRecentDocsButton, since that's the only user of it.
  • menu applet: Some fixes for previous commits, don't be so destructive when refreshing applications.
  • Revert "cs_screensaver.py: Re-use the Gtk.Socket always - it can hold both Gtk.Plugs"
  • Fix tuples for python 3.6
  • tooltips.js: add a hide timer to check if a tooltip should hide itself, but for various reasons never got to act on a leave-event (due to vagaries in event reporting).
  • recent applet: Rework to be non-destructive when updating the recent list (this brings a lot of the recent changes to the menu applet over to this one.)
  • recents, applets: Couple warning cleanups
  • network applet: Remove a useless log warning. At some point more than a year ago we started getting these (possibly a change to network-manager), they have no value whatsoever, but fill up the log.

New in Cinnamon 3.2.7 (Dec 30, 2016)

  • cinnamon-settings: Do a better job of handling long labels
  • Update polling frequency to make the mouse tracking smoother
  • Layout: Ignore NaN numbers when updating regions

New in Cinnamon 3.2.5 (Dec 12, 2016)

  • l10n: Generate additional files

New in Cinnamon 3.2.4 (Dec 12, 2016)

  • [ Stephen Collins ]
  • Partial revert of 864f632a and handle premature signals from the file monitor gracefully
  • [ Michael Webster ]
  • cs_screensaver.py: clear preview container any time the default screensaver is selected.
  • [ JosephMcc ]
  • cinnamon-settings: Fix a couple of ugly buttons

New in Cinnamon 3.2.3 (Dec 12, 2016)

  • [ Albert Pool ]
  • Remove the 20 recent files limit
  • [ Odyseus ]
  • Default theme: Added support for applets with :checked pseudo class.
  • [ Clement Lefebvre ]
  • sound applet: Add rhythmbox to the list of known players
  • [ NikoKrause ]
  • [menu-applet] symbolic icons for contextMenu of appsButtons
  • [ JosephMcc ]
  • icons: Add an icon for the "Run with NVIDIA" option in the menu
  • [ Stephen Collins ]
  • Tutorials: Update the xlet settings tutorial and reference pages to reflect changes to the api in Cinnamon 3.2
  • [ Germán Franco ]
  • workspace-switcher: avoid fast consecutive moves
  • [ leigh123linux ]
  • Fix gi import version warning
  • Change shebang to use system python
  • [ lestcape ]
  • Do not make inecessary iteration on popupmenu close function
  • [ JosephMcc ]
  • SoundFileChooser: Fix showing incorrect names
  • SoundFileChooser: Change play icon
  • [ NikoKrause ]
  • [menu-applet] fix file-exists-query and indentation
  • [ Germán Franco ]
  • Fix typo, missing parenthesis
  • [ brownsr ]
  • remove rtl code in vertical panel will require testing by 3rd party
  • [ Michael Webster ]
  • menu applet, overrides.js: fix some loss in effectiveness of our vectorbox caused by feacb693f529bd7db2. Having these calls within a callback, even one with no delay, was enough to provide for a bit of 'fuzziness' when defining/picking against the vectorbox's triangle, and preventing accidental category selection.
  • [ Clement Lefebvre ]
  • cinnamon-launcher: Add support for mate-panel
  • cinnamon-launcher: Center fallback message dialog
  • [ leigh123linux ]
  • add depends wget
  • [ Clement Lefebvre ]
  • Calendar applet: Allow custom date formats in vertical panels
  • Calendar applet: Remove trailing spaces
  • Panel Launchers: Fix the ability to edit
  • l10n: Update POT file
  • Fallback mode: Kill the panel when restarting Cinnamon
  • [ leigh123linux ]
  • Add setting to disable automatic screen rotation on tablet's
  • add orientation lock keybinding
  • add tooltip
  • [ Darshaka Pathirana ]
  • screensaver settings: Add button with info on custom format
  • [ Michael Webster ]
  • cs_screensaver.py: A few changes to improve reliability of the screensaver plugin previews. Use Gio.Subprocess, it seems to be more reliable at cleaning up after itself. And don't re-make the GtkSocket every time - connecting to socket's plug-removed and returning True prevents the socket from auto-destructing and also improves cleanup when changing row selection.
  • [ itzexor ]
  • appletManager.js: fix max instance check when pasting applet config
  • [ Clement Lefebvre ]
  • Info settings: Rephrase tooltip
  • l10n: Update POT file
  • Window list applet: Move preferences up in the context menu
  • General settings: Rephrase automatic rotation option
  • l10n: Update POT file

New in Cinnamon 3.2.2 (Nov 23, 2016)

  • [ Clement Lefebvre ]
  • build: Make AX_ macros optional
  • [ Odyseus ]
  • [Xlet settings] Fix for icon choosers stuck dialogs
  • [cinnamon-json-makepot] Added support for "title" key
  • [ lestcape ]
  • Ensure a default icon size of 16px if the icon-size is not set in the indicator icon theme class.
  • [ Germán Franco ]
  • [workspace-switcher] Fix buttons' size Buttons didn't get proper height (or width in vertical mode) if the auto-scale font setting was not enabled.
  • [ NikoKrause ]
  • [sound-applet] removed ancient code for timeLabel
  • uniform names
  • [ Stephen Collins ]
  • Restore ability to theme the menu applet menu separately from other menus
  • [ JosephMcc ]
  • cs_effects: Disable menu animations when turning of window effects
  • [ Odyseus ]
  • [applet.js] Re added ability to display a separator on applets context menus.
  • [applet.js] Added a mechanism to highlight applets with open menus.
  • [ NikoKrause ]
  • [menu-applet] fix keynav issues with TAB and right
  • [ lestcape ]
  • Use the Gio library for establish the file permissions in replace of the spawnCommandLine usage.
  • [ itzexor ]
  • panel-launchers: close the menu before destroying when removing launcher
  • [ Odyseus ]
  • [Xlet settings] Added translation mechanism to xlets settings windows
  • [ itzexor ]
  • cs_backgrounds.py: fix thumb generation on LMDE2
  • [ NikoKrause ]
  • [sound-applet] remove show percentage label for slider option
  • [ JosephMcc ]
  • theme: Fix theming of the workspace switcher
  • [ NikoKrause ]
  • typo
  • [ Clement Lefebvre ]
  • l10n: Update POT file

New in Cinnamon 3.2.1 (Nov 9, 2016)

  • [ kloun ]
  • rm obsolute and unsupport NEWS file
  • [ Michael Webster ]
  • keyboard applet: Fix positioning of the flag render within its actor.
  • Fix some runtime warnings - in the sound applet, object construction is too soon to get the theme node, wait until 'style-changed' signal is sent by the main actor. In the menu applet, remove return values of navigateContextMenu() - there is only one user of this function, and they don't check for a value.
  • keyboard applet: Allow flag icon to properly scale its size to match the panel and preferences. Monkey patch some St.Icon methods to the EmblemedIcon class so we can use the existing applet icon sizing calculations by pretending we're just another icon hanging around, getting things done.
  • [ NikoKrause ]
  • [menu-applet] fix warnings caused by keynavigation
  • [ Clement Lefebvre ]
  • Update ./test script
  • Info settings: Add upload-system-info button
  • l10n: Update POT file
  • Info settings: Add tooltip to upload button
  • Fix typo
  • l10n: Update POT file

New in Cinnamon 3.2.0 (Nov 7, 2016)

  • [ Margarita Manterola ]
  • Re-order and re-word idle-delay and re-word lock-enabled
  • [ AlbertJP ]
  • Resize a thumbnail when the window resizes
  • [ Henry Williams ]
  • Add Remove button for Xlets
  • [ dralley ]
  • Added gi.require_version() in many, many, many places
  • [ Michael Webster ]
  • cs_keyboard.py: Fix keybindings for quiet volume up and down (they were showing the same keys as normal volume-up/down.)
  • [ JosephMcc ]
  • Add the ability to play a sound effect when showing notifications
  • [ Corbin Auriti ]
  • Clean up output filenames on the tracker search provider
  • [ Antti Nilakari ]
  • Show flags based on short name of language in keyboard applet
  • [ Stephen Collins ]
  • Settings: switch gsettings widgets to use new settings backend:
  • Add json settings backend to settings widgets
  • settings.js: rewrite to simplify code and aviod the use of object.watch() which can be costly on resources
  • Revamp the xlet settings: - xlet settings now open in their own window/process - matches new style of cinnamon settings - now supports pages and sections in the settings file - instances are now automatically highlighted in the panel when the instance is selected in the settings window (uses a new 'highlight' pseudoclass) - uses the new JSON backend for easier maintenance and simplification of the code - added support for backendable widgets which were not previously available to the xlet settings api - updated for newer Gtk versions - added a new configure function to applets and desklets
  • Udate some of the applets and desklet to use the new settings api
  • [ brownsr ]
  • Give more informative message when starting to remove applet
  • wrap applet description At the moment a long applet description will push the subsequent icons off the visible screen which is likely to confuse some. Scaling up font or text scaling exacerbates this Some simple column wrapping avoids the issue
  • [ Michael Webster ]
  • Add cinnamon-related debug packages to cinnamon-dbg package
  • [ Clement Lefebvre ]
  • Localize the applet name in previous commit
  • [ Maximiliano Curia ]
  • Migrate away from gnome-common deprecated vars and macros
  • [ IHaveThatPower ]
  • Corrected "output" to "input"
  • [ collinss ]
  • settings.js: fix some settings not updating due to unspecific conditional
  • appletManager.js: (multi-instance) fix applet setting file not being removed with applet
  • [ Marcus Lundgren ]
  • sound applet: Add a menu that allows the user to switch between active players
  • [ JosephMcc ]
  • panel-launchers: Fix an undeclared variable warning
  • [ Giulio Girardi ]
  • Menu applet: Show 'Run with nVidia GPU' in context menu
  • [ collinss ]
  • Fix background settings color chooser not working
  • [ brownsr ]
  • Vertical panels
  • [ JosephMcc ]
  • build: Bump the required gtk version
  • [ Marcus Lundgren ]
  • sound applet: Remove entry in players list if player doesn't exist when switching - Make sure to always use the correct player owner when performing a switch
  • [ Michael Webster ]
  • workspace-switcher applet: Use the WindowManager functions to switch workspaces when using the mousewheel - this ensures that:
  • [ collinss ]
  • JsonSettingsWidgets.py: Ignore dependency key that doesn't exist with a warning rather than failing with an error
  • Settings widgets: add backendable date chooser widget
  • Refactor sound chooser widgets to simplify and avoid unnecessary duplication of code
  • Fix xlet settings not upgrading properly with new key
  • Fix panel-launchers add/edit dialog not working
  • [ Michael Webster ]
  • keyboard layout applet: Fix showing the correct flags.
  • [ JosephMcc ]
  • window-list: Don't hide the current workspace in context menu
  • ExtensionCore.py: Don't show the uuid to the user
  • [ itzexor ]
  • cinnamon-settings: remove unused webkit code and dependency
  • [ Corbin ]
  • Make the whole BalanceBar insensitive when the channel map is changed
  • Fix some device icon spacing issues
  • [ Dan Dascalescu ]
  • Explain where to look for components to file bugs properly
  • [ MajidSas ]
  • change the maximum delay for backgrounds slideshow
  • [ collinss ]
  • settings.js: fix error caused by missing quotations
  • [ dralley ]
  • Convert cinnamon bin utils to Python 3
  • [ Michael Webster ]
  • window-list applet: Listen to a new signal from muffin's MetaScreen which will notify when an item should be add or removed due to its skip_taskbar hint changing.
  • [ JosephMcc ]
  • cs_panel: Fix some terminology
  • panels: Allow themes to set separate default width and height values for panels
  • theme: Stop panel launchers from jumping around in vertical panels on hover
  • theme: Use a larger width for vertical panels in the default theme
  • [ Michael Webster ]
  • menu applet: Make the hover delay create a delay in opening the menu on hover, *not* changing categories. There should never be a delay switching categories.
  • [ Pierre G. Bogossian ]
  • sound applet: bind mouse buttons 4/5 to previous/next track NB: mouse buttons 4 and 5 (aka back/forward buttons) are numbered 8 and 9 by X
  • [ Michael Webster ]
  • st-cogl-wrapper.c: Don't ignore cogl parameters.
  • [ itzexor ]
  • cs_backgrounds.py: Use built in mimetypes module
  • cs_backgrounds.py: Refactor disk caching
  • [ Clement Lefebvre ]
  • Fixed build
  • [ JosephMcc ]
  • window-list: Rework for vertical panels
  • theme: Set a 32px size for vertical panels
  • window-list: Allow themes to control spacing between items
  • [ brownsr ]
  • vertical panels: put the notification count under the notification symbol This keeps things central in the panel and avoids problems with the panel width being able to accomodate icontext label unless there is a silly number of notifications.
  • [ Marcus Lundgren ]
  • sound applet: Removed unnecessary call to remove player.
  • [ Michael Webster ]
  • cinnamon-util: Add cinnamon_get_file_contents_utf8 asynchronous function with callback. Mark _sync version as deprecated.
  • cinnamon-util.c: Don't leave a cinnamon_get_file_contents_utf8 caller hanging, always run the callback, even with a NULL result.
  • [ Balló György ]
  • Follow the Icon Naming Specification
  • [ itzexor ]
  • cs_backgrounds.py: Don't check mimetype if filename is None
  • [ Balló György ]
  • removable-drives applet: don't hardcode Nemo
  • [ Lars Mueller ]
  • Remove panel barriers on panel removal
  • [ itzexor ]
  • cs_backgrounds.py: Apply white background to RGBA images
  • [ Michael Webster ]
  • JsonSettingsWidgets.py: close file objects. settings.js: remove file monitor, push all settings changes thru Cinnamon's dbus interface.
  • [ brownsr ]
  • Indentation corrections to remove inadvertent tabs also corrected an erroneous variable reference in a log message
  • [ NikoKrause ]
  • [show-desktop applet] new feature added: Peek at desktop
  • [keyboard applet] added switch in settings to use uppercase letters in panel
  • [ brownsr ]
  • minor change into a more natural case statement
  • centre align the centre box in a vertical panel and also clean up an if sequence, a few related comments, and a misalignment
  • [ Michael Webster ]
  • settings.js: don't try to use python in javascript. Also, payload is just the raw value string, not an array or variant array.
  • [ itzexor ]
  • panelMenu.js: fix incorrect logic
  • [ Clement Lefebvre ]
  • Show-desktop applet: Enabled peek-at-desktop, rephrased settings
  • Keyboard applet: Fixed typo
  • Fixed typos in files/usr/bin/cinnamon-settings
  • [ JosephMcc ]
  • applet.js: Properly layout applets in vertical panels
  • user-applet: Properly hide the panel label in vertical panels
  • applet.js: Fix visual alignment of Text applets in vertical panels
  • notification-applet: Fix the layout in vertical panels
  • menu-applet: Fix the layout of the menu applet in vertical panels
  • power-applet: Fix layout in vertical panels
  • workspace-switcher: Don't allow the visual style layout in vertical panels
  • spacer-applet: Adapt layout for vertical panels
  • [ Michael Webster ]
  • Revert "Revert "keyboard layout applet: Fix showing the correct flags.""
  • [ JosephMcc ]
  • sound-applet: Adapt layout for vertical panels
  • separator applet: Clean up some code styling
  • a11y-applet: Don't allow the a11y applet in vertical panels
  • sound-applet: Properly hide/show label on initial load
  • applet.js: Clean up the code a bit
  • [ itzexor ]
  • write-applet.xml: fix incorrect example code
  • [ brownsr ]
  • correct applet context menu on panel orientation move Thanks @lestcape
  • [ Jess Wu ]
  • Fix grammar mistakes in source files
  • [ NikoKrause ]
  • [menu-applet] hiding favorites box leaves an empty box in the menu, this should fix this
  • [ itzexor ]
  • show desktop applet: keep track of peek timeout id
  • show desktop applet: various cleanups
  • [ brownsr ]
  • Correct drag and drop bugs in panel launcher 1) an issue that looks to have been there before the vertical panels change where drag and drop within the panel launcher would drop icons in unscaled rather than at the same scale as the other icons 2) a vertical panels issue where the drag and drop code was assuming horizontal orientation and so was calculating both the position in the list of icons and the new position in the actor incorrectly 3) took the opportunity to correct a number of minor indentation issues
  • correct window list internal drag and drop for vertical panels 1) The override on the allowable drag direction was not set to allow vertical dragging also previous override needed clearing when orientation changed 2) Removed a few stray tabs etc. 3) Calculated the drop position correctly for vertical panels
  • [ NikoKrause ]
  • [window-list applet] using icons on context menu
  • [ itzexor ]
  • panel.js: add dialog to launch settings when the last panel is removed
  • panel.js: don't try to hide the panel if it's destroyed
  • [ Michael Webster ]
  • Keyboard layout applet: Update to use new XAppKbdLayoutController to supply appropriate icons and short names, and as a general wrapper around libgnomekbd for layout control.
  • Remove flag folder for keyboard applet (provided by libxapp now)
  • [ JosephMcc ]
  • systray: Clean up code formatting
  • [ Michael Webster ]
  • keyboard layout applet: Use this._config.get_enabled() to check whether applet should be 'active'
  • [ NikoKrause ]
  • [menu-applet] a more intuitive way of navigating through the menu with the keyboard
  • [ itzexor ]
  • appletManager.js: fix removeAppletFromPanels
  • [ collinss ]
  • Move all settings chooser button code to it's own file
  • xlet settings: Replace old binding function in settings.js with two new ones and allow multiple bindings on the same key
  • [ JosephMcc ]
  • applets: Change how applets set the type of panel they are allowed in
  • [ leigh123linux ]
  • remove grabber
  • [ NikoKrause ]
  • [menu-applet] fixed key-navigation of filesystem search path
  • [ Lars Mueller ]
  • Fix tooltip position This fixes the tooltip position on the first show of a tooltip. Previously, the extents fetched from the actor were wrong, because the actor had never been allocated before.
  • [ JosephMcc ]
  • cs_themes: Don't show duplicate themes
  • [ NikoKrause ]
  • [menu-applet] create favBox, even if it's not shown at Cinnamon restart
  • [ itzexor ]
  • st-scroll-view.c: move comment up and remove indentation For whatever reason, this comment hangs g-ir-scanner indefinitely with version 1.50 of gobject-introspection in Arch Linux, at least on my machine. Moving the comment onto its own line fixes this issue.
  • [ NikoKrause ]
  • [menu-applet] clear recent list applet with ENTER-key
  • [menu-applet] show AppDescription only on hovered buttons and hover allAppsCatButton when search pattern is deleted
  • [ Balló György ]
  • Remove dependency on GConf
  • [ collinss ]
  • ChooserButtonWidgets.py: add missing imports
  • [ Michael Webster ]
  • cs_screensaver.py: rename date/time section to customize, rename combobox selections to be more grammatically correct
  • [ itzexor ]
  • cinnamon-global.c: fix a gi warning
  • [ JosephMcc ]
  • messageTray: Fix the placement of notifications
  • [ Michael Webster ]
  • keyboard applet: restore upper-case option, fix regression from xlet settings revamp.
  • [ brownsr ]
  • workspace switcher - change whether graph is shown or not At the moment the graph is suppressed in vertical panels because a long wide workspace resulting from multiple monitors results in an unworkable graph when scaled to fit the panel width. Change this to test on the workspace size ratio, as this will permit single monitor setups to have the workspace graph
  • add vertical style class to workspace switcher No code is needed to remove it as buttons are rebuilt from scratch when panels are moved between orientations. Linked to a change to improve appearance of this applet in vertical panels in Mint-X themes
  • [ NikoKrause ]
  • [menu-applet] decodeUriComponent in placesManager.js and docInfo.js
  • [ brownsr ]
  • refactor if sequence to case statement, and sort alignment
  • [ NikoKrause ]
  • added PopupSwitchIconMenuItem and used it in sound-applet
  • [ Michael Webster ]
  • cinnamon-settings: On widgets that don't use bind functions, connect to the widget changed handlers only after setting their initial value. This prevents on_settings_changed() from being triggered right away, as well as a subsequent trigger of the widget changed handler (for a second time.)
  • [ brownsr ]
  • make accessibility applet suitable for vertical panels The issue is that sticky keys make use of the applet label to display and this is not compatible with a vertical panel. Resolve this by re-purposing the applet tooltip to show the sticky keys in a vertical panel The functionality in a horizontal panel is unchanged. The tooltip also shows normally in all cases excepting when the relevant keys are actually pressed
  • [ JosephMcc ]
  • inhibit-applet: Fix an oversized menu item
  • [ Clement Lefebvre ]
  • Fixed typo in js/ui/popupMenu.js
  • Revert "Fixed typo in js/ui/popupMenu.js"
  • [ Michael Webster ]
  • windowAttentionHandler.js: fix logic for matching ignored wmclass names.
  • [ brownsr ]
  • correct unreactive top/bottom strip in vertical panels fixes #5748.
  • [ Germán Franco ]
  • Style sound applet overlay controls * Added buttons styling same as other in the theme * Change color to fit the theme
  • [ JosephMcc ]
  • panel-launchers: Redesign the launcher context menu
  • window-list: Add the standard applet context menu items
  • window-list: Tweak the settings layout
  • panel-launchers: Tweak the layout of the settings
  • notifications-applet: Tweak the layout of the settings
  • calendar-applet: Tweak the layout of the settings
  • keyboard-applet: Tweak the layout of the settings
  • expo-applet: Tweak the layout of the settings
  • [ Michael Webster ]
  • menu applet: Fix hover delay tooltip
  • [ JosephMcc ]
  • window-list: Fix an undeclared variable warning
  • [ collinss ]
  • Remove the boxpointer from popup menus
  • [ NikoKrause ]
  • [menu-applet] fixes https://github.com/linuxmint/Cinnamon/issues/5820
  • [sound-applet] added dependencies in the settings-schema
  • [menu-applet] rewritten keynavigation codeblock
  • [ Odyseus ]
  • [Hot Corners] Added hover delay functionality. Added tooltips to hot corner icons. Corrected some minor indentation/white space inconsistencies. Closes linuxmint/Cinnamon#1050
  • [ Clement Lefebvre ]
  • Enable vfade effect by default
  • [ NikoKrause ]
  • [sound-applet] add option: show percentage next to volume slider
  • [ Lars Mueller ]
  • Fix menu item order in window list This fixes a problem, when the menu orientation is not St.Side.TOP. the menu box layout was is reverse order.
  • [ JosephMcc ]
  • popupMenu: Mark the new 'menu' style class as important
  • [ lestcape ]
  • Improving slightly the appindicators.
  • Allow the appindicator used the theme icon size if is not in scale mode.
  • Remove the boxpointer features of the indicator API.
  • [ JosephMcc ]
  • panel.js: Change the order which panels are drawn
  • [ itzexor ]
  • cs_screensaver.py: expose new cinnamon screensaver settings
  • cinnamon-settings.py: refactor maybe_resize slightly
  • [ brownsr ]
  • ensure applets that override on_panel_height_changed get to scale properly The logic in the common applet code has been changed so that the scaling is not overridden by the locally overridden function. The local function thus becomes additional to the core function, rather than overriding it in its entirety. This also corrects errors associated with turning scale mode on and off. One more associated change to the window-list applet in a vertical panel will be needed but as there are changes queued up for that I think it's best done subsequently fixes #5700
  • Ensure that the edge of the screen reacts to mouse clicks Previously the outside couple of pixels were unreactive. This was set so as to avoid recursion errors but these seem no longer to be there, so this resets to the desired behaviour
  • [ itzexor ]
  • lookingGlass.js: inspect: better handle undefined and null values
  • menu applet: remove keybinding when applet is removed from panel
  • menu applet: make menu hotkey binding per-instance
  • [ Odyseus ]
  • [Menu applet] Added keyboard navigation for context menus.
  • [ Clement Lefebvre ]
  • Simplify backgroundManager
  • [ Odyseus ]
  • [Xlet settings] "entry" and "iconchooser" elements modifications.
  • [ JosephMcc ]
  • workspace-swithcer: Fix the vertical style class
  • [ NikoKrause ]
  • [menu-applet] hide recent files, which are no longer available
  • [ Odyseus ]
  • [Xlet settings] Added support for "button" to extensions settings windows.
  • [Tooltips] Fixed positioning of tooltips.
  • [ Clement Lefebvre ]
  • sound: Add xplayer to the list of players without seek support
  • [ JosephMcc ]
  • panel-launchers: Fix 'Add' and 'Edit' not working
  • menu-applet: Add a setting for the new menu animations
  • [ Clement Lefebvre ]
  • Update POT file
  • Generate additional files
  • [ NikoKrause ]
  • [menu-applet] keynav: make sure to scroll the appsBox to top if category is changed
  • [ Michael Webster ]
  • keyboard applet: Rework to sync with changes to XApp.KbdLayoutController - the controller provides only icon names now. Handle icon construction ourselves.
  • cs_screensaver.py: Update to reflect new preferences, remove old ones that are now in keyboard->region panel.
  • [ JosephMcc ]
  • popupMenu: Insert menus that open from the panel below the panels
  • [ Alex Peters ]
  • avoid varying space between month and day
  • [ Clement Lefebvre ]
  • screensaver setttings: Rephrase some of the msgids
  • Xlet settings: Add support for alpha colors in ColorChooser
  • Fix JS warning
  • Tooltips: Round coordinates
  • l10n: Update POT file

New in Cinnamon 3.0.7 (Jul 14, 2016)

  • Fixes https://github.com/linuxmint/Cinnamon/issues/5410 (Power settings segfault).

New in Cinnamon 3.0.6 (Jun 23, 2016)

  • Add a generic "bluetooth" icon
  • power applet: Don't connect to any signals that call _devicesChanged until we have the power proxy (since the callbacks assume we do have it).
  • windowAttentionHandler.js: make the ignored app check case- insensitive. While we're here make it a gsettings array for convenience.
  • org.cinnamon.gschema.in - add pidgin to ignored wm classes.
  • Touchpad settings: Invert motion-threshold setting widget
  • appletManager.js: Fix copy/pasting applet panel applet layouts. Extension.get_max_instances() needed an extra argument, and then we were doing work twice - finished removing obsolete code.
  • cinnamon-recorder: fix crash when starting recorder...
  • cinnamon-recorder.c: restore avoidance of the panel when drawing the recording indicators. This was removed during some panel work a while back and never restored. Always draw them on the primary monitor now (the only monitor with reliable, simple-to-get workarea information).
  • fix spelling mistakes
  • onscreen keyboard: Add option to change activation behavior - accessible mode has the keyboard appear whenever focus demands it (ordinary accessibility behavior). On-demand mode will have the keyboard only appear when the user requests it via an applet click or keyboard shortcut.
  • Themes settings: Fixed loading icon themes when a theme isn't readable
  • popupMenu.js: use the signalManager.disconnect correctly - the source actor (the panel actor for the applet) has to be the second argument, the object to disconnect from. Was causing flickering in the menu applet after repositioning it.
  • Makepot
  • Settings: Don't hardcode "more info" link color in spices modules
  • [desrt] network: properly remove connections from list
  • Network applet: Fixed icon not showing VPN status
  • Network applet: Delete trailing spaces
  • Network applet: Fixed applet showing "Auto" wireless connection when turning wifi OFF and then back ON.
  • tray icons: Bump icon request to 24, then scale back to 20 in the applet. This is needed due to changes to GtkIconSize values in Gtk3. GtkStatusIcon iterates thru the built-in icon sizes to pick an appropriate icon to use, and as of 3.18 there are no sizes between 16 and 24px.
  • Preferred application settings: Set mimetypes more exhaustively

New in Cinnamon 3.0.4 (May 29, 2016)

  • Updated pot file.
  • cs_effects: Only show overlay scrollbar toggle when using gtk3 >= 3.16.
  • sound applet: Use an icon that actually exists for blank coverart.
  • sound-applet: Fix an icon name.
  • Ignore accents/stokes when searching the menu or cinnamon-settings.
  • Menu applet: Removed trailing spaces.
  • Menu applet: Don't refresh twice at the same time.
  • [Menu applet] Fix not cleared drag placeholder in favorites box. This fixes the uncleared drag placeholder in the favorites box, if an application was dragged over, but not dropped on the favorites box. This is for #5322

New in Cinnamon 3.0.3 (May 20, 2016)

  • Ensure label text is properly escaped before applying it with set_markup() Fixes #5287
  • fix typo
  • SettingsWidgets.py: use a more compatible GFileMonitorFlags - WATCH_MOVES is not available in Mint 17/glib 2.40
  • cinnamon-settings: include module keywords in desktop files
  • cinnamon-app: provide access to desktop file keywords. Use them in the menu applet search.
  • generated desktop files: re-run, to remove unnecessary comment
  • extensions: Check extensions for unsafe calls (synchronous, etc.. things that can potentially freeze Cinnamon) and make the user aware of them in cinnamon settings.
  • ExtensionCore.py: scan_extension_thread - if the metadata.json file is not found, this must be a versioned xlet, check the parent folder for it instead.
  • cs_power.py: Expose setting to allow lid-closed action even when external monitors are attached.
  • messageTray.js: Don't let notifications with buttons fade on mouse-over.
  • menu applet: use app id instead of app name for searches prevents duplicate search results for apps with the same desktop entry name when searching with a more specific term
  • sound applet: smplayer: fix artist metadata display and disable seek While seeking does work, after the first time you seek the amount seeked is incorrect. It appears to seek the amount between the beginning of the seek bar and where you released the click instead.
  • cs_themes: Add setting for dark theme variant preference. This is only settable from ~/.config/gtk-3.0/settings.ini, so add the ability to modify that as well.
  • cs_effects.py: Expose gtk-overlay-scrollbar setting.
  • cs_sound: Set selection mode to none on the SoundBox() object
  • Missing semicolon
  • Settings: Don't include text/html in the source code mimetypes
  • st-texture-cache.c: use g_themed_icon_new instead of g_themed_icon_new_with_default_fallbacks.

New in Cinnamon 3.0.1 (Apr 25, 2016)

  • extensions: Fix the alignment of the rating number in the "Get more" pages so it won't get covered by overlay scrollbars
  • bump muffin version because of API changes

New in Cinnamon 3.0.0 (Apr 25, 2016)

  • add option to show/hide favbox in menu applet
  • Added new default application buttons
  • show panel-launchers actions
  • tab indents into space indents, more item without dots
  • Move sound settings to python as a native module
  • Add a custom page to display when no input devices are available or applications are currently playing. Add a custom settings box for the sound effects page to prevent getting a very tall window when opening the settings. Make a few tweaks to the test sound dialog and add the relevant icons.
  • Some visual tweaks to the sound settings:
  • Sound settings: add mute to all volume controls
  • cs_sound.py: Few fixes to the volume slider/mute button:
  • layout.js: Remove code for interaction with the screensaver. It was always broken until 2.8.7, where I 'fixed' it, and has caused some reported regression where the panels will be hidden after returning from the screensaver.
  • cs_sound.py: add padding to the end of stream names in applications page
  • Viber stealing focus fix
  • magnifier.js: update the lens size as well as shape when we turn on lens mode.
  • Generate new desktop files for sound and accessibility
  • Touchpad settings: Rename "natural scrolling" to "reverse scrolling direction"
  • Fix middle click action in the photo frame
  • photoframe: recurse subdirectories
  • Sound settings: Fixed device not showing when its icon isn't found (fixes bluetooth devices not showing up)
  • Power settings: Don't add the Gtk.Stack if it's empty (Fixes https://github.com/linuxmint/Cinnamon/issues/5194)
  • Power settings/applet: Let the user rename battery powered devices
  • Power settings: Fix power bars not being aligned
  • Startup settings: Fix https://github.com/linuxmint/Cinnamon/issues/5199
  • tooltips.js: hide if the stage's key focus changes - prevents tooltips from becoming stuck if you use the keyboard to switch focus (hit the menu key while a window list preview is showing.)
  • cs_keyboard: Add a "wide" style class to the pane separator in the shortcuts page and remove some unneeded padding so this looks a little nicer in most newer themes
  • effects: Enable effects on dialogs and menus by default
  • Sound applet: Correctly identify changed artwork from Spotify (and add support for new URLs in version 0.27.x)
  • Theme settings: Don't filter themes missing gtk-3.0 if they provide gtk-3.*
  • show multi line descriptions in applet about: Fix #5193
  • Sound applet: Use wget to download remote artwork covers
  • layout: Tweak the handling of menus in the top_window_group to match muffin changes
  • Cinnamon Settings: Fixed gi.require_version warnings
  • Cinnamon Settings: Remove a couple of old debug output
  • Cinnamon Settings: Retire cinnamon-bluetooth (replaced with Blueberry)
  • Revert "St-texture-cache: Don't monitor file changes (should increase performance, might cause regressions in cases where the St texture needs to be refreshed following a file change)"
  • panel-launcher: Fix an undeclared variable warning
  • Fixed cinnamon slideshow error (Issue #4280)
  • Adjust to Muffin API changes for handling fullscreen windows
  • Extensions: Fix the "Disable all extensions" not working
  • Updated generated files
  • Updated pot file
  • Packaging: Bumped internal dependencies

New in Cinnamon 2.8.8 (Mar 29, 2016)

  • layout.js: Remove code for interaction with the screensaver. It was always broken until 2.8.7, where I 'fixed' it, and has caused some reported regression where the panels will be hidden after returning from the screensaver.

New in Cinnamon 2.8.6 (Nov 26, 2015)

  • launcher-editor: Implement the idea in https://github.com/linuxmint/Cinnamon/issues/4849 makes more sense for than the current behavior. Do the same for directory-editor.ui
  • window-list: Properly scale the window previews for hidpi
  • popupmenu.js: Fix documentation

New in Cinnamon 2.8.5 (Nov 21, 2015)

  • workspace-switcher applet: update relevant workspace graph when a window is added or removed from a workspace.
  • workspace-switcher applet: Don't ignore maximized windows in the graph
  • #4767: Handle situations when /usr/lib64 is a symlink to /usr/lib and vice versa on some distributions causing modules are being loaded multiple times
  • #4357: Replace has_icon method with lookup_icon one to fix missing flags icons in keyboard applet
  • signalManager.js: fix typo (fixes #4818)
  • effects: Currently when setting the minimize animation to "traditional" no sound effect is used when restoring the window. Change this so the minimize sound is played in this case.
  • Sound applet: Close menu when closing media player.
  • Fix menu applet's graphical oddity during search This is fixing #4845

New in Cinnamon 2.8.4 (Nov 12, 2015)

  • Fix a timer issue in TooltipBase In rare cases, two enter events occurred without a leave event in between, leaving an orphaned _showTimer behind
  • Same fix for the overriden _onEnterEvent in the window list applet as in TooltipBase
  • Sound applet: Fetch the status of Loop and Shuffle at the beginning, not just on update
  • Fix: user_data is not passed to callback
  • js/ui/keybindings.js: Remove idle function for media keys. This is implemented in muffin now, for *all* muffin-managed keybindings.

New in Cinnamon 2.8.3 (Nov 10, 2015)

  • layout.js: Rework our strut handling code to better handle multi-monitor situations
  • effects: Set the default settings to actually match the default "Cinnamon" style so these get used on new installs
  • desklet/boxpoiner: Don't try to correct the arrow side for the desklet menu inside desklet.js. The boxpointer handles this on it's own.
  • CinnamonWindowTracker: Pull some upstream fixes so google chrome apps will use the proper icons in the window list
  • Fix allocation error when STBoxLayout is align_end
  • Sound applet: Fixed huge icons/artwork in HiDPI
  • Keyboard settings: Release grab when focus is lost
  • attentionhandler suppress autofocus

New in Cinnamon 2.8.2 (Oct 31, 2015)

  • Replaced uses of the commands module with subprocess
  • st-container.c: Fix dispose method causing crashes. priv->children was being updated during destruction of each child, causing invalid pointers when iterating thru priv->children. Use clutter_actor_destroy_all_children to do just that, and we get no corruption.
  • appletManager.js: fix get_object_for_uuid() when an empty index of appletObj is hit upon.
  • Settings: Added link to mintlocale's input method
  • Updated pot file

New in Cinnamon 2.8.1 (Oct 28, 2015)

  • panel.js: factor out panel allocation code and prevent division-by-zero error
  • workspace-switcher: Properly resize the switcher when using custom panel sizes
  • fixed code execution by replacing os.system() w/ subprocess.call(), pep8 formatting
  • Panel launchers applet: syncronize with settings with correct variable Caused issues when adding, moving or removing items
  • capi.py: Handle the failure to locate c-c-c modules more gracefully.
  • capi.py: fix i386 platform detection.
  • capi.py: Scan all relevant paths
  • Removed unused files/generate_desktop_files file
  • capi.py: Add support for /usr/lib64 (used in RPM distros)
  • fixed command injection, replaced deprecate calls to "commands" module with their subprocess replacements
  • pep8 formatting
  • added exception handler just in case
  • fix potential NameError
  • pep8

New in Cinnamon 2.8.0 (Oct 21, 2015)

  • [ Alexandre Rostovtsev ]
  • build: require libmuffin-2.5.0 for show_tile_preview
  • build: append ST_CFLAGS when building test-recorder
  • [ Asier Iturralde Sarasola ]
  • Fix some typos in the Writing applets tutorial
  • [ Clement Lefebvre ]
  • Power applet: Fix case when last battery is removed (applet continued to show up)
  • Power settings/applet: Added vendor/model info, refactored code/logic as to which device to show in the applet, fixed 6px margin issue
  • Power applet: Don't show time until fully charged when equal to 0 (i.e. when unknown)
  • Multi-monitor support: When switching workspace, the workspace name OSD should appear on all relevant monitors
  • Alt-tab: Improved preview mode (faster switching animations, less delay, less opacity in the background)
  • Alt-tab: Speed up preview backdrop animation a little more
  • Alt-tab: Classic switcher, don't animate thumbnail removal (it looks weird when switching to the next window..). Also, increase the delay to show thumbs to 300ms. Both 180ms and 300ms seem slow when trying to identify windows by their thumbs, but 180ms gets in the way and shows shadow-thumbs when pressing Alt at "normal" speed. It's all empirical/subjective really.. but this seems to improve things a bit.
  • Display applet: Show output names (handy when the the display name is the same for 2 or more monitors)
  • Workspace Switcher applet: Added visual representations and configuration to switch between visual and button modes
  • Applets: Fixed enabling/disabling applets
  • Window list applet: Simplified setting description
  • Revert "Stop using deprecated functions"
  • Network applet: If the device vendor/model are empty, return the device name or the device type
  • Sound applet: Replaced 'menuitem-detail' style with popup-inactive-menu-item
  • Sound applet: Group player_info/artwork/track_info/controls/position_seeker together, implement flat slider support in slider.js.
  • Sound applet: Reduce the number of theme styles used
  • Sound applet: Fixed recent regression when displaying track info in the panel
  • Sound applet: Move input components, output devices and applications to context menu
  • Sound applet: Hide applications/output-devices initially
  • Sound applet: Make new styles important so the new elements look nice in all themes
  • Sound applet: Fixed introduced regression (title/artist info only changed when cover changed)
  • Sound applet: Themeable button sizes (bigger by default) and a little more padding in the track info
  • User settings: Removed trailing spaces and fixed indentation
  • User settings: Replace os.system() with subprocess.call()
  • Indicators: Less debug info in Melange, and hide indicators which role is registered by applets
  • Fixed redeclaration of const Params
  • FHS fixes: move arch indip. files from /usr/lib to /usr/share
  • Move capi.py to /usr/lib as contain one path arch dependent
  • Sound applet: Force padding/alignment on device output origins
  • Removed unused code
  • Don't register Cinnamon with cinnamon-session
  • Fixed Cinnamon caused by previous commits
  • Fixed Cinnamon crash caused by previous commits
  • Removed cinnamon-preload
  • Added debian/cinnamon.maintscript to remove obsolete preload files in /etc
  • Window list applet: Add window title and icon to window preview thumb
  • Systray applet: Fixes for invisible/out-of-place icons
  • Updated makepot
  • Updated additional files
  • Fixed ./generate_cs_module_desktop_files.py and updated cs module desktop files
  • Fixed missing paths in makepot
  • Don't translate "v%s"..
  • Updated pot file
  • Systray applet: Fixed Cinnamon crash when resizing the panel or toggling scale mode
  • Systray applet: Fixed indicators not being removed properly
  • A couple of improvements for indicators
  • Window list applet: Enable thumbnail previews by default
  • [ Corbin ]
  • Improve/Bugfixes password changer dialogs
  • finishing touches
  • [ darealshinji ]
  • Packaging: fix and override more Lintian warnings
  • [ Dexter Chua ]
  • appletManager.js: use a more efficient method to add applet
  • appletManager.js: avoid code duplication
  • Menu Applet: Code Cleanup 1
  • Menu Applet: Code Cleanup 2
  • appletManager.js: Don't reinvent Applet.prototype.filter
  • appletManager.js: more cleanup
  • Panel Launchers: Code Cleanup
  • popupmenu.js: Code Cleanup
  • signalManager.js: Code Simplification
  • Fix deprecation warnings
  • [Alt-F2] Work well with whitespace in filenames
  • cs_startup.py: don't crash when XDG_CURRENT_DESKTOP is not set
  • [Alt-F2] Redo (broken) completion mechanism
  • [Alt-F2] Allow user-defined aliases
  • [Alt-F2] Fix completion for symlink to directory
  • Allow documentation of signals
  • Document signals in PopupMenu.PopupMenuBase
  • Stop using deprecated functions
  • Removed unused variables
  • Stop using deprecated functions
  • tooltip.js: split out TooltipBase class for easier reuse
  • Window list applet: add window preview
  • Add missing import
  • tooltips: simplify position calculations
  • [Docs] Fix regression in whitespace determination
  • windowManger.js: use Tweener for timeout
  • tooltip.js: yet again more cleanup
  • window list: steal alt-tab style for preview
  • [ Dustin Falgout ]
  • Display the name of Arch Derivatives When Applicable
  • [ Fabio Fantoni ]
  • Install python script supporting files in /usr/share
  • Fix cinnamon-settings python files path
  • Fix cinnamon-settings-users policy path
  • Fix cinnamon-settings-users path
  • Fix cinnamon-desktop-editor path
  • Fix cinnamon-menu-editor path
  • Fix cinnamon-screensaver-lock-dialog path
  • Fix cinnamon-json-makepot path
  • Fix other FHS path
  • Fix cinnamon-settings after FHS fixes
  • Improve debian/rules
  • Add capi search path
  • [ Filip Kowalczyk ]
  • fixed sticky highlight on Clear List button in Recent Files when browsing with keys
  • [ Garry Filakhtov ]
  • Removed dateFormat from toLocaleTimeString() call
  • [ James Lu ]
  • cs_startup: fix crash on NameError when copying a desktop file fails
  • [ JosephMcc ]
  • Deprecations: Remove use of deprecated g_type_init () and bump GObject requirement accordingly.
  • Deprecations: Replace gtk_icon_info_free() with g_object_unref()
  • Cleanup: instead of attempting to clean up deprecated functionality in cinnamon-arrow, just remove it since it seems to be unused.
  • Cleanup: Fix an unused function warning in cinnamon-global.c
  • Cleanup: Remove st-tooltip. It's the source of a lot of build warnings and we no longer use it.
  • js: Explicitly dispose of all cairo contexts. A long read on why you want to do this here: https://bugzilla.gnome.org/show_bug.cgi?id=685513
  • trash-applet: Fix an issue: JS ERROR: Error: Too few arguments to method Gio.close expected 1 got 0 in the trash applet
  • effects: bring back our window unminimize effect
  • workspace-switcher: Add an "Add new workspace" option to the context menu
  • boxpointer: Pull in some upstream fixes that better handle the boxpointer "arrow" in some cases
  • Set the X-Gnome-AutoRestart hint to false. Stumbled across this in an old gnome bug report. Fixes the issue with Cinnamon restarting twice with cinnamon --replace
  • windowManager: Destroy the tile hud/preview when we are done with it. Currently after showing the preview you will get a noticeable slowdown when moving windows that pass off the monitor edges. This should help solve that.
  • popupMenu: Add back the expander arrow on PopupSubMenuMenuItem but with a different layout. Also tweak the layout of a couple of our applet menus to look nicer with this change. The addition of the icons to Cinnamon itself is a workaround for Mint. Newer versions of the gnome icon theme have these as built in icons but not in the version supplied with Mint 17. They can be removed in the future.
  • bg: add "spanned" to the list of bg types that need to show the background color options
  • popupMenu: add back a couple checks for the existence of submenu expander arrow to prevent breaking the right click context menus in the menu applet
  • use the new meta_screen_get_current_monitor() to place appswitchers and modal dialogs on the proper monitor in multiple monitor setups
  • workspace-applet: properly dispose a cairo context
  • cs_windows: Reword a setting to match https://github.com/linuxmint/muffin/pull/204
  • windowManager: Make the window dimming effect with attached dialogs a bit stronger and more obvious
  • windowManager: Properly declare a variable
  • add new slider and separator objects
  • workspace-switcher: Rework the visual style workspace switcher so it can be themed. Also fix some st_theme_node warnings and stop windows from being able to be drawn outside the workspace background
  • cs_startup: set modal to true for both the "Choose application" and "Add custom command" dialogs so the behavior is the same for both when using attached dialogs
  • rework the window list and effects so minimize effects work properly with multiple window lists on multiple monitors
  • sound-applet: make the volume slider for individual applications fully expand
  • workspace-swithcer: Use the set_important() function to make sure we get proper theming on the visual workspace switcher in themes that don't yet support it
  • systray-applet: fix an undeclared variable warning
  • theme: Re-style and size checkboxes and radio buttons in the default theme
  • [ leigh123linux ]
  • cinnamon_recorder_LDADD' is defined but no program or library has 'cinnamon_recorder' as canonical name (possible typo)
  • Remove relic from old mozjs-17
  • fix gtk import version
  • fix gtk import version
  • fix gtk import version
  • fix notify import version
  • fix cinnamon-desktop and upowerglib import versions
  • fix accountsservice import version
  • remove unused browser plugin stuff
  • cs_screensaver: fix Deprecation Warning
  • SettingsWidgets: fix Deprecation Warning
  • cs_themes: fix Deprecation Warning
  • Spices: fix Deprecation Warning
  • deprecated schema
  • missed one
  • [ lestcape ]
  • Be more selective when filter the mouse release events.
  • Add support for indicators.
  • Fix missing or improperly imports.
  • Moved the indicator to the main cinnamon class. Removed the NameWatchDog Class. Added some checks, and the compatibility with this new behavior.
  • Removed also the NameWatchDog declaration (was omitted in the previous commit).
  • Inhibit the indicator icon, when has a draggable parent.
  • As a pedro recommendation, this is an attempt to move the RadioButton and CheckBox classes to the corresponding place, and reuse it, in the same place.
  • Fixed an error in the regretion from signalManager.
  • [ Marga Manterola ]
  • Optimize rebuilding of media-keys hotkeys (fixes #4691)
  • Reorder setting delay_setup_started variable to avoid possible races (improves #4692)
  • [ Matthew Petroff ]
  • Restore time remaining option for power applet.
  • Fix translation strings.
  • [ Michael Webster ]
  • cs_backgrounds: add missing import
  • window-list applet: restore 2.4 behavior where a window list item demanding attention remains highlighted after it's done flashing.
  • panel-launcher: Use a generic icon when creating a new launcher, if the user didn't select a custom icon.
  • st-widget: Expand the "important" property: add set/get methods, remove CONSTRUCT_ONLY flag, have a theme node recalculation triggered when the property changes.
  • capi.py: Move with rest of cinnamon-settings files to their new location, remove debian sed rule for multiarch fix, instead figure out the right location in the capi code. Cinnamon-bluetooth is not MultiarchSpec compliant, so we still need to *also* load from /usr/lib/*.
  • st-widget.c: Fix typo in st_widget_recompute_style
  • st-theme-node: properly recalc the theme node when an StWidget's important property changes.
  • main.js: Fix typo from 08474a03cd660bb176d5ebb361a01ff6d51162fc
  • tooltips.js: Fix some occasional log warnings
  • window list: don't delay showing a preview, if another preview was just showing.
  • keybindings.js: don't tell muffin to remove a keybinding that we never set. This quiets warnings during startup about magnifier hotkeys.
  • [ Phillip Berndt ]
  • Calendar applet: Avoid unnecessary wakeups
  • Calendar applet: Update each second if global time format is set to include seconds
  • Calendar applet: Update if Date&Time configuration has changed
  • Calendar applet: Simpler detection method for 8aa5264
  • [ pixunil ]
  • Power applet: Fixed a logical bug, when the primary device does not change its icon string after an update, battery-full will be used Fixes #4329
  • Sound applet: Use the style class .sound-button-container with the pseudo class :small for quit and raise buttons Theme: Apply the :small pseudo class, cleanup of unused sound applet classes
  • Also translate xlet metadata in about dialogs
  • cs-backgrounds: add revealer to gradient widgets when picture-options is set to a value where those have no effect
  • Network applet: hide the switch if the switch has got no function This is typically the case e.g. when a cable is unplugged
  • trash applet: do not add items to context menu on orientation changed
  • extension.js: Use a macro function to create the Extension.Type members
  • extension.js: xlet uuids are unique for each xlet type, it is now possible to have more than one xlet of different types and the same uuid - Extension.unloadExtension, Extension.forgetExtension and Extension.get_max_instances needs to have a type argument after the uuid - Extension.importObjects, Extension.objects, Extension.meta, Extension.dirs are moved to Extension.Type[type].maps[mapType]
  • Automatically reload xlets when updating them instead of showing an info dialog
  • extension.js: Enable imports in a xlet via import.xlet (where xlet is the type of xlet; applet, desklet, extension or search_provider) cinnamon-js.cpp: Removed cinnamon_js_add_extension_importer
  • appletManager: In arrow filter functions, check if the value exists (when iterating over appletObj) Fixed the bug when the button in applet settings has no effect
  • [ Rob Adams ]
  • Show audio device name (origin) in sound applet
  • Change calls to highlight, activate callbacks on xlets - Fixed initial instance not being selected on multi-instance xlets (error on highlight) - Passing uuid and instance_id to cinnamon via dbus - instance_id is the same as uuid when multi-instance not allowed - Corrected order of instance tabs in Gtk.Notebook to reflect order instances were added in
  • [ Stephen Collins ]
  • Fix St.Entry not honoring some css text properties
  • settings.js: allow for dynamic getting and setting of options for supported key types (eg comboboxes and radio groups)
  • Make more cursor types available to Cinnamon
  • Sound applet: make sure player controls are destroyed when multiple names are used
  • Add two more cursor types to Cinnamon javascript
  • Fix some problems with the checkbox api
  • [ The Aviator ]
  • Only get local users from /home

New in Cinnamon 2.6.13 (Jul 13, 2015)

  • A11y applet: Show active keyboard modifiers when sticky keys are enabled
  • Renamed mintInstall.desktop -> mintinstall.desktop

New in Cinnamon 2.6.12 (Jul 1, 2015)

  • photoframe desklet: remove long-unused 'quality' setting.
  • Spices.py: remove redundant url request when refreshing thumbnails.
  • Fix the activation of right side hot corners being blocked by the pointer barrier
  • Some improvements to the trash applet
  • fix the trash applet crashing cinnamon due to a misnamed function
  • cs_startup: Fix an issue where startup applications fails to start because a desktop file fails to load

New in Cinnamon 2.6.11 (Jun 26, 2015)

  • Trash applet: Fixed icon not updating, Cinnamon freezes and memory leaks when trashing large numbers of files
  • Updated translations in desktop files

New in Cinnamon 2.6.10 (Jun 24, 2015)

  • Don't fail when a stack is empty (can happen with the power panel)

New in Cinnamon 2.6.9 (Jun 23, 2015)

  • signalManager.js: fix errors when disconnecting JS objects
  • cs_themes.py: fix potential crash. Fixes #4325
  • Power Settings: Fixed battery info duplicated on the page every time it is refreshed
  • Power settings: Fixed typo in the code
  • Keyboard applet: Show text when layout icon isn't found
  • Bumped cjs dependency to 2.6.2 (required by signalManager)
  • photoframe desklet: Adjust an image's size only after it's been fully loaded, and we've received notification the size has changed (otherwise width and height are initially 0, and the aspect ratios of pictures aren't right.
  • cinnamon-settings: Set the first child visible each time a stacked settings page is navigated to.
  • fix an issue where panels/desklets can't get focus when a window is fullscreened on the primary monitor
  • Place modal dialogs like the About dialog on the monitor that currently has the mouse cursor instead of the monitor with the last focused window.
  • Added missing runtime dependency

New in Cinnamon 2.6.3 (May 27, 2015)

  • mint-x-icons:
  • Updated pidgin tray icons
  • cinnamon-desktop, cinnamon-session, cinnamon-settings-daemon, cinnamon-screensaver
  • Split “use-systemd” configuration key into three different keys for cinnamon-settings-daemon, cinnamon-session and cinnamon-screensaver
  • Note: In Betsy, you’ll want to set the session and settings-daemon keys to true, and the screensaver key to false. In Mint 17.x, set all keys to false. In systemd distributions, set all keys to true.
  • nemo:
  • nemo-application: register with org.gnome.SessionManager – this should fix the race condition where c-s-d dies before nemo does, causing all of our icons to revert to fallbacks briefly.
  • menus: Always show icons in Open With and Templates submenus.
  • nemo-bookmark-list: make sure to keep the bookmarks file writable by the user (and not just root) when running nemo as root.
  • cinnamon:
  • Power settings: Don’t rely on output.get_backlight_min|max() to show brightness controls as it’s not reliable with all hardware. Try to get backlight() info directly to see if it’s supported instead.
  • Theme settings: Fixed regression caused by gettext fix ;)
  • Power settings: Don’t show “When the battery is critically low” option with upower 1.0 (it no longer supports that)
  • Power settings: Don’t use variables that don’t exist (in UPS handling)
  • Calendar applet: Refresh view when show-week-numbers setting is changed
  • Network applet: Properly detect active VPN connection at session start when updating the panel icon
  • On-Screen keyboard: Affect Struts
  • On-Screen keyboard: Removed transparent background in default theme.
  • Sound applet: Only read position for seek-supported players, only support seek when playback rate is 1.0, don’t support seek for Totem/GNOME-MPlayer/Pithos (either getting or setting the position isn’t fully functional), only update position at most once per second
  • Systray applet: Factorize icon resize code, removed special cases (we know they don’t work for pidgin and thunderbird)
  • Systray applet: force natural icon sizes for known buggy icons (pidgin, thunderbird)
  • Keyboard settings: Renamed horizontal/vertical maximization options
  • cinnamon-slideshow.py: fix crash when file change
  • expo.js: don’t respond to scrolls when animating
  • cs_general.py: Sync GNOME HiDPI settings
  • Fix panel launcher dnd
  • cinnamon-settings: be compatible with old gi
  • cs_screensaver.py: use gtk_container_foreach instead of gtk_container_forall
  • cs_panel.py: better protection against broken panel config
  • Don’t show stack switcher on applet configuration page
  • Follow date format setting in notification applet
  • Load default icon if icon theme doesn’t have application icon
  • js/docInfo.js: don’t make a thumbnail factory (it never gets used)
  • cinnamon-settings: invert mouse sensitivity setting so it makes sense, eliminate rubber-banding of GSettingsRange by restricting int setting types to whole number adjustments in the slider.
  • cs_privacy: replace broken unbind() – take advantage of the behavior that a new binding will overwrite a previous one on the same object property.
  • Add image for default screensaver preview.
  • cs_screensaver.py: bring the currently selected screensaver row into view when the panel is displayed.
  • menu applet: when refreshing happens, apps, recent and places need to end up in the same order as before. Also, since we empty the whole container during an app refresh, we need to rebuild recent and places.
  • SettingsWidgets: display the correct number of SpinButton digits depending on the step value. (fixes issue with font scale spinner)
  • cs_panel: don’t connect to settings until the page has been constructed. Don’t crash and burn if cinnamon isn’t running.
  • cs_panel: don’t crash when there aren’t any panels
  • osd: fix the media keys osd not showing on top of full screen windows
  • allow disabling of pointer barriers on all panels
  • Added missing method to ExtensionSidePage class, which blocked the update of the indicator of the active theme

New in Cinnamon 2.4.8 (Apr 10, 2015)

  • Revert "st: Use a more up-to-date cogl API when creating textures"

New in Cinnamon 2.4.6 (Jan 23, 2015)

  • Settings: Fix occasional GTK-Warning and blank menu entry in the terminal selection, some comments
  • overrides: only check gsettings schema when it's actually provided.
  • magnifier.js: fix source id warning
  • notifications: fix default opacity being doubled in hidpi mode.
  • desklets: Make sure a new desklet is placed in a visible portion of the primary monitor.
  • photo desklet: Fix a warning, clock desklet: move some String class overrides to js/ui/overrides.js so they can be used in the desklet as well as the calendar applet.
  • panel applet: always remove the drag placeholder after a drag (not just after a successful one)
  • menu applet: always remove a favorites drag placeholder after a drag (not just after a successful one)
  • Added missing dependency on gir1.2-notify-0.7
  • Cinnamon Settings: Properly handle themes which thumbnail isn't readable
  • cinnamon-slideshow: fix introspection for some Fixes #3742
  • fix user added picture slideshow
  • fix 'genericpath.py:29:isfile:TypeError: coercing to Unicode: need string or buffer, NoneType found'
  • sound applet: fixed #3735 - mute on middle click
  • windowManager.js: Fix opacity issues when using fade mapping, and other effects involving opacity changes.
  • cinnamon-settings keyboard: fix Escape key handling to cancel keybinding teach mode (when numlock is on), and allow backspace to be used as a hotkey when modified.
  • keybindings: Ignore capslock for teach mode
  • keybindings: force lower case when comparing existing keybindings for collisions.
  • Fixed scroll direction in window list applet
  • layout.js: don't hide/show the panels during the startup animation, make them temporarily transparent instead - this fixes an issue when panel auto-hide is active, the animation will complete, and you'll see a temporary blank area where the panel would be, as the chrome adjusts to the panel.
  • layout.js: Only alter panel behavior during animation when the panel auto-hide is actually active - it 'looks' better during startup for any non-auto-hidden panel.
  • appletManager.js: Don't dump orphaned applets into the remaining panel when changing layouts from double to single panel. They are silently ignored. They will show as having an issue in applet settings (red dot) and a looking glass log note, describing how to fix, if desired.
  • keybindings: Filter out reserved GdkModifierTypes - they can interfere with keybindings on certain systems.
  • classicSwitcher.js: prevent warning from an errant source id.
  • app switcher: Fix double-destroy when activating a minimized window. The app switchers listen for the 'map' signal from windows - a mapping signal triggers an _activateWindow, and we also get an activate from actually selecting the window in the first place.
  • st-im-text.c: Fix capslock in StEntry widgets.
  • expoThumbnail.js: Fix warning from invalid source id.
  • overrides.js: Add dump_stack when .disconnecting with an invalid ID.
  • classicSwitcher.js: Force a re-allocation of the alt-tab container when a thumbnail/preview is removed.
  • Fixed default avatar image path
  • menu applet: Don't reset the category when dragging an app.
  • st-texture-cache.c: Make sure the pixbuf requested ends up with the correct-sized texture (instead of the original texture size) - StIcon's update_shadow_material method was getting a bad size to generate the shadow/blur.
  • Rename the stock cinnamon menu applet icon so it gets rendered correctly as a symbolic icon.
  • applet.js: Make sure set_applet_icon_symbolic_name and _path use a good size when scale mode is off. Also reduce the padding of the menu-symbolic.svg icon so its visible size is more in line with other symbolic icons.
  • menu applet: Fix logic surrounding the default icon.
  • Fixed the PictureChooserButton in Gtk 3.14, compatible with 3.10.
  • Cinnamon Settings: Fixed menu picture sizes in PictureChooserButton in Gtk 3.14, compatible with 3.10.

New in Cinnamon 2.4.5 (Nov 27, 2014)

  • Fixed startup animation

New in Cinnamon 2.4.3 (Nov 13, 2014)

  • Small l10n fixes, refreshed desktop files

New in Cinnamon 2.4.2 (Nov 10, 2014)

  • photoframe desklet: fix mega leak, don't cache all images, destroy old images.
  • photoframe desklet: cancel the update timer when removing the desklet.

New in Cinnamon 2.4 (Nov 8, 2014)

  • Responsiveness and memory usage:
  • CJS was rebased on a newer version of GJS in an effort to reduce memory usage and provide faster execution times.
  • All Cinnamon components were reviewed and their source code was checked with static analysis tools. Although most of them were small, about 30 memory leaks were fixed.
  • Icons used in Cinnamon Settings were added to the Mint-X icon theme. This increased responsiveness (This is specific to Linux Mint so we encourage all artists and distributions to do the same).
  • More polish:
  • Credit to and similar to GNOME Shell, the Cinnamon desktop now starts with a zoom animation.
  • The login sound is now handled directly by Cinnamon (as opposed to cinnamon-settings-daemon) and plays in sync with the login sequence.
  • Modules in Cinnamon Settings and categories in the application menu are now sorted alphabetically.
  • Similar to Windows, “Super+e” now opens up the home directory.
  • Cinnamon 2.4 ships with many small refinements (multiple panel launchers, improvements in the sound applet, removal of the timeout in the logout dialog…etc) and a lot of bug fixes.
  • More settings and hardware support:
  • Single-button touchpads are now supported (like the one used on the Macbook) and actions for 2-finger and 3-finger clicks are configurable. By default they correspond to right-click and middle-click.
  • Compositing in full-screen mode is now configurable and does not require to restart Cinnamon. This means less screen-tearing by default for most users and the option to undirect windows for gamers and users requiring an application to run at full speed without being impacted by the composition manager.
  • The desktop font is now configurable.
  • It is now possible to give the screensaver a custom date format, and custom fonts.

New in Cinnamon 2.2.3 (Apr 15, 2014)

  • Better Looking Settings
  • Screensaver and Power Management
  • Regional Settings and Keyboard Layouts
  • Date and Time Settings
  • Hot Corners and HUD
  • Applet Roles and Systray Icons
  • Menu Improvements
  • MPRIS and Sound Applet
  • HiDPI/Retina Display support
  • Graphics Tablet
  • A11y MouseWheel Zoom
  • Window manager improvements
  • Lots of other improvements

New in Cinnamon 2.0 (Oct 11, 2013)

  • Better Edge-Tiling
  • Edge-Snapping
  • Sound Effects
  • Better User Management
  • Nemo Improvements
  • Window manager improvements
  • Cinnamon Backend 2.0
  • Better localization, date formats, centralized translations
  • Added support for LightDM user-switching and guest user sessions
  • Added support for MDM user-switching and MDM integration in the System Settings
  • Improved support for systemd/logind
  • Settings API for Applets/Desklets
  • Nemo actions

New in Cinnamon 1.8 (May 6, 2013)

  • On behalf of the team and all the developers who contributed to this build, I am proud to announce the release of Cinnamon 1.8!
  • Cinnamon 1.8 represents 7 months of development and 1,075 commits. It features a lot of bug fixes but also brand new features and many improvements.
  • File Manager:
  • Nemo received a lot of attention. Its user interface was heavily modified and its behavior was adapted to integrate better with Cinnamon.
  • You can now easily hide the sidebar and switch back and forth between places and treeview. Under each place, if applicable, a small bar indicates how much space is used.
  • Screensaver:
  • Cinnamon now features its own screensaver. One of its particularities is that you can define an away message before locking up your screen.
  • People who are looking for you can see that message while you’re away.
  • Control Center:
  • All configuration modules are now present in Cinnamon Settings. You no longer need to use Gnome Control Center.
  • Desklets:
  • KDE calls them Plasmoids, Android calls them Widgets, in Cinnamon they’re called “Desklets”. The same way you can add applets to your panel, you can add desklets to your desktop.
  • Cinnamon 1.8 ships with 3 desklets installed by default (a launcher, a clock and a photoframe) and many more will come from the community (yes, before people ask, there is an xkcd desklet out there).
  • Spices Management;
  • In Cinnamon 1.8 you can install “spices” (i.e. applets, desklets, themes, extensions) straight from your desktop. You don’t need to browse http://cinnamon.linuxmint.com anymore.
  • You can apply updates as well and if the Spice supports it you can use multiple instances of it.
  • New features for developers:
  • Settings API for Applets/Desklets
  • If you’re an Applet/Desklet developer, don’t use gsettings anymore. Cinnamon 1.8 features a settings API which will do all the work for you.
  • It will set up your settings and default values for you, automatically.
  • It will allow you to access your settings just as easily as you access values in an array.
  • It will generate a configuration screen for you, automatically.
  • In other words, you just define your settings and use them in your applet/desklet, and Cinnamon does everything else for you. A configuration screen is automatically generated for you and the user can configure the settings you defined from the System Settings.
  • System improvements:
  • Renderer detection:
  • Muffin now checks which renderer is being used. If the session is using a Software Renderer (that’s the case when there is a problem with the drivers or if the card doesn’t feature any acceleration) a notification pops up to let the user know about the problem.
  • Fallback mode:
  • Cinnamon no longer uses gnome-session for fallback. In some cases gnome-session didn’t allow Cinnamon to run even though the hardware was capable of running Cinnamon. Another limitation of gnome-session was its inability to restart Cinnamon after a crash. In Cinnamon 1.8, the Cinnamon session always launches Cinnamon, so your computer will try to run Cinnamon no matter what.
  • Cinnamon also uses a wrapper to restart itself and recover from potential crashes. If Cinnamon crashes it now falls back on Metacity and asks the user if he/she wants to restart Cinnamon.
  • And that’s not all…
  • Cinnamon 1.8 is huge. Its commit changelog is twice the size of the 1.6 release!
  • Other notable features:
  • Better hot-corner configuration
  • Coverflow Alt-Tab
  • Timeline Alt-Tab
  • Horizontal/Vertical maximizing of windows

New in Cinnamon 1.6.7 (Apr 3, 2013)

  • Cinnamon 1.6.7:
  • Resize existing icons in window list applet when panel icon scaling mode is changed
  • Fixed icon pixelation in Alt-tab (for most toolkits including pyGTK)
  • Fixed menu application buttons being cropped
  • Fixed advanced options box in cinnamon-settings->backgrounds not being shown properly in Mint 14 (GTK3.6?)
  • Updated translations
  • Nemo 1.1.2:
  • Cleaned up code from move-to/copy-to entries so that views can be finalized (ensures all listener signals get disconnected, stops random crashes in the preferences screen).