gecko-dev/widget/gtk
filips 20d7c9c0d8 Bug 1747722 - Allow changing window class hints using attributes. r=emilio,stransky
This patch adds two new attributes to the window's `html` element, `windowclass` and `windowname`, to allow directly controlling the window's class hints on Xorg/Wayland (`res_class` and `res_name`) from the chrome/JS code. When they are set, values are used as class hints for their window. When they are not set, the current behavior of determining `res_class` and `res_name` (using `gdk_get_program_class` for `res_class` and parsing `windowtype` for `res_name`) is preserved.

Changes in `widget/nsIWidget.h` and `widget/nsBaseWidget.h` are only interface changes so that `setWindowClass` can accept three attributes. Although this patch does not affect Windows, `widget/windows/nsWindow.h` and `widget/windows/nsWindow.cpp` have been updated to comply with the new interface. `xpfe/appshell/AppWindow.cpp` has been updated to get the additional attributes and call `setWindowClass` with them. The main changes are in `widget/gtk/nsWindow.h` and `widget/gtk/nsWindow.cpp`.

Differential Revision: https://phabricator.services.mozilla.com/D169720
2023-03-02 16:22:05 +00:00
..
compat
crashtests
mozgtk Bug 1772721 [Linux] Add dummy call to mozgtk to prevent its removal r=emilio 2022-06-21 06:52:02 +00:00
mozwayland Bug 1795851 [Wayland] Update EGL window size/scale in moz_container_wayland_get_egl_window() r=emilio 2022-12-06 15:18:32 +00:00
wayland Bug 1794284 [Wayland] Remove unused interfaces from nsWaylandDisplay r=rmader 2022-10-11 20:09:59 +00:00
AsyncDBus.cpp Bug 1772063 - Use Portal for Snap/Flatpak r=OlivierTilloy,emilio 2022-06-10 11:34:32 +00:00
AsyncDBus.h Bug 1772063 - Use Portal for Snap/Flatpak r=OlivierTilloy,emilio 2022-06-10 11:34:32 +00:00
AsyncGtkClipboardRequest.cpp Bug 1753411 - Deduplicate a bunch of the X11 vs. Wayland clipboard code. r=stransky 2022-02-04 22:09:44 +00:00
AsyncGtkClipboardRequest.h Bug 1753411 - Deduplicate a bunch of the X11 vs. Wayland clipboard code. r=stransky 2022-02-04 22:09:44 +00:00
CompositorWidgetChild.cpp
CompositorWidgetChild.h
CompositorWidgetParent.cpp Bug 1772513 - Fix various non-unified build issues in GTK widget code. r=stransky 2022-06-03 13:31:48 +00:00
CompositorWidgetParent.h
DMABufLibWrapper.cpp Bug 1809162 [Linux] Implement GetAndConfigureDMABufDevice() to configure dmabuf backend without gfxPlatform on RDD process r=emilio 2023-01-19 10:44:43 +00:00
DMABufLibWrapper.h Bug 1809162 [Linux] Implement GetAndConfigureDMABufDevice() to configure dmabuf backend without gfxPlatform on RDD process r=emilio 2023-01-19 10:44:43 +00:00
DMABufSurface.cpp Bug 1809026 [Linux] Reference DMABufSurface when it's created/imported r=emilio 2023-02-27 11:20:33 +00:00
DMABufSurface.h Bug 1812290 [Linux] Check if dmabuf surface copy works and don't use it on broken systems r=alwu,emilio,jgilbert 2023-02-08 13:35:08 +00:00
GRefPtr.h Bug 1772063 - Use Portal for Snap/Flatpak r=OlivierTilloy,emilio 2022-06-10 11:34:32 +00:00
GUniquePtr.h Bug 1777269 [Wayland] Apply workaround for Mutter enter/leave bogus events r=emilio 2022-09-06 13:48:12 +00:00
GfxInfo.cpp Bug 1819466 - Ship X11 EGL to NVIDIA 340.108+ users on Linux to early beta and nightly. r=gfx-reviewers,lsalzman 2023-02-28 22:51:07 +00:00
GfxInfo.h Backed out 2 changesets (bug 1777849) for causing webgl crashes. CLOSED TREE 2023-02-25 15:29:32 +02:00
GtkCompositorWidget.cpp Bug 1813407 [Linux] Allow to initialize WindowSurfaceProvider with GtkCompositorWidget for OMTC rendering r=emilio 2023-02-23 10:52:14 +00:00
GtkCompositorWidget.h Bug 1813407 [Linux] Allow to initialize WindowSurfaceProvider with GtkCompositorWidget for OMTC rendering r=emilio 2023-02-23 10:52:14 +00:00
IMContextWrapper.cpp Bug 1810406 - Handle asynchronous composition without synthesized `GDK_KEY_PRESS` event r=m_kato 2023-02-21 22:51:43 +00:00
IMContextWrapper.h Bug 1810406 - Handle asynchronous composition without synthesized `GDK_KEY_PRESS` event r=m_kato 2023-02-21 22:51:43 +00:00
InProcessGtkCompositorWidget.cpp Bug 1772513 - Fix various non-unified build issues in GTK widget code. r=stransky 2022-06-03 13:31:48 +00:00
InProcessGtkCompositorWidget.h
MPRISInterfaceDescription.h
MPRISServiceHandler.cpp Merge autoland to mozilla-central. a=merge 2022-06-04 00:43:15 +03:00
MPRISServiceHandler.h Bug 1760839 - Use more automatic memory management in GTK code. r=stransky 2022-03-23 16:14:34 +00:00
MediaKeysEventSourceFactory.cpp
MozContainer.cpp Bug 1815712 [Linux] Remove ATK maiRedundantObjectFactory as it's not used any more r=emilio 2023-02-16 10:05:17 +00:00
MozContainer.h Bug 1645677 [Linux] Call unmap for X11 mozcontainer r=emilio 2022-09-22 09:41:05 +00:00
MozContainerWayland.cpp Bug 1804973 [Wayland] Check size for valid EGLWindows only r=emilio 2022-12-15 08:09:22 +00:00
MozContainerWayland.h Bug 1795851 [Wayland] Update EGL window size/scale in moz_container_wayland_get_egl_window() r=emilio 2022-12-06 15:18:32 +00:00
NativeKeyBindings.cpp Bug 1791754: Remove bogus assertion in gtk NativeKeyBindings.cpp. r=masayuki 2022-11-30 15:01:48 +00:00
NativeKeyBindings.h Bug 1191862 - part 1: Make `nsIWidget::NativeKeyBindingsType` independent from `nsIWidget` and defined in an independent header file r=smaug 2022-02-15 08:00:05 +00:00
NativeMenuGtk.cpp Bug 1763990: Don't order popups in front of native context menus on macOS. r=mstange 2023-02-02 22:13:54 +00:00
NativeMenuGtk.h Bug 1763990: Don't order popups in front of native context menus on macOS. r=mstange 2023-02-02 22:13:54 +00:00
NativeMenuSupport.cpp Bug 1757402 - Add basic native context menu support on GTK. r=stransky 2022-02-28 14:53:24 +00:00
PCompositorWidget.ipdl Bug 1751948 - Part 1: Fix IPDL unified build issues, r=ipc-reviewers,mccr8 2022-02-28 21:01:47 +00:00
PlatformWidgetTypes.ipdlh Bug 1751948 - Part 1: Fix IPDL unified build issues, r=ipc-reviewers,mccr8 2022-02-28 21:01:47 +00:00
ScreenHelperGTK.cpp Bug 1812938 - Part 1. GetWidgetScreen returns Screen instead of nsIScreen. r=emilio,geckoview-reviewers,owlish 2023-02-06 04:51:26 +00:00
ScreenHelperGTK.h Bug 1812938 - Part 1. GetWidgetScreen returns Screen instead of nsIScreen. r=emilio,geckoview-reviewers,owlish 2023-02-06 04:51:26 +00:00
TaskbarProgress.cpp Bug 1661450 - 2/8 Add wayland required code getting opt-out by disabling MOZ_X11 r=stransky,rmader 2022-04-20 09:32:07 +00:00
TaskbarProgress.h
WakeLockListener.cpp Bug 1793119 [Linux] Inhibit screensaver during autoscroll r=botond,emilio 2022-12-02 11:58:43 +00:00
WakeLockListener.h
WaylandBuffer.cpp Bug 1794284 [Wayland] Handle missing shm interface in WaylandBufferSHM/WindowSurfaceWaylandMultiBuffer r=rmader 2022-10-11 20:09:59 +00:00
WaylandBuffer.h
WaylandVsyncSource.cpp Bug 1796130 [Wayland] Don't release callbacks registered at EnableVsync()/Refresh() r=emilio 2022-11-08 15:26:26 +00:00
WaylandVsyncSource.h Bug 1796130 [Wayland] Track and release Vsync frame callbacks so we don't get frame callback after nsWindow::Destroy() r=emilio 2022-11-08 15:26:25 +00:00
WidgetStyleCache.cpp
WidgetStyleCache.h
WidgetTraceEvent.cpp
WidgetUtilsGtk.cpp Bug 1799503 - Update Firefox via APT (not balrog) in our .deb packages r=bytesized 2023-02-15 16:40:29 +00:00
WidgetUtilsGtk.h Bug 1799503 - Update Firefox via APT (not balrog) in our .deb packages r=bytesized 2023-02-15 16:40:29 +00:00
WindowSurface.h
WindowSurfaceProvider.cpp Bug 1813407 [Linux] Allow to initialize WindowSurfaceProvider with GtkCompositorWidget for OMTC rendering r=emilio 2023-02-23 10:52:14 +00:00
WindowSurfaceProvider.h Bug 1813407 [Linux] Allow to initialize WindowSurfaceProvider with GtkCompositorWidget for OMTC rendering r=emilio 2023-02-23 10:52:14 +00:00
WindowSurfaceWaylandMultiBuffer.cpp Bug 1813407 [Linux] Get window size from compositor widget if possible in WindowSurfaceWaylandMultiBuffer backend r=emilio 2023-02-23 10:52:15 +00:00
WindowSurfaceWaylandMultiBuffer.h Bug 1813407 [Linux] Get window size from compositor widget if possible in WindowSurfaceWaylandMultiBuffer backend r=emilio 2023-02-23 10:52:15 +00:00
WindowSurfaceX11.cpp Bug 1772513 - Fix various non-unified build issues in GTK widget code. r=stransky 2022-06-03 13:31:48 +00:00
WindowSurfaceX11.h Bug 1772513 - Fix various non-unified build issues in GTK widget code. r=stransky 2022-06-03 13:31:48 +00:00
WindowSurfaceX11Image.cpp Bug 1750017 [Linux] Don't set shape mask to released drawable, r=lsalzman 2022-01-17 19:14:13 +00:00
WindowSurfaceX11Image.h
WindowSurfaceX11SHM.cpp
WindowSurfaceX11SHM.h
components.conf Bug 1773770: Part 9 - Migrate widget component content proxies to static registration. r=mccr8 2022-06-30 09:12:18 +00:00
gtk3drawing.cpp Bug 1817451 - Make auto-style outline always non-native. r=cmartin,stransky,mac-reviewers,bradwerth 2023-02-20 11:58:38 +00:00
gtkdrawing.h Bug 1817451 - Make auto-style outline always non-native. r=cmartin,stransky,mac-reviewers,bradwerth 2023-02-20 11:58:38 +00:00
moz.build Bug 1815712 [Linux] Remove ATK maiRedundantObjectFactory as it's not used any more r=emilio 2023-02-16 10:05:17 +00:00
nsAppShell.cpp Bug 1800972 [Linux] Implement drag of multiple items r=emilio 2022-11-22 08:14:27 +00:00
nsAppShell.h Bug 1343826 - Return updated timezone on system timezone change. r=smaug,mstange,stransky,handyman 2022-06-14 19:41:30 +00:00
nsApplicationChooser.cpp Bug 1772513 - Fix various non-unified build issues in GTK widget code. r=stransky 2022-06-03 13:31:48 +00:00
nsApplicationChooser.h
nsBidiKeyboard.cpp
nsBidiKeyboard.h
nsClipboard.cpp Bug 1776879, replace text/unicode for clipboard and drag and drop and use text/plain directly, r=edgar,mak,stransky,geckoview-reviewers,extension-reviewers,zombie,m_kato 2023-02-01 23:30:55 +00:00
nsClipboard.h Bug 1803545 [Linux] Implement nsClipboard::AsyncGetData() r=nika,hsivonen 2023-01-09 12:36:46 +00:00
nsClipboardWayland.cpp Bug 1743365 [Linux] Cache clipboard targets r=emilio 2022-02-11 07:43:11 +00:00
nsClipboardWayland.h Bug 1743365 [Linux] Cache clipboard targets r=emilio 2022-02-11 07:43:11 +00:00
nsClipboardX11.cpp Bug 1743365 [Linux] Cache clipboard targets r=emilio 2022-02-11 07:43:11 +00:00
nsClipboardX11.h Bug 1743365 [Linux] Cache clipboard targets r=emilio 2022-02-11 07:43:11 +00:00
nsColorPicker.cpp Bug 960984 - Implement the list attribute for <input type=color>. r=emilio,geckoview-reviewers,m_kato 2022-12-14 18:17:59 +00:00
nsColorPicker.h Bug 960984 - Implement the list attribute for <input type=color>. r=emilio,geckoview-reviewers,m_kato 2022-12-14 18:17:59 +00:00
nsDeviceContextSpecG.cpp Bug 1799920: Use async move on printing to file on Linux. r=nika,emilio 2023-01-09 22:48:40 +00:00
nsDeviceContextSpecG.h Bug 1799920: Use async move on printing to file on Linux. r=nika,emilio 2023-01-09 22:48:40 +00:00
nsDragService.cpp Bug 1776879, replace text/unicode for clipboard and drag and drop and use text/plain directly, r=edgar,mak,stransky,geckoview-reviewers,extension-reviewers,zombie,m_kato 2023-02-01 23:30:55 +00:00
nsDragService.h Bug 1800972 [Linux] Implement drag of multiple items r=emilio 2022-11-22 08:14:27 +00:00
nsFilePicker.cpp Bug 1816740 [4/6] - convert nsIFilePicker::mode* into a proper enum r=ipc-reviewers,karlt,mstange,handyman,nika 2023-02-22 21:05:24 +00:00
nsFilePicker.h Bug 1816740 [3/6] - convert nsIFilePicker::result* into a proper enum r=ipc-reviewers,karlt,mstange,handyman,nika 2023-02-22 21:05:23 +00:00
nsGTKToolkit.h Bug 1767546 - Support XDG_ACTIVATION_TOKEN. r=stransky 2022-11-08 12:43:24 +00:00
nsGtkCursors.h
nsGtkKeyUtils.cpp Bug 1807812 - Remove WidgetEventTime::mTime, r=masayuki,geckoview-reviewers,m_kato 2023-01-02 12:31:40 +00:00
nsGtkKeyUtils.h Bug 1772513 - Fix various non-unified build issues in GTK widget code. r=stransky 2022-06-03 13:31:48 +00:00
nsGtkUtils.h Bug 1783195 [Linux] Implement MozClearHandleID to clean glib handle r=emilio 2022-08-08 17:52:20 +00:00
nsImageToPixbuf.cpp Bug 1760839 - Use more automatic memory management in GTK code. r=stransky 2022-03-23 16:14:34 +00:00
nsImageToPixbuf.h Bug 1760839 - Use more automatic memory management in GTK code. r=stransky 2022-03-23 16:14:34 +00:00
nsLookAndFeel.cpp Bug 1819034 - Reset LookAndFeel only if color scheme is really changed r=stransky 2023-02-28 14:08:37 +00:00
nsLookAndFeel.h Bug 1819034 - Reset LookAndFeel only if color scheme is really changed r=stransky 2023-02-28 14:08:37 +00:00
nsNativeThemeGTK.cpp Bug 1817396 - Try to draw the native GTK tooltip a bit harder. r=stransky 2023-02-20 16:18:26 +00:00
nsNativeThemeGTK.h Bug 1814015 - Cleanup gtk native theme unit usage. r=stransky 2023-02-01 13:44:16 +00:00
nsPrintDialogGTK.cpp Bug 1755974 - Fix Linux system print dialog to take the pages-per-sheet from print preview. r=dholbert 2022-12-14 00:04:21 +00:00
nsPrintDialogGTK.h Bug 1769113 - Kill off nsIPrintingPromptService and use nsIPrintDialogService directly. r=emilio 2022-05-13 11:20:59 +00:00
nsPrintSettingsGTK.cpp Bug 1760836 - Support printing to an nsIOutputStream. r=jfkthame,jrmuizel,webdriver-reviewers,geckoview-reviewers,agi 2022-03-30 18:51:58 +00:00
nsPrintSettingsGTK.h Bug 1770211 p1 - Use nsIPrintSettings for nsDeviceContextSpecGTK::mPrintSettings. r=bobowen 2022-05-20 17:33:21 +00:00
nsPrintSettingsServiceGTK.cpp Bug 1766488 - Fix bustage in nsPrintSettingsServiceGTK.cpp (from bug 1763989). r=hiro 2022-04-26 23:06:29 +00:00
nsPrintSettingsServiceGTK.h
nsShmImage.cpp
nsShmImage.h
nsSound.cpp
nsSound.h
nsToolkit.cpp Bug 1767546 - Support XDG_ACTIVATION_TOKEN. r=stransky 2022-11-08 12:43:24 +00:00
nsUserIdleServiceGTK.cpp Bug 1768920 - Avoid polling every 5 seconds in nsUserIdleService, r=dthayer,geckoview-reviewers,owlish. 2023-01-16 19:53:33 +00:00
nsUserIdleServiceGTK.h Bug 1768920 - Avoid polling every 5 seconds in nsUserIdleService, r=dthayer,geckoview-reviewers,owlish. 2023-01-16 19:53:33 +00:00
nsWaylandDisplay.cpp Bug 1794284 [Wayland] Check critical Wayland interfaces on startup r=rmader 2022-10-11 20:10:00 +00:00
nsWaylandDisplay.h Bug 1794284 [Wayland] Remove unused interfaces from nsWaylandDisplay r=rmader 2022-10-11 20:09:59 +00:00
nsWidgetFactory.cpp Bug 1661450 - 2/8 Add wayland required code getting opt-out by disabling MOZ_X11 r=stransky,rmader 2022-04-20 09:32:07 +00:00
nsWidgetFactory.h Bug 1514936, part 2 - Drop the outer arguments from static components. r=xpcom-reviewers,nika 2022-05-17 20:24:19 +00:00
nsWindow.cpp Bug 1747722 - Allow changing window class hints using attributes. r=emilio,stransky 2023-03-02 16:22:05 +00:00
nsWindow.h Bug 1747722 - Allow changing window class hints using attributes. r=emilio,stransky 2023-03-02 16:22:05 +00:00