7 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.

7 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

7 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

7 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.

7 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

7 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

7 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.

7 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.

7 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

7 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.

7 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

7 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 <>

7 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).

7 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

7 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

7 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

7 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

7 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 <>

7 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 <>

7 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

7 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 <>

7 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"

7 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.

7 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 <>

7 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

7 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 <>

7 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

7 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.

7 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.

7 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

7 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

7 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

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

7 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

7 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

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

7 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.

7 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

7 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"

7 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.

7 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

7 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

7 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

7 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".

7 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

7 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

7 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

7 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

7 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


7 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

7 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.

7 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.

7 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.

7 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.

7 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).

7 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.

7 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.

7 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

7 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.

7 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

7 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

7 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.

7 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.

7 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 <>

7 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.

7 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

7 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

7 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

7 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

7 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

7 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.

7 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.

7 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

7 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.

7 years agoRevert "do not display zap_error when is displayed dish and motor turning over positions"
Littlesat [Wed, 31 Jul 2013 12:45:52 +0000 (14:45 +0200)]
Revert "do not display zap_error when is displayed dish and motor turning over positions"

This reverts commit 0d070a4dd8a2accd3990e32c768e51737ea41ca7.

As dishState is not defined in DishDialog this gives a GDOS on every
zapError. I suggest IMS forgot to put something in his patch

7 years agoFix some cosmetic typos regards picload.cpp
Littlesat [Wed, 31 Jul 2013 10:07:07 +0000 (12:07 +0200)]
Fix some cosmetic typos regards picload.cpp

7 years agoEnsure that there is only one instance of subtitleDisplay
Littlesat [Wed, 31 Jul 2013 09:07:25 +0000 (11:07 +0200)]
Ensure that there is only one instance of subtitleDisplay

To avoid that subtitles might be hidden behind eachother when movieplayer,
DVD player, mediaplayer or any other player is used that uses the Infobar

7 years agoRevert "InfoBar: Hide subtitle screen before movieplayer is started"
Littlesat [Wed, 31 Jul 2013 09:01:19 +0000 (11:01 +0200)]
Revert "InfoBar: Hide subtitle screen before movieplayer is started"

This reverts commit 4cfb7e5d55f861f8d71a7ca0cf0d79318ed4314c.

As this was only a solution for the movieplayer and not for the
mediaplayer, DVD player and other players that do use InfoBarInstances.

7 years agoInfoBar: Hide subtitle screen before movieplayer is started
Littlesat [Wed, 31 Jul 2013 08:12:47 +0000 (10:12 +0200)]
InfoBar: Hide subtitle screen before movieplayer is started

As the movieplayer is starting a new instantiate subtitle screen this new
subtitle screen might be hidden behind the standard's infobar subtitle


7 years agodo not display zap_error when is displayed dish and motor turning over positions
ims [Tue, 30 Jul 2013 13:42:24 +0000 (15:42 +0200)]
do not display zap_error when is displayed dish and motor turning over positions

Signed-off-by: Littlesat <>

7 years agoFastscan: Do not move bouquet to top if it already exists
Littlesat [Tue, 30 Jul 2013 22:37:52 +0000 (00:37 +0200)]
Fastscan: Do not move bouquet to top if it already exists

7 years agoRemove non required renumbering of userbouquets
Littlesat [Tue, 30 Jul 2013 22:18:18 +0000 (00:18 +0200)]
Remove non required renumbering of userbouquets

As most times it was executed twice and in in non userbouquets it was
executed any time a service was added to the servicelist

7 years agodvb / frontend: add T2 transmission modes / guard intervals
pieterg [Tue, 30 Jul 2013 21:17:51 +0000 (23:17 +0200)]
dvb / frontend: add T2 transmission modes / guard intervals

And fix DVB API version checks, for various enum values.
(using "#ifdef ENUMVAL" does not work for enums)

7 years agoKeep aspect ratio of picons displayed in servicelistbox
Littlesat [Tue, 30 Jul 2013 11:06:08 +0000 (13:06 +0200)]
Keep aspect ratio of picons displayed in servicelistbox

7 years agopicload: Make it possible to call setPara from cpp
Littlesat [Tue, 30 Jul 2013 10:49:59 +0000 (12:49 +0200)]
picload: Make it possible to call setPara from cpp

7 years agoru.po: fix invalid format specifier
pieterg [Mon, 29 Jul 2013 21:05:57 +0000 (23:05 +0200)]
ru.po: fix invalid format specifier

7 years agobsod: Don't try to dump code
Mike Looijmans [Mon, 29 Jul 2013 17:58:12 +0000 (19:58 +0200)]
bsod: Don't try to dump code

The dump attempt often leads to a crash loop because the PC may have
been the cause of the crash. Don't do it. It is not even useful.

7 years agogdi/accel: Create a "first fit" memory manager
Mike Looijmans [Mon, 29 Jul 2013 17:52:36 +0000 (19:52 +0200)]
gdi/accel: Create a "first fit" memory manager

Using a "bitmap" array to manage between 4MB and 20MB of memory in
4k blocks, thus totalling up to 20000 items, isn't efficient.

Keep track of allocated pixmaps in a linked list of blocks. This
makes allocating and freeing accel memory much faster.