Made some necessary enhancements to class Screen; the app_server also
has to care about refresh rates. Also changed Screen::GetMode() (formerly Resolution()) to return all interesting values, so that hopefully no one will call it anymore like RootLayer::SetScreens() did. Greatly improved the horrible RootLayer::SetScreens(). The app_server is now able to deal with failing HWInterface::SetMode() calls; in this case, it will fall back to the hardware's current mode. This now also works correctly in combination with the vesa driver, so that you don't have to compile the app_server with the same resolution you boot in anymore. SetMode() now always returns if it succeeded or not. Renamed RootLayer::fScreenXYResolution to fScreenWidth/Height respectively. Removed the useless DisplayDriver::DisplayMode() method. Added B_GET_DISPLAY_MODE to the required accelerant hooks. Some minor cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12831 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -37,8 +37,6 @@ struct vesa_info {
|
||||
area_id registers_area;
|
||||
struct vesa_shared_info *shared_info;
|
||||
area_id shared_area;
|
||||
uint8 *frame_buffer;
|
||||
area_id frame_buffer_area;
|
||||
uint8 *reloc_io;
|
||||
area_id reloc_io_area;
|
||||
};
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// Copyright (c) 2001-2002, Haiku, Inc.
|
||||
// Copyright (c) 2001-2005, Haiku, Inc.
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person obtaining a
|
||||
// copy of this software and associated documentation files (the "Software"),
|
||||
@@ -107,7 +107,7 @@ typedef void (DisplayDriver::* SetRectangleFuncType)(int left, int top, int righ
|
||||
*/
|
||||
|
||||
class DisplayDriver {
|
||||
public:
|
||||
public:
|
||||
DisplayDriver();
|
||||
virtual ~DisplayDriver();
|
||||
|
||||
@@ -313,11 +313,9 @@ class DisplayDriver {
|
||||
virtual void Unlock() = 0;
|
||||
|
||||
// display mode access
|
||||
virtual void SetMode(const display_mode &mode);
|
||||
virtual void GetMode(display_mode *mode);
|
||||
const display_mode* DisplayMode()
|
||||
{ return &fDisplayMode; }
|
||||
|
||||
virtual status_t SetMode(const display_mode &mode);
|
||||
virtual void GetMode(display_mode &mode);
|
||||
|
||||
virtual bool DumpToFile(const char *path) = 0;
|
||||
virtual ServerBitmap* DumpToBitmap() = 0;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user