Commit Graph

12290 Commits

Author SHA1 Message Date
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
Axel Dörfler
497d01f0b9 Some minor visual improvements: the keyboard input device now reports
"AT Keyboard" and "USB Keyboard", instead of "at|usb Keyboard".
Also, the mouse input device now reports a "PS/2 Mouse" instead of
a "ps2 Mouse".
Generally, both now capitalize the device name when reporting the name.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12465 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-25 14:17:57 +00:00
Axel Dörfler
7b58474a09 Beautified some odd code (like "a ? a : NULL" to "a").
Applied our coding style guide.
No functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12464 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-25 14:14:09 +00:00
Nathan Whitehorn
9d7e67b1bc Rewrote the Global lock implementation by stealing code from NetBSD, and fudged around a bug in the IBM Thinkpad A21M ACPI firmware, involving the invocation of the _STA method. I suspect this may be a deeper bug -- I'll look into it later.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12463 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-24 04:50:34 +00:00
Adi Oanca
51a73c1e2b Fixed a bug where a modal app window appeared in current workspace although its workspace mask did not include it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12462 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-23 10:05:33 +00:00
Jérôme Duval
70208b9153 forgot these files which are changed to LGPL too
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12461 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-22 13:49:02 +00:00
Jérôme Duval
0442db9670 Echo generic driver is now LGPL, thanks !
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12460 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-22 13:35:11 +00:00
Jérôme Duval
626bc4bee1 Echo Generic Driver
Release B1

B1 is very similar to B0, with the following changes:
-The code is now licensed under the terms of the Lesser GNU Public License.
-Fixed a minor bug in CDspCommObject::ReadMidi
-Added support for 8 kHz sampling with Gina3G
-Removed obsolete "AddBuffer" command from DSP comm object
-Removed support for Gina24 CD-ROM S/PDIF mode
-Rewrote and fixed some bugs in digital mode switching for Layla24/Gina24/Mona

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12459 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-22 12:19:33 +00:00
Axel Dörfler
6a6f5ef6f3 Removed obsolete keyboard driver (one of them :-)).
The other driver is still in use by consoled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12458 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-21 20:56:04 +00:00
Adi Oanca
6141cc1d5a Adjusted SetFeel() to current server implementation
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12457 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-21 18:59:14 +00:00
Adi Oanca
d53639ce2e Implemented support for BWindow::SetFeel()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12456 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-21 18:57:34 +00:00
Adi Oanca
997865348b added AS_ROOTLAYER_DO_CHANGE_WINBORDER_FEEL
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12455 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-21 18:56:53 +00:00
Jérôme Duval
875d858766 added a tablet_movement struct
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12454 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-20 21:53:21 +00:00
Jérôme Duval
2ee0e237e1 added a tablet device addon
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12453 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-20 21:52:39 +00:00
Jérôme Duval
cdd6a06ac5 Added quotes for MkDir1, allows spaces in directory names
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12452 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-20 17:55:21 +00:00
Stephan Aßmus
3934e7037e forgot another important detail...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12451 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-20 10:36:05 +00:00
Stephan Aßmus
f8bbbd8332 it helps reading my own commit messages
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12450 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-20 10:12:54 +00:00
Stephan Aßmus
ded5874ea2 Implemented changes necessary for single buffered mode, it is turned off for now, because the soft cursor is currently not being taken care of. We will still use double buffering if the screen color space is not 32 bits, too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12449 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-20 09:27:15 +00:00
Axel Dörfler
807ba996da The matrox graphics driver now also works under Haiku when the target haiku has been set (tested).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12448 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-20 00:20:14 +00:00
Jérôme Duval
b8d27287f9 Added support for cursor position handling from input_server
LaunchInputServer now waits for _roster_thread_ to be running
Not tested/not enabled :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12445 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-19 20:44:09 +00:00
Stephan Aßmus
0999749164 experimented with BView::CopyBits(), found out how it should work, but didn't do the changes yet for a correct implementation
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12444 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-19 18:55:46 +00:00