Commit Graph

12210 Commits

Author SHA1 Message Date
Stefano Ceccherini
15074e0561 Added a test for BScreen (very very basic for now)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12519 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-30 14:01:36 +00:00
Stefano Ceccherini
fca6492ffe Finally tested the code, there were a bunch of problems: fixed them all.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12518 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-30 07:04:45 +00:00
Stefano Ceccherini
6e927d6e3b BScreens methods didn't work for a number of reasons: fixed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12517 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-30 07:04:27 +00:00
Stefano Ceccherini
1f41d635e9 B_ALL_WORKSPACES -> B_CURRENT_WORKSPACE
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12516 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-30 06:04:48 +00:00
Stefano Ceccherini
794ca5f2f8 Fixed a small bug. Still I can't unmount anything, though (I always get 'resource busy')
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12515 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-30 05:59:23 +00:00
Stefano Ceccherini
9c06e46d6a fDriver wasn't apparently used anymore. Thanks Jerome. BTW we should remove it if it's useless
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12514 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-30 05:45:49 +00:00
Stefano Ceccherini
541a224df8 No need to include that stuff, a forward declaration will do
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12513 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 20:41:21 +00:00
Stefano Ceccherini
8829157fbf Moved headers around
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12512 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 20:40:29 +00:00
Stefano Ceccherini
34c39bf046 BScreen's GetMode(), Frame() and ColorSpace() should work now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12511 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 20:32:05 +00:00
Stefano Ceccherini
718c1fc525 Removed unused stuff
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12510 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 20:30:41 +00:00
Stefano Ceccherini
4dbe8b9db6 Server-side code for BScreen::GetMode() (actually tweaked an old implementation)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12509 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 20:30:04 +00:00
Stefano Ceccherini
0405ef356f Added AS_SCREEN_GET/SET_MODE
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12508 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 20:28:53 +00:00
Stefano Ceccherini
b99e13c914 applied patch by John Drinkwater: DataTranslations now only accepts valid translators
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12507 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 17:28:14 +00:00
Axel Dörfler
d4112f6bc5 Applied some changes suggested by mmu_man, more to come, though:
- has_signals_pending() is not declared in Be headers, and it isn't declared in
  our KernelExport.h anymore, too
- removed snooze_etc() from KernelExport.h, as it's already defined in OS.h
  (and really exported by libroot.so).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12506 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 11:41:12 +00:00
Stefano Ceccherini
7d84be4d67 Fixed some font sensitivity issues.
Fixed a small glitch in drawing.
Removed an unneeded Sync() in Draw().
Removed some unnecessary virtual method calls.
Improved drawing of the current slider's value.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12505 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 10:11:54 +00:00
Stefano Ceccherini
e7467ada1a Added synchronous mouse support (shouldn't I lock the window ? why does it work without locking ?), now the thumb bitmap is drawn with B_OP_OVER, thus eliminating a visual glitch.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12504 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 08:12:25 +00:00
Axel Dörfler
55932743b4 Cleaned up, added a ToDo comment where it behaves (possibly) strange.
The properties are now the same as in the Be version - there is no reason (IMO) for usage
comments like these; it's a public class, and its scripting usage should be documented in
the BeBook, if anywhere.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12503 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 00:58:39 +00:00
Axel Dörfler
aed75ba2f6 Added a SetViewColor() before and after AttachedToWindow().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12502 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 00:30:24 +00:00
Axel Dörfler
8bdf4008fe Added test for BCheckBox (message sending is actually not tested, though, only drawing)...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12501 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-29 00:17:40 +00:00
Stephan Aßmus
1596a167c0 work around for layers not being moved that have not yet been added to the tree. See WinBorder::MoveTo for the explaination. The same problem should be at other places and most likely for normal views as well. This fixes BWindow::MoveXX() when it is not yet Show()n
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12500 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-28 23:56:40 +00:00
Stephan Aßmus
879fd19be5 this has become playground...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12499 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-28 23:20:18 +00:00
Axel Dörfler
80bd55147b Many changes, it now does work okay on Haiku (tested with consoled only (both,
keyboard and mouse part), since for some reason, the app_server refuses to work
with the input_server for me now):
- keyboards are now actually detected, the keyboard device is only published if
  there actually is a keyboard
- keyboard_close() no longer calls put_module() for the ISA bus manager; it's
  sharing that resource with the mouse driver.
- rewrote the keyboard command handshake; now, the acknowledge byte is always
  considered, and it's now also safe to call keyboard commands with the interrupt
  handler installed (bytes read are now safely routed through the handler).
- keyboard_open() now also sets the PS/2 command byte to enable keyboard
  interrupts (this may actually have been the source of all evil - ie. keyboard
  not working after having touched the mouse)
- many commands now try again several times if they failed
- ps2_get_command_byte() is now safe to be called when the keyboard driver
  is up and running, too (it's now locally buffered)
- more and better error checks
- possibly more I forgot about...
- general cleanup.

Note, there is still some functionality missing from the keyboard driver:
- ctrl/alt/del handling
- key repeat (delay, time, non-repeating)

Repeat stuff might better be moved to the input_server add-on, anyway, for
more flexibility and better performance.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12498 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-28 19:04:06 +00:00
Adi Oanca
b9cc06b57c Show workspace number in the upper left corner
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12497 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-28 18:28:23 +00:00
Stefano Ceccherini
d6b771678c - Horizontal sliders work correctly.
- Only the active channel slider is highlighted now, unlike Beos's version. I like this more.
- Added an (experimental) feature: when changing a slider's value with the mouse, its value is displayed (requested by Axel, can you check if it's what you wanted ? http://burton666.neoni.net/shots/channelslider.png ).

There are still some problems with the calculations of coordinates, I'd like someone to review my code.

 

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12496 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-28 15:15:46 +00:00
Jérôme Duval
1f04728a75 Reworked different build modes
Uncomment in Jamfile "#APPSERVER_TEST_MODE = 1 ;" to test app_server with input_server
Uncomment in InputServer.h "//#define R5_CURSOR_COMM" to enable cursor comm when appserver BPortlink comm is used
Default mode is R5 comm if TARGET != haiku
and appserver BPortLink comm when TARGET = haiku

For APPSERVER_TEST_MODE, make sure to change the ViewInputDevice path in AddOnManager.cpp
To test with app_server, enable LaunchCursorThread() in AppServer.cpp and uncomment "#define INPUTSERVER_TEST_MODE 1" in ViewHWInterface.cpp
Also make sure to change the input_server path in AppServer.cpp


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12493 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-28 13:47:59 +00:00
Jérôme Duval
01d2dcc52b increased app_server wait time
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-28 13:40:12 +00:00
Stephan Aßmus
9715a3e1bf fixed BWindow::MoveXX(), BWindow::ResizeXX() and BView::ConvertToScreen()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-28 12:31:25 +00:00
Stephan Aßmus
8f6b562ad5 fixed border style not applied in constructor, changed drawing to use line arrays
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12490 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-28 12:29:47 +00:00
Jérôme Duval
e9da11d0b2 added inputserver test mode for ViewHWInterface
we write view events to a port so that the ViewInputDevice gets them and have them processed by input_server, and then app_server


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12489 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-28 10:10:52 +00:00
Jérôme Duval
2aec91b51e added a input device addon for app_server ViewDriver (R5 only, testing mode)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12488 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-28 09:59:07 +00:00
Stephan Aßmus
609b465638 fixed BView::MoveTo() and BView::ResizeTo(), fixed typo
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-28 09:44:29 +00:00
Stefano Ceccherini
ce956b5de7 Moved the "_init_global_fonts()" call above "load_menu_settings()", as the latter messes with be_plain_font. Reordered the headers.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-28 07:06:36 +00:00
Stephan Aßmus
3505574164 Added some TODO comments in Window.cpp, improved coordinate conversion in View.cpp. I'm not sure if this really works correctly, I need to write more tests. The scrolling test actually does more of what it is supposed to. At least the scrolling properly follows the mouse now. Missing are the movement of child views, the rebuilding of clipping, and I think that the scrolling needs to be synced to update requests having been fullfilled, or else some parts of the View will be CopyBits()ed which have not been drawn after having been scrolled into view by previous calls to ScrollBy(). Any insights appreciated.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12485 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-27 23:27:37 +00:00
Stephan Aßmus
4828a7251f I'm not 100% sure, but I think I fixed a confusion in sending the current view position and size to the client. Note that BView::originX and BView::originY are poorly named, because they are not the local coordinate system origin, but the offset within the parent at which the view is located.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-27 23:20:29 +00:00
Stephan Aßmus
50581a7c0a fixed a bug with drawing ellipses and invalidating the correct area for stroking paths, taking the stroke width into account
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12483 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-27 23:17:39 +00:00
Stephan Aßmus
dd55678524 test app for scrolling, link for running on R5 to see how it should behave
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12482 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-27 17:30:18 +00:00
Stephan Aßmus
db7226db9d work in progress to get scrolling working, so Adi can have a look, no changes to existing functionality, cleanup in Layer.cpp
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-27 17:26:57 +00:00
Stephan Aßmus
28930a1240 small changes and fixes here and there
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12480 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-27 17:25:29 +00:00
Stefano Ceccherini
de6705ffd0 Added zip and unzip, which are even working
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12479 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-27 09:31:39 +00:00
Axel Dörfler
b20667b35b {install|remove}_io_interrupt_handler() now correctly handle the B_NO_ENABLE_COUNTER flag.
Lots of cleanup:
- moved B_NO_ENABLE_COUNTER flag definition out of int.h to KernelExport.h, as it's
  described in the BeBook (although it's probably not really used that often :))
- int.c no longer has any platform dependent code (+ 0x20 on interrupt numbers is gone);
  it's now entirely handled in the arch/x86/ section.
- the io_vectors[] is now statically initialized, instead of allocated from the heap
- removed {install|remove}_interrupt_handler(); they weren't that useful, arch_smp_init()
  is now calling install_io_interrupt_handler() correctly instead
- introduced a new arch_int.h header file that currently contains NUM_IO_VECTORS only
  (though on x86, it also has ARCH_INTERRUPT_BASE == 0x20).
- changed the return type from {install|remove}_io_interrupt_handler() from "long" to
  "status_t"
- rearranged and cleaned the PIC initialization code, made the PIC code more prominent
- changed comments that talk about a non existing 8239 (the PIC chip is actually 8259)
- moved arch/x86/interrupts.h to the source directory, as it's not used outside
- added BeOS compatible interrupts_enabled() function, that should replace our
  equivalent (and private) are_interrupts_enabled()


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12477 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-27 01:08:35 +00:00
Axel Dörfler
a38e60f223 Added "-f" option to only show real files.
Some cleanups and minor fixes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12476 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 20:29:30 +00:00
Axel Dörfler
7542e025d3 Corrected the last commit: we actually use the value of *_length later,
so we shouldn't overwrite it with zero...
I must have tested an older version of the driver by accident; now it
actually works again under R5.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12475 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 20:27:46 +00:00
Axel Dörfler
24e4add56f This partially removes the changes made in r7099:
Apparently, the net_server does not use read()/write() but the kernel
syscalls directly. Even worse, it obviously ignores error values like
B_WOULD_BLOCK - the return length has to be set even in case of error.
The driver did not work at all under R5 net_server since then...
Some other minor changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 17:14:24 +00:00
Axel Dörfler
81012f638c Mostly cleanup and style guide changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12473 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 16:02:38 +00:00
Rudolf Cornelissen
846f49314f added logging module info for 3D add-on. BTW bumped driverversion to 0.43
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12472 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 14:59:44 +00:00
Rudolf Cornelissen
9c3c151715 added second flag for 3D add-on indicating 2D modechanges
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12471 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 14:48:41 +00:00
Rudolf Cornelissen
a3da25fc7e added loglevel use indication: 3D add-on adheres to this, 2D driver should be retuned some day
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 14:47:21 +00:00
Rudolf Cornelissen
c9c0c72b4b added second flag for 3D add-on signalling mode changes happening for apps rendering in non-direct mode
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12469 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 14:45:44 +00:00
Stephan Aßmus
93a2cfd43c Correct implementation of BView::CopyBits() in ServerWindow, implementation of CopyRegion in DisplayDriverPainter that sorts the rects topologically depending on direction and does the copy in place, obtaining a speedup of about 250%. TODO: extract the sorting algorithm so that it can be reused for the hardware accelerated version later.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12468 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-26 13:50:34 +00:00
Jérôme Duval
a2f1c2e02d added 3G name based on box type
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12467 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-25 22:39:01 +00:00