Lars Op den Kamp [Tue, 28 Feb 2012 18:05:25 +0000 (19:05 +0100)]
cec: use the correct Sleep() method in CCECProcessor::OpenConnection(). the thread hasn't been started there yet, so the sleep wasn't working. fixes 'device or resource busy' when plugging in the adapter. issue was reported on the forums
Lars Op den Kamp [Tue, 28 Feb 2012 01:58:15 +0000 (02:58 +0100)]
cec-config-gui: added support for the new 'send inactive source' setting
Lars Op den Kamp [Tue, 28 Feb 2012 01:48:01 +0000 (02:48 +0100)]
LibCecSharp: implemented support for the new 'send inactive source' setting
Lars Op den Kamp [Tue, 28 Feb 2012 01:43:05 +0000 (02:43 +0100)]
LibCecSharp: recreate the delegates properly when (re)connecting to LibCecSharp
Lars Op den Kamp [Tue, 28 Feb 2012 01:23:58 +0000 (02:23 +0100)]
LibCecSharp: more cosmetics
Lars Op den Kamp [Tue, 28 Feb 2012 01:08:14 +0000 (02:08 +0100)]
cec-config-gui: set cbPortNumber enabled when the physical address override isn't checked instead
Lars Op den Kamp [Tue, 28 Feb 2012 01:06:53 +0000 (02:06 +0100)]
cec-config-gui: cosmetics
Lars Op den Kamp [Tue, 28 Feb 2012 00:50:40 +0000 (01:50 +0100)]
cec-config-gui: fix 'enabled' status of cbPortNumber now that libCEC no longer unsets the autodetect bool
Lars Op den Kamp [Mon, 27 Feb 2012 22:35:00 +0000 (23:35 +0100)]
cec: just dlclose()/FreeLibrary() after starting the bootloader
Lars Op den Kamp [Mon, 27 Feb 2012 22:03:33 +0000 (23:03 +0100)]
cec: added a command to the interface to start the bootloader directly, without going through all checks. bugzid: 218
Lars Op den Kamp [Mon, 27 Feb 2012 20:25:46 +0000 (21:25 +0100)]
cec: added an 'send inactive source' option to libcec_configuration, only supported by client/server 1.5.1 and up. bugzid: 439
Lars Op den Kamp [Mon, 27 Feb 2012 19:57:41 +0000 (20:57 +0100)]
cec: ensure that the connection is really closed before retrying to connect. bugzig: 436
Lars Op den Kamp [Mon, 27 Feb 2012 19:40:08 +0000 (20:40 +0100)]
cec: don't wait for the full timeout to pass in CCECProcessor::OpenConnection(), but retry to connect 2 times. fixes 'port busy' errors when initialising libCEC
Lars Op den Kamp [Mon, 27 Feb 2012 19:10:00 +0000 (20:10 +0100)]
cec: fix configuration updates from libCEC. bugzid: 459
Lars Op den Kamp [Mon, 27 Feb 2012 19:09:24 +0000 (20:09 +0100)]
cec: set the server version in the LibCEC's constructor, since this is checked by clients. fixes 'invalid libCEC version' popup when inserting the adapter
Lars Op den Kamp [Mon, 27 Feb 2012 14:32:13 +0000 (15:32 +0100)]
platform: use gettimeofday() on darwin in GetAbsTime(), as it is specified in OS-X dev guide
Lars Op den Kamp [Mon, 27 Feb 2012 13:23:36 +0000 (14:23 +0100)]
cec: don't send an updated configuration back when initialising. let the client call the GetCurrentConfiguration() method. bugzid: 459
Lars Op den Kamp [Mon, 27 Feb 2012 13:15:26 +0000 (14:15 +0100)]
cec: don't send an updated configuration when libCEC hasn't been initialised fully. bugzid: 459
Lars Op den Kamp [Mon, 27 Feb 2012 13:09:17 +0000 (14:09 +0100)]
cec: don't try to transmit when the processor is being stopped.
Lars Op den Kamp [Sun, 26 Feb 2012 23:51:58 +0000 (00:51 +0100)]
cosmetics
Lars Op den Kamp [Sun, 26 Feb 2012 23:50:25 +0000 (00:50 +0100)]
cec: also add commands to unsupported features when receiving CEC_ABORT_REASON_REFUSED
Lars Op den Kamp [Sun, 26 Feb 2012 23:44:10 +0000 (00:44 +0100)]
cec: link to rt. fixes compilation after
c4609291c334e2f5f5b87b8dc37e68a958bfb378
Lars Op den Kamp [Sun, 26 Feb 2012 22:41:09 +0000 (23:41 +0100)]
cec: and now correct
Lars Op den Kamp [Sun, 26 Feb 2012 22:38:59 +0000 (23:38 +0100)]
cec: fixed return value of CUSBCECAdapterCommunication::ParseMessage(). fixes messages not being parsed in certain occasions
Bob van Loosen [Sun, 26 Feb 2012 22:16:58 +0000 (23:16 +0100)]
fixed: the timeout value of pthread_cond_timedwait has to be referenced to CLOCK_REALTIME
Bob van Loosen [Sun, 26 Feb 2012 22:03:13 +0000 (23:03 +0100)]
fixed: use CLOCK_MONOTONIC for timing info, since gettimeofday is affected by ntp and by manually adjusting the system time
Lars Op den Kamp [Sun, 26 Feb 2012 22:17:21 +0000 (23:17 +0100)]
cec: added a timeout to StopThread()
Lars Op den Kamp [Sun, 26 Feb 2012 21:49:43 +0000 (22:49 +0100)]
cec: don't add data to the input buffer in CUSBCECAdapterCommunication before it's fully initialised
Lars Op den Kamp [Sun, 26 Feb 2012 21:28:04 +0000 (22:28 +0100)]
cec: lock in SyncedBuffer
Lars Op den Kamp [Sat, 25 Feb 2012 19:34:15 +0000 (20:34 +0100)]
cec: fixed invalid forward decl after changing struct into class
Lars Op den Kamp [Sat, 25 Feb 2012 10:16:57 +0000 (11:16 +0100)]
osx compiler was complaining about non-virtual destructors in the interface structs. fixed
Lars Op den Kamp [Sat, 25 Feb 2012 10:07:56 +0000 (11:07 +0100)]
fixed two more accidental double derefs
Lars Op den Kamp [Wed, 22 Feb 2012 10:40:16 +0000 (11:40 +0100)]
cec: fixed c+p monster - CRLCommandHandler is for Toshiba, not Panasonic
Lars Op den Kamp [Tue, 21 Feb 2012 12:40:43 +0000 (13:40 +0100)]
platform: fixed accidental double deref. the method parameter already does that. closes #24
Lars Op den Kamp [Tue, 21 Feb 2012 12:10:49 +0000 (13:10 +0100)]
cec: added Toshiba's vendor id, and set the device ID of the primary device to Toshiba's and transmit it when starting
Lars Op den Kamp [Tue, 21 Feb 2012 12:09:54 +0000 (13:09 +0100)]
win32: moved all the code signing data into support/private
Lars Op den Kamp [Sun, 19 Feb 2012 10:29:39 +0000 (11:29 +0100)]
fixed tabs -> spaces in the changelog
Lars Op den Kamp [Sun, 19 Feb 2012 01:29:02 +0000 (02:29 +0100)]
cec: also send deck status 0x20 when no active source message has been sent, or keypresses won't work after a source switch
Lars Op den Kamp [Sun, 19 Feb 2012 01:16:05 +0000 (02:16 +0100)]
cec-config-gui: ask the user whether he wants to try to reconnect when the connection failed.
Lars Op den Kamp [Sun, 19 Feb 2012 01:18:11 +0000 (02:18 +0100)]
cec: don't send an updated configuration when the connection failed
Lars Op den Kamp [Sun, 19 Feb 2012 00:59:30 +0000 (01:59 +0100)]
cec-config-gui: make overriding the physical address optional
Lars Op den Kamp [Sun, 19 Feb 2012 00:32:13 +0000 (01:32 +0100)]
updated changelog for 1.5.0
Lars Op den Kamp [Sat, 18 Feb 2012 11:13:46 +0000 (12:13 +0100)]
cec: fixed crash when replacing handlers - std::map::clear() already calls the destructors of each item
Lars Op den Kamp [Sat, 18 Feb 2012 02:18:03 +0000 (03:18 +0100)]
win32: don't install libcec to the system directory by default, and delete previous (testing) copies if present
Lars Op den Kamp [Sat, 18 Feb 2012 01:50:34 +0000 (02:50 +0100)]
cec: wait for multiple responses, not just for one. don't try to read and write at the same time
Lars Op den Kamp [Fri, 17 Feb 2012 17:36:43 +0000 (18:36 +0100)]
cec: don't keep the mutex locked while opening/closing a connection in CCECProcessor now that the communication thread executes commands directly instead of via a buffer. fixes lockup on exit when data is being received
Lars Op den Kamp [Fri, 17 Feb 2012 14:36:18 +0000 (15:36 +0100)]
cec: fixed compilation warning on win32 (possibly uninitialised var)
Lars Op den Kamp [Fri, 17 Feb 2012 11:30:23 +0000 (12:30 +0100)]
cec: don't transmit in CCECProcessor while keeping the mutex locked. don't set the device state to not present when no acked was received, because that can have other causes
Lars Op den Kamp [Fri, 17 Feb 2012 10:55:05 +0000 (11:55 +0100)]
cec: fixed typo in GetStatus()
Lars Op den Kamp [Fri, 17 Feb 2012 10:37:20 +0000 (11:37 +0100)]
cec: process messages that were received async, or all incoming requests will time out
Lars Op den Kamp [Fri, 17 Feb 2012 10:23:12 +0000 (11:23 +0100)]
cec: ensure that the vendor id is requested first when requesting info from a device, so we are using the correct handler
Lars Op den Kamp [Fri, 17 Feb 2012 10:14:08 +0000 (11:14 +0100)]
cec: cleaned up CCECBusDevice::GetStatus()
Lars Op den Kamp [Fri, 17 Feb 2012 09:55:03 +0000 (10:55 +0100)]
cec: LG devices don't respond to CEC version requests (unsupported feature). set it to 1.3a for all LG devices
Lars Op den Kamp [Fri, 17 Feb 2012 09:53:56 +0000 (10:53 +0100)]
cec: fixed 'unsupported command' marking in CCECBusDevice
Lars Op den Kamp [Fri, 17 Feb 2012 09:53:17 +0000 (10:53 +0100)]
cec: fixed - directly process commands that have been received, or all the 'request' methods will fail initially
Lars Op den Kamp [Fri, 17 Feb 2012 01:59:46 +0000 (02:59 +0100)]
tabs -> spaces
Lars Op den Kamp [Fri, 17 Feb 2012 01:58:48 +0000 (02:58 +0100)]
platform: fixed return value from CCondition::Wait()
Lars Op den Kamp [Thu, 16 Feb 2012 19:28:08 +0000 (20:28 +0100)]
cec-config-gui: fixed typo that saved the incorrect base device setting
Lars Op den Kamp [Thu, 16 Feb 2012 18:48:02 +0000 (19:48 +0100)]
cec: bump version numbers to 1.5, to prepare for the new release
Lars Op den Kamp [Thu, 16 Feb 2012 13:54:21 +0000 (14:54 +0100)]
cec: restore the order in the headers
Lars Op den Kamp [Thu, 16 Feb 2012 13:11:09 +0000 (14:11 +0100)]
cec: added RescanDevices()/cec_rescan_devices() to the interface, to let libCEC force polls to all logical addresses. deprecated GetLibVersion() methods, and added the server version to libcec_configuration. added missing libcec_configuration conversions in LibCecSharp.
Lars Op den Kamp [Thu, 16 Feb 2012 11:12:42 +0000 (12:12 +0100)]
installer: reuse the previous driver installer if it's found
Lars Op den Kamp [Thu, 16 Feb 2012 09:57:26 +0000 (10:57 +0100)]
cec: check whether the port is open, not whether libCEC is initialised in Transmit()
Lars Op den Kamp [Thu, 16 Feb 2012 09:44:27 +0000 (10:44 +0100)]
cec: ensure that the ackmask is always set to 0 when closing the connection and that the call doesn't block the Close() call
Lars Op den Kamp [Thu, 16 Feb 2012 09:08:13 +0000 (10:08 +0100)]
cec-config-gui: make the progress bar invisible when done. disable the physical address/hdmi port settings when the address is autodetected.
Lars Op den Kamp [Thu, 16 Feb 2012 09:07:23 +0000 (10:07 +0100)]
cec: moved the autodetect address api call to libcec_configuration. only send power up commands to non-tv devices when the power state is not on/transition->on. let players call the power up/power down command.
Lars Op den Kamp [Thu, 16 Feb 2012 01:13:40 +0000 (02:13 +0100)]
cec: removed unneeded client version from the CCECProcessor constructor
Lars Op den Kamp [Thu, 16 Feb 2012 00:59:44 +0000 (01:59 +0100)]
cec-config-gui: added implementations for "wake devices" and "standby devices"
Lars Op den Kamp [Thu, 16 Feb 2012 00:59:06 +0000 (01:59 +0100)]
LibCecSharp: pass correctly formatted logical address lists
Lars Op den Kamp [Thu, 16 Feb 2012 00:58:29 +0000 (01:58 +0100)]
cec: fix active source switches for the standard CEC implementation. added some log messages. ensure that we don't send data to ourself
Lars Op den Kamp [Thu, 16 Feb 2012 00:04:58 +0000 (01:04 +0100)]
cec: don't hold a lock in CCECBusDevice when calling GetStatus()
Lars Op den Kamp [Wed, 15 Feb 2012 21:19:55 +0000 (22:19 +0100)]
cec-config-gui: added an update button on the device info window
Lars Op den Kamp [Wed, 15 Feb 2012 19:51:18 +0000 (20:51 +0100)]
cec-config-gui: open the connection in the background thread
Lars Op den Kamp [Wed, 15 Feb 2012 19:27:05 +0000 (20:27 +0100)]
cec-config-gui: no longer showing modal device info windows
Lars Op den Kamp [Wed, 15 Feb 2012 18:39:40 +0000 (19:39 +0100)]
cec-config-gui: don't update the log window all the time when it's not the selected tab
Lars Op den Kamp [Wed, 15 Feb 2012 18:38:14 +0000 (19:38 +0100)]
cec: added GetPortName() to CUSBCECAdapterCommunication
Lars Op den Kamp [Wed, 15 Feb 2012 18:37:41 +0000 (19:37 +0100)]
cec: don't lock the mutex when checking for the poll status of a device. this is always called from the same thread
Lars Op den Kamp [Wed, 15 Feb 2012 18:37:01 +0000 (19:37 +0100)]
cec: don't do a full reinit when not needed
Lars Op den Kamp [Wed, 15 Feb 2012 16:29:36 +0000 (17:29 +0100)]
LibCecSharp: delete the internal callback struct when closing the connection
Lars Op den Kamp [Wed, 15 Feb 2012 16:28:59 +0000 (17:28 +0100)]
cec-config-gui: cosmetics
Lars Op den Kamp [Wed, 15 Feb 2012 15:27:06 +0000 (16:27 +0100)]
cec-config-gui: read/write the vendor id override setting
Lars Op den Kamp [Wed, 15 Feb 2012 15:02:26 +0000 (16:02 +0100)]
cec-config-gui: added the new parameters. cleanup round.
Lars Op den Kamp [Wed, 15 Feb 2012 15:01:35 +0000 (16:01 +0100)]
LibCecSharp: added the new parameters
Lars Op den Kamp [Wed, 15 Feb 2012 15:00:56 +0000 (16:00 +0100)]
cec: added poweroff devices parameter to the config (instead of a boolean parameter). changed the power on parameter into activate source.
Lars Op den Kamp [Wed, 15 Feb 2012 12:07:28 +0000 (13:07 +0100)]
cec: added a callback that is called when libCEC's configuration changed.
Lars Op den Kamp [Wed, 15 Feb 2012 10:00:33 +0000 (11:00 +0100)]
cec: don't reset the "adapter message sent" event
Lars Op den Kamp [Wed, 15 Feb 2012 01:55:06 +0000 (02:55 +0100)]
cec: transmit a keypress and key release as power on command when the target device isn't the TV
Lars Op den Kamp [Wed, 15 Feb 2012 01:48:39 +0000 (02:48 +0100)]
cec-config-gui: updated labels, added 'not implemented' warning for the button config, leave unimplemented inputs disabled
Lars Op den Kamp [Tue, 14 Feb 2012 19:06:04 +0000 (20:06 +0100)]
cec-config-gui: added some basic test commands and device information
Lars Op den Kamp [Tue, 14 Feb 2012 16:56:48 +0000 (17:56 +0100)]
cec: return the anynet return keycode directly instead of translating it to 'return' for v1.5.0+ clients
Lars Op den Kamp [Tue, 14 Feb 2012 16:33:00 +0000 (17:33 +0100)]
cec: added SetConfiguration()/cec_set_configuration() to the interface
Lars Op den Kamp [Tue, 14 Feb 2012 14:44:50 +0000 (15:44 +0100)]
LibCecSharp: set the callback methods in libcec to NULL before closing the connection, since these might already have been destroyed in .NET
Lars Op den Kamp [Tue, 14 Feb 2012 14:40:28 +0000 (15:40 +0100)]
cec: ensure that there always is at least one device type set
Lars Op den Kamp [Tue, 14 Feb 2012 13:42:24 +0000 (14:42 +0100)]
cec-config-gui: read the configuration before initialising libCEC
Lars Op den Kamp [Tue, 14 Feb 2012 13:20:16 +0000 (14:20 +0100)]
cec-config-gui: added a button configuration panel. currently only shows all cec keys and select the correct row when a key is pressed
Lars Op den Kamp [Tue, 14 Feb 2012 11:42:13 +0000 (12:42 +0100)]
cec-config-gui: added log level configuration and a 'save' and 'clear' button for the log
Lars Op den Kamp [Tue, 14 Feb 2012 11:01:53 +0000 (12:01 +0100)]
cec-config-gui: don't enable the 'connected device' selection when there's only one device
Lars Op den Kamp [Tue, 14 Feb 2012 10:39:56 +0000 (11:39 +0100)]
platform: added CCondition::Wait() without a timeout for windows. fixes compilation on windows
Lars Op den Kamp [Tue, 14 Feb 2012 10:39:20 +0000 (11:39 +0100)]
platform: let CTimeout return uint32_t instead of uint64_t. fixes compilation warning
Lars Op den Kamp [Tue, 14 Feb 2012 01:14:50 +0000 (02:14 +0100)]
cec: add an option to wake multiple devices via the initial configuration