Commit Graph

55651 Commits

Author SHA1 Message Date
Dario Casalinuovo
2f611cf798 BParameterGroup: Fix memory leak
* Fixes #12706.
* The issue has been reported by Cédric Degea with the fix
included. Thanks!
2016-04-06 00:28:42 +02:00
Dario Casalinuovo
99741be9f2 shutdown_media_server: Rework shutdown process
* Fixes issues with launch_daemon restart.
* Rely on what the actual response from the server is
instead to naively try to kill it.
* Remove snoozing and make the restart process very fast.
* Any app should rely on notifications anyway.
* Due to some reason a few months ago the media_addon_server
locked up very often making the notification service unreliable,
today this issue looks like solved. This made possible the recent
improvements.
2016-04-05 15:25:30 +02:00
Rene Gollent
8c7bdb72ae Debugger: Refactor TeamsWindow to use TargetHostInterface.
TeamsWindow:
- On startup, instantiate a LocalTargetHostInterface, and pass it
  to the TeamsListView.

TeamsListView:
- Refactor building and updating the teams list to work via TargetHost
  and its respective listener interface rather than the previous combination
  of be_roster and manual polling.
- Style fixes.
2016-04-04 22:17:07 -04:00
Rene Gollent
475ea59b5f Debugger: Fix handling of team creation events.
LocalTargetHostInterface:
- When receiving team creation events, check if the team in question actually
  contains a valid app image. The kernel's create notification is sent before
  the team is completely initialized, and consequently if our get_team_info()
  call gets in quickly enough, the images may not be loaded yet. If this
  situation is detected, add the team ID to a wait list.
- If we have waiting teams, listen for new messages with a short timeout. If no
  message is received within the timeout, walk our list of waiting teams and
  see if they are fully initialized yet, and if so, dispatch the appropriate
  event.
2016-04-04 22:17:06 -04:00
Dario Casalinuovo
11c7bd86e2 Replace synchronization semaphore with async messages
* Remove SyncToServices, I will probably readd it in future
but this time using a local synchronization service more than
relying on the media_server to release the semaphore.
* Due to some discussions today in mailing list I decided
to step back and retry the initial way to notify media rosters
about media services status. It is woking by using two different
notifications for reconnecting to the media_server and notifying
the local subscribers.
* This speed up the media services restart.
* Sorry for the noise and very thanks for reviewing my code to
everyone.
2016-04-05 00:41:20 +02:00
Dario Casalinuovo
16732ae7a4 VideoWindow consumer: Fix connection
* The integer overflowed for some reason.
* Fixes #9439.
2016-04-05 00:30:38 +02:00
Dario Casalinuovo
a0b3904a33 launch_media_server: Remove notifications handled elsewhere 2016-04-04 01:27:15 +02:00
Dario Casalinuovo
c131229f08 media_server: Add notifications 2016-04-04 01:27:12 +02:00
Dario Casalinuovo
53c3fa5137 Introduce functionality for syncing with the media services
* The global synchro semaphore is provided with the purpose of
being used to avoid threads lock up when the media_server is in
an undefined state. There's still room for improvements.
* BMediaRoster::SyncToServices lock up on a semaphore until
the multi_audio correctly connected to the mixer.
2016-04-04 01:27:09 +02:00
Dario Casalinuovo
866084f7a9 MediaPrefs: No need to start media services anymore
* This will cause troubles as the launch_daemon is
doing this job for us.
2016-04-04 01:26:49 +02:00
Dario Casalinuovo
77c6944c02 NodeManager: Use boolean expression 2016-04-04 01:26:28 +02:00
Dario Casalinuovo
1199f321ea media_server: Initial move to BServer 2016-04-04 01:26:27 +02:00
Humdinger
6501f7fb63 Added package TakeNotes 2016-04-03 19:12:03 +02:00
Rene Gollent
c6897b2871 Debugger: Start implementing host interface.
- Add new model class TargetHost for host-specific information such as
  the running team list.
- Add new interface class TargetHostInterface and implementing subclass
  LocalTargetHostInterface. Not yet complete/usable due to some as of yet
  unresolved issues with the involved system APIs.
2016-04-02 22:48:58 -04:00
Rene Gollent
2e7058114c Debugger: DebuggerInterface refactor.
DebuggerInterface:
- Refactor into abstract base class.
- Introduce interface configuration abstract base class.
- Move existing implementation into LocalDebuggerInterface and add
  corresponding configuration class.

Debugger:
- Adjust to instantiate LocalDebuggerInterface.

In and of itself no functional change, but paves the way for further
refactoring to make the debugger fully interface-agnostic (this isn't yet
the case for retrieving target system information such as the team listing,
and creating/attaching to teams).
2016-04-02 22:48:36 -04:00
Rene Gollent
6bef41c6a9 Debugger: Minor refactor.
TeamDebugger:
- Rather than instantiating the DebuggerInterface directly, we now
  expect it to be given to us externally. This allows TeamDebugger
  to be agnostic of where the team actually resides.

Debugger:
- Create and initialize DebuggerInterface before passing it on to
  TeamDebugger.

No functional change.
2016-04-02 15:05:19 -04:00
Rene Gollent
5632edebb4 Debugger: Resolve minor TODO. 2016-04-02 15:05:18 -04:00
John Scipione
7c6b944cea Screenshot: Fix argc count
... which I missed in my last commit, sorry for the noise.
2016-04-01 06:58:44 -07:00
John Scipione
ea810bf683 Screenshot: Ignore delay on Print Screen
The delay variable is only considered when you push the
"New screenshot" button as suggested by diver.

Fixes #11447
2016-03-31 15:55:25 -07:00
John Scipione
63fd7a2041 Screenshot: default space between buttons 2016-03-31 15:54:50 -07:00
John Scipione
bcd52c65cb Screenshot: Don't take screenshot of open menu
...take screenshot of window with the menu open instead.

menus are windows, this is an implementation detail.
2016-03-31 14:40:26 -07:00
John Scipione
c4ec640b46 WindowInfo: spaces => tabs 2016-03-31 14:39:49 -07:00
Dario Casalinuovo
cb80fc94c2 NodeManager: Allow to overwrite the system clock
* This is another brick into making the media_addon_server survive
to media_server crashes and vice versa.
2016-03-31 18:06:20 +02:00
Dario Casalinuovo
7eaa054b87 StreamerPlugin: Use BDataIO as base interface
* There's no need to force the streamer plugin to use a
BMediaIO. This class is supplied to accomodate more smart uses,
but in certain cases it makes just things more complex. If a
plugin doesn't need to have an internal caching method, then it
will be simpler to implement a block-consuming BDataIO and let
the internal BMediaIOWrapper to deal with caching.
2016-03-31 18:06:19 +02:00
Automatic Committer
e38a85b86a Update pci.ids from pciids.sourceforge.net 2016-03-31 05:20:18 +02:00
John Scipione
1e7a0406dc DataTranslation: Fix crash
just noticed this crash...

when fConfigView gets deleted by selecting a translator it
deletes its child fInfoText but we were leaving the pointer
alone.

Afterwords if you changed the panel text color in Appearance
a message gets sent that checks to see if the fInfoView
pointer is NULL, and since it isn't, procedes to dereference
the pointer and *boom* the app crashes.

Fix this by setting the fInfoText pointer to NULL when fConfig
view gets deleted. That way when you change the panel text
color it doesn't attempt to dereference the stale pointer
and everything works as it should.
2016-03-30 16:48:59 -07:00
John Scipione
b90d36ccd6 DataTranslations: Make window not resize
As you scroll through the list of translators keep the window width
constant by setting a minimum width. A little too narrow at 8pt,
and the window is too wide at 24pt, but at 12pt it is just right.
(at least for 1024x768).

The window width and height were not chosen arbitrarily, 598px
is just about 600px and almost exactly fits the width of our
widest translator (PNG translator). The height is 369px which comes
from the golden ratio of 1.62:1. The width of the translators are
set to exactly match this at 12pt font size. This way you don't get
any unexpected window resizing. At other font sizes the window does
resize, but, the contents still fit (mostly) nicely.

See screenshot for details:
http://insightfactory.tumblr.com/image/141980518317
2016-03-30 16:11:52 -07:00
John Scipione
571cffc10e DataTranslation: Style fixes 2016-03-30 14:41:51 -07:00
John Scipione
abfb31b6d0 WebPTranslator: style fixes only 2016-03-30 14:41:51 -07:00
John Scipione
e465dcb609 WebPTranslator: Make menu fields variable width 2016-03-30 14:41:51 -07:00
John Scipione
d9975fafd8 WebPTranslator: Remove leading spaces 2016-03-30 14:41:51 -07:00
John Scipione
d712965dd0 PSDTranslator: Make menu fields variable width 2016-03-30 14:41:51 -07:00
John Scipione
613b939283 GIFTranslator: Make menu fields variable width 2016-03-30 14:41:51 -07:00
Adrien Destugues
8948853269 Netboot: remove rtl8169 driver from boot archive
This driver was replaced by rtl81xx. Having both in the image results
in conflicts and non-working ethernet.
2016-03-29 22:46:24 +02:00
Adrien Destugues
9d08351025 NetBoot: add the notification module to boot symlinks
- There is no point in having it in the boot image if it can't be used.
- This however does not get the system booting.
2016-03-29 22:46:24 +02:00
Dario Casalinuovo
d17cbc473f BufferManager: Remove custom hash key 2016-03-28 21:05:27 +02:00
Axel Dörfler
67988f501a NodeMonitor: Resolve mount points for B_WATCH_CHILDREN.
* When a watched directory contains a mount point, we need to resolve
  the actual parent directory of the mount point in the file system to
  serve the monitor.
2016-03-28 14:31:27 +02:00
Axel Dörfler
6f7fc2204b NodeMonitor: Added B_WATCH_CHILDREN flag.
* Added a directory argument for notify_{stat/attribute}_changed().
* This allows to watch only a directory, and get the notifications for
  all of its files, not just add/remove entry notifications.
2016-03-28 14:31:27 +02:00
Dario Casalinuovo
55f28f1396 MediaPlayer: Fix logic inversion 2016-03-27 21:49:57 +02:00
Dario Casalinuovo
b7f7c6e0a8 MediaPlayer: Fix style in Playlist.h 2016-03-27 21:34:19 +02:00
Dario Casalinuovo
bcf30a5eb5 MediaPlayer: Add support code for url items
* It needs further work to avoid the AudioSupplier being
recreated every time. It makes the BMediaFile to redo the sniffing
process various times.
2016-03-27 21:34:19 +02:00
Dario Casalinuovo
e00ede2b48 MediaPlayer: Add UrlPlaylistItem 2016-03-27 21:34:18 +02:00
Adrien Destugues
97dfeb9670 Make some headers C89 safe again
- Allows to use FindDirectory.h in C89 sourcecode (no C++ style comments
  allowed)
2016-03-27 16:58:38 +02:00
autonielx
af6cb5f94e Update translations from Pootle 2016-03-26 07:28:31 +01:00
Dario Casalinuovo
9ab61bb71c PluginManager: Fix build for x86_64 2016-03-26 00:39:14 +01:00
Rene Gollent
a204259b1c BShape: Fix issues for debug build.
As part of the refactoring that was done for app_server layer support,
the private shape_data struct was updated to derive from BReferenceable.
However, BShape's destructor was never updated to reflect this, and
consequently attempts to use a debug build of libbe would consistently
throw the user into the debugger due to BReferenceable's sanity check
against non-zero deletes that weren't on the stack.

It should be noted though that there are probably a few things that could
be factored out and/or simplified with that class in general, since e.g.
when copying its data from another shape_data instance, it uses C++ array
allocations, while when being manipulated by BShape directly, the latter
uses alloc/realloc/free.
2016-03-25 19:32:58 -04:00
Dario Casalinuovo
8c7679851f Move MediaIO in it's own header 2016-03-25 22:44:56 +01:00
Dario Casalinuovo
2250435e4c PluginManager: Add debug to wrapper 2016-03-25 22:23:35 +01:00
Dario Casalinuovo
25527aff5c MediaIOWrapper: IsEndless was not used the right way
* The idea is to just identify when a BMediaIO is able
to tell the whole size of the data, but caching needs
more complex policies to be successful.
2016-03-25 22:22:31 +01:00
Dario Casalinuovo
22c9314255 MediaExtractor/PluginManager: Add plugin deletion when extractor die 2016-03-25 22:20:35 +01:00