Support for configuring screen backlight
Accelerant interface: Introduce new hooks B_SET_BRIGHTNESS and B_GET_BRIGHTNESS. Brightness is a float in the 0..1 range. App_server: Forward brightness things between BScreen and the accelerant. intel_extreme: Implement the hooks. Note that this only works for laptop panels, but the driver will pretend to support it in other cases as well. Screen preferences: If the accelerant supports the B_GET_BRIGHTNESS hook, allow to set brightness with a slider. Otherwise, the slidere is hidden and these changes aren't visible.
This commit is contained in:
@@ -52,6 +52,8 @@ enum {
|
||||
B_GET_PREFERRED_DISPLAY_MODE, /* optional */
|
||||
B_GET_MONITOR_INFO, /* optional */
|
||||
B_GET_EDID_INFO, /* optional */
|
||||
B_SET_BRIGHTNESS, /* optional */
|
||||
B_GET_BRIGHTNESS, /* optional */
|
||||
|
||||
/* cursor managment */
|
||||
B_MOVE_CURSOR = 0x200, /* optional */
|
||||
@@ -305,6 +307,9 @@ typedef status_t (*set_dpms_mode)(uint32 dpms_flags);
|
||||
typedef status_t (*get_preferred_display_mode)(display_mode* preferredMode);
|
||||
typedef status_t (*get_monitor_info)(monitor_info* info);
|
||||
typedef status_t (*get_edid_info)(void* info, uint32 size, uint32* _version);
|
||||
typedef status_t (*set_brightness)(float brightness);
|
||||
typedef status_t (*get_brightness)(float* brightness);
|
||||
|
||||
typedef sem_id (*accelerant_retrace_semaphore)(void);
|
||||
|
||||
typedef status_t (*set_cursor_shape)(uint16 width, uint16 height,
|
||||
|
||||
@@ -82,6 +82,9 @@ public:
|
||||
uint32 DPMSState();
|
||||
uint32 DPMSCapabilites();
|
||||
|
||||
status_t GetBrightness(float*);
|
||||
status_t SetBrightness(float);
|
||||
|
||||
private:
|
||||
// Forbidden and deprecated methods
|
||||
BScreen(const BScreen& other);
|
||||
|
||||
Reference in New Issue
Block a user