AsyncDBus.cpp |
|
3720 |
AsyncDBus.h |
IsExclusive = |
1516 |
AsyncGtkClipboardRequest.cpp |
|
4698 |
AsyncGtkClipboardRequest.h |
|
2082 |
compat |
|
|
components.conf |
|
5894 |
CompositorWidgetChild.cpp |
|
1636 |
CompositorWidgetChild.h |
|
1494 |
CompositorWidgetParent.cpp |
|
1698 |
CompositorWidgetParent.h |
|
1465 |
crashtests |
|
|
DBusMenu.cpp |
static |
2533 |
DBusMenu.h |
|
6525 |
DBusService.cpp |
|
11310 |
DBusService.h |
|
2431 |
DMABufFormats.cpp |
unused |
12538 |
DMABufFormats.h |
|
3497 |
DMABufLibWrapper.cpp |
2x2 subsampled Cr:Cb plane |
10762 |
DMABufLibWrapper.h |
MOZ_LOGGING |
9317 |
DMABufSurface.cpp |
TODO:
- DRM device selection:
https://lists.freedesktop.org/archives/wayland-devel/2018-November/039660.html
- Use uint64_t mBufferModifiers / mGbmBufferObject for RGBA
- Remove file descriptors open/close?
|
71629 |
DMABufSurface.h |
|
16686 |
GfxInfo.cpp |
|
54984 |
GfxInfo.h |
WIDGET_GTK_GFXINFO_h__ |
4919 |
GfxInfoUtils.h |
WIDGET_GTK_GFXINFO_h__ |
2900 |
GRefPtr.h |
|
2248 |
gtk3drawing.cpp |
This file contains painting functions for each of the gtk2 widgets.
Adapted from the gtkdrawing.c, and gtk+2.0 source.
|
37284 |
GtkCompositorWidget.cpp |
MOZ_LOGGING |
5961 |
GtkCompositorWidget.h |
= nullptr |
4218 |
gtkdrawing.h |
gtkdrawing.h: GTK widget rendering utilities
gtkdrawing provides an API for rendering GTK widgets in the
current theme to a pixmap or window, without requiring an actual
widget instantiation, similar to the Macintosh Appearance Manager
or Windows XP's DrawThemeBackground() API.
|
12913 |
GUniquePtr.h |
|
1128 |
IMContextWrapper.cpp |
|
130639 |
IMContextWrapper.h |
KeyHandlingState is result of IMContextWrapper::OnKeyEvent().
|
27544 |
InProcessGtkCompositorWidget.cpp |
static |
1627 |
InProcessGtkCompositorWidget.h |
|
954 |
MediaKeysEventSourceFactory.cpp |
|
450 |
metrics.yaml |
|
1563 |
moz.build |
|
5020 |
MozContainer.cpp |
MOZ_LOGGING |
8300 |
MozContainer.h |
MozContainer
This class serves two purposes in the nsIWidget implementation.
- It provides objects to receive signals from GTK for events on native
windows.
- It provides GdkWindow to draw content.
|
2177 |
MozContainerWayland.cpp |
MozContainerWayland is a wrapper over MozContainer which manages
WaylandSurface for nsWindow.
The widget scheme looks like:
---------------------------------------------------------
| mShell Gtk widget (contains wl_surface owned by Gtk+) |
| |
| --------------------------------------------------- |
| | mContainer (contains wl_surface owned by Gtk+) | |
| | | |
| | --------------------------------------------- | |
| | | wl_subsurface (owned by WaylandSurface) | | |
| | | | | |
| | | | | |
| | | | | |
| | --------------------------------------------- | |
| --------------------------------------------------- |
---------------------------------------------------------
We draw to wl_subsurface managed by WaylandSurface/MozContainerWayland.
We need to wait until wl_surface of mContainer is created
and then we create and attach our wl_subsurface to it.
First wl_subsurface creation has these steps:
1) moz_container_wayland_size_allocate() handler is called when
mContainer size/position is known.
It calls moz_container_wayland_surface_create_locked(), registers
a frame callback handler
moz_container_wayland_frame_callback_handler().
2) moz_container_wayland_frame_callback_handler() is called
when wl_surface owned by mozContainer is ready.
We call initial_draw_cbs() handler and we can create our wl_subsurface
on top of wl_surface owned by mozContainer.
When MozContainer hides/show again, moz_container_wayland_size_allocate()
handler may not be called as MozContainer size is set. So after first
show/hide sequence use moz_container_wayland_map_event() to create
wl_subsurface of MozContainer.
|
12896 |
MozContainerWayland.h |
MozContainer
This class serves three purposes in the nsIWidget implementation.
- It provides objects to receive signals from GTK for events on native
windows.
- It provides GdkWindow to draw content on Wayland or when Gtk+ renders
client side decorations to mShell.
|
2449 |
mozgtk |
|
|
mozwayland |
|
|
MPRISInterfaceDescription.h |
|
5176 |
MPRISServiceHandler.cpp |
fast seek |
36112 |
MPRISServiceHandler.h |
This class implements the "MPRIS" D-Bus Service
(https://specifications.freedesktop.org/mpris-spec/2.2),
which is used to communicate with the Desktop Environment about the
Multimedia playing in Gecko.
Note that this interface requires many methods which may not be supported by
Gecko, the interface
however provides CanXYZ properties for these methods, so the method is
defined but won't be executed.
Also note that the following defines are for parts that the MPRIS Spec
defines optional. The code won't
compile with any of the defines set, yet, as those aren't implemented yet and
probably never will be of
use for gecko. For sake of completeness, they have been added until the
decision about their implementation
is finally made.
The constexpr'ed methods are capabilities of the user agent known at compile
time, e.g. we decided at
compile time whether we ever want to support closing the user agent via MPRIS
(Quit() and CanQuit()).
Other properties like CanPlay() might depend on the runtime state (is there
media available for playback?)
and thus aren't a constexpr but merely a const method.
|
7318 |
NativeKeyBindings.cpp |
|
18532 |
NativeKeyBindings.h |
GetEditCommandsForTests() returns commands performed in native widget
in typical environment. I.e., this does NOT refer customized shortcut
key mappings of the environment.
|
1906 |
NativeMenuGtk.cpp |
ctrlKey = |
28211 |
NativeMenuGtk.h |
|
2430 |
NativeMenuSupport.cpp |
|
1286 |
nsApplicationChooser.cpp |
static |
3889 |
nsApplicationChooser.h |
|
1019 |
nsAppShell.cpp |
static |
18776 |
nsAppShell.h |
nsAppShell_h__ |
2284 |
nsBidiKeyboard.cpp |
|
1489 |
nsBidiKeyboard.h |
|
637 |
nsClipboard.cpp |
|
52282 |
nsClipboard.h |
|
5646 |
nsClipboardWayland.cpp |
|
2508 |
nsClipboardWayland.h |
__nsClipboardWayland_h_ |
1035 |
nsClipboardX11.cpp |
|
5996 |
nsClipboardX11.h |
__nsClipboardX11_h_ |
1139 |
nsColorPicker.cpp |
obsolete, unused 'pixel' value |
8027 |
nsColorPicker.h |
|
2167 |
nsDeviceContextSpecG.cpp |
for PR_GetEnv |
15216 |
nsDeviceContextSpecG.h |
should be <limits.h>? |
1879 |
nsDragService.cpp |
|
109395 |
nsDragService.h |
GTK native nsIDragSession implementation
|
14076 |
nsFilePicker.cpp |
MOZ_LOGGING |
24258 |
nsFilePicker.h |
mFileChooser is non-null while open.
|
3035 |
nsGtkCursors.h |
MOZ_CURSOR_HAND_GRAB |
25232 |
nsGtkKeyUtils.cpp |
|
96605 |
nsGtkKeyUtils.h |
KeymapWrapper is a wrapper class of GdkKeymap. GdkKeymap doesn't support
all our needs, therefore, we need to access lower level APIs.
But such code is usually complex and might be slow. Against such issues,
we should cache some information.
This class provides only static methods. The methods is using internal
singleton instance which is initialized by default GdkKeymap. When the
GdkKeymap is destroyed, the singleton instance will be destroyed.
|
16958 |
nsGTKToolkit.h |
Wrapper around the thread running the message pump.
The toolkit abstraction is necessary because the message pump must
execute within the same thread that created the widget under Win32.
|
1604 |
nsGtkUtils.h |
|
2031 |
nsImageToPixbuf.cpp |
|
4034 |
nsImageToPixbuf.h |
|
1048 |
nsLookAndFeel.cpp |
MOZ_LOGGING |
89838 |
nsLookAndFeel.h |
|
7782 |
nsNativeThemeGTK.cpp |
static |
34094 |
nsNativeThemeGTK.h |
|
4904 |
nsPrintDialogGTK.cpp |
|
24930 |
nsPrintDialogGTK.h |
|
848 |
nsPrintSettingsGTK.cpp |
---------------------------------------------------
|
22306 |
nsPrintSettingsGTK.h |
//*** nsPrintSettingsGTK
//*****************************************************************************
class nsPrintSettingsGTK : public nsPrintSettings {
public:
NS_DECL_ISUPPORTS_INHERITED
NS_INLINE_DECL_STATIC_IID(NS_PRINTSETTINGSGTK_IID)
nsPrintSettingsGTK();
explicit nsPrintSettingsGTK(const PrintSettingsInitializer& aSettings);
static nsPrintSettingsGTK* From(nsIPrintSettings* aPrintSettings) {
return static_cast<nsPrintSettingsGTK*>(aPrintSettings);
}
// We're overriding these methods because we want to read/write with GTK
// objects, not local variables. This allows a simpler settings implementation
// between Gecko and GTK.
GtkPageSetup* GetGtkPageSetup() { return mPageSetup; };
void SetGtkPageSetup(GtkPageSetup* aPageSetup);
GtkPrintSettings* GetGtkPrintSettings() { return mPrintSettings; };
void SetGtkPrintSettings(GtkPrintSettings* aPrintSettings);
GtkPrinter* GetGtkPrinter() { return mGTKPrinter; };
void SetGtkPrinter(GtkPrinter* aPrinter);
// Reversed, color, orientation and file name are all stored in the
// GtkPrintSettings. Orientation is also stored in the GtkPageSetup and its
// setting takes priority when getting the orientation.
NS_IMETHOD GetPrintReversed(bool* aPrintReversed) override;
NS_IMETHOD SetPrintReversed(bool aPrintReversed) override;
NS_IMETHOD GetPrintInColor(bool* aPrintInColor) override;
NS_IMETHOD SetPrintInColor(bool aPrintInColor) override;
NS_IMETHOD GetOrientation(int32_t* aOrientation) override;
NS_IMETHOD SetOrientation(int32_t aOrientation) override;
NS_IMETHOD GetToFileName(nsAString& aToFileName) override;
NS_IMETHOD SetToFileName(const nsAString& aToFileName) override;
// Gets/Sets the printer name in the GtkPrintSettings. If no printer name is
// specified there, you will get back the name of the current internal
// GtkPrinter.
NS_IMETHOD GetPrinterName(nsAString& Printer) override;
NS_IMETHOD SetPrinterName(const nsAString& aPrinter) override;
// Number of copies is stored/gotten from the GtkPrintSettings.
NS_IMETHOD GetNumCopies(int32_t* aNumCopies) override;
NS_IMETHOD SetNumCopies(int32_t aNumCopies) override;
NS_IMETHOD GetScaling(double* aScaling) override;
NS_IMETHOD SetScaling(double aScaling) override;
// A name recognised by GTK is strongly advised here, as this is used to
// create a GtkPaperSize.
NS_IMETHOD GetPaperId(nsAString& aPaperId) override;
NS_IMETHOD SetPaperId(const nsAString& aPaperId) override;
NS_IMETHOD SetUnwriteableMarginInTwips(
nsIntMargin& aUnwriteableMargin) override;
NS_IMETHOD SetUnwriteableMarginTop(double aUnwriteableMarginTop) override;
NS_IMETHOD SetUnwriteableMarginLeft(double aUnwriteableMarginLeft) override;
NS_IMETHOD SetUnwriteableMarginBottom(
double aUnwriteableMarginBottom) override;
NS_IMETHOD SetUnwriteableMarginRight(double aUnwriteableMarginRight) override;
NS_IMETHOD GetPaperWidth(double* aPaperWidth) override;
NS_IMETHOD SetPaperWidth(double aPaperWidth) override;
NS_IMETHOD GetPaperHeight(double* aPaperHeight) override;
NS_IMETHOD SetPaperHeight(double aPaperHeight) override;
NS_IMETHOD SetPaperSizeUnit(int16_t aPaperSizeUnit) override;
NS_IMETHOD GetEffectivePageSize(double* aWidth, double* aHeight) override;
NS_IMETHOD SetPageRanges(const nsTArray<int32_t>&) override;
NS_IMETHOD GetPageRanges(nsTArray<int32_t>&) override;
NS_IMETHOD GetResolution(int32_t* aResolution) override;
NS_IMETHOD SetResolution(int32_t aResolution) override;
NS_IMETHOD GetDuplex(int32_t* aDuplex) override;
NS_IMETHOD SetDuplex(int32_t aDuplex) override;
NS_IMETHOD GetOutputFormat(int16_t* aOutputFormat) override;
protected:
virtual ~nsPrintSettingsGTK();
nsPrintSettingsGTK(const nsPrintSettingsGTK& src);
nsPrintSettingsGTK& operator=(const nsPrintSettingsGTK& rhs);
virtual nsresult _Clone(nsIPrintSettings** _retval) override;
virtual nsresult _Assign(nsIPrintSettings* aPS) override;
GtkUnit GetGTKUnit(int16_t aGeckoUnit);
void SaveNewPageSize();
/**
Re-initialize mUnwriteableMargin with values from mPageSetup.
Should be called whenever mPageSetup is initialized or overwritten.
|
5257 |
nsPrintSettingsServiceGTK.cpp |
|
2848 |
nsPrintSettingsServiceGTK.h |
|
1015 |
nsShmImage.cpp |
|
9953 |
nsShmImage.h |
|
1790 |
nsSound.cpp |
used to play sounds with libcanberra. |
12914 |
nsSound.h |
__nsSound_h__ |
771 |
nsToolkit.cpp |
|
834 |
nsUserIdleServiceGTK.cpp |
|
10592 |
nsUserIdleServiceGTK.h |
|
2259 |
nsWaylandDisplay.cpp |
|
24506 |
nsWaylandDisplay.h |
|
7188 |
nsWidgetFactory.cpp |
|
1832 |
nsWidgetFactory.h |
|
646 |
nsWindow.cpp |
|
340905 |
nsWindow.h |
MOZ_LOGGING |
38580 |
PCompositorWidget.ipdl |
|
895 |
PlatformWidgetTypes.ipdlh |
|
824 |
ScreenHelperGTK.cpp |
MOZ_X11 |
10051 |
ScreenHelperGTK.h |
|
893 |
TaskbarProgress.cpp |
TaskbarProgress
**************************************************************************** |
3459 |
TaskbarProgress.h |
|
860 |
v4l2test |
|
|
va_drmcommon.h |
\brief DRM authentication type. |
6035 |
vaapitest |
|
|
WakeLockListener.cpp |
|
30990 |
WakeLockListener.h |
Receives WakeLock events and simply passes it on to the right WakeLockTopic
to inhibit the screensaver.
|
1056 |
wayland |
|
|
WaylandBuffer.cpp |
MOZ_LOGGING |
12529 |
WaylandBuffer.h |
|
6038 |
WaylandSurface.cpp |
MOZ_LOGGING |
47290 |
WaylandSurface.h |
Workaround for bug at wayland-util.h,
present in wayland-devel < 1.12
|
19355 |
WaylandSurfaceLock.cpp |
flush display |
1423 |
WaylandSurfaceLock.h |
__MOZ_WAYLAND_SURFACE_LOCK_H__ |
1262 |
WaylandVsyncSource.cpp |
MOZ_LOGGING |
11630 |
WaylandVsyncSource.h |
WaylandVsyncSource
This class provides a per-widget VsyncSource under Wayland, emulated using
frame callbacks on the widget surface with empty surface commits.
Wayland does not expose vsync/vblank, as it considers that an implementation
detail the clients should not concern themselves with. Instead, frame
callbacks are provided whenever the compositor believes it is a good time to
start drawing the next frame for a particular surface, giving us as much
time as possible to do so.
Note that the compositor sends frame callbacks only when it sees fit, and
when that may be is entirely up to the compositor. One cannot expect a
certain rate of callbacks, or any callbacks at all. Examples of common
variations would be surfaces moved between outputs with different refresh
rates, and surfaces that are hidden and therefore do not receieve any
callbacks at all. Other hypothetical scenarios of variation could be
throttling to conserve power, or because a user has requested it.
|
3812 |
WidgetStyleCache.cpp |
Some GTK engines paint the first and last cell
of a TreeView header with a highlight.
Since we do not know where our widget will be relative
to the other buttons in the TreeView header, we must
paint it as a button that is between two others,
thus ensuring it is neither the first or last button
in the header.
GTK doesn't give us a way to do this explicitly,
so we must paint with a button that is between two
others.
|
42017 |
WidgetStyleCache.h |
Return a new style context based on aWidget, as a child of aParentStyle.
If aWidget still has a floating reference, then it is sunk and released.
|
2263 |
WidgetUtilsGtk.cpp |
MOZ_X11 |
17866 |
WidgetUtilsGtk.h |
See WidgetUtils::IsTouchDeviceSupportPresent(). |
2556 |
WindowSurface.h |
|
1348 |
WindowSurfaceCairo.cpp |
|
3228 |
WindowSurfaceCairo.h |
|
1109 |
WindowSurfaceProvider.cpp |
MOZ_LOGGING |
6391 |
WindowSurfaceProvider.h |
Holds the logic for creating WindowSurface's for a GTK nsWindow.
The main purpose of this class is to allow sharing of logic between
nsWindow and GtkCompositorWidget, for when OMTC is enabled or disabled.
|
3389 |
WindowSurfaceWaylandMultiBuffer.cpp |
MOZ_LOGGING |
13622 |
WindowSurfaceWaylandMultiBuffer.h |
|
3150 |
WindowSurfaceX11.cpp |
static |
1513 |
WindowSurfaceX11.h |
|
1129 |
WindowSurfaceX11Image.cpp |
|
4171 |
WindowSurfaceX11Image.h |
|
1222 |
WindowSurfaceX11SHM.cpp |
|
984 |
WindowSurfaceX11SHM.h |
|
1115 |