Go to file
John Scipione dcf9675793 Deskbar: Improve auto-raise and auto-hide
Activate auto-raise on the screen edge inside the Deskbar window
frame. Set the event mask to B_POINTER_EVENTS when auto-raise or
auto-hide is on and set the event mask back to 0 when we turn off
auto-raise and auto-hide. Before this change you had to click a
window twice to get it to rise above of a raised Deskbar, with
this change you only have to click once to make the window rise
above Deskbar.

The auto-hide show and hide bounds are unchanged.

There was another bug where the window was not hiding correctly in
auto-hide mode when you moused over the status bar in horizontal
mode. This was happening because the where parameter of
TBarView::MouseMoved and TBarView::MouseDown was yielding
coordinates relative to the status tray when the mouse was over
the status tray and not the current view meaning that
TBarView::Frame().Contains(where) would return false over the
status tray. Inspecting the where parameter showed that the x-
coordinate was reset back to 0 when you mouse over the status tray.
To fix this issue I pulled the screen_where field out of
CurrentMessage() instead since this yields the correct value.

The calendar window input focus has been fixed in auto-raise mode
so that you can click on calendar even when it is above Deskbar.
You may also click a window on top of Deskbar in auto-raise mode
without the Deskbar window being raised.

Don't hide Deskbar when Calendar is showing in auto-hide mode.

Put comment inside else block inside { }.

Return from TBarView::MouseDown() calling ansestor method.

Quit fCalendarWindow on TimeView deconstructor if it exists (even if
it is not curently being shown.)

Fixes #8923 #14493

Change-Id: I7ed67fdbc30a93d2782b3ab6b6738b86ec5e4043
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1966
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-02-04 20:17:56 +00:00
3rdparty docker/bootstrap: Add missing autopoint tools 2019-12-09 13:45:14 -06:00
build arm64: Enforce PIC build of kernel 2020-02-04 03:36:20 +00:00
data Installer: use Walter as a placeholder logo 2020-02-02 23:45:05 +00:00
docs API Docs: Clarify BLooper::PostMessage and BMessenger::SendMessage 2020-02-02 00:52:41 +00:00
headers BeBuild: set default visibility for _EXPORT 2020-01-30 00:32:32 +00:00
src Deskbar: Improve auto-raise and auto-hide 2020-02-04 20:17:56 +00:00
.editorconfig editorconfig: Add new config file around our unique style 2017-09-26 14:22:32 -05:00
.gitignore
.gitreview gerrit: Add .gitreview config 2018-01-04 00:04:02 -06:00
configure ARM64: Initial changes so we can compile GCC toolchain 2019-08-30 19:05:16 +00:00
Jamfile Jamfile: gutenprint -> gutenprint8. 2019-05-14 19:32:29 -04:00
Jamrules Revert "Jamrules: Include the UserBuildConfig before processing repositories." 2019-09-15 17:33:36 +02:00
lgtm.yml Initial version of lgtm.com configuration file. 2019-09-19 04:03:09 +00:00
License.md
ReadMe.Compiling.md Update readme.compiling 2020-02-03 13:39:46 +01:00
ReadMe.md README: Drop dead OpenGrok link, add our cgit. 2019-10-18 18:08:25 +00:00

Haiku

Homepage | Mailing Lists | IRC Channels | Issue Tracker | API docs

Haiku is an open-source operating system that specifically targets personal computing. Inspired by the BeOS, Haiku is fast, simple to use, easy to learn and yet very powerful.

Goals

  • Sensible defaults with minimal configuration required.
  • Clean, clear, concise code.
  • Unified desktop environment.

Trying Haiku

Haiku provides pre-built nightly images and release images. Haiku is compatible with a large variety of hardware, but in case you don't want to "take the plunge" and install Haiku on bare metal, you can install it on a virtual machine (VM) instead. If you've never used a VM before, you can follow one of the "Emulating Haiku" guides.

Compiling Haiku

See ReadMe.Compiling.

Contributing

Haiku is a meritocratic open source project with a large variety of tasks. Even if you can't write code, you can still help! Haiku needs designers, (technical) writers, translators, testers... Get involved and help out!

Contributing code

If you're submitting a patch to us, please make sure you're following the patch submitting guidelines.

If you're having trouble finding something in the source tree, you can use one of our web-based source code browsers:

Contributing documentation

The main piece of documentation that still needs work are the API docs (found in the tree at docs/user). Just find an undocumented class, write documentation for it, and submit a patch.

Contributing translations

See wiki:i18n.

Contributing software ports

See HaikuPorts.

Contributing to our infrastructure

See Infrastructure.