diff options
author | Armin Krezović <krezovic.armin@gmail.com> | 2017-08-26 21:22:34 +0200 |
---|---|---|
committer | Jonas Ådahl <jadahl@gmail.com> | 2018-07-06 19:47:16 +0200 |
commit | e1c67a1824d32a581fa0c649ee8ffea47d56a228 (patch) | |
tree | d45671814af10dfcb58a74e3d1cfd580277f1839 /src/core/screen.c | |
parent | 68f261e8e22d94236866b92d7d21d55c68de41da (diff) | |
download | mutter-e1c67a1824d32a581fa0c649ee8ffea47d56a228.tar.gz |
Move monitor management API to MetaDisplay
This includes changing various users to use MetaDisplay directly, who
used MetaScreen only for this before.
https://bugzilla.gnome.org/show_bug.cgi?id=759538
Diffstat (limited to 'src/core/screen.c')
-rw-r--r-- | src/core/screen.c | 177 |
1 files changed, 0 insertions, 177 deletions
diff --git a/src/core/screen.c b/src/core/screen.c index 9c16dc14e..eb9f2f5d8 100644 --- a/src/core/screen.c +++ b/src/core/screen.c @@ -744,144 +744,6 @@ meta_screen_get_mouse_window (MetaScreen *screen, return window; } -int -meta_screen_get_monitor_index_for_rect (MetaScreen *screen, - MetaRectangle *rect) -{ - MetaBackend *backend = meta_get_backend (); - MetaMonitorManager *monitor_manager = - meta_backend_get_monitor_manager (backend); - MetaLogicalMonitor *logical_monitor; - - logical_monitor = - meta_monitor_manager_get_logical_monitor_from_rect (monitor_manager, rect); - if (!logical_monitor) - return -1; - - return logical_monitor->number; -} - -int -meta_screen_get_monitor_neighbor_index (MetaScreen *screen, - int which_monitor, - MetaScreenDirection direction) -{ - MetaBackend *backend = meta_get_backend (); - MetaMonitorManager *monitor_manager = - meta_backend_get_monitor_manager (backend); - MetaLogicalMonitor *logical_monitor; - MetaLogicalMonitor *neighbor; - - logical_monitor = - meta_monitor_manager_get_logical_monitor_from_number (monitor_manager, - which_monitor); - neighbor = meta_monitor_manager_get_logical_monitor_neighbor (monitor_manager, - logical_monitor, - direction); - return neighbor ? neighbor->number : -1; -} - -/** - * meta_screen_get_current_monitor: - * @screen: a #MetaScreen - * - * Gets the index of the monitor that currently has the mouse pointer. - * - * Return value: a monitor index - */ -int -meta_screen_get_current_monitor (MetaScreen *screen) -{ - MetaBackend *backend = meta_get_backend (); - MetaLogicalMonitor *logical_monitor; - - logical_monitor = meta_backend_get_current_logical_monitor (backend); - - /* Pretend its the first when there is no actual current monitor. */ - if (!logical_monitor) - return 0; - - return logical_monitor->number; -} - -/** - * meta_screen_get_n_monitors: - * @screen: a #MetaScreen - * - * Gets the number of monitors that are joined together to form @screen. - * - * Return value: the number of monitors - */ -int -meta_screen_get_n_monitors (MetaScreen *screen) -{ - MetaBackend *backend = meta_get_backend (); - MetaMonitorManager *monitor_manager = - meta_backend_get_monitor_manager (backend); - - g_return_val_if_fail (META_IS_SCREEN (screen), 0); - - return meta_monitor_manager_get_num_logical_monitors (monitor_manager); -} - -/** - * meta_screen_get_primary_monitor: - * @screen: a #MetaScreen - * - * Gets the index of the primary monitor on this @screen. - * - * Return value: a monitor index - */ -int -meta_screen_get_primary_monitor (MetaScreen *screen) -{ - MetaBackend *backend = meta_get_backend (); - MetaMonitorManager *monitor_manager = - meta_backend_get_monitor_manager (backend); - MetaLogicalMonitor *logical_monitor; - - g_return_val_if_fail (META_IS_SCREEN (screen), 0); - - logical_monitor = - meta_monitor_manager_get_primary_logical_monitor (monitor_manager); - if (logical_monitor) - return logical_monitor->number; - else - return -1; -} - -/** - * meta_screen_get_monitor_geometry: - * @screen: a #MetaScreen - * @monitor: the monitor number - * @geometry: (out): location to store the monitor geometry - * - * Stores the location and size of the indicated monitor in @geometry. - */ -void -meta_screen_get_monitor_geometry (MetaScreen *screen, - int monitor, - MetaRectangle *geometry) -{ - MetaBackend *backend = meta_get_backend (); - MetaMonitorManager *monitor_manager = - meta_backend_get_monitor_manager (backend); - MetaLogicalMonitor *logical_monitor; -#ifndef G_DISABLE_CHECKS - int n_logical_monitors = - meta_monitor_manager_get_num_logical_monitors (monitor_manager); -#endif - - g_return_if_fail (META_IS_SCREEN (screen)); - g_return_if_fail (monitor >= 0 && monitor < n_logical_monitors); - g_return_if_fail (geometry != NULL); - - logical_monitor = - meta_monitor_manager_get_logical_monitor_from_number (monitor_manager, - monitor); - *geometry = logical_monitor->rect; -} - #define _NET_WM_ORIENTATION_HORZ 0 #define _NET_WM_ORIENTATION_VERT 1 @@ -1594,42 +1456,3 @@ meta_screen_set_active_workspace_hint (MetaScreen *screen) 32, PropModeReplace, (guchar*) data, 1); meta_error_trap_pop (x11_display); } - -/** - * meta_screen_get_monitor_in_fullscreen: - * @screen: a #MetaScreen - * @monitor: the monitor number - * - * Determines whether there is a fullscreen window obscuring the specified - * monitor. If there is a fullscreen window, the desktop environment will - * typically hide any controls that might obscure the fullscreen window. - * - * You can get notification when this changes by connecting to - * MetaScreen::in-fullscreen-changed. - * - * Returns: %TRUE if there is a fullscreen window covering the specified monitor. - */ -gboolean -meta_screen_get_monitor_in_fullscreen (MetaScreen *screen, - int monitor) -{ - MetaBackend *backend = meta_get_backend (); - MetaMonitorManager *monitor_manager = - meta_backend_get_monitor_manager (backend); - MetaLogicalMonitor *logical_monitor; -#ifndef G_DISABLE_CHECKS - int n_logical_monitors = - meta_monitor_manager_get_num_logical_monitors (monitor_manager); -#endif - - g_return_val_if_fail (META_IS_SCREEN (screen), FALSE); - g_return_val_if_fail (monitor >= 0 && - monitor < n_logical_monitors, FALSE); - - logical_monitor = - meta_monitor_manager_get_logical_monitor_from_number (monitor_manager, - monitor); - - /* We use -1 as a flag to mean "not known yet" for notification purposes */ - return logical_monitor->in_fullscreen == TRUE; -} |