6 years agoRevert "Navigation: Do only go to standby when recording timer is likely"
Littlesat [Sat, 7 Sep 2013 18:00:18 +0000 (20:00 +0200)]
Revert "Navigation: Do only go to standby when recording timer is likely"

This reverts commit 665190c2676010b35ff368e1e6e2c66f62f6fa84.

Sorry that I did commit this too fast... The time is not known during this
test so this will not work and therefore I need to revert this.

6 years agoNavigation: Do only go to standby when recording timer is likely
Littlesat [Sat, 7 Sep 2013 17:14:15 +0000 (19:14 +0200)]
Navigation: Do only go to standby when recording timer is likely

It seems that the FPWasTimerWakeup does not correctly work for all boxes
so add an extra test before going to standby if it is indeed likely the box
was initialized for a recording timer

6 years agoFurther improvements for recordings coming from deep standby
Littlesat [Sat, 7 Sep 2013 16:07:25 +0000 (18:07 +0200)]
Further improvements for recordings coming from deep standby

Handle Auto and Do Nothing correctly (also for normal standby)
Do not poll for time/date found for services started when in standby just
stop that service before the timer is handled.
Streamline do not increase standby counter

A lot of credits to Dima73 for all comments.

6 years agogdi/bcm: Make instruction sets static again
Mike Looijmans [Sat, 7 Sep 2013 14:19:35 +0000 (16:19 +0200)]
gdi/bcm: Make instruction sets static again

Just an experiment to see if this solves the weird display problems
on some dreamboxes.

6 years agorcinput: add workaround for VU+ duo2 remote control driver.
Erik Slagter [Sat, 7 Sep 2013 13:46:15 +0000 (15:46 +0200)]
rcinput: add workaround for VU+ duo2 remote control driver.

This adds the vuduo2 to c50c3502146be124e2e82f47e8c40b59ae51c396.

6 years agoDo not increase standby counter when coming from timerwakeup
Littlesat [Fri, 6 Sep 2013 23:04:24 +0000 (01:04 +0200)]
Do not increase standby counter when coming from timerwakeup

6 years agoVideoFinetune: Toggle with OK through all test screens
Littlesat [Fri, 6 Sep 2013 18:36:34 +0000 (20:36 +0200)]
VideoFinetune: Toggle with OK through all test screens

6 years agoFinetunes for recordings from deepstandby
Littlesat [Fri, 6 Sep 2013 18:20:10 +0000 (20:20 +0200)]
Finetunes for recordings from deepstandby

Stop service at first standby when the clock/time is known
Add flag to go only to deepstandby when the first standby was initiated by
coming from deepstandby

6 years agoAdd testscreen.png in
Littlesat [Fri, 6 Sep 2013 07:11:20 +0000 (09:11 +0200)]
Add testscreen.png in

Sorry I forget this one in my previous commit

6 years agoVideoFinetine: cleanup and add full hd testscreen
Littlesat [Thu, 5 Sep 2013 20:13:11 +0000 (22:13 +0200)]
VideoFinetine: cleanup and add full hd testscreen

The full HD testscreen is most likely only in full HD for hardware that
supports full HD skins.

6 years agoecanvas: Prevent using hardware blit/fill
Mike Looijmans [Wed, 4 Sep 2013 17:13:08 +0000 (19:13 +0200)]
ecanvas: Prevent using hardware blit/fill

When large enough, the code will use hardware blit or fill routines. This
appears to malfunction, so put it back the way it used to be.

6 years agogdi/bcm: Remove static struct
Mike Looijmans [Wed, 4 Sep 2013 16:45:58 +0000 (18:45 +0200)]
gdi/bcm: Remove static struct

ioctl appears to wait for completion, so no reason to use a static
array here. Put it on the stack, so that multiple calls can be
prepared concurrently.

6 years agoRemove obsoleted isNextRecordTimerAfterEventActionAuto config
Littlesat [Wed, 4 Sep 2013 13:04:49 +0000 (15:04 +0200)]
Remove obsoleted isNextRecordTimerAfterEventActionAuto config

As far I can see this is not required anymore after the previous commit.
I could not find any plugin or so that did still ise it, but it cannot
ensure that if might be required by some plugin.

If so it could be possible we need to revert this commit.

6 years agoStreamline behavior for recordings coming from deep standby
Littlesat [Wed, 4 Sep 2013 09:01:52 +0000 (11:01 +0200)]
Streamline behavior for recordings coming from deep standby

6 years Don't load libpassthrough
Mike Looijmans [Sun, 1 Sep 2013 08:02:43 +0000 (10:02 +0200)] Don't load libpassthrough

No one knows what it does, and it breaks things, so get rid of it.

6 years agoInfoBarGenerics: forward infobar instance to teletext plugin
Littlesat [Sun, 1 Sep 2013 08:00:25 +0000 (10:00 +0200)]
InfoBarGenerics: forward infobar instance to teletext plugin

To allow the teletext plugin to disable and re-enable subtitles to
avoiding the subtitles may disturb/blurr the teletext screens

6 years agoHdmiCec: use maxint from sys instead of a fixed hexadecimal
Littlesat [Sat, 31 Aug 2013 13:05:23 +0000 (15:05 +0200)]
HdmiCec: use maxint from sys instead of a fixed hexadecimal

6 years agoRecordTimer/InfoBarGenerics: detect any keypresses when required
Littlesat [Sat, 31 Aug 2013 12:56:02 +0000 (14:56 +0200)]
RecordTimer/InfoBarGenerics: detect any keypresses when required

Currently only flag == 1 was checked which are normal keypresses, now also
the other type of keypresses are detected to close the Screensaver, detect
activity or do not put the box in standby with zaptimers.

6 years agoDo not go to Standby for zap(&record) timer when receiver is controlled
Littlesat [Sat, 31 Aug 2013 09:16:03 +0000 (11:16 +0200)]
Do not go to Standby for zap(&record) timer when receiver is controlled

6 years agoMove show scart on mainmenu option to Userinterface Configuration
Littlesat [Sat, 31 Aug 2013 08:32:43 +0000 (10:32 +0200)]
Move show scart on mainmenu option to Userinterface Configuration

As this is a more logical place then on the AV-configuration

6 years agoRevert "Move VRC Scart on main menu option to Videomode (av) menu"
Littlesat [Sat, 31 Aug 2013 08:18:48 +0000 (10:18 +0200)]
Revert "Move VRC Scart on main menu option to Videomode (av) menu"

As I want to move it to the userinterface configuration. I think this is a
more logical place for it

This reverts commit 6dfee854a0588c88d1c5d1f50142d46e37d7a2c7.

6 years agoHarddisk: Fix Linux version detection
Mike Looijmans [Fri, 30 Aug 2013 16:39:40 +0000 (18:39 +0200)]
Harddisk: Fix Linux version detection

Now that big block formatting really works, prevent using it on
the wrong kernel. The parsing lacked an "int" conversion, and
according to Python, '3' >= 3.

Also add a try..except around that, to prevent greenscreens on
weird kernels.

6 years agoRecordTimer: return back to standby when required
Littlesat [Fri, 30 Aug 2013 13:32:15 +0000 (15:32 +0200)]
RecordTimer: return back to standby when required

When the receiver is coming out of standby via a zap (& record) timer it
will now return to standby as soon the zap (& record) timer expires

6 years agoEpgList: Rename function getPixmapForEntry to getClockTypesForEntry
Littlesat [Wed, 28 Aug 2013 19:06:46 +0000 (21:06 +0200)]
EpgList: Rename function getPixmapForEntry to getClockTypesForEntry

As this is now a better function description.

6 years agoEpgList: Adapt simultanious events and multi EPG to multiple clock icons
Littlesat [Wed, 28 Aug 2013 19:01:54 +0000 (21:01 +0200)]
EpgList: Adapt simultanious events and multi EPG to multiple clock icons

6 years agobetter vertical alignment for text and timer icons in epglist
ims [Wed, 28 Aug 2013 17:20:29 +0000 (19:20 +0200)]
better vertical alignment for text and timer icons in epglist

Signed-off-by: Littlesat <>

6 years agoArrange that some EPG events may have more then one clock icon
Littlesat [Wed, 28 Aug 2013 08:26:46 +0000 (10:26 +0200)]
Arrange that some EPG events may have more then one clock icon

In some circomstances it could be that we should have more than one clock
icon within an EPG event. Currently we only could give one which was most
likely the last one detived from the recordingslist.
Make from the types returned by a list so we can handle
more clock icons for each EPG event (e.g. in the GMEPG and EPGList).

6 years agoRecordTimer: Do also not search further for zap and record&zap
Littlesat [Wed, 28 Aug 2013 06:24:33 +0000 (08:24 +0200)]
RecordTimer: Do also not search further for zap and record&zap

6 years agoRecordTimer: more adjustments to the type/icon search
Littlesat [Tue, 27 Aug 2013 22:54:49 +0000 (00:54 +0200)]
RecordTimer: more adjustments to the type/icon search

6 years agoArrange correct type/icon when two consecutively events are recorded
Littlesat [Tue, 27 Aug 2013 21:08:56 +0000 (23:08 +0200)]
Arrange correct type/icon when two consecutively events are recorded

Especially in the case that it are two different recodings previously we
get at the second consecutive the type/icon that only the begin was

6 years agoComponents/MediaPlayer: Fix mixed use of spaces and tabs
Littlesat [Tue, 27 Aug 2013 08:13:01 +0000 (10:13 +0200)]
Components/MediaPlayer: Fix mixed use of spaces and tabs

6 years agoAt end of playlist set state to stopped. Also allow playing a stopped entry.
rhinoceros [Mon, 26 Aug 2013 22:40:59 +0000 (00:40 +0200)]
At end of playlist set state to stopped. Also allow playing a stopped entry.

Signed-off-by: Littlesat <>

6 years agoSome cosmetic changes in PositionerSetup and move of screen to skin_default.xml
rhinoceros [Mon, 26 Aug 2013 22:21:50 +0000 (00:21 +0200)]
Some cosmetic changes in PositionerSetup and move of screen to skin_default.xml

Signed-off-by: Littlesat <>

6 years agoGMEPG: Make background also red for zap and record timers
Littlesat [Mon, 26 Aug 2013 20:03:52 +0000 (22:03 +0200)]
GMEPG: Make background also red for zap and record timers

6 years agoless agresive color for epglist timers icons
ims [Mon, 26 Aug 2013 18:44:54 +0000 (20:44 +0200)]
less agresive color for epglist timers icons

Signed-off-by: Littlesat <>

6 years agogpixmap: Only use accel fill when worth the overhead
Mike Looijmans [Mon, 26 Aug 2013 17:44:27 +0000 (19:44 +0200)]
gpixmap: Only use accel fill when worth the overhead

Like blitting, using the accel fill has a constant cost, so don't
use it for tiny areas.

A little refactoring in eRect because I wanted a nice "surface"

6 years agoMake icons smaller (in filesize only)
Mike Looijmans [Mon, 26 Aug 2013 15:53:16 +0000 (17:53 +0200)]
Make icons smaller (in filesize only)

Use "optipng" to reduce image size (a bit), since every byte counts.

6 years agofixed displaying epglist timers icons
ims [Mon, 26 Aug 2013 14:52:46 +0000 (16:52 +0200)]
fixed displaying epglist timers icons

Signed-off-by: Littlesat <>

6 years agofixed displaying timers icons in epg added icons for zap and record into epg and...
ims [Mon, 26 Aug 2013 07:16:10 +0000 (09:16 +0200)]
fixed displaying timers icons in epg added icons for zap and record into epg and gmepg modify timers icons

6 years agoservicemp3: Add support for ogm
daniel [Sun, 25 Aug 2013 10:35:29 +0000 (12:35 +0200)]
servicemp3: Add support for ogm

And also for ogv, however ogv does not play yet

Signed-off-by: Littlesat <>

6 years agoMediaPlayer: Strange InfoBar behavior when playing audiofiles
Littlesat [Sat, 24 Aug 2013 19:12:46 +0000 (21:12 +0200)]
MediaPlayer: Strange InfoBar behavior when playing audiofiles

When playing audio files the InfoBar was timed out and with pressing OK
you could hide the infobar. So you endup with a black screen. Now the
timeout is not started when playing audiofiles and when pressing OK the
MediaPlayerScreen is shown instead of the black screen. Voor videofiles
the behavior is not changed

6 years agogdi/gpixmap.cpp: Fix the "accel" conclusion
Mike Looijmans [Sat, 24 Aug 2013 16:43:48 +0000 (18:43 +0200)]
gdi/gpixmap.cpp: Fix the "accel" conclusion

Probably a line of code that was mismerged, remove it.

6 years agoSimplify and speedup the LanguageSelection Screen
Littlesat [Sat, 24 Aug 2013 15:21:21 +0000 (17:21 +0200)]
Simplify and speedup the LanguageSelection Screen

As discussed internally we do not upgrade the title to the current
selected language anymore and the same for the instruction on the Wizard.
We just show it in the language the Screen was initiated.
For the user interface upgrading titles and instructions  just looks nice
but principally it has no real added value.
This will increase the response this screen because with each time a new
language was selected we do not need to read a complete language file
anymore. And there are also no hacks required that might cache and/or store
in a "work-a-round" way.

6 years agoLanguageSelection: Do not close recursivaly in setup wizard
Littlesat [Fri, 23 Aug 2013 23:34:10 +0000 (01:34 +0200)]
LanguageSelection: Do not close recursivaly in setup wizard

By checking the InfoBarInstance is available we now the wizard is not
running so only close recursivaly when the InfoBarInstance is running

6 years agoAdd zapclock_add for EPGlist and GMEPG
Littlesat [Fri, 23 Aug 2013 17:40:38 +0000 (19:40 +0200)]
Add zapclock_add for EPGlist and GMEPG

6 years agoAdd Zaptimer picons for GMEPG and EpgList
Littlesat [Fri, 23 Aug 2013 17:07:21 +0000 (19:07 +0200)]
Add Zaptimer picons for GMEPG and EpgList

6 years agoInfoBarGenerics: Correctly set seekstate
Littlesat [Thu, 22 Aug 2013 22:17:54 +0000 (00:17 +0200)]
InfoBarGenerics: Correctly set seekstate

6 years agocablescan: Do not move existing userbouquet to top
Littlesat [Thu, 22 Aug 2013 21:41:56 +0000 (23:41 +0200)]
cablescan: Do not move existing userbouquet to top

6 years agofastscan: Do not move existing userbouquet to top
Littlesat [Thu, 22 Aug 2013 21:39:46 +0000 (23:39 +0200)]
fastscan: Do not move existing userbouquet to top

Previously I used an extra flag but that made no sense as simply just the
code that moves the bouquet to the top can be removed

6 years agoChannelSelection: reload bouquets after removal
radxnl [Thu, 22 Aug 2013 18:36:14 +0000 (20:36 +0200)]
ChannelSelection: reload bouquets after removal

6 years agoRevert "(fast)scan: Solved wierd behavior after removing userbouquets."
radxnl [Thu, 22 Aug 2013 18:33:35 +0000 (20:33 +0200)]
Revert "(fast)scan: Solved wierd behavior after removing userbouquets."

This reverts commit fbeb8d443d98915180bbfc7d35a22818456915b7.

6 years ago(fast)scan: Solved wierd behavior after removing userbouquets.
Littlesat [Thu, 22 Aug 2013 07:19:49 +0000 (09:19 +0200)]
(fast)scan: Solved wierd behavior after removing userbouquets.

When a fastscan or last scanned user bouquet was removed there was some
strange behavior that at a new scan the bouquet did not reappear. You
needed to restart enigma2 before the new bouquet was created and then it
first time this resulted into a bouquets that includes the previous
contants with the new scanned results added, you can even see everything
This was caused because when a userbouquet was removed by the user
interface that only the reference in the rootref was removed.
This solution checks for the reference of a fastscan bouquet or last
scanned bouquet being available in the rootref. When not it will be added
and a new user bouquet will be created or an existing one will be
reopened. When the userbouquet can be created it will always be cleared
first before it is filled with the new scanned services to ensure we do
not have services double or the previous scanned services are still

6 years agosmartptr: Remove assertions, change intptr_t to unsigned int
Mike Looijmans [Tue, 20 Aug 2013 18:26:46 +0000 (20:26 +0200)]
smartptr: Remove assertions, change intptr_t to unsigned int

ePtr is used a lot, so assertions are expensive (they'll create a
branch in the code). Since no good ever came of these anyway, just
remove them from the class.

Change intptr_t to just integer, hoping to avoid the SWIG message:
"python detected a memory leak of type 'intptr_t *', no destructor found"

6 years agogdi/gpixmap: Fix rendering 32-bit with alphablending
Mike Looijmans [Sun, 18 Aug 2013 16:49:23 +0000 (18:49 +0200)]
gdi/gpixmap: Fix rendering 32-bit with alphablending

Missing a "++dst" will cause it to render nothing at all.

6 years agoeListboxcontent: cosmetic as tabs and spaces were used
Littlesat [Sun, 18 Aug 2013 16:11:17 +0000 (18:11 +0200)]
eListboxcontent: cosmetic as tabs and spaces were used

6 years agoGME: Use new multicontact flags to scale picons and backgrounds
Littlesat [Sun, 18 Aug 2013 16:03:30 +0000 (18:03 +0200)]
GME: Use new multicontact flags to scale picons and backgrounds

6 years agoMultiContent: Add flag to make it possible to scale pixmaps
Littlesat [Sun, 18 Aug 2013 15:59:52 +0000 (17:59 +0200)]
MultiContent: Add flag to make it possible to scale pixmaps

6 years agogdi/picload: Fix 32-bit rendering (handle stride correctly)
Mike Looijmans [Sun, 18 Aug 2013 07:47:43 +0000 (09:47 +0200)]
gdi/picload: Fix 32-bit rendering (handle stride correctly)

Filling the "bars" at the top and bottom wasn't being done
properly, it did not take into account that stride != width.
This caused images to be rendered as if "shifted".

6 years agogpixmap: simply keep aspect ratio for blit scale
Littlesat [Sun, 18 Aug 2013 00:42:01 +0000 (02:42 +0200)]
gpixmap: simply keep aspect ratio for blit scale

6 years agogpixmap: fix typo for software scaling 32-bit images
Littlesat [Sat, 17 Aug 2013 23:26:17 +0000 (01:26 +0200)]
gpixmap: fix typo for software scaling 32-bit images

6 years agoListboxservice: Use new keep aspect ratio functionality from blitscale
Littlesat [Sat, 17 Aug 2013 22:47:07 +0000 (00:47 +0200)]
Listboxservice: Use new keep aspect ratio functionality from blitscale

Possibly later the GM-EPG can also use this

6 years agogdi/gpixmap: Add functionality to keep aspect ratio in blitscale
Littlesat [Sat, 17 Aug 2013 22:42:54 +0000 (00:42 +0200)]
gdi/gpixmap: Add functionality to keep aspect ratio in blitscale

6 years agogdi/gpixmap: Implement software scaling for 32-bit images
Mike Looijmans [Sat, 17 Aug 2013 17:37:08 +0000 (19:37 +0200)]
gdi/gpixmap: Implement software scaling for 32-bit images


6 years agogdi/font.cpp: Remove unused variable width
Mike Looijmans [Sat, 17 Aug 2013 17:29:59 +0000 (19:29 +0200)]
gdi/font.cpp: Remove unused variable width

Variable width is assigned to, but never used

6 years agogdi/gpixmap: Move alphablend function into gRGB class
Mike Looijmans [Sat, 17 Aug 2013 17:13:56 +0000 (19:13 +0200)]
gdi/gpixmap: Move alphablend function into gRGB class

gRGB knows about endianness and converting bytes to packed long,
so making alphablending its responsibility reduces code considerably.

6 years agolistboxservice: Use LoadPNG and fit it to the available space
Mike Looijmans [Sat, 17 Aug 2013 08:13:50 +0000 (10:13 +0200)]
listboxservice: Use LoadPNG and fit it to the available space

Now that we have scaled rendering, we can skip the bulky picload
and just simply load a PNG file and render it where we need it.
This renders faster and also nullifies palette problems with borders.

Also fix compiler warnings about parentheses.

6 years agolistboxservice: do not keep aspect ratio anymore
Littlesat [Fri, 16 Aug 2013 22:23:52 +0000 (00:23 +0200)]
listboxservice: do not keep aspect ratio anymore

As the target has already the expected aspect ratio keeping the
aspect ratio is not required anymore. So currently it can always
be scaled without having blackfilled borders.
It might have  a disadvantage with picons that big differ from the
usual picon relations.
In addition add a margin of 8 to the service name so the service
name is not "glued" to the picon.

6 years agolistboxservice: On closer inspection, picons are 5:3
Mike Looijmans [Fri, 16 Aug 2013 18:37:29 +0000 (20:37 +0200)]
listboxservice: On closer inspection, picons are 5:3

The ocram sets use 100:60 sized, and since the skins usually don't
taks aspect ratio into account, 5:3 should be "just right". Thus
no background.

6 years agogdi/gpixmap: Implement software scaling
Mike Looijmans [Fri, 16 Aug 2013 18:20:28 +0000 (20:20 +0200)]
gdi/gpixmap: Implement software scaling

Not all hardware supports alphablending and/or scaling, so implement
a simple software version. Also, the software version is faster for
small images (e.g. 50x50 pixels or so) because of the overhead of
setting up hardware blitting (see previous commits on this file).

6 years agolistboxservice: Render picons a bit smaller
Mike Looijmans [Fri, 16 Aug 2013 17:14:37 +0000 (19:14 +0200)]
listboxservice: Render picons a bit smaller

Picons are usually about 3:2 in size, or even 100:70, not likely 2:1.
So reserve 1.5*height for the icon area.

6 years agoRemove obsoleted config.usage.show_vcr_scart
Littlesat [Fri, 16 Aug 2013 15:57:49 +0000 (17:57 +0200)]
Remove obsoleted config.usage.show_vcr_scart

Sorry as I forgot to remove this in the previous commit.

6 years agoMove VRC Scart on main menu option to Videomode (av) menu
Littlesat [Fri, 16 Aug 2013 15:38:50 +0000 (17:38 +0200)]
Move VRC Scart on main menu option to Videomode (av) menu

6 years agoAdd option to remove VCR scart from main menu (default off)
Littlesat [Thu, 15 Aug 2013 22:26:39 +0000 (00:26 +0200)]
Add option to remove VCR scart from main menu (default off)

As most users are using HDMI I suggest most times this option is not
required at all. Especially when it is on the main menu.

6 years agoAdd option to conditionally show menu options by a config
Littlesat [Thu, 15 Aug 2013 22:12:57 +0000 (00:12 +0200)]
Add option to conditionally show menu options by a config

6 years agoHarddisk: Collect "-O" options together for mkfs.ext4
Mike Looijmans [Thu, 15 Aug 2013 12:16:47 +0000 (14:16 +0200)]
Harddisk: Collect "-O" options together for mkfs.ext4

Apparently, mkfs.ext4 doesn't parse multiple "-O" options any more.
So collect them into a single set and pass them as a comma list.

This fixes this error message when you initialize a big disk:
mke2fs 1.42.8 (20-Jun-2013)
mkfs.ext4: specifying a cluster size requires the bigalloc feature

6 years agoMore realistic hardware blit usage policy
Mike Looijmans [Thu, 15 Aug 2013 11:09:57 +0000 (13:09 +0200)]
More realistic hardware blit usage policy

Some quick measurements indicated the price of setting up a hardware
blit was quite high. Rendering large pixmaps is considerably faster
though (70ms vs. 6ms on 1920x1080 surfaces) so limit its use to only
larger surfaces, and avoid it on smaller ones.

On 8-bit images, alphaTest blitting works okay. On 32-bit it appears
to be broken, so don't use it.

6 years agoLanguageSelection: Close resursive if language is changed
Littlesat [Wed, 14 Aug 2013 22:00:16 +0000 (00:00 +0200)]
LanguageSelection: Close resursive if language is changed

When you not do that you still see menus that are in the previous
language, so when the language is realy changed and you perform a
recursive close you do not see "rests" of menues presenting in the
previous language. This behavior was anoying me fore a long time - undless I do
not see this often :D.

6 years agoGenerate automatically marks while timeshifting.
betacentauri [Sat, 16 Mar 2013 19:29:01 +0000 (20:29 +0100)]
Generate automatically marks while timeshifting.

Marks are stored in .cuts file when timeshift is stored.

Signed-off-by: Littlesat <>

6 years agoAdd option to include other skin xml files
Littlesat [Tue, 13 Aug 2013 14:32:18 +0000 (16:32 +0200)]
Add option to include other skin xml files

To be able to split e.g. templates from te basic skin etc.

6 years agoGME: Add option to enable/disable from extension menu
Littlesat [Tue, 13 Aug 2013 11:49:46 +0000 (13:49 +0200)]
GME: Add option to enable/disable from extension menu

6 years agoMake it possible to reload plugins via config notifiers
Littlesat [Tue, 13 Aug 2013 11:41:26 +0000 (13:41 +0200)]
Make it possible to reload plugins via config notifiers

As it returns a parameter add a dummy

6 years agoThe langage change was set to early in the previous commit
Littlesat [Tue, 13 Aug 2013 11:05:37 +0000 (13:05 +0200)]
The langage change was set to early in the previous commit

6 years agoAdd a function reloadPlugins to PluginComponent
Littlesat [Tue, 13 Aug 2013 10:24:31 +0000 (12:24 +0200)]
Add a function reloadPlugins to PluginComponent

And replace the language changed function from the PluginBrowser to
PluginComponent as I suggest this is a better place

6 years agoRemove double declaration of WHERE_EVENTINFO
Littlesat [Mon, 12 Aug 2013 14:16:53 +0000 (16:16 +0200)]
Remove double declaration of WHERE_EVENTINFO

6 years agoAdd box-specific display support, in particular vuduo2
Mike Looijmans [Sun, 11 Aug 2013 08:14:12 +0000 (10:14 +0200)]
Add box-specific display support, in particular vuduo2

When a skin_display_(boxtype).xml exists, use that instead of the
default one. Create a bit of a vfd skin for the vuduo2 (which has
a 140x32 sized vfd).

Could be replaced with a "displayname" configure parameter, so
that a display skin is chosen based on machine features. Then the
--with-textlcd and similar options can be dropped.

6 years agogdi/epng, gdi/gpixmap: A few minor optimizations, use argb()
Mike Looijmans [Sat, 10 Aug 2013 18:32:49 +0000 (20:32 +0200)]
gdi/epng, gdi/gpixmap: A few minor optimizations, use argb()

Move "if" outside loop.
Use the cheap argb() function instead of re-doing it the hard way.

6 years agogpixmap: Copy palette to hardware only once.
Mike Looijmans [Sat, 10 Aug 2013 08:35:45 +0000 (10:35 +0200)]
gpixmap: Copy palette to hardware only once.

Keep track of physical RGB table, and convert it only once. This
assumes that no one adapts the palette after having rendered it.

This prevents having to process up 1k of data for each hardware

6 years agogdi/picexif: Remove unused variable "data_precision"
Mike Looijmans [Sat, 10 Aug 2013 08:02:42 +0000 (10:02 +0200)]
gdi/picexif: Remove unused variable "data_precision"

7 years agogdi/gpixmap: Don't use broken hardware alphablending
Mike Looijmans [Fri, 9 Aug 2013 18:11:07 +0000 (20:11 +0200)]
gdi/gpixmap: Don't use broken hardware alphablending

Alphablending on (at least) the ET boxes is broken. When one of the
pixels is fully transparent, the resulting pixel is always fully
transparent instead of simply the other pixel's argb values.

This resulted in objects not being rendered at all, when the background
is transparent. It is also the reason why a transparent picon will occur
as a "hole in the UI" instead of just being invisible.

As a workaround, don't use hardware alphablending (even if the hardware
reports it as a capability) except when scaling. Historically, this has
been the only use for hardware accellerated blending anyway, so there's
no loss in performance.

7 years agoChange blackfill color to transparant black for scalable picons
Littlesat [Tue, 6 Aug 2013 19:12:34 +0000 (21:12 +0200)]
Change blackfill color to transparant black for scalable picons

When picons do have a (8 bit) color map without any transparant colors we
had a white blackfill when the picons are scaled and centered into the
destination. Hopefully backfilling in transparant black will be a better
work-a-round. However for correct displaying it still should be considered
to use non (8-bit) color mapped picons.

7 years agogdi/gpixmap: Automatically use accel
Mike Looijmans [Sat, 3 Aug 2013 10:30:59 +0000 (12:30 +0200)]
gdi/gpixmap: Automatically use accel

Since the software mostly ignores the hardware accelleration for
bitmaps, load pixmaps into videomemory when they look as if worth
the trouble.

Currently, "auto" means any 8-bit image between 800 and 512k pixels.

7 years Ignore "cached" parameter
Mike Looijmans [Sat, 3 Aug 2013 10:18:46 +0000 (12:18 +0200)] Ignore "cached" parameter

The C++ loader already caches bitmaps, no need to do this twice. And
LoadPixmap's implementation would never dispose of a bitmap, eating

7 years agogdi/gpixmap: Simplify gRGB using union
Mike Looijmans [Sat, 3 Aug 2013 09:51:29 +0000 (11:51 +0200)]
gdi/gpixmap: Simplify gRGB using union

Instead of shifting, just cast the rgb struct to integer instead.

7 years agogPalette::findColor: Check transparency first
Mike Looijmans [Sat, 3 Aug 2013 09:05:22 +0000 (11:05 +0200)]
gPalette::findColor: Check transparency first

When looking for a matching color that is fully transparent, just return
the first fully transparent color.

Also pass gColor without ref, because the object is only 4 bytes.

7 years agoChannelselection: Force zap when bouquet is changed and service is the same
Littlesat [Sat, 3 Aug 2013 07:18:32 +0000 (09:18 +0200)]
Channelselection: Force zap when bouquet is changed and service is the same

This will upgrade e.g. the channel number to the current selected service

7 years agoServicemp3: Increase HTTP_TIMEOUT time to 30 sec
Littlesat [Fri, 2 Aug 2013 16:49:02 +0000 (18:49 +0200)]
Servicemp3: Increase HTTP_TIMEOUT time to 30 sec

As for some German streams this might be required. As the UI is not
blocked anymore I suggest this may not harm.


7 years Ignore the "cache" option for pixmaps
Mike Looijmans [Wed, 31 Jul 2013 18:26:20 +0000 (20:26 +0200)] Ignore the "cache" option for pixmaps

The LoadPixmap cache is not useful for skin pixmaps, the C++ part
is taking care of that now. Using LoadPixmap(.., cache=True) is
just a memory leak - the pixmap will never go away once loaded.

7 years agogdi/epng,gpixmap: Implement a duplicate pixmap caching scheme.
Mike Looijmans [Wed, 31 Jul 2013 18:18:50 +0000 (20:18 +0200)]
gdi/epng,gpixmap: Implement a duplicate pixmap caching scheme.

The UI tends to load the same pixmaps multiple times, thus wasting
memory. Keep a (weak ref) list of pixmaps and their filenames, and
return an existing one if possible. Rely on ePtr refcounting to
manage the pixmap's lifetime.

Good news is that gpixmap didn't suffer, introducing the disposal
callback removed the need for a "must dispose" boolean.

7 years agogdi/accel: Change allocation granularity to 64 bytes
Mike Looijmans [Wed, 31 Jul 2013 18:16:12 +0000 (20:16 +0200)]
gdi/accel: Change allocation granularity to 64 bytes

Apparently, surfaces need not be 4k aligned, 64-byte seems to be enough.
Now that we have a halfway decent allocator, we might as well stop wasting
memory, by allocating on 64-byte boundaries.

7 years agogdi/gpixmap: Remove unused variables, simpler c'tor
Mike Looijmans [Tue, 30 Jul 2013 18:00:15 +0000 (20:00 +0200)]
gdi/gpixmap: Remove unused variables, simpler c'tor

Remove unused "final" and lock variables.
Use a simpler constructor (int,int) instead of eSize for the
surface classes.