RSSAmplifier

Blog

Caolán McNamara

caolanm.blogspot.comRSS feed ↗25 posts

Latest posts

Linux Namespaces and Collabora Online

In Collabora Online (for the normal mode of operation) we have a single server process (coolwsd) that spawns a separate process (kit) to load and manage each individual document. Each of those per-document kit processes runs in its own isolated environment. See architecture for details. Each environment contains a minimal file system (ideally bind mounted from a template dir for speed, but…

coverity 2022.6.0 and LibreOffice

After a long slog since November when the previous version of coverity was EOLed and we had to start using 2022.6.0 with its new suggestions for std::move etc, LibreOffice is now finally back to a 0 warnings coverity state

Small Caps in Impress

Writer supports Small Caps, but Impress and drawing shapes in general never fully supported Small Caps. The option was available, and the character dialog provided a preview, but Small Caps was rendered the same as All Caps, as seen here. This has lingered for years and it's not easy as a user to try and manually workaround with varying font sizes because underline/overline/strike-through…

Urgent VCL Mission

To mark the occasion of Noel's merge of Convert internal vcl bitmap formats transparency->alpha to align LibreOffice's internal concept of color opacity with everything else's. This work, "Urgent VCL Mission", is adapted from " Urgent Mission " by Randall Munroe , used under CC BY-NC 2.5 , and licensed under same by me. Amazingly there exists, not one, but two fonts based on Randall's handwriting.…

GNOME Logout Inhbit

Recently added support in LibreOffice towards 7.6 for GNOME logout inhibit if LibreOffice has open documents with unsaved changes.

GTK 4.10 and LibreOffice accessibility

Towards GTK 4.10 some of the functionality to integrate LibreOffice's internal accessibility support with GTK has been exposed. Some experimenting this week with GTK trunk gives me the above, writer's document accessibility hierarchy integrated with the GTK one. Very little actually works, but a working base to start from.

macOS Dark Mode

For LibreOffice 7.5 I've reworked the theming on macOS to get some support for Dark Mode, as seen above. As a side effect "accent colors" work in Light Mode too.

Windows High Contrast Improvements

Spent a little time this week to explore our Windows accessibility High Contrast support because I was working on a GTK High Contrast issue by coincidence when xisco mentioned the Windows one in the regular ESC. Left is the sad original case of unreadable menubar and missing sidebar icons. Right is the newly fixed case with legible menubar and restored sidebar icons. Additionally the "default"…

zero coverity defects for hunspell

After the recent 1.7.1 release of hunspell I spent a little time massaging the source to address some long standing coverity complaints and achieved the elusive 0 outstanding defects with 0 dismissed state.

GTK[3|4] GtkScrollbar for writer documents

GTK4 screenshot of writer using true GtkScrollbars rather than themed Vcl ScrollBars. Long press enters gtk's usual fine control mode for scrolling.

GTK4: Toolbar popups via GtkPopovers

Bootstrapped using GtkPopovers to implement popups from LibreOffice's main menubars for GTK4.

Dark Style Preference with GTK

Added something to track the org.freedesktop.appearance.color-scheme property as used by the GNOME 42 Dark Style Preference setting. Screencast recorded with the new iteration of GNOME's screen built-in recorder which is quite snazzy.

GTK: Calling attention to a widget in LibreOffice with CSS animation

The motivation here is Use attention-attracting cue when pressing Ctrl+F while in the find bar and do "something" to call attention to the widget. I thought I'd try some of the built-in GTK CSS support. So here we animate the widget to reduce its left and right margins inwards a little and its opacity to 50% before returning to its original properties. Nothing is ever simple, so in order to repeat…

GTK4: ComboBox Cell Renderers

Custom Gtk Cell Renderer in GTK4 GtkComboBox in LibreOffice now working as hoped for.

GTK4: Using GtkMediaStream in LibreOffice

Today's GTK4 version of LibreOffice (towards 7.4) using the first cut of my efforts to use GtkMediaStream + GtkPicture for video playback. Works a lot better than this video of a video suggests ;-)

gtk3: calc autofilter as GtkPopover

How calc's autofilter looks today under gtk3 + wayland in trunk towards LibreOffice 7.4

GTK4: Toolbars in Sidebar

GTK4 port of Libreoffice now supports the "widebutton" Toolbar MenuButtons that show a preview of the selected color.

GTK4: Start Center

LibreOffice Start Center working with GTK4 widgets

GTK4: Adapting to Toolbar changes

In GTK4 the dedicated GtkToolbar is gone, replaced by GtkBox with a style of "toolbar". The spelling dialog now supports this conversion.

GTK4 Port: DoubleDecker Notebooks

Double-decker mode, for notebooks with excessive numbers of tabs, works again in the GTK4 Port.

LibreOffice GTK4 Port: More MenuButtons

More MenuButton features working under GTK4. Now with working radio entries in GtkPopoverMenu dropdowns.

LibreOffice GTK4 Port: MenuButtons

Initial MenuButton and Popover support under GTK4 now working

GTK4 LibreOffice Port: Print Dialog

LibreOffice's Print Dialog in GTK4 Port with fancy "suggested-action" blue "Print" button.

LibreOffice GTK4 Port: Some more progress

More progress, Entries, SpinButtons, PushButtons, CheckBoxes/RadioButtons, TreeViews and basic Notebooks and DrawingAreas working in the GTK4 port

First Cut at a GTK4 Port of LibreOffice

Early days yet, but here's some screenshots of an experimental port of LibreOffice to GTK4 I've commited upstream during the week. It starts without crashing, renders, accepts user keystrokes and mouse events, basic Input Method support also works. Standard GTK file dialog functionality works. Standard GTK message dialogs work. Context menus, now using Popover Menus, work. Toplevel Menubar and…