2026-01-01 10:07:57 -05:00
|
|
|
# OpenMaui Linux - Recovery Merge Tracking
|
|
|
|
|
|
2026-01-01 12:20:28 -05:00
|
|
|
**Branch:** `final`
|
Major production merge: GTK support, context menus, and dispatcher fixes
Core Infrastructure:
- Add Dispatching folder with LinuxDispatcher, LinuxDispatcherProvider, LinuxDispatcherTimer
- Add Native folder with P/Invoke wrappers (GTK, GLib, GDK, Cairo, WebKit)
- Add GTK host window system with GtkHostWindow and GtkSkiaSurfaceWidget
- Update LinuxApplication with GTK mode, theme handling, and icon support
- Fix duplicate LinuxDispatcher in LinuxMauiContext
Handlers:
- Add GtkWebViewManager and GtkWebViewPlatformView for GTK WebView
- Add FlexLayoutHandler and GestureManager
- Update multiple handlers with ToViewHandler fix and missing mappers
- Add MauiHandlerExtensions with ToViewHandler extension method
Views:
- Add SkiaContextMenu with hover, keyboard, and dark theme support
- Add LinuxDialogService with context menu management
- Add SkiaFlexLayout for flex container support
- Update SkiaShell with RefreshTheme, MauiShell, ContentRenderer
- Update SkiaWebView with SetMainWindow, ProcessGtkEvents
- Update SkiaImage with LoadFromBitmap method
Services:
- Add AppInfoService, ConnectivityService, DeviceDisplayService, DeviceInfoService
- Add GtkHostService, GtkContextMenuService, MauiIconGenerator
Window:
- Add CursorType enum and GtkHostWindow
- Update X11Window with SetIcon, SetCursor methods
Build: SUCCESS (0 errors)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 11:19:58 -05:00
|
|
|
**Last Updated:** 2026-01-01
|
2026-01-01 12:20:28 -05:00
|
|
|
**Build Status:** SUCCEEDS
|
2026-01-01 10:07:57 -05:00
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## HANDLERS
|
|
|
|
|
|
2026-01-01 12:20:28 -05:00
|
|
|
| File | Status | Notes |
|
|
|
|
|
|------|--------|-------|
|
2026-01-01 13:05:16 -05:00
|
|
|
| ActivityIndicatorHandler.cs | [x] | Verified - matches decompiled |
|
|
|
|
|
| ApplicationHandler.cs | [x] | Verified - matches decompiled |
|
2026-01-01 12:39:58 -05:00
|
|
|
| BorderHandler.cs | [ ] | BLOCKED - needs SkiaBorder.MauiView and Tapped |
|
|
|
|
|
| BoxViewHandler.cs | [x] | Verified |
|
|
|
|
|
| ButtonHandler.cs | [x] | Contains TextButtonHandler - Verified |
|
|
|
|
|
| CheckBoxHandler.cs | [x] | Verified |
|
2026-01-01 13:05:16 -05:00
|
|
|
| CollectionViewHandler.cs | [x] | FIXED - Added OnItemTapped gesture handling, MauiView assignment |
|
2026-01-01 12:52:33 -05:00
|
|
|
| DatePickerHandler.cs | [x] | Verified |
|
2026-01-01 12:39:58 -05:00
|
|
|
| EditorHandler.cs | [x] | Verified |
|
|
|
|
|
| EntryHandler.cs | [x] | Verified |
|
2026-01-01 13:05:16 -05:00
|
|
|
| FlexLayoutHandler.cs | [x] | Verified - matches decompiled |
|
2026-01-01 12:52:33 -05:00
|
|
|
| FlyoutPageHandler.cs | [x] | Verified - matches decompiled |
|
2026-01-01 13:05:16 -05:00
|
|
|
| FrameHandler.cs | [ ] | BLOCKED - needs SkiaFrame.MauiView and Tapped event |
|
|
|
|
|
| GestureManager.cs | [x] | FIXED - Added third fallback (TappedEvent fields), type info dump, swipe Right handling |
|
|
|
|
|
| GraphicsViewHandler.cs | [x] | Verified - matches decompiled |
|
2026-01-01 12:20:28 -05:00
|
|
|
| GtkWebViewHandler.cs | [x] | Added new file from decompiled |
|
|
|
|
|
| GtkWebViewManager.cs | [ ] | |
|
|
|
|
|
| GtkWebViewPlatformView.cs | [ ] | |
|
|
|
|
|
| GtkWebViewProxy.cs | [x] | Added new file from decompiled |
|
2026-01-01 12:39:58 -05:00
|
|
|
| ImageButtonHandler.cs | [x] | FIXED - added MapBackgroundColor |
|
|
|
|
|
| ImageHandler.cs | [x] | Verified |
|
2026-01-01 13:05:16 -05:00
|
|
|
| ItemsViewHandler.cs | [x] | Verified - matches decompiled |
|
2026-01-01 12:39:58 -05:00
|
|
|
| LabelHandler.cs | [x] | Verified |
|
|
|
|
|
| LayoutHandler.cs | [x] | Contains GridHandler, StackLayoutHandler, LayoutHandlerUpdate - Verified |
|
2026-01-01 12:52:33 -05:00
|
|
|
| NavigationPageHandler.cs | [x] | FIXED - Added LoadToolbarIcon, Icon loading, content handling, animated params |
|
2026-01-01 12:20:28 -05:00
|
|
|
| PageHandler.cs | [x] | Added MapBackgroundColor |
|
2026-01-01 12:52:33 -05:00
|
|
|
| PickerHandler.cs | [x] | Verified |
|
2026-01-01 12:39:58 -05:00
|
|
|
| ProgressBarHandler.cs | [x] | Verified |
|
2026-01-01 12:52:33 -05:00
|
|
|
| RadioButtonHandler.cs | [x] | Verified - matches decompiled |
|
2026-01-01 12:39:58 -05:00
|
|
|
| ScrollViewHandler.cs | [x] | Verified |
|
2026-01-01 12:52:33 -05:00
|
|
|
| SearchBarHandler.cs | [x] | Verified - matches decompiled |
|
|
|
|
|
| ShellHandler.cs | [x] | Verified - matches decompiled |
|
2026-01-01 12:39:58 -05:00
|
|
|
| SliderHandler.cs | [x] | Verified |
|
2026-01-01 12:52:33 -05:00
|
|
|
| StepperHandler.cs | [x] | FIXED - Added MapIncrement, MapIsEnabled, dark theme colors |
|
2026-01-01 12:39:58 -05:00
|
|
|
| SwitchHandler.cs | [x] | Verified |
|
2026-01-01 12:52:33 -05:00
|
|
|
| TabbedPageHandler.cs | [x] | Verified - matches decompiled |
|
|
|
|
|
| TimePickerHandler.cs | [x] | FIXED - Added dark theme colors |
|
2026-01-01 12:20:28 -05:00
|
|
|
| WebViewHandler.cs | [x] | Fixed namespace-qualified event args |
|
2026-01-01 13:05:16 -05:00
|
|
|
| WindowHandler.cs | [x] | Verified - Contains SkiaWindow, SizeChangedEventArgs |
|
2026-01-01 10:07:57 -05:00
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
2026-01-01 12:20:28 -05:00
|
|
|
## VIEWS
|
|
|
|
|
|
|
|
|
|
| File | Status | Notes |
|
|
|
|
|
|------|--------|-------|
|
|
|
|
|
| SkiaActivityIndicator.cs | [ ] | |
|
|
|
|
|
| SkiaAlertDialog.cs | [ ] | |
|
|
|
|
|
| SkiaBorder.cs | [ ] | Contains SkiaFrame |
|
|
|
|
|
| SkiaBoxView.cs | [ ] | |
|
|
|
|
|
| SkiaButton.cs | [ ] | |
|
|
|
|
|
| SkiaCarouselView.cs | [ ] | |
|
|
|
|
|
| SkiaCheckBox.cs | [ ] | |
|
|
|
|
|
| SkiaCollectionView.cs | [ ] | |
|
|
|
|
|
| SkiaContentPresenter.cs | [ ] | |
|
|
|
|
|
| SkiaContextMenu.cs | [ ] | |
|
|
|
|
|
| SkiaDatePicker.cs | [ ] | |
|
|
|
|
|
| SkiaEditor.cs | [ ] | |
|
|
|
|
|
| SkiaEntry.cs | [ ] | |
|
|
|
|
|
| SkiaFlexLayout.cs | [ ] | |
|
|
|
|
|
| SkiaFlyoutPage.cs | [ ] | |
|
|
|
|
|
| SkiaGraphicsView.cs | [ ] | |
|
|
|
|
|
| SkiaImage.cs | [ ] | |
|
|
|
|
|
| SkiaImageButton.cs | [ ] | |
|
|
|
|
|
| SkiaIndicatorView.cs | [ ] | |
|
2026-01-01 13:05:16 -05:00
|
|
|
| SkiaItemsView.cs | [x] | Added GetItemView() method |
|
2026-01-01 12:20:28 -05:00
|
|
|
| SkiaLabel.cs | [ ] | |
|
|
|
|
|
| SkiaLayoutView.cs | [ ] | Contains SkiaGrid, SkiaStackLayout, SkiaAbsoluteLayout, GridLength, GridPosition |
|
|
|
|
|
| SkiaMenuBar.cs | [ ] | Contains MenuItem, MenuBarItem |
|
|
|
|
|
| SkiaNavigationPage.cs | [ ] | |
|
2026-01-01 12:52:33 -05:00
|
|
|
| SkiaPage.cs | [x] | Added SkiaToolbarItem.Icon property |
|
2026-01-01 12:20:28 -05:00
|
|
|
| SkiaPicker.cs | [ ] | |
|
|
|
|
|
| SkiaProgressBar.cs | [ ] | |
|
|
|
|
|
| SkiaRadioButton.cs | [ ] | |
|
|
|
|
|
| SkiaRefreshView.cs | [ ] | |
|
|
|
|
|
| SkiaScrollView.cs | [ ] | |
|
|
|
|
|
| SkiaSearchBar.cs | [ ] | |
|
|
|
|
|
| SkiaShell.cs | [ ] | Contains ShellSection, ShellContent |
|
|
|
|
|
| SkiaSlider.cs | [ ] | |
|
|
|
|
|
| SkiaStepper.cs | [ ] | |
|
|
|
|
|
| SkiaSwipeView.cs | [ ] | |
|
|
|
|
|
| SkiaSwitch.cs | [ ] | |
|
|
|
|
|
| SkiaTabbedPage.cs | [ ] | |
|
|
|
|
|
| SkiaTemplatedView.cs | [ ] | |
|
|
|
|
|
| SkiaTimePicker.cs | [ ] | |
|
|
|
|
|
| SkiaView.cs | [x] | Made Arrange() virtual |
|
|
|
|
|
| SkiaVisualStateManager.cs | [ ] | |
|
|
|
|
|
| SkiaWebView.cs | [ ] | Contains WebNavigatingEventArgs, WebNavigatedEventArgs (TO REMOVE - use MAUI's) |
|
2026-01-01 10:07:57 -05:00
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## SERVICES
|
|
|
|
|
|
2026-01-01 12:20:28 -05:00
|
|
|
| File | Status | Notes |
|
|
|
|
|
|------|--------|-------|
|
|
|
|
|
| AppActionsService.cs | [ ] | |
|
|
|
|
|
| AppInfoService.cs | [ ] | |
|
|
|
|
|
| AtSpi2AccessibilityService.cs | [ ] | |
|
|
|
|
|
| BrowserService.cs | [ ] | |
|
|
|
|
|
| ClipboardService.cs | [ ] | |
|
|
|
|
|
| ConnectivityService.cs | [ ] | |
|
|
|
|
|
| DeviceDisplayService.cs | [ ] | |
|
|
|
|
|
| DeviceInfoService.cs | [ ] | |
|
|
|
|
|
| DisplayServerFactory.cs | [ ] | |
|
|
|
|
|
| DragDropService.cs | [ ] | |
|
|
|
|
|
| EmailService.cs | [ ] | |
|
|
|
|
|
| Fcitx5InputMethodService.cs | [ ] | |
|
|
|
|
|
| FilePickerService.cs | [ ] | |
|
|
|
|
|
| FolderPickerService.cs | [ ] | |
|
|
|
|
|
| FontFallbackManager.cs | [ ] | |
|
|
|
|
|
| GlobalHotkeyService.cs | [ ] | |
|
|
|
|
|
| Gtk4InteropService.cs | [ ] | |
|
|
|
|
|
| GtkHostService.cs | [ ] | |
|
|
|
|
|
| HardwareVideoService.cs | [ ] | |
|
|
|
|
|
| HiDpiService.cs | [ ] | |
|
|
|
|
|
| HighContrastService.cs | [ ] | |
|
|
|
|
|
| IAccessibilityService.cs | [ ] | |
|
|
|
|
|
| IBusInputMethodService.cs | [ ] | |
|
|
|
|
|
| IInputMethodService.cs | [ ] | |
|
|
|
|
|
| InputMethodServiceFactory.cs | [ ] | |
|
|
|
|
|
| LauncherService.cs | [ ] | |
|
|
|
|
|
| LinuxResourcesProvider.cs | [ ] | |
|
|
|
|
|
| NotificationService.cs | [ ] | |
|
|
|
|
|
| PortalFilePickerService.cs | [ ] | |
|
|
|
|
|
| PreferencesService.cs | [ ] | |
|
|
|
|
|
| SecureStorageService.cs | [ ] | |
|
|
|
|
|
| ShareService.cs | [ ] | |
|
|
|
|
|
| SystemThemeService.cs | [ ] | |
|
|
|
|
|
| SystemTrayService.cs | [ ] | |
|
|
|
|
|
| VersionTrackingService.cs | [ ] | |
|
|
|
|
|
| VirtualizationManager.cs | [ ] | |
|
|
|
|
|
| X11InputMethodService.cs | [ ] | |
|
2026-01-01 10:07:57 -05:00
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## HOSTING
|
|
|
|
|
|
2026-01-01 12:20:28 -05:00
|
|
|
| File | Status | Notes |
|
|
|
|
|
|------|--------|-------|
|
|
|
|
|
| LinuxMauiAppBuilderExtensions.cs | [ ] | |
|
|
|
|
|
| LinuxMauiContext.cs | [ ] | |
|
|
|
|
|
| LinuxProgramHost.cs | [ ] | |
|
|
|
|
|
| LinuxViewRenderer.cs | [ ] | |
|
|
|
|
|
| MauiAppBuilderExtensions.cs | [ ] | |
|
|
|
|
|
| MauiHandlerExtensions.cs | [ ] | |
|
2026-01-01 10:07:57 -05:00
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
2026-01-01 12:20:28 -05:00
|
|
|
## DISPATCHING
|
2026-01-01 10:07:57 -05:00
|
|
|
|
2026-01-01 12:20:28 -05:00
|
|
|
| File | Status | Notes |
|
|
|
|
|
|------|--------|-------|
|
|
|
|
|
| LinuxDispatcher.cs | [ ] | |
|
|
|
|
|
| LinuxDispatcherProvider.cs | [ ] | |
|
|
|
|
|
| LinuxDispatcherTimer.cs | [ ] | |
|
2026-01-01 10:07:57 -05:00
|
|
|
|
2026-01-01 12:20:28 -05:00
|
|
|
---
|
2026-01-01 10:07:57 -05:00
|
|
|
|
2026-01-01 12:20:28 -05:00
|
|
|
## NATIVE
|
2026-01-01 10:07:57 -05:00
|
|
|
|
2026-01-01 12:20:28 -05:00
|
|
|
| File | Status | Notes |
|
|
|
|
|
|------|--------|-------|
|
|
|
|
|
| CairoNative.cs | [ ] | |
|
|
|
|
|
| GdkNative.cs | [ ] | |
|
|
|
|
|
| GLibNative.cs | [ ] | |
|
|
|
|
|
| GtkNative.cs | [ ] | |
|
|
|
|
|
| WebKitNative.cs | [ ] | |
|
2026-01-01 10:07:57 -05:00
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
Major production merge: GTK support, context menus, and dispatcher fixes
Core Infrastructure:
- Add Dispatching folder with LinuxDispatcher, LinuxDispatcherProvider, LinuxDispatcherTimer
- Add Native folder with P/Invoke wrappers (GTK, GLib, GDK, Cairo, WebKit)
- Add GTK host window system with GtkHostWindow and GtkSkiaSurfaceWidget
- Update LinuxApplication with GTK mode, theme handling, and icon support
- Fix duplicate LinuxDispatcher in LinuxMauiContext
Handlers:
- Add GtkWebViewManager and GtkWebViewPlatformView for GTK WebView
- Add FlexLayoutHandler and GestureManager
- Update multiple handlers with ToViewHandler fix and missing mappers
- Add MauiHandlerExtensions with ToViewHandler extension method
Views:
- Add SkiaContextMenu with hover, keyboard, and dark theme support
- Add LinuxDialogService with context menu management
- Add SkiaFlexLayout for flex container support
- Update SkiaShell with RefreshTheme, MauiShell, ContentRenderer
- Update SkiaWebView with SetMainWindow, ProcessGtkEvents
- Update SkiaImage with LoadFromBitmap method
Services:
- Add AppInfoService, ConnectivityService, DeviceDisplayService, DeviceInfoService
- Add GtkHostService, GtkContextMenuService, MauiIconGenerator
Window:
- Add CursorType enum and GtkHostWindow
- Update X11Window with SetIcon, SetCursor methods
Build: SUCCESS (0 errors)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 11:19:58 -05:00
|
|
|
## WINDOW
|
2026-01-01 10:07:57 -05:00
|
|
|
|
2026-01-01 12:20:28 -05:00
|
|
|
| File | Status | Notes |
|
|
|
|
|
|------|--------|-------|
|
|
|
|
|
| CursorType.cs | [ ] | |
|
|
|
|
|
| GtkHostWindow.cs | [ ] | |
|
|
|
|
|
| X11Window.cs | [ ] | |
|
2026-01-01 10:07:57 -05:00
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
Major production merge: GTK support, context menus, and dispatcher fixes
Core Infrastructure:
- Add Dispatching folder with LinuxDispatcher, LinuxDispatcherProvider, LinuxDispatcherTimer
- Add Native folder with P/Invoke wrappers (GTK, GLib, GDK, Cairo, WebKit)
- Add GTK host window system with GtkHostWindow and GtkSkiaSurfaceWidget
- Update LinuxApplication with GTK mode, theme handling, and icon support
- Fix duplicate LinuxDispatcher in LinuxMauiContext
Handlers:
- Add GtkWebViewManager and GtkWebViewPlatformView for GTK WebView
- Add FlexLayoutHandler and GestureManager
- Update multiple handlers with ToViewHandler fix and missing mappers
- Add MauiHandlerExtensions with ToViewHandler extension method
Views:
- Add SkiaContextMenu with hover, keyboard, and dark theme support
- Add LinuxDialogService with context menu management
- Add SkiaFlexLayout for flex container support
- Update SkiaShell with RefreshTheme, MauiShell, ContentRenderer
- Update SkiaWebView with SetMainWindow, ProcessGtkEvents
- Update SkiaImage with LoadFromBitmap method
Services:
- Add AppInfoService, ConnectivityService, DeviceDisplayService, DeviceInfoService
- Add GtkHostService, GtkContextMenuService, MauiIconGenerator
Window:
- Add CursorType enum and GtkHostWindow
- Update X11Window with SetIcon, SetCursor methods
Build: SUCCESS (0 errors)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 11:19:58 -05:00
|
|
|
## RENDERING
|
2026-01-01 10:07:57 -05:00
|
|
|
|
2026-01-01 12:20:28 -05:00
|
|
|
| File | Status | Notes |
|
|
|
|
|
|------|--------|-------|
|
|
|
|
|
| GtkSkiaSurfaceWidget.cs | [ ] | |
|
2026-01-01 10:07:57 -05:00
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
2026-01-01 12:20:28 -05:00
|
|
|
## CORE
|
2026-01-01 10:07:57 -05:00
|
|
|
|
2026-01-01 12:20:28 -05:00
|
|
|
| File | Status | Notes |
|
|
|
|
|
|------|--------|-------|
|
|
|
|
|
| LinuxApplication.cs | [ ] | |
|
|
|
|
|
| LinuxApplicationOptions.cs | [ ] | |
|