History log of /haiku/src/servers/app/drawing/interface/local/AccelerantHWInterface.cpp
Revision Date Author Comments
# 21d87cd4 10-Oct-2023 Jérôme Duval <jerome.duval@gmail.com>

app_server: recursive scan in /dev/graphics/

* /dev/graphics/virtio_gpu/0 is a valid entry
* app_server doesn't set the initial mode if it's identical; use
0x0 as initial resolution.

Change-Id: Ica0323e6c5d78b39f05499edc93fa9c949b97dc8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7037
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# 50a5eed0 16-Apr-2023 Trung Nguyen <trungnt282910@gmail.com>

app_server: Fix potential infinite loop

Return `B_ENTRY_NOT_FOUND` instead of -1 when `/dev/graphics`
is not found.

Otherwise, `app_server` would run into an infinite loop
while waiting `fCardFD` to equal `B_ENTRY_NOT_FOUND` in some
specific environments such as a `chroot` where `/dev` is missing.

Change-Id: Ice23a82f58811f1258c58826c2488ae5c5c29cee
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6376
Reviewed-by: X512 <danger_mail@list.ru>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# 2270ca94 07-Jul-2022 Augustin Cavalier <waddlesplash@gmail.com>

app_server: Make engine accelerant hooks optional.

We don't need them here, or anywhere else for that matter, to run.


# 5c3aa927 06-Jul-2022 Augustin Cavalier <waddlesplash@gmail.com>

app_server: Refactor and improve graphics device iteration.

* Do not open() devices while looping but only open() the one
we were actually asked to open.

* Try the VESA or Framebuffer driver even if deviceNumber is something
other than 1.

* Start iterating at 0 instead of 1 following loop iteration changes.

Ideally this iteration should occur a completely different way, in order
to properly support multiple graphics cards, but that's a problem for
another day.

Fixes #4303.


# b419a79f 21-Oct-2021 Augustin Cavalier <waddlesplash@gmail.com>

app_server: Remove IsDoubleBuffered() default implementation from HWInterface.

It just causes confusion and is wrong in the case where double buffering
status changed during the object lifetime.

Change-Id: Ia1a9ae3f5a1b1b7d521b79c7d1c7be92cef60a06
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4633
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 411ccfeb 19-Oct-2021 Augustin Cavalier <waddlesplash@gmail.com>

app_server: Treat the framebuffer driver as a special case like VESA.

This should resolve the problems where the framebuffer driver was
getting picked instead of the "real" graphics driver, when available,
which led to the framebuffer driver getting merged back into the VESA
driver.

Change-Id: I4ad00d2ac3b5dda34aa63f8691d4cbb85e4f6bb5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4616
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 779ab335 09-Dec-2020 X512 <danger_mail@list.ru>

use .IsSet() instead if .Get() != NULL

Change-Id: Ia2b7a719fd398e78cc3b11d4f7b02cb81179f65f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3488
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# d99d8dbd 27-Aug-2020 X512 <danger_mail@list.ru>

app_server memory management: use ObjectDeleter to mark ownership

Make object ownership explicit by use of ObjectDeleter where possible.

Change-Id: I499a00aa3390d1510ae284419e73faffa5166430
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2695
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>


# 54d72f06 18-May-2018 Murai Takashi <tmurai01@gmail.com>

Fix calling abs(unsigned)

Casting the substraction result to int
since call of overloaded 'abs(uint)' is ambiguous.

Change-Id: I24b4919f8a487d275f537391132cae635aaa030e


# 3a2b67b5 21-Nov-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

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.


# 3d2853b2 28-Jan-2016 Axel Dörfler <axeld@pinc-software.de>

app_server: Update overlay hooks after mode change.

* They are supposed to be depending on the current mode.
* This should help with #12613.


# 6109f53b 31-Oct-2014 Adrien Destugues <pulkomandy@gmail.com>

App_server: fix various issues with hardware cursors

* X and Y coordinates of hot point were swapped for 1-bit cursors
* Prefer color cursor over 1-bit one if possible
* Adjust the XOR/AND masks for 1-bit cursors to what the hardware
expects
* Handle switching etween hardware and software cursor.

Patch by Looncraz and Ziusudra, fixes #9261.


# 3aeed660 07-Aug-2014 Jérôme Duval <jerome.duval@gmail.com>

include strings.h where appriopriate...

instead or additionally to string.h, in preparation for functions move.
* moves str[n]casecmp() functions and others to strings.h.
* strings.h doesn't include string.h anymore.
* this solves #10949


# 8127947b 29-Jun-2014 John Scipione <jscipione@gmail.com>

App Server: Refactor Accelerant add-on loading

... to use BPathFinder instead of iterating through each of the
(current) add-on directories.

Update copyright header, add myself to authors.

add an ATRACE() of the path once it is found.


# a4a7b1f4 29-Jun-2014 John Scipione <jscipione@gmail.com>

App Server: Style fixes to AccelerantHWInterface


# 4b7e2196 03-Oct-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Remove /boot/common for good

* Remove support for the "common" installation location from packagefs,
package kit, package daemon, package managers.
* Rename the B_COMMON_*_DIRECTORY constants referring to writable
directories to B_SYSTEM_*_DIRECTORY.
* Remove/adjust the use of various B_COMMON_*_DIRECTORY constants.
I'm sure some occurrence still remain. They can be adjusted when the
remaining B_COMMON_*_DIRECTORY constants are removed.


# dcaec19c 08-Feb-2013 Alexander von Gluck IV <kallisti5@unixzen.com>

AppServer: Organize "HWInterface" classes

* Organize interface classes into directories
* Long term this will assist in the multi-head
interface / accelerant changes.
* local draws to the local hw accelerant
* remote draws to a remote connection (???)
* html5 draws to... an html5 canvas?


# 6109f53bc601bfaf96706cf96b58a38db45aadf3 31-Oct-2014 Adrien Destugues <pulkomandy@gmail.com>

App_server: fix various issues with hardware cursors

* X and Y coordinates of hot point were swapped for 1-bit cursors
* Prefer color cursor over 1-bit one if possible
* Adjust the XOR/AND masks for 1-bit cursors to what the hardware
expects
* Handle switching etween hardware and software cursor.

Patch by Looncraz and Ziusudra, fixes #9261.


# 3aeed6607cd07762c0e709633c012b3a632dbad9 07-Aug-2014 Jérôme Duval <jerome.duval@gmail.com>

include strings.h where appriopriate...

instead or additionally to string.h, in preparation for functions move.
* moves str[n]casecmp() functions and others to strings.h.
* strings.h doesn't include string.h anymore.
* this solves #10949


# 8127947b3025a440a0b162459e8e17e3b62686e0 29-Jun-2014 John Scipione <jscipione@gmail.com>

App Server: Refactor Accelerant add-on loading

... to use BPathFinder instead of iterating through each of the
(current) add-on directories.

Update copyright header, add myself to authors.

add an ATRACE() of the path once it is found.


# a4a7b1f48b7f597f397cee8582be890df009ba98 29-Jun-2014 John Scipione <jscipione@gmail.com>

App Server: Style fixes to AccelerantHWInterface


# 4b7e219688450694efc9d1890f83f816758c16d3 03-Oct-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Remove /boot/common for good

* Remove support for the "common" installation location from packagefs,
package kit, package daemon, package managers.
* Rename the B_COMMON_*_DIRECTORY constants referring to writable
directories to B_SYSTEM_*_DIRECTORY.
* Remove/adjust the use of various B_COMMON_*_DIRECTORY constants.
I'm sure some occurrence still remain. They can be adjusted when the
remaining B_COMMON_*_DIRECTORY constants are removed.


# dcaec19c9a11eec63fd86420326935c5097e48e9 08-Feb-2013 Alexander von Gluck IV <kallisti5@unixzen.com>

AppServer: Organize "HWInterface" classes

* Organize interface classes into directories
* Long term this will assist in the multi-head
interface / accelerant changes.
* local draws to the local hw accelerant
* remote draws to a remote connection (???)
* html5 draws to... an html5 canvas?