History log of /haiku/src/preferences/screensaver/ScreenSaverWindow.cpp
Revision Date Author Comments
# 2659cdba 15-Nov-2019 John Scipione <jscipione@gmail.com>

ScreenSaver prefs: Invoke list item runs test

This copies the behavior of BeOS R5 ScreenSaver prefs.

Don't invoke the listview on AllAttached() anymore, this would make
the selected screensaver start when the pref window opens.

Horizontally center the Test button.

Change-Id: I65471112d37d9efd17945f05bce485ff2fece9dd
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1958
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 122d4ef7 23-Jul-2019 Murai Takashi <tmurai01@gmail.com>

PVS V595: Pointer was utilized before it was verified against nullptr.

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


# 51290f11 22-Jan-2018 Filip Maryjanski <widelec@morphos.pl>

ScreenSaver: add live update of screensavers list.

Fixes #13956

Change-Id: Icfc26c1617541f030ece31d36f1e3bb0c2ec96b0


# fbf9ac1c 13-Apr-2016 John Scipione <jscipione@gmail.com>

ScreenSaver: Center window on screen


# a60b9ee3 13-Apr-2016 John Scipione <jscipione@gmail.com>

Screensaver: Set explicit min width for fSettingsView

Also make some new const variables to make some math more opaque
i.e. don't use as many magic constants.

This works great at 12pt font size, decenly at all other sizes. There is a
bit of jitter at 13pt and 24pt for some reason when moving from a default
settings view to another settings view.


# 4f0eceac 13-Apr-2016 John Scipione <jscipione@gmail.com>

Screensaver: Move Puck up alphabetically


# 53dc6af9 13-Apr-2016 John Scipione <jscipione@gmail.com>

Screensaver: Blackness not Darkness


# e9208b68 13-Apr-2016 John Scipione <jscipione@gmail.com>

ScreenSaver: Rename BuildScreenSaverDefaultSettingsView

...to just DefaultSettingsView

It is just as obvious what it does in context, but shorter.

Rename the function it contains from
BuildDefaultScreenSaverSettingsView to
BuildDefaultSettingsView


# f0650dc9 09-Dec-2015 looncraz <looncraz@looncraz.net>

preferences: Convert to using Set*UIColor.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
Patches 0023-0037 from looncraz, unmodified.


# d0ac6099 07-Nov-2015 Humdinger <humdingerb@gmail.com>

Use B_USE_WINDOW_SPACING

Use B_USE_WINDOW_SPACING as inset from contents to window border.
Some whitespace cleanup.


# e4e2ce4c 09-Dec-2014 Puck Meerburg <puck@puckipedia.nl>

When testing screensaver, don't have mouse move exit the screen saver.

Fixes #7463

Signed-off-by: Adrien Destugues <pulkomandy@gmail.com>


# 03b2550e 01-Oct-2014 Adrien Destugues <pulkomandy@gmail.com>

Move time formatting to BTimeformat.

* Harmonize API for all B*Format to take an output BString by reference
as the first parameter,
* Move the FormatTime methods from BLocale to BTimeFormat
* Adjust all callers for BTimeFormat, BTimeUnitFormat and
BDurationFormat.


# 4ddea1f8 22-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

ScreenSaver: rework some of the fixes

* Use a BTextView for the "no preview" text again, as Skipp_OSX pointed
this allows it to word wrap as needed with any font bigger than 10pt.
* Show a black screen rather than the "no preview" text for Darkness and
when a screensaver fails to load. This matches what screen_blanker will
do.


# 9bac05ae 13-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Make the "no preview" screen work in all cases

* HideNoPreview() was never called...
* Use a BCardLayout to make it easier to know which of the two screens
is shown.


# c8bd18f2 14-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Make ScreenSaver preferences work again.

This reverts 0fb019bbf21e791ae1f7644652fea3697b3f3d9f. Making the window
a BDirectWindow isn't a good idea, especially if you want things other
than a direct rendering view in it. Moreover, this is completely
unneeded as GL works just as well in non-direct mode.


# 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


# 41c51f73 28-Feb-2014 John Scipione <jscipione@gmail.com>

ScreenSaver: use stack variable to prevent memory leak


# 00d9a29e 28-Feb-2014 John Scipione <jscipione@gmail.com>

ScreenSaver: Stop saver on General tab.

Unfortunately OpenGL screen saver previews draw on top of the tabview,
so, when you switch to the General tab we now stop the screen saver
and then restart it when you come back to the Screensavers tab.


# 58b592b3 26-Feb-2014 John Scipione <jscipione@gmail.com>

ScreenSaver: Add "No preview available" text

... when a screensaver doesn't provide a preview.

Also do a bit of refactoring in PreviewView, remove unneeded includes


# 0591d847 26-Feb-2014 John Scipione <jscipione@gmail.com>

ScreenSaver: Refactor ModulesView

Create controls in initializer list of constructor, delete controls in
the (newly-added) destructor.

Make fSettings the first private member.


# e9dcbbeb 25-Feb-2014 John Scipione <jscipione@gmail.com>

ScreenSaver: pass in true to get a preview

Fixes #10602

This was a simple mistake on my part, unfortunately this means that
a bunch of screen savers that showed preview fine before no longer do.


# 6d55c2c4 25-Feb-2014 John Scipione <jscipione@gmail.com>

ScreenSaver: check function return values for success


# 0fb019bb 23-Feb-2014 John Scipione <jscipione@gmail.com>

Screensaver: Convert Screensaver to a BDirectWindow

This allows OpenGL screensavers to be able to show a preview.


# 74091239 18-Jan-2014 Humdinger <humdingerb@gmail.com>

Removed function to add screensavers

Removed "Add..." button and drag&drop awareness, as discussed in
http://www.freelists.org/post/haiku-development/Adding-screensavers-and-fonts
In short: all apps and add-ons will come as proper hpkg.


# 1c776bfe 15-Nov-2013 John Scipione <jscipione@gmail.com>

Lock screensaver window directly

By passing the window pointer to ScreenSaverRunner contructor and using that
to lock the window when drawing instead of getting the window from the
Window() method of the view. This is safer.


# d34a680c 14-Nov-2013 John Scipione <jscipione@gmail.com>

Screen Saver: fix race condition

Start the screensaver in the window thread instead of the runner
thread so that there is no lock contention for the window lock in
the runner thread when the saver starts.

The view that gets drawn into is assumed to have been prepared before
being passed to the runner thread, and this assumption has been made
true for the screensaver preview and screen_blanker apps.

Eliminate fHasStarted and the corresponding HasStarted() method in
ScreenSaverRunner as they are no longer needed.

Drawing still happens in the runner thread, and still needs to lock
the window thread potentially causing contention, yet, there
is a timeout here so the contention won't freeze the screensaver window,
only delay drawing the screensaver.

Drawing could be moved to the window thread via message passing to avoid
lock contention with the window but this would defeat a big part of the
purpose of having a separate rendering thread.

This fixes #10125 and #4260


# 60c0a748 14-Nov-2013 John Scipione <jscipione@gmail.com>

ScreenSaver, small code simplication.

kMsgSaverSelected is the already the invokation message


# e22c01af 14-Nov-2013 John Scipione <jscipione@gmail.com>

Screen Saver: style fixes


# 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.


# 09c9f21c 19-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: tabs hug window boundary

Taking a page from HaikuDepot's book, remove the border from the tab
view and set the inset to 0 in order to position the tabview right on
the window's edge. Looks a bit better than the previous method since
the tabview border appeared to extend the thickness of the window
border.


# c315b2b1 16-Sep-2013 John Scipione <jscipione@gmail.com>

Revert "ScreenSaver: ScrollToSelection off-by-one"

This reverts commit fb90f7ffe49c07e82cd8cf68012929c87319f656.

Underlying issue fixed in hrev46066


# c21a3b20 16-Sep-2013 John Scipione <jscipione@gmail.com>

Revert "ScreenSaver: ScrollToSelection off-by-one"

This reverts commit fb90f7ffe49c07e82cd8cf68012929c87319f656.

Underlying issue fixed in hrev46066


# fb90f7ff 10-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: ScrollToSelection off-by-one

For some reason calling PopulateScreenSaver() list in AllAttached()
scrolls the selection off-by-one, so, call PopulateScreenSaverList()
in AttachedToWindow() and then call ScrollToSelection() again in
AllAttached() which seems to fix the problem.


# 5041c8ae 10-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Set min window height by font height

...rather than font spacing which only scales linearly in the horizontal
direction. This sets the min window height nicely at 11pt font while
continuing to work at 12pt, 8pt, and 18pt.


# c8e6af02 09-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Open screensaver initially via message

..instead of calling _OpenSaver() directly.

At least one screensaver, Message, depended on the Bounds() of the
preview to be set when run, which wasn't established when you first
started the app causing the app to quit while trying to draw.

Also call PopulateSaverList() in AllAttached() so that ScrollToSelection()
works without having to be called again.

Also, fix pointer style in ScreenSaverWindow::MessageReceived()


# e73001dc 05-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Refactor list item selection

Split out the list emptying into an EmptyScreenSaverList() method and use it in
various places where it should happen.

Call PopulateScreenSaverList() in ModulesView::AttachedToWindow() instead
of in the constructor because some of the methods depend on the view being
attached.

Don't try to select Blackness saver by name, instead if no other selection
is located select it as the default. Also, a tiny optimization, once we've found a
selection there's no reason to continue to keep looking for another one.


# 9fc96190 04-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Set target for turn off display checkbox

I noticed while testing the nightly on vmware which, unlike vbox, includes
a video driver with DPMS support that this checkbox wasn't working.
This should fix it.


# 9bf1ba7d 04-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Just for good measure allow 4 lines of text here.

... just in case a long translation needs an extra line to fit
(in English 3 is enough) and because we've got enough room next
to the screen image to fit another line of text anyway.


# 2019bf1e 02-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Tweak the text height...

because the bottom of decenders was getting cut off in some locales
on the 3rd line of text.


# b75fe9ba 02-Sep-2013 John Scipione <jscipione@gmail.com>

Screensaver: fix this tricky bit of logic


# d9acbaf0 02-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Timeout if window won't lock. Fixes #4260.

If we fail to lock the window in the kInitialTickRate time, quit the thread.
We were deadlocking causing #4260 because you could open several
threads by moving through the screen saver list quickly all trying to lock
the same window at the same time, classic deadlock.


# 709172a0 02-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Convert to layout APIs

This allows the ScreenSaver window grow and shrink based on your
font size and translations.

Minimum is 446 px x 325 px so that there is enough space to accommodate
screen savers designed for BeOS.

Should fix #7369 and help #7332 a bit.

Margins go right to the edge now which prevents the tab view from looking
as liney.

Password window has also been converted to use the layout APIs, also,
the window now pops up in the center of the main ScreenSaver window.

The fade translations will have to be redone unfortunately, but it should be
easy as it is the concatenation of the previous strings.


# 23ca081a 02-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Style fixes

Update Copyright year and fix authors adding myself.
Mostly spacing and indentation fixes.


# 546208a5 16-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

More catalog-related cleanup.

* rename B_TRANSLATE_CONTEXT to B_TRANSLATION_CONTEXT and
B_TRANSLATE_WITH_CONTEXT to B_TRANSLATE_CONTEXT, squashing a TODO
* adjust all uses of both macros in Haiku's source tree
* use correct header guard for collecting/Catalog.h

The renamed macros require adjustments to all external applications
using catalogs.


# 323b6546 21-Nov-2011 Oliver Tappe <zooey@hirschkaefer.de>

Filtered flat import of Oliver's svn package management branch

Bring the changes that aren't package management related and the ones
that are but don't take effect as long as they are ignored by the build
system into the master.

Summary of changes:
* Introduce private header <directories.h> with constants for a good
deal of paths that should usually be retrieved via find_directory().
* Replace hard-coded paths by using find_directory() or the
<directories.h> constants (e.g. in drivers and the kernel).
* Add find_directory() constants needed for package management.
* Add __HAIKU_ABI_NAME and B_HAIKU_ABI_NAME macros.
* src/apps/deskbar: BeMenu.* -> DeskbarMenu.*,
DeskBarUtils.* -> DeskbarUtils.*
* Change deskbar menu settings directory from ~/config/be to
~/config/settings/deskbar.
* Other smaller cleanups, changes, and fixes.


# 3dfd9cb9 16-Jun-2011 Oliver Tappe <zooey@hirschkaefer.de>

Flat commit of all changes from package-management branch in svn


# a4cf8811 08-Apr-2011 Joachim Seemer <humdingerb@googlemail.com>

Aligned strings and sliders by pushing them a few pixels here and there. But really, the whole app is in need of proper layouting using the layout API...

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41208 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fe02d18b 08-Apr-2011 Joachim Seemer <humdingerb@googlemail.com>

Renamed a few strings as discussed in #7327 by applying xray's patch with a few additions. Closing #7327.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41207 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 560ff447 25-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Use resource definition files instead of DoCatalogs rule. Rename B_TRANSLATE_APP_NAME and related macros to the more generic B_TRANSLATE_SYSTEM_NAME, to also fits add-ons, folders, etc, and make 'System name' its standard context. Change CodyCam and PoorMan's app signatures to match the overall x-vnd.Haiku-App pattern. Some clean-up. Make SlideShowSaver build again.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41103 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d374a272 16-Mar-2011 Jonas Sundström <jonas@kirilla.com>

App name localization.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40980 a95241bf-73f2-0310-859d-f6bbb57e9c96


# edda6e98 16-Feb-2011 Philippe Houdoin <philippe.houdoin@gmail.com>

Tell user why Turn Off feature is not available.
Close #3274.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40530 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c9ea8282 24-Dec-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

Patch by Mike Roll as part of GCI: i18n screensaver preferences.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39936 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 79c273ae 30-Jun-2010 Axel Dörfler <axeld@pinc-software.de>

* Some cleanup, no functional change.
* Looks like this is neither using the layout engine nor has it been localized
yet!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37313 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ab0e16df 29-Jun-2010 Jérôme Duval <korli@users.berlios.de>

Applied idea from idefix (see bug #5938): try to launch screen_blanker by path when a launch by signature fails.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37305 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9562c7f5 02-Mar-2010 Axel Dörfler <axeld@pinc-software.de>

* Fixed #4339 - I did not use stimut's patch (but thanks a lot, I wouldn't even
have started looking into it without it!), but solved it a bit differently by
moving the state saving into the destructor, and removing the tab in question
manually afterwards.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35727 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9c1a9b92 20-Dec-2009 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

* Patch by Humdinger to convert a lot of things to sentance case.
* Cleanup and update of all the touched catkeys files


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34731 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1c5a1e55 01-Oct-2009 Ryan Leavengood <leavengood@gmail.com>

Suggestion from Rene:
- Make the BuildScreenSaverDefaultSettingsView function be built into
libscreensaver.so and under the BPrivate namespace. This avoids the repetition
of the compiled code in each screen saver that uses it.
- Updated the ScreenSaver preferences to use this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33403 a95241bf-73f2-0310-859d-f6bbb57e9c96


# db9feb34 01-Oct-2009 Ryan Leavengood <leavengood@gmail.com>

- Reordered headers to match coding guidelines.
- Added use of the new BuildScreenSaverDefaultSettingsView function (this is
basically the same code.)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33402 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 37dd4be1 16-Aug-2009 Philippe Saint-Pierre <stpere@gmail.com>

Code style violation (80 char limit);
No functional changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32451 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4973feea 16-Aug-2009 Philippe Saint-Pierre <stpere@gmail.com>

When testing a screensaver..
1. Stop the preview
2. Start it again after the test is done

This prevents the case where the screen is filled with a color during the first frame of the screensaver.
When you return to the preview (after the Test), that first frame is long gone and the preview is then invalid.

Reference : DebugNow screen saver.

Ticket #4252


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32450 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3f609375 22-Aug-2008 Jérôme Duval <korli@users.berlios.de>

Patch from mattlacey: Apply screen saver selection when it's selected, not on closing. Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27173 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b17ef798 02-Jun-2008 Alexandre Deckner <alex@zappotek.com>

- Decouple ModulesView::SaveState() from ModulesView::_CloseSaver() and thus ModulesView::DetachedFromWindow(). When called by BWindow destructor,
the needed derived member fSettings was already destroyed by the derived ScreenSaverWindow destructor. See backtrace in #2287
Fixes #2287


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25761 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cd6b83dd 09-Feb-2008 Jonas Sundström <jonas@kirilla.com>

The title of the (primary) window of (non-document) apps and preferences should be the filename of the executable. File and window names should be changed in tandem in the future. All IMO. Sorry, Marcus, for changing TV-O-Rama. :/ We may want to consider using more proper language, e.g. 'Screensaver' or 'Screen Saver' instead of 'ScreenSaver'. DeskCalc or 'Desk Calculator' should be just Calculator. We should avoid clinging to BeOS history, like with the name CodyCam, which hardly makes any sense anymore, even if you happen to be one of the few BeOS oldtimers.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23935 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 269fdeef 13-Jan-2008 Jérôme Duval <korli@users.berlios.de>

style cleanup
whitespace => tab


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23505 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 02f3505a 21-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

The screen saver is now stopped before deleting its view...
Thanks to John Drinkwater and Fredrik Ekdahl for the hint!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19891 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7acd0ef0 04-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

Now makes sure that the other sliders are updated on keyboard input as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19700 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8b11e3b1 04-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

* Changing any of the sliders will now cause the settings to be saved.
* The TimeSlider now sends an update message for ongoing changes, and an
invokation message when the mouse button was released (standard BSlider
behaviour).
* Fixed incorrect initial string when the screen saver should start after
30 seconds of inactivity.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19698 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0248bb3e 16-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

* Screen savers are now sorted case insensitive (forgot to commit this before).
* ScreenSavers is now completely font sensitive (but not the screen savers themselves,
they are on their own there - note, however, that a screen saver can enlarge its
view under Haiku (like it's already the case for Translators, even under BeOS)).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17862 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f7a09629 12-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

I don't know why this didn't happen under R5, but now the slider background
is no longer just white...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17816 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 642090fd 09-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

* ScreenCornerSelector is now a BControl and fully keyboard navigable.
* simplified drawing a bit, and got rid of those scary scale*() stuff (which also
results in better looks). The monitor now looks like the one in Screen; I think
it should either be a very reduced form or a very detailed form, but anything
in between often looks just odd.
* It now also listens to B_MOUSE_DOWN incl. mouse tracking, not only to B_MOUSE_UP.
* Less flickering on state changes (and focus change).
* Loading settings no longer overwrites defaults missing from the settings.
* Renamed ScreenSaverSettings::GetBlankCorner() to BlankCorner(),
LoadSettings() to Load(), GetState() to GetModuleState(), ....
* Some more cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17783 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7c434cc5 07-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Some more work on the font sensitivity - not yet complete by any means, though,
but it's shaping up.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17758 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 41158aaf 06-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

* Renamed the ScreenSaverPrefs class to the more Be-like ScreenSaverSettings.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17755 a95241bf-73f2-0310-859d-f6bbb57e9c96


# af55bae2 06-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

* Implemented DPMS support.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17754 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5d74f3c1 07-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Renamed MouseAreaView to ScreenCornerSelector.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17752 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4da6b5c3 07-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

* The screen corner selection view now follow the window bottom.
* Some more cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17751 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3c2793fc 06-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Seconds were not shown correctly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17744 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9bf8dbc8 06-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

* First baby steps to a font sensitive GUI. The window now adapts its size
to the demands of the screen saver settings.
* At least temporarily, the window is also resizable; we'll see how well
that turns out.
* The PreviewView did not have a black border around the preview.
* You can now switch again from Blackness to another saver directly...
* The turn off screen timeout is stored relative to the blanking time.
* The list now scrolls to the selection whenever the tab is shown.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17743 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7cae4a1e 06-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

* Big time cleanup of the screen saver stuff, not yet finished yet, though.
Renamed lots of things, like ScreenSaverThread to ScreenSaverRunner,
refactored code, etc. Much cleaner interfaces and code.
* Fixed a couple of bugs and in the add-on handling, especially some settings
related bugs (ie. testing a screen saver will now use its latest settings,
etc.).
* Correctly implemented DPMS support in ScreenSaverPrefs and the ScreenSaver
preferences application - screen_blanker still ignores them, though.
* It's not yet font sensitive either.
* Changed the input_server add-on to not switch to the screen blanker immediately
when it's in the "blank corner" - doesn't seem to work yet, though (only tested
under Qemu).
* Correctly implemented the "preview" function (before, a screen saver would
never know it rendered a preview).
* Evaluates the return value of BScreenSaver::StartSaver().
* The screen saver thread is no longer killed without notice - it's now
always shut down properly.
* Made the code more robust against failure.
* Introduced some new bugs as well (the screen saver list view doesn't jump to
the selection anymore, for some reason), those will be fixed later (as the
remaining issues).
* Probably some more I forgot about.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17731 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ef9c8e38 22-Apr-2006 Jérôme Duval <korli@users.berlios.de>

fixes some font sensitiveness issues


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17207 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b221cf05 21-Feb-2006 Jérôme Duval <korli@users.berlios.de>

fixed window title


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16494 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 758b1d0e 12-Nov-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixes that make Haiku build with gcc 4. Mainly out of the following
categories:
* Missing includes (like <stdlib.h> and <string.h>).
* Linking against $(TARGET_LIBSTDC++) instead of libstdc++.r4.so.
* Local variables shadowing parameters.
* Default parameters in function definitions (as opposed to function
declarations).
* All C++ stuff (nothrow, map, set, vector, min, max,...) must be imported
explicitly from the std:: namespace now.
* "new (sometype)[...]" must read "new sometype[...]", even if sometype is
something like "const char *".
* __FUNCTION__ is no longer a string literal (but a string expression), i.e.
'printf(__FUNCTION__ ": ...\n")' is invalid code.
* A type cast results in a non-lvalue. E.g. "(char *)buffer += bytes"
is an invalid expression.
* "friend class SomeClass" only works when SomeClass is known before.
Otherwise the an inner class with that name is considered as friend.
gcc 4 is much pickier about scopes.
* gcc 4 is generally stricter with respect to type conversions in C.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14878 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 09bae796 10-Oct-2005 Jérôme Duval <korli@users.berlios.de>

improved visuals


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14339 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f13c45ad 06-Sep-2005 Jérôme Duval <korli@users.berlios.de>

visual improvement


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14124 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ae4f2186 02-Sep-2005 Jérôme Duval <korli@users.berlios.de>

we now save the settings when test button is clicked
tabs are reworked to avoid data loss


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14105 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5e7558d8 31-Aug-2005 Jérôme Duval <korli@users.berlios.de>

fixed password behaviour for screensaver kit


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14096 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 12e1daa3 24-Aug-2005 Jérôme Duval <korli@users.berlios.de>

copyright update


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14059 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bc40c86c 23-Aug-2005 Jérôme Duval <korli@users.berlios.de>

clean up


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14053 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1437c09c 31-Jul-2005 Jérôme Duval <korli@users.berlios.de>

screen_blanker signature is at one place
modules tab selection makes the right module selected


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13863 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4835f2d2 29-Jul-2005 Jérôme Duval <korli@users.berlios.de>

removed debug
password button is enabled when needed


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13860 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f058feb7 28-Jul-2005 Jérôme Duval <korli@users.berlios.de>

module states are now saved correctly


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13851 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e3d946e5 29-Jul-2005 Jérôme Duval <korli@users.berlios.de>

cleanup


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13850 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c566b092 29-Jul-2005 Jérôme Duval <korli@users.berlios.de>

added license headers
changed the way prefs is stored, so that we have default settings
general cleanup
time sliders are now linked together as on R5
password window is centered onscreen


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13849 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 66dee31a 26-Jul-2005 Jérôme Duval <korli@users.berlios.de>

clean up, style change, unused files are removed
added ScreenSaver.cpp to ScreenSaver preferences to have Matrix working


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13828 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a10cf76e 24-Jun-2005 Axel Dörfler <axeld@pinc-software.de>

Renamed src/prefs to "preferences", as the directory is usually called in BeOS.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13263 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e4e2ce4ce38546193ddab428b32a654447a07e19 09-Dec-2014 Puck Meerburg <puck@puckipedia.nl>

When testing screensaver, don't have mouse move exit the screen saver.

Fixes #7463

Signed-off-by: Adrien Destugues <pulkomandy@gmail.com>


# 03b2550ef1fba975beb15689659a4a5f38986aa0 01-Oct-2014 Adrien Destugues <pulkomandy@gmail.com>

Move time formatting to BTimeformat.

* Harmonize API for all B*Format to take an output BString by reference
as the first parameter,
* Move the FormatTime methods from BLocale to BTimeFormat
* Adjust all callers for BTimeFormat, BTimeUnitFormat and
BDurationFormat.


# 4ddea1f86264f27062a11f3f08473d2bceb3c23e 22-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

ScreenSaver: rework some of the fixes

* Use a BTextView for the "no preview" text again, as Skipp_OSX pointed
this allows it to word wrap as needed with any font bigger than 10pt.
* Show a black screen rather than the "no preview" text for Darkness and
when a screensaver fails to load. This matches what screen_blanker will
do.


# 9bac05ae6cce56d06edcdc28036bf104af7ca2a3 13-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Make the "no preview" screen work in all cases

* HideNoPreview() was never called...
* Use a BCardLayout to make it easier to know which of the two screens
is shown.


# c8bd18f21fd3113231ea30fb77afc53c68db738f 14-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Make ScreenSaver preferences work again.

This reverts 0fb019bbf21e791ae1f7644652fea3697b3f3d9f. Making the window
a BDirectWindow isn't a good idea, especially if you want things other
than a direct rendering view in it. Moreover, this is completely
unneeded as GL works just as well in non-direct mode.


# 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


# 41c51f73d1c7cb44d110f4cd18c76120c01b6dc0 28-Feb-2014 John Scipione <jscipione@gmail.com>

ScreenSaver: use stack variable to prevent memory leak


# 00d9a29e2e4e138b93b891fa277b05cbd2b2365c 28-Feb-2014 John Scipione <jscipione@gmail.com>

ScreenSaver: Stop saver on General tab.

Unfortunately OpenGL screen saver previews draw on top of the tabview,
so, when you switch to the General tab we now stop the screen saver
and then restart it when you come back to the Screensavers tab.


# 58b592b3b5dd2e4031f12279867cb0a20855d377 26-Feb-2014 John Scipione <jscipione@gmail.com>

ScreenSaver: Add "No preview available" text

... when a screensaver doesn't provide a preview.

Also do a bit of refactoring in PreviewView, remove unneeded includes


# 0591d8477c33b7dd43bc7219d30801332c9a49e4 26-Feb-2014 John Scipione <jscipione@gmail.com>

ScreenSaver: Refactor ModulesView

Create controls in initializer list of constructor, delete controls in
the (newly-added) destructor.

Make fSettings the first private member.


# e9dcbbeb358ccdfc8903007c0cc348e9078bf8e0 25-Feb-2014 John Scipione <jscipione@gmail.com>

ScreenSaver: pass in true to get a preview

Fixes #10602

This was a simple mistake on my part, unfortunately this means that
a bunch of screen savers that showed preview fine before no longer do.


# 6d55c2c490ef3c00b18548fbafbdc534a721e8e6 25-Feb-2014 John Scipione <jscipione@gmail.com>

ScreenSaver: check function return values for success


# 0fb019bbf21e791ae1f7644652fea3697b3f3d9f 23-Feb-2014 John Scipione <jscipione@gmail.com>

Screensaver: Convert Screensaver to a BDirectWindow

This allows OpenGL screensavers to be able to show a preview.


# 7409123922b09b92cbb6a24a0194de183ab09e0a 18-Jan-2014 Humdinger <humdingerb@gmail.com>

Removed function to add screensavers

Removed "Add..." button and drag&drop awareness, as discussed in
http://www.freelists.org/post/haiku-development/Adding-screensavers-and-fonts
In short: all apps and add-ons will come as proper hpkg.


# 1c776bfe37a7c1a382f9720112f19de00c7cff07 15-Nov-2013 John Scipione <jscipione@gmail.com>

Lock screensaver window directly

By passing the window pointer to ScreenSaverRunner contructor and using that
to lock the window when drawing instead of getting the window from the
Window() method of the view. This is safer.


# d34a680c043c72bae01662cc730ca81cb4cd2615 14-Nov-2013 John Scipione <jscipione@gmail.com>

Screen Saver: fix race condition

Start the screensaver in the window thread instead of the runner
thread so that there is no lock contention for the window lock in
the runner thread when the saver starts.

The view that gets drawn into is assumed to have been prepared before
being passed to the runner thread, and this assumption has been made
true for the screensaver preview and screen_blanker apps.

Eliminate fHasStarted and the corresponding HasStarted() method in
ScreenSaverRunner as they are no longer needed.

Drawing still happens in the runner thread, and still needs to lock
the window thread potentially causing contention, yet, there
is a timeout here so the contention won't freeze the screensaver window,
only delay drawing the screensaver.

Drawing could be moved to the window thread via message passing to avoid
lock contention with the window but this would defeat a big part of the
purpose of having a separate rendering thread.

This fixes #10125 and #4260


# 60c0a74844c70e1a0ae3c1a200c29018dc917421 14-Nov-2013 John Scipione <jscipione@gmail.com>

ScreenSaver, small code simplication.

kMsgSaverSelected is the already the invokation message


# e22c01af030d33e53e6bbde56e331dd8cd7de097 14-Nov-2013 John Scipione <jscipione@gmail.com>

Screen Saver: style fixes


# 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.


# 09c9f21ce48c1af30ab4c54ea77687e5fe62fd19 19-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: tabs hug window boundary

Taking a page from HaikuDepot's book, remove the border from the tab
view and set the inset to 0 in order to position the tabview right on
the window's edge. Looks a bit better than the previous method since
the tabview border appeared to extend the thickness of the window
border.


# c315b2b18a49cad52fcde98d66b304b924977c5c 16-Sep-2013 John Scipione <jscipione@gmail.com>

Revert "ScreenSaver: ScrollToSelection off-by-one"

This reverts commit fb90f7ffe49c07e82cd8cf68012929c87319f656.

Underlying issue fixed in hrev46066


# c21a3b20c9d716c2614171d49b274303fca4285d 16-Sep-2013 John Scipione <jscipione@gmail.com>

Revert "ScreenSaver: ScrollToSelection off-by-one"

This reverts commit fb90f7ffe49c07e82cd8cf68012929c87319f656.

Underlying issue fixed in hrev46066


# fb90f7ffe49c07e82cd8cf68012929c87319f656 10-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: ScrollToSelection off-by-one

For some reason calling PopulateScreenSaver() list in AllAttached()
scrolls the selection off-by-one, so, call PopulateScreenSaverList()
in AttachedToWindow() and then call ScrollToSelection() again in
AllAttached() which seems to fix the problem.


# 5041c8ae6ed2f6a3681df3d4e33c01ce4817e043 10-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Set min window height by font height

...rather than font spacing which only scales linearly in the horizontal
direction. This sets the min window height nicely at 11pt font while
continuing to work at 12pt, 8pt, and 18pt.


# c8e6af02f23c8bd2719ef3f0baca793835b8baf1 09-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Open screensaver initially via message

..instead of calling _OpenSaver() directly.

At least one screensaver, Message, depended on the Bounds() of the
preview to be set when run, which wasn't established when you first
started the app causing the app to quit while trying to draw.

Also call PopulateSaverList() in AllAttached() so that ScrollToSelection()
works without having to be called again.

Also, fix pointer style in ScreenSaverWindow::MessageReceived()


# e73001dc8081e09759c1d53e2dd9aa714e8f0075 05-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Refactor list item selection

Split out the list emptying into an EmptyScreenSaverList() method and use it in
various places where it should happen.

Call PopulateScreenSaverList() in ModulesView::AttachedToWindow() instead
of in the constructor because some of the methods depend on the view being
attached.

Don't try to select Blackness saver by name, instead if no other selection
is located select it as the default. Also, a tiny optimization, once we've found a
selection there's no reason to continue to keep looking for another one.


# 9fc96190794f1ae996a483258d5c3848a29aa5f6 04-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Set target for turn off display checkbox

I noticed while testing the nightly on vmware which, unlike vbox, includes
a video driver with DPMS support that this checkbox wasn't working.
This should fix it.


# 9bf1ba7dcfe92cabedce255925309181b15b4daf 04-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Just for good measure allow 4 lines of text here.

... just in case a long translation needs an extra line to fit
(in English 3 is enough) and because we've got enough room next
to the screen image to fit another line of text anyway.


# 2019bf1e17bd833bb884552e61949a2e6feced37 02-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Tweak the text height...

because the bottom of decenders was getting cut off in some locales
on the 3rd line of text.


# b75fe9ba8eec41b59bf29e0f272e0d6f4257356b 02-Sep-2013 John Scipione <jscipione@gmail.com>

Screensaver: fix this tricky bit of logic


# d9acbaf0dc65137e36e15b351c4ff7a56aca55b1 02-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Timeout if window won't lock. Fixes #4260.

If we fail to lock the window in the kInitialTickRate time, quit the thread.
We were deadlocking causing #4260 because you could open several
threads by moving through the screen saver list quickly all trying to lock
the same window at the same time, classic deadlock.


# 709172a02dc508c50435ab891ed4d11c7323fe47 02-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Convert to layout APIs

This allows the ScreenSaver window grow and shrink based on your
font size and translations.

Minimum is 446 px x 325 px so that there is enough space to accommodate
screen savers designed for BeOS.

Should fix #7369 and help #7332 a bit.

Margins go right to the edge now which prevents the tab view from looking
as liney.

Password window has also been converted to use the layout APIs, also,
the window now pops up in the center of the main ScreenSaver window.

The fade translations will have to be redone unfortunately, but it should be
easy as it is the concatenation of the previous strings.


# 23ca081a2fdb4375b4a60e7dd28d1e07029aae5c 02-Sep-2013 John Scipione <jscipione@gmail.com>

ScreenSaver: Style fixes

Update Copyright year and fix authors adding myself.
Mostly spacing and indentation fixes.


# 546208a53940a26c6379c48a7854ade1a8250fc5 16-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

More catalog-related cleanup.

* rename B_TRANSLATE_CONTEXT to B_TRANSLATION_CONTEXT and
B_TRANSLATE_WITH_CONTEXT to B_TRANSLATE_CONTEXT, squashing a TODO
* adjust all uses of both macros in Haiku's source tree
* use correct header guard for collecting/Catalog.h

The renamed macros require adjustments to all external applications
using catalogs.


# 323b65468e5836bb27a5e373b14027d902349437 21-Nov-2011 Oliver Tappe <zooey@hirschkaefer.de>

Filtered flat import of Oliver's svn package management branch

Bring the changes that aren't package management related and the ones
that are but don't take effect as long as they are ignored by the build
system into the master.

Summary of changes:
* Introduce private header <directories.h> with constants for a good
deal of paths that should usually be retrieved via find_directory().
* Replace hard-coded paths by using find_directory() or the
<directories.h> constants (e.g. in drivers and the kernel).
* Add find_directory() constants needed for package management.
* Add __HAIKU_ABI_NAME and B_HAIKU_ABI_NAME macros.
* src/apps/deskbar: BeMenu.* -> DeskbarMenu.*,
DeskBarUtils.* -> DeskbarUtils.*
* Change deskbar menu settings directory from ~/config/be to
~/config/settings/deskbar.
* Other smaller cleanups, changes, and fixes.


# 3dfd9cb95ce45f59160d50975210bc55e3fc0709 16-Jun-2011 Oliver Tappe <zooey@hirschkaefer.de>

Flat commit of all changes from package-management branch in svn


# a4cf8811e5a732259a3917eb4530e487e2af6e52 08-Apr-2011 Joachim Seemer <humdingerb@googlemail.com>

Aligned strings and sliders by pushing them a few pixels here and there. But really, the whole app is in need of proper layouting using the layout API...

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41208 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fe02d18b1dad7660e3e52b9054fdf62fe82522a7 08-Apr-2011 Joachim Seemer <humdingerb@googlemail.com>

Renamed a few strings as discussed in #7327 by applying xray's patch with a few additions. Closing #7327.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41207 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 560ff4478d5c85455ea3e5ed5e392ef93132d545 25-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Use resource definition files instead of DoCatalogs rule. Rename B_TRANSLATE_APP_NAME and related macros to the more generic B_TRANSLATE_SYSTEM_NAME, to also fits add-ons, folders, etc, and make 'System name' its standard context. Change CodyCam and PoorMan's app signatures to match the overall x-vnd.Haiku-App pattern. Some clean-up. Make SlideShowSaver build again.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41103 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d374a27286b8a52974a97dba0d5966ea026a665d 16-Mar-2011 Jonas Sundström <jonas@kirilla.com>

App name localization.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40980 a95241bf-73f2-0310-859d-f6bbb57e9c96


# edda6e98b92fcdff3fd157d06e7cc37f7ab86416 16-Feb-2011 Philippe Houdoin <philippe.houdoin@gmail.com>

Tell user why Turn Off feature is not available.
Close #3274.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40530 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c9ea828200fc11d1101369e7c380102625c39c9e 24-Dec-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

Patch by Mike Roll as part of GCI: i18n screensaver preferences.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39936 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 79c273aee80b09564da0d2167342e60b14bda473 30-Jun-2010 Axel Dörfler <axeld@pinc-software.de>

* Some cleanup, no functional change.
* Looks like this is neither using the layout engine nor has it been localized
yet!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37313 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ab0e16df04e6e39f49782ad88859e980a685068b 29-Jun-2010 Jérôme Duval <korli@users.berlios.de>

Applied idea from idefix (see bug #5938): try to launch screen_blanker by path when a launch by signature fails.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37305 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9562c7f5921ce246f7a817781e4c39d8496421b8 02-Mar-2010 Axel Dörfler <axeld@pinc-software.de>

* Fixed #4339 - I did not use stimut's patch (but thanks a lot, I wouldn't even
have started looking into it without it!), but solved it a bit differently by
moving the state saving into the destructor, and removing the tab in question
manually afterwards.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35727 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9c1a9b926aa0b1890a011a44398379d1c47f09c1 20-Dec-2009 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

* Patch by Humdinger to convert a lot of things to sentance case.
* Cleanup and update of all the touched catkeys files


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34731 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1c5a1e55c15e41418074d85955f9ec15defd909a 01-Oct-2009 Ryan Leavengood <leavengood@gmail.com>

Suggestion from Rene:
- Make the BuildScreenSaverDefaultSettingsView function be built into
libscreensaver.so and under the BPrivate namespace. This avoids the repetition
of the compiled code in each screen saver that uses it.
- Updated the ScreenSaver preferences to use this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33403 a95241bf-73f2-0310-859d-f6bbb57e9c96


# db9feb346e966dddbe91019870b334d88c4ae4a2 01-Oct-2009 Ryan Leavengood <leavengood@gmail.com>

- Reordered headers to match coding guidelines.
- Added use of the new BuildScreenSaverDefaultSettingsView function (this is
basically the same code.)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33402 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 37dd4be139e8ab32688d0a8f8610665cbc39a8ca 16-Aug-2009 Philippe Saint-Pierre <stpere@gmail.com>

Code style violation (80 char limit);
No functional changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32451 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4973feeaa00ca4825be5d0cc18e22076bb84142f 16-Aug-2009 Philippe Saint-Pierre <stpere@gmail.com>

When testing a screensaver..
1. Stop the preview
2. Start it again after the test is done

This prevents the case where the screen is filled with a color during the first frame of the screensaver.
When you return to the preview (after the Test), that first frame is long gone and the preview is then invalid.

Reference : DebugNow screen saver.

Ticket #4252


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32450 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3f609375551e44a2329a75df3392659c4832bfd0 22-Aug-2008 Jérôme Duval <korli@users.berlios.de>

Patch from mattlacey: Apply screen saver selection when it's selected, not on closing. Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27173 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b17ef798c758d5ad5336bc6ed2568ba4dfc60a46 02-Jun-2008 Alexandre Deckner <alex@zappotek.com>

- Decouple ModulesView::SaveState() from ModulesView::_CloseSaver() and thus ModulesView::DetachedFromWindow(). When called by BWindow destructor,
the needed derived member fSettings was already destroyed by the derived ScreenSaverWindow destructor. See backtrace in #2287
Fixes #2287


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25761 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cd6b83ddc1b4cbd90eb6565752f6ef930360bb3b 09-Feb-2008 Jonas Sundström <jonas@kirilla.com>

The title of the (primary) window of (non-document) apps and preferences should be the filename of the executable. File and window names should be changed in tandem in the future. All IMO. Sorry, Marcus, for changing TV-O-Rama. :/ We may want to consider using more proper language, e.g. 'Screensaver' or 'Screen Saver' instead of 'ScreenSaver'. DeskCalc or 'Desk Calculator' should be just Calculator. We should avoid clinging to BeOS history, like with the name CodyCam, which hardly makes any sense anymore, even if you happen to be one of the few BeOS oldtimers.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23935 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 269fdeefff71dbb13136f7404d612ed2e4284131 13-Jan-2008 Jérôme Duval <korli@users.berlios.de>

style cleanup
whitespace => tab


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23505 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 02f3505a31fb66bcec45ccad225069e6a54565bb 21-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

The screen saver is now stopped before deleting its view...
Thanks to John Drinkwater and Fredrik Ekdahl for the hint!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19891 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7acd0ef0b06fb7c1698bb4de84946ec200183e2d 04-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

Now makes sure that the other sliders are updated on keyboard input as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19700 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8b11e3b15d2d5cdf2d31c74a3335aa2bc344ffc6 04-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

* Changing any of the sliders will now cause the settings to be saved.
* The TimeSlider now sends an update message for ongoing changes, and an
invokation message when the mouse button was released (standard BSlider
behaviour).
* Fixed incorrect initial string when the screen saver should start after
30 seconds of inactivity.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19698 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0248bb3ed8b26bdab14f30b91921a7f72ade034c 16-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

* Screen savers are now sorted case insensitive (forgot to commit this before).
* ScreenSavers is now completely font sensitive (but not the screen savers themselves,
they are on their own there - note, however, that a screen saver can enlarge its
view under Haiku (like it's already the case for Translators, even under BeOS)).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17862 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f7a09629e558fbf99437d0d34bffbc3ed634e561 12-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

I don't know why this didn't happen under R5, but now the slider background
is no longer just white...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17816 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 642090fdc62bbf5df46a1135a006636c3ca63691 09-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

* ScreenCornerSelector is now a BControl and fully keyboard navigable.
* simplified drawing a bit, and got rid of those scary scale*() stuff (which also
results in better looks). The monitor now looks like the one in Screen; I think
it should either be a very reduced form or a very detailed form, but anything
in between often looks just odd.
* It now also listens to B_MOUSE_DOWN incl. mouse tracking, not only to B_MOUSE_UP.
* Less flickering on state changes (and focus change).
* Loading settings no longer overwrites defaults missing from the settings.
* Renamed ScreenSaverSettings::GetBlankCorner() to BlankCorner(),
LoadSettings() to Load(), GetState() to GetModuleState(), ....
* Some more cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17783 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7c434cc5a0eaecd399a0c490b6d7b3d4a4635529 07-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Some more work on the font sensitivity - not yet complete by any means, though,
but it's shaping up.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17758 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 41158aaf918229a36e911666a32573bb633196ea 06-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

* Renamed the ScreenSaverPrefs class to the more Be-like ScreenSaverSettings.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17755 a95241bf-73f2-0310-859d-f6bbb57e9c96


# af55bae2f690f138d18dc982b7535840bd12b805 06-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

* Implemented DPMS support.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17754 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5d74f3c143cdb00fa20fb4c41785ee5b83c49731 07-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Renamed MouseAreaView to ScreenCornerSelector.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17752 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4da6b5c3284004fd85949c90ebf0124ac9c87b16 07-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

* The screen corner selection view now follow the window bottom.
* Some more cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17751 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3c2793fcc1887981b2b6f2df07fa42374fcab9bd 06-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Seconds were not shown correctly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17744 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9bf8dbc8290a520b6f7c09ec2c93e4f9a746ab8a 06-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

* First baby steps to a font sensitive GUI. The window now adapts its size
to the demands of the screen saver settings.
* At least temporarily, the window is also resizable; we'll see how well
that turns out.
* The PreviewView did not have a black border around the preview.
* You can now switch again from Blackness to another saver directly...
* The turn off screen timeout is stored relative to the blanking time.
* The list now scrolls to the selection whenever the tab is shown.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17743 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7cae4a1ee0a7e8f1214e6fa410efe9f5a0c7cecb 06-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

* Big time cleanup of the screen saver stuff, not yet finished yet, though.
Renamed lots of things, like ScreenSaverThread to ScreenSaverRunner,
refactored code, etc. Much cleaner interfaces and code.
* Fixed a couple of bugs and in the add-on handling, especially some settings
related bugs (ie. testing a screen saver will now use its latest settings,
etc.).
* Correctly implemented DPMS support in ScreenSaverPrefs and the ScreenSaver
preferences application - screen_blanker still ignores them, though.
* It's not yet font sensitive either.
* Changed the input_server add-on to not switch to the screen blanker immediately
when it's in the "blank corner" - doesn't seem to work yet, though (only tested
under Qemu).
* Correctly implemented the "preview" function (before, a screen saver would
never know it rendered a preview).
* Evaluates the return value of BScreenSaver::StartSaver().
* The screen saver thread is no longer killed without notice - it's now
always shut down properly.
* Made the code more robust against failure.
* Introduced some new bugs as well (the screen saver list view doesn't jump to
the selection anymore, for some reason), those will be fixed later (as the
remaining issues).
* Probably some more I forgot about.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17731 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ef9c8e384d23809e6f663556955f364e951e9ecb 22-Apr-2006 Jérôme Duval <korli@users.berlios.de>

fixes some font sensitiveness issues


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17207 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b221cf050215bbd32d2fa63d45fb898d8bdd16fc 21-Feb-2006 Jérôme Duval <korli@users.berlios.de>

fixed window title


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16494 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 758b1d0e05fe1042cce6e00d194a147802d4f9be 12-Nov-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixes that make Haiku build with gcc 4. Mainly out of the following
categories:
* Missing includes (like <stdlib.h> and <string.h>).
* Linking against $(TARGET_LIBSTDC++) instead of libstdc++.r4.so.
* Local variables shadowing parameters.
* Default parameters in function definitions (as opposed to function
declarations).
* All C++ stuff (nothrow, map, set, vector, min, max,...) must be imported
explicitly from the std:: namespace now.
* "new (sometype)[...]" must read "new sometype[...]", even if sometype is
something like "const char *".
* __FUNCTION__ is no longer a string literal (but a string expression), i.e.
'printf(__FUNCTION__ ": ...\n")' is invalid code.
* A type cast results in a non-lvalue. E.g. "(char *)buffer += bytes"
is an invalid expression.
* "friend class SomeClass" only works when SomeClass is known before.
Otherwise the an inner class with that name is considered as friend.
gcc 4 is much pickier about scopes.
* gcc 4 is generally stricter with respect to type conversions in C.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14878 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 09bae796d26c439c947e31ff16b41821b2d9d96c 10-Oct-2005 Jérôme Duval <korli@users.berlios.de>

improved visuals


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14339 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f13c45ad3f4fdd27bf15018705c0f3fd936e6a47 06-Sep-2005 Jérôme Duval <korli@users.berlios.de>

visual improvement


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14124 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ae4f21862f69ea6ebeec783a25773d765fae81eb 02-Sep-2005 Jérôme Duval <korli@users.berlios.de>

we now save the settings when test button is clicked
tabs are reworked to avoid data loss


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14105 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5e7558d87c1859c8e1c0d50a85cc3ed7bb4610ce 31-Aug-2005 Jérôme Duval <korli@users.berlios.de>

fixed password behaviour for screensaver kit


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14096 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 12e1daa3ccb72c770d1da51d9b4eb765b4c7d143 24-Aug-2005 Jérôme Duval <korli@users.berlios.de>

copyright update


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14059 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bc40c86cb751ddd517f53e3771abd7afa23a976a 23-Aug-2005 Jérôme Duval <korli@users.berlios.de>

clean up


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14053 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1437c09cb727368f7808a087b35fc0454d6ae5e4 31-Jul-2005 Jérôme Duval <korli@users.berlios.de>

screen_blanker signature is at one place
modules tab selection makes the right module selected


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13863 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4835f2d292e1e186ed0703b90e0fed3b684453bd 29-Jul-2005 Jérôme Duval <korli@users.berlios.de>

removed debug
password button is enabled when needed


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13860 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f058feb72ffbcfc33564541734bf5061a0a7662d 28-Jul-2005 Jérôme Duval <korli@users.berlios.de>

module states are now saved correctly


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13851 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e3d946e533af646536ae298ba48a398b8faf2bfd 29-Jul-2005 Jérôme Duval <korli@users.berlios.de>

cleanup


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13850 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c566b0927df4d8a754b8033bbd43e3df91b406f6 29-Jul-2005 Jérôme Duval <korli@users.berlios.de>

added license headers
changed the way prefs is stored, so that we have default settings
general cleanup
time sliders are now linked together as on R5
password window is centered onscreen


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13849 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 66dee31a87a5ff18862fa2ae1ba17544585c5dad 26-Jul-2005 Jérôme Duval <korli@users.berlios.de>

clean up, style change, unused files are removed
added ScreenSaver.cpp to ScreenSaver preferences to have Matrix working


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13828 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a10cf76ef5b9e8c726ebc47183abd6943023cf8f 24-Jun-2005 Axel Dörfler <axeld@pinc-software.de>

Renamed src/prefs to "preferences", as the directory is usually called in BeOS.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13263 a95241bf-73f2-0310-859d-f6bbb57e9c96