Put logical monitor grid lookup API in MetaMonitorManager

Don't falsely assume the screen has anything to do with the monitor
grid, and thus move the related API to MetaMonitorManager.

https://bugzilla.gnome.org/show_bug.cgi?id=777732
This commit is contained in:
Jonas Ådahl
2016-11-30 10:49:00 +08:00
parent 9337d18468
commit 2df4ebff47
6 changed files with 36 additions and 39 deletions

View File

@ -373,6 +373,10 @@ MetaLogicalMonitor *meta_monitor_manager_get_logical_monitor_from_number (MetaMo
MetaLogicalMonitor *meta_monitor_manager_get_primary_logical_monitor (MetaMonitorManager *manager);
MetaLogicalMonitor *meta_monitor_manager_get_logical_monitor_at (MetaMonitorManager *manager,
int x,
int y);
MetaOutput *meta_monitor_manager_get_outputs (MetaMonitorManager *manager,
unsigned int *n_outputs);

View File

@ -1329,6 +1329,22 @@ meta_monitor_manager_get_primary_logical_monitor (MetaMonitorManager *manager)
return manager->primary_logical_monitor;
}
MetaLogicalMonitor *
meta_monitor_manager_get_logical_monitor_at (MetaMonitorManager *manager,
int x,
int y)
{
unsigned int i;
for (i = 0; i < manager->n_logical_monitors; i++)
{
if (POINT_IN_RECT (x, y, manager->logical_monitors[i].rect))
return &manager->logical_monitors[i];
}
return NULL;
}
MetaOutput *
meta_monitor_manager_get_outputs (MetaMonitorManager *manager,
unsigned int *n_outputs)