1
0
mirror of git://projects.qi-hardware.com/gmenu2x.git synced 2024-07-15 08:50:02 +03:00
Commit Graph

220 Commits

Author SHA1 Message Date
Maarten ter Huurne
903ccc2cfe Switch from mega to giga when showing large disk/card sizes
Also made our use of 1024-based prefixes explicit by using MiB/GiB.
2013-08-05 02:02:04 +02:00
Maarten ter Huurne
bdf3cfdf86 Moved linkColumns and linkRows fields into Menu class 2013-08-05 00:51:36 +02:00
Maarten ter Huurne
41b0551595 Moved menu touch handling code into Menu class 2013-08-04 23:19:15 +02:00
Maarten ter Huurne
1eeba171dd Moved menu painting code into Menu class 2013-08-04 21:14:29 +02:00
Maarten ter Huurne
cbe7735f73 Put main loop painting code in separate methods
Also declare the relevant variables with a reduced scope, where
possible.
2013-08-04 03:47:23 +02:00
Maarten ter Huurne
f8dc4c7bb8 Don't construct non-functional Font objects
Replaced Font constructor with factory method, so that if the TTF
cannot be loaded, the Font object is not constructed. The normal C++
way of handling this is with exceptions, but we're compiling with
-fno-exceptions.
2013-08-04 00:58:32 +02:00
Maarten ter Huurne
724aefe482 Renamed ASFont class to just Font
Originally the font implementation was based on SFont, but it was
recently replaced by an SDL_ttf based implementation, so the name
no longer made sense.
2013-08-03 22:30:12 +02:00
Paul Cercueil
de9b3cd27d Make sure the joystick subsystem is inited before InputManager starts 2013-07-29 16:54:12 -04:00
Paul Cercueil
88f54e1ccc Drop incredibly dirty and huge file FastDelegate.h
It's way too over-engineered for what we need to do, and we can
do much simpler using C++11.
2013-07-29 12:58:25 -04:00
Paul Cercueil
e0109dfe55 Initialize the timers subsystem of SDL at the beginning
This fixes a bug where disabling the backlight timeout would
prevent the clock from working correctly.
2013-07-22 00:20:18 -04:00
Paul Cercueil
47bbc0b673 Added a clock on the bottom bar 2013-07-21 23:54:09 -04:00
Paul Cercueil
d5280ebc7b Use sigaction() instead of deprecated function signal() 2013-07-19 13:58:12 -04:00
Paul Cercueil
41e4cff7ac Add a MediaMonitor, which will watch CARD_ROOT for mountpoints
Each time a directory will appear in CARD_ROOT, the MediaMonitor
will try to load all OPKs found in CARD_ROOT/${directory}/apps
2013-07-19 12:37:56 -04:00
Paul Cercueil
04d9d9322d Remove trailing slash from CARD_ROOT 2013-07-19 11:54:09 -04:00
Paul Cercueil
9029deceeb Fix translations in user directory not correctly loaded 2013-07-18 17:14:21 -04:00
Paul Cercueil
32d100ee2a Change the "GMenu2X starting" message
It contained outdated instructions.
2013-07-18 17:03:01 -04:00
Paul Cercueil
13b3d8e0ca Monitor OPK folders using inotify and automatically add/delete links 2013-07-16 13:36:18 -04:00
Paul Cercueil
1337eb5ed8 Update filter of manual selection dialog to *.man.png *.txt 2013-07-08 12:21:43 -04:00
Paul Cercueil
ca811ea43d Match only *.png files for the application icon selector 2013-07-08 12:20:30 -04:00
Paul Cercueil
e1968c3830 Add *.elf to the filter of the explorer and the "add link" dialog 2013-07-08 02:27:53 -04:00
Paul Cercueil
aa8b21e076 Update file extension filter for manually added applications
Updated to *.bin *.dge *.sh *.py and extension-less files.
2013-07-08 02:24:55 -04:00
Paul Cercueil
9737810bcb Remove the "unlock VT" feature; it has been moved to its own program 2013-07-05 17:51:59 -04:00
Paul Cercueil
3558dfbfa2 Fix extension filters of the Explorer
It will now list files without extension, *.bin, *.sh, *.dge, and
*.py files.
2013-07-05 14:48:13 -04:00
Paul Cercueil
46386a2054 Drop the bitmap font; use a TTF font instead
This allows to display UTF-8 characters, and is as such a good
step towards full internationalization.
2013-07-05 14:07:46 -04:00
Paul Cercueil
a0690ba59e Remove useless clipper 2013-06-16 20:52:20 -04:00
Paul Cercueil
4347c340a6 Align the links the same way whether or not a scrollbar is present
Previously, when a scrollbar was present, the links were starting
at a different X position than without the scrollbar.
2013-06-16 20:48:37 -04:00
Maarten ter Huurne
e4d78bee60 Made GMenu2X::menu private
There was only one outside use; turned that into a new public method
on the GMenu2X class.
2012-12-20 22:01:30 +01:00
Paul Cercueil
f2e3efd359 Hide the 'Edit' option if there's nothing to configure 2012-12-08 01:59:11 -03:00
Paul Cercueil
a60d97fbff Hide the selector dir/browser link options if OPK doesn't open a file 2012-12-08 01:45:21 -03:00
Paul Cercueil
c9fc163bea Add --disable-cpufreq switch to disable clock management 2012-12-08 01:03:33 -03:00
Paul Cercueil
473949bb4f Remove hardcoded MHz values, use the defined main/max clocks instead 2012-12-06 20:53:39 -03:00
Paul Cercueil
389253b4c6 Load the skin's wallpaper if the default one is not yet defined 2012-12-04 14:21:22 -03:00
Paul Cercueil
6629a63871 Renamed 'dingux' platform to 'a320'
Dingux being now replaced by OpenDingux, which covers other platforms
than the A320, the platform corresponding to the A320 is now named
accordingly.
2012-11-27 02:14:08 -03:00
Paul Cercueil
d4c086a64d Add initial support for the GCW Zero 2012-11-18 18:41:20 -03:00
Paul Cercueil
77046f3553 Add support for reading manuals located inside OPK archives 2012-11-11 19:47:45 -03:00
Paul Cercueil
df981eb03a Drop the 'remove link' option on the context menu of OPKs 2012-10-23 06:45:56 +02:00
Paul Cercueil
4c4f452abb Hide parameters not suitable for OPKs on the context menu 2012-10-23 06:33:27 +02:00
Paul Cercueil
0fc6ac67f0 Hide the 'params' option from the user on the contextual menu
The user shouldn't care at all about what is given as a parameter.
The 'params' option is only used by the links provided with GMenu2X.
2012-10-22 23:12:21 +02:00
Paul Cercueil
170a7dc4c6 Add "editable" parameter: when "false", the link can't be modified.
If omitted, the default value is "true".
2012-10-17 23:43:32 +02:00
Paul Cercueil
1241523105 Removed variable/function to get the directory of the executable.
The application shouldn't care from which directory it is being
executed.
2012-06-24 23:19:45 +02:00
Paul Cercueil
a21650d6b3 Don't re-execute gmenu2x on error, just call main() again. 2012-06-24 23:01:28 +02:00
Paul Cercueil
0d9977e54c Open battery/USB file handlers only when needed. 2012-06-24 22:48:50 +02:00
Paul Cercueil
7484ad2ef0 Check if USB cable is plugged before returning the battery level. 2012-06-24 22:41:16 +02:00
Paul Cercueil
64db1d7912 Don't scan the NAND as it's already done elsewhere.
If mounted, the NAND should be present as /media/ccnandb1 (dingux
build) but /media is already scanned.
2012-06-24 22:19:36 +02:00
Paul Cercueil
d6621584e3 Removed last bits of the "backlight" feature. 2012-06-15 00:13:59 +02:00
Paul Cercueil
21fee6ccd1 Removed last bits of the "volume" feature. 2012-06-14 23:59:39 +02:00
Paul Cercueil
dd047010ed Removed old commented code. 2012-06-14 23:53:19 +02:00
Paul Cercueil
9263c782e7 Drop GP2X platform support.
The GP2X build was unused and totally broken.
2012-06-14 23:45:57 +02:00
Paul Cercueil
374371c1d2 Removed unused (and broken) TV-out feature. 2012-06-14 22:53:50 +02:00
Paul Cercueil
bc2b5d51ed Removed unused function GMenu2X:setGamma() 2012-06-14 20:14:19 +02:00
Paul Cercueil
c2576d418b Read the credits from the "about.txt" file.
The credits have also been updated.
2012-04-27 17:42:09 +02:00
Paul Cercueil
e6ca072c46 Added a "show console" link parameter (Dingux build only). 2012-04-13 19:21:49 +02:00
Paul Cercueil
7687212b4e Removed the "wrapper" feature.
It is up to the system to restart GMenu2X when the application exits.
2012-04-13 18:12:30 +02:00
Maarten ter Huurne
8f57afcf53 Explicitly convert 32-bit integers to 16-bit.
GCC 4.7.0 warns that C++11 considers doing this implicitly ill-formed.
2012-04-10 23:01:16 +02:00
Maarten ter Huurne
57ad81e3df Merged LinkAction class into its base class.
LinkApp now calls its launch method via the delegate mechanism instead of
via an overridden virtual method. This should make it easier to move the
launch method out of LinkApp and into the GMenu2X main class.
2012-03-24 11:57:21 +01:00
Paul Cercueil
a0b9fc026b Fix the filename for the user-specified input conf file. 2012-01-23 12:29:58 +01:00
Maarten ter Huurne
d90ed635be Removed per-app gamma setting.
This functionality was half-removed already: some code missing, other
essential parts commented out.

I don't see the point of this either: RGB graphics are created for a certain
gamma value; if that differs from the screen gamma it is up to the application
to do something about it: gamma correct the graphics and/or change the screen
gamma. It doesn't make sense to make this user configurable.
2011-12-23 15:39:53 +01:00
Maarten ter Huurne
1ad6b2f25a Made GMenu2X::ts private.
Pass Touchscreen reference to constructors instead of pulling it from
the GMenu2X class.
2011-12-23 14:03:05 +01:00
Maarten ter Huurne
944ab86f9c Cleanup of touch screen code.
Initialize in constructor and clean up in destructor instead of having separate init() and deinit() methods.
Don't close file descriptor if open failed (ts_fd == -1).
Renamed initialized() to available(), since it tests whether the touch screen was found, not whether an initialization was attempted.
Improved code layout and minor other cleanups.
2011-12-23 12:30:15 +01:00
Ayla
c7af4b1aea Removed per-application volume setting.
The volume should not depend of the application which is in use.
2011-11-19 14:47:55 +01:00
Xiangfu Liu
5d6dcfb2bf update nanonote backlight to new driver 2011-11-10 15:05:37 +08:00
Xiangfu Liu
1cd60895d5 use the contrast for brightness in nanonote 2011-11-10 14:59:45 +08:00
Maarten ter Huurne
cf8ebbca5e gmenu2x.cpp: Re-ordered includes.
Put our own header includes before system includes, to avoid masking missing
system includes in our own headers.
2011-10-23 17:32:46 +02:00
Maarten ter Huurne
f28e4f6d89 Minimized gmenu2x.h.
Everything that does not need to be shared was moved to gmenu2x.cpp.
2011-10-23 17:27:29 +02:00
Maarten ter Huurne
aea1c44020 utilities: Replace min/max functions by the versions from STL. 2011-10-23 17:00:23 +02:00
Maarten ter Huurne
a01d892eb6 More header cleanups.
This time the focus was on removing namespace imports from headers.
2011-10-23 16:43:56 +02:00
Maarten ter Huurne
33e7f1ef56 cpu: Include header instead of repeating function declaration. 2011-10-23 15:24:35 +02:00
Maarten ter Huurne
315bf0a180 InputManager: C++-style type definitions.
There is no need to typedef enums and structs in C++.
Put types defined by InputManager inside the class namespace.
Changed type names to CamelCase.
2011-10-23 09:04:12 +02:00
Maarten ter Huurne
e73a8d06ea Removed per-application brightness setting.
The desired backlight level depends on the amount of light coming in from
the environment, not on the application that is run. Setting the brightness
when launching an application discards what is probably the right value
for this location (indoor/outdoor) and time of day. So we decided that this
is not a desirable feature and therefore removed it.
2011-09-23 01:51:53 +02:00
Maarten ter Huurne
7a978222b8 Use existing brightness value instead of overriding it. 2011-09-23 01:36:56 +02:00
Maarten ter Huurne
84ec66c7ce Minor cleanup: better usage of fscanf.
Instead of having fscanf() read into a string buffer (with the risk of
overflowing it if sysfs returns an unexpectedly long string) and converting
the value to integer with atoi() afterwards, just use fscanf() to read
an integer.
2011-09-23 01:23:53 +02:00
Maarten ter Huurne
799bb13f0f Minor cleanup: group handle init code together. 2011-09-23 01:01:57 +02:00
Maarten ter Huurne
0acbd35fb4 Corrected name of USB power supply device.
As far as I can see in the 3.0 kernel sources, both the Dingoo and
the NanoNote use "usb" in lower case.
2011-09-23 00:57:27 +02:00
Maarten ter Huurne
53a73cabc7 Call deinit() method on exit.
This prevents file descriptors to sysfs files from staying open as the
selected application is executed.
2011-09-23 00:48:13 +02:00
Maarten ter Huurne
b997485859 Backlight: use different sysfs name for NanoNote and Dingoo.
Fixes backlight control on Dingoo.
2011-09-23 00:38:43 +02:00
Maarten ter Huurne
03ea679a1d Corrected capitalization of megahertz.
"Mhz" -> "MHz"
2011-09-19 16:33:19 +02:00
Maarten ter Huurne
8d04cf1064 Removed one last occurrence of hardcoded minimum CPU frequency.
Well, I hope it was really the last one now.
2011-09-19 16:26:42 +02:00
Maarten ter Huurne
a014a331f4 Put platform specific defaults in systemwide gmenu2x.conf.
It is simpler to maintain them there instead of in the code.
2011-09-19 01:12:34 +02:00
Maarten ter Huurne
19064b4c4a Work around lack of vsynced page flipping in OpenDingux kernel. 2011-09-18 21:16:12 +02:00
Maarten ter Huurne
41650aaad7 Use 16 bpp by default on the Dingoo.
Other platforms keep using 32 bpp.
2011-09-18 18:42:53 +02:00
Maarten ter Huurne
d354eb85a4 Improved CPU frequency control.
The maximum frequency for applications was set to 430 MHz before,
while some Dingoos can handle higher frequencies. Now the limit is set to
the theoretical maximum frequency of 500 MHz.

For the menu itself the maximum frequency is set to a safer 408 MHz,
to avoid over-eager users from putting their system in an unusable state
that is difficult to recover from.

Also the frequency settings are now done in 24 MHz increments, to match
the limitations of the current JZ4740 kernel. Note that only new entries
are rounded to 24 MHz multiples, existing entries stay as they are.
2011-09-18 18:27:03 +02:00
Ayla
cca367745b Dingux port: The SD card root is now hardcoded to /boot for the getDiskFree() function only.
That function was not working as CARD_ROOT does not necessarily point to the mount point of a filesystem.
2011-09-18 12:42:08 +02:00
Ayla
759eefd676 The files "a.png" and "b.png" have been renamed to "cancel.png" and "accept.png". 2011-09-18 03:40:33 +02:00
Ayla
16b050be05 Modified the key shortcuts for the small popups (deleting a link...). 2011-09-18 03:33:10 +02:00
Ayla
6ac012348d Disactivate the binding of the app's manual on the 'Y' button. 2011-09-15 11:33:46 +02:00
Ayla
5f69930d07 The contextual menu now features a "show manual" entry. 2011-09-15 11:18:07 +02:00
Ayla
03a26a859b Dingoo port: The help menu now displays help for dingoo's controls. 2011-09-04 03:02:17 +02:00
Ayla
9768a74d07 The conf file does not need to be saved on exit. 2011-09-04 02:37:10 +02:00
Ayla
fca8c8e8a1 Create the powersaver instance on demand and destroy it when not needed. 2011-08-17 00:46:11 +02:00
Ayla
bffef7cfea GMenu2X does not need to init the audio subsystem of SDL. 2011-08-16 02:18:09 +02:00
Ayla
e282f8a55d Enable the SDL timer subsystem only if the backlight timeout is enabled. 2011-08-16 02:17:21 +02:00
Ayla
4fd4b234dc Set card root to /media by default for the Dingux port. 2011-08-11 03:42:18 +02:00
Ayla
3d3e0fa566 Read config file(s) present on both system and user-specific directories. 2011-08-11 03:40:36 +02:00
Ayla
7f08e854ea Shorted a too long caption on the contextual menu. (2) 2011-08-08 23:34:43 +02:00
Ayla
5b49bf0afb Shorted a too long caption on the contextual menu. 2011-08-08 17:40:27 +02:00
Ayla
5f77e3baf7 Cleaned GP2X-specific code that was built on all platforms.
There was a lot of gp2x-specific code which was built for
all platform. For instance, the code was compiled for all
the platforms with the constant "TARGET_GP2X" defined.
This obviously had to be fixed.
2011-07-29 01:13:35 +02:00
Ayla
f6c456f35b GMenu2X now won't clear the framebuffer on exit.
Instead, the loading screen image will remain even when GMenu2X is not running anymore.

This require a patched SDL; the patch can be found at
https://github.com/mthuurne/opendingux-buildroot/blob/opendingux-2010.11/package/sdl/sdl-fbcon-clear-onexit.patch
2011-07-28 01:48:12 +02:00
Ayla
81a607c36e Fixed a good number of memory leaks.
The objects created with "new" were destroyed with "free()",
instead of "delete"; as a result, the destructors were never called.
2011-07-20 13:43:25 +02:00
Ayla
3a85cabf37 The SurfaceCollection won't load the files selection.png, bottombar.png or topbar.png from the Default skin if they are missing in the current skin. 2011-07-11 18:16:38 +02:00
Ayla
00d8a04e00 Removed a bug where the Default skin was chosen even if another (working) skin was defined on the config file. 2011-07-11 12:39:31 +02:00