* Support downscaling icons to a size smaller than the source.
* For > 4x icon scaling do a scale4x followed by a bilinear scale.
Note that I tried to do a combination of scale2x/scale3x with bilinear scaling
and the results were worse than scale2x/scale3x with down scaling.
The 24x24 icon case looks pretty bad either using bilinear or scale2x followed
by a downscale because I am currently upscaling the 16x16 icon in Deskbar (we
didn't up until now support bitmap icon downscaling so I had no choice). It
might be a better idea to downscale the 32x32 version instead.
Note that all of the above has to do with bitmap icons ONLY and none of it
applies to HVIF icons that scale beautifully without these tricks.
Implemented a simple down sampling algorithm in the scale_down() function. For
non-integer scaling first scale up using the scale2x, scale3x, or scale4x
algorithm doubling, tripling, or quadrupling the icon then use the downscaling
algorithm to shrink to the desired size. This produces nicer looking results
than bilinear scaling alone.
Note that this only applies to bitmap-based BeOS icons and not vector-based
HVIF icons.
Removing this did not affect scrollbar arrow buttons, but made the
arrows disappear on the Deskbar.
Clearly, BControlLook cannot be changed without extensive testing.
Remove all code which checks for be_control_look being NULL.
Also fix the DrawArrowShape method in be_control_look so the arrow is aligned,
as per the previous commit. In addition the code to offset the arrow when the
scroll button is pressed was unnecessary.
There is still some room for improvement, and I am not happy with the
BControlLook behavior here, as noted in some TODOs.
The arrow symbol on the right and down buttons was off by one pixel.
Because of the resurrected FakeScrollbar in the Appearance preflet I had to
change this code in two places, which makes me unhappy. This needs to be pulled
into BControlLook.
Fixes#9104.
This allows MacDecorator to build once again.
Due to other errors, BeDecorator and WinDecorator do not (yet) fail on the
missing FreeType header -- hence it being only a comment for now.
* Centrino Advanced-N 6235
* Originally introduced in hrev44579
* Likely removed in last wlan driver sync
* Confirmed working 100%
* Upstream bug:
http://www.freebsd.org/cgi/query-pr.cgi?pr=173898
* Causes a regression in proper UNIPHY
mode setting.
* These encoder setup routines do not
get performed by any dpms stuff and
are required to put the encoder in the
correct state for programming.
* Resolves#8913 and maybe others
* Thanks Justin for testing!
Pass fTime into the IsHidden() method to check the hidden state from
the point of view of fTime which will ignore the hidden state. of the
window. Remove the Hide(), Show(), and IsHidden() overrides in
TimeView as they are no longer needed.
Thanks Stippi and Axel.
If the window is locked by the menu_tracking thread Deskbar will wait
on the sMonThread thread to exit forever so we have to kill it to
prevent a deadlock.
This is a workaround of a bigger problem, which is that fExpando gets
created and destroyed on each change which is slow allowing these kinds
of bugs to exist. The real solution is to live update fExpando but that
is a fair amount of work.
No functional change intended.
* Check for NULL fields in the beginning and return decreasing the
indent level of the rest of the method.
* Move some comments to next line indented
* Reduced the logic down and only use it where
possible.
* Remove the duplicate gpio pin check. While this
is a determining factor... i'd rather get it
right while detecting displays vs relying on
connector order in the ASIC. This gpio pin check
was also severely bugged (missing {}'s)
* Should fix#8913 and maybe others
No functional change intended.
I'd like to use the name "ColorWell" for a different type of
class eventually so I'm making room for it. ColorPreview is
arguably a better name for the class anyway.
Also did a style cleanup of the ColorWell => ColorPreview class at
the same time.
Bug #9469 happens because I set the showClock checkbox or not based on whether
or not the clock is currently hidden. This works most of the time, but if
Deskbar is hidden the clock is also considered to be hidden and that isn't what
I want in this case.
The solution is to override BView's Show(), Hide(), and IsHidden() methods
in TimeView to ignore whether or not the window is hidden when considering if
the clock is hidden.
The commit also deletes some no-longer-used private member variables of
TimeView.
Fixes#9469
With this commit every class in the storage kit is now documented
in the Haiku book!
Thanks to Ingo, Axel, Vincent Dominguez, Tyler Dauwalder, and
everyone who helped document these classes.
The size variable at this point is actually a page count.
The test should never be true anyway though. Maybe we should use a
pages variable for clarity?
* Remove docs from Resources.cpp (leaving the brief description).
* Reformat Resources.h to style it like so many other header files.
* There is one not-entirely style based change. I renamed the outSize
parameter or the LoadResource method to _size as is our convention for out
parameters.