aboutsummaryrefslogtreecommitdiffstats
path: root/src/x11/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/x11/mod.rs')
-rw-r--r--src/x11/mod.rs27
1 files changed, 4 insertions, 23 deletions
diff --git a/src/x11/mod.rs b/src/x11/mod.rs
index 7dd3fb0..0f5f557 100644
--- a/src/x11/mod.rs
+++ b/src/x11/mod.rs
@@ -3,8 +3,11 @@ use libc;
use std::{mem, ptr};
use std::sync::atomics::AtomicBool;
+pub use self::monitor::{MonitorID, get_available_monitors, get_primary_monitor};
+
mod events;
mod ffi;
+mod monitor;
pub struct Window {
display: *mut ffi::Display,
@@ -19,28 +22,6 @@ pub struct Window {
is_fullscreen: bool,
}
-pub struct MonitorID(uint);
-
-pub fn get_available_monitors() -> Vec<MonitorID> {
- vec![get_primary_monitor()]
-}
-
-pub fn get_primary_monitor() -> MonitorID {
- MonitorID(0u)
-}
-
-impl MonitorID {
- pub fn get_name(&self) -> Option<String> {
- Some("<Unknown>".to_string())
- }
-
- pub fn get_dimensions(&self) -> (uint, uint) {
- //unimplemented!()
- // TODO: Get the real dimensions from the monitor
- (1024, 768)
- }
-}
-
impl Window {
pub fn new(builder: WindowBuilder) -> Result<Window, String> {
let dimensions = builder.dimensions.unwrap_or((800, 600));
@@ -159,7 +140,7 @@ impl Window {
// finally creating the window
let window = unsafe {
- let win = ffi::XCreateWindow(display, root, 50, 50, dimensions.val0() as libc::c_uint,
+ let win = ffi::XCreateWindow(display, root, 0, 0, dimensions.val0() as libc::c_uint,
dimensions.val1() as libc::c_uint, 0, visual_infos.depth, ffi::InputOutput,
visual_infos.visual, window_attributes,
&mut set_win_attr);