Paul Cercueil
84a987e9d5
When loading multiple OPKs, don't order links each time one is added
2013-07-19 12:50:20 -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
69b9657af4
Add function openPackagesFromDir() to simplify constructor of Menu
2013-07-19 12:01:25 -04:00
Paul Cercueil
36c4205e0e
Don't try to read OPKs in /media/./apps and /media/../apps
2013-07-19 11:57:35 -04:00
Paul Cercueil
04d9d9322d
Remove trailing slash from CARD_ROOT
2013-07-19 11:54:09 -04:00
Paul Cercueil
0264b724d6
Start inotify with working mask (fixes previous commit)
2013-07-19 11:47:27 -04:00
Paul Cercueil
5e7bcf3a1f
Remove all links of an "apps" dir when it is removed or renamed
2013-07-18 21:34:03 -04:00
Paul Cercueil
f308ed983b
Prepare the Monitor class for proper inheritance
2013-07-18 21:32:23 -04:00
Paul Cercueil
cc869c07a8
Fix link insertion/deletion when OPKs are overwritten from SSH/FTP
2013-07-18 21:27:27 -04:00
Paul Cercueil
91f381fa07
Allow an OPK to use an icon provided by the theme
2013-07-18 17:49:33 -04:00
Paul Cercueil
bcb3e98ddc
Order the links in alphabetical order
2013-07-18 17:38: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
504641a6cf
Fix the function that sets the icon of a Link
2013-07-18 17:00:18 -04:00
Paul Cercueil
dfad7c39a7
Remove all links of an OPK when moved out of the monitored folder
...
It was previously removing only one link, but an OPK can provide
multiples links.
2013-07-18 16:29:56 -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
1467c9b9d7
Don't try to find OPKs inside non-existing directories
2013-07-16 12:44:30 -04:00
Paul Cercueil
78ad051756
Split huge function readPackages into two functions
2013-07-10 18:57:56 -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
5790740af6
Match all files by default in the file dialog
...
Due to recent changes, it was displaying only files without
extension.
2013-07-08 02:24:09 -04:00
Paul Cercueil
6d44fb3a75
Use the "*" filter to match all files
...
The empty "" filter was previously matching all the files; since
a few commits it now matches the files without extensions. The
new "*" filter allows again to match all files.
2013-07-08 02:21:42 -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
4ed21f27e5
Fix extension filter of the wallpaper dialog
2013-07-05 17:08:09 -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
dad8d1bad5
Fix extension filter in file selection dialog
...
This fixes commit eb63294231
2013-07-05 14:42:55 -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
eb63294231
Don't call tolower() on the whole filenames, only on extensions
...
tolower() will trigger an assertion failure in the case where the
string contains UTF-8 codes. This is not a problem as only the
file extension needs to be processed, and that one should contain
only ASCII.
2013-07-05 14:00:46 -04:00
Paul Cercueil
abc461bf95
Fix build on 32-bit targets...
...
This fixes commit 59a456690b
which introduced a regression.
2013-07-03 23:45:38 -04:00
Paul Cercueil
59a456690b
Fix build on 64-bit systems
2013-07-03 23:17:24 -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
Paul Cercueil
c58b3a535e
Update GMenu2X to use the latest libopk v1.0 API
2013-05-26 19:06:53 -04:00
Paul Cercueil
2cef732602
Fix crash occuring when an unknown MIME type is specified in OPK
2013-04-19 14:25:23 -03:00
Maarten ter Huurne
bcbedc8f40
Updated code calling opk_extract_file().
...
I changed the return type from char* to void* in libopk, now updating
the gmenu2x code to match.
2013-02-05 19:05:44 +01:00
Maarten ter Huurne
90ec4b9ace
Ignore OPK files of which the name starts with a dot
...
These are not actual OPK files, but metadata (I assume) storage that
Mac OS X adds to vfat file systems. The current version of libopk has
extremely poor error handling, so ignoring these files avoids a crash.
But even when libopk is fixed, not trying to open these files as OPKs
will be useful since it saves time.
2013-01-24 23:26:30 +01: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
Maarten ter Huurne
a18730ee13
Changed text color of warnings from yellow to magenta
...
Yellow is almost unreadable if the console background is white.
2012-12-20 17:54:15 +01:00
Paul Cercueil
610b489d51
Add support of text manuals (.man.txt files) inside OPK archives
2012-12-08 04:26:48 -03: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
efdf766102
Enable support for multiple .desktop for one platform inside OPKs
2012-11-29 23:44:58 -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
c6a83e1ed7
Open OPKs only if compatible with the current platform
2012-11-18 18:52:23 -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
8d96f3c261
Update to use the latest libopk API, and simplify loadPNG
2012-11-05 18:48:48 -03:00
Paul Cercueil
0b922e97f3
For non-OPK programs, chdir() to the app's directory as well
2012-10-23 16:34:01 +02:00
Paul Cercueil
b8112d1a73
Fix a bug where having multiple MIME types would crash GMenu2X
2012-10-23 16:19:00 +02: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
64eb86f8e8
Default the 'browser' option to 'true'.
...
This permits the 'browser' option to be saved for OPK packages
as well.
2012-10-23 06:39:51 +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
dec1a8956a
Assign an icon for a given link only if it hasn't been done before
2012-10-23 06:20:03 +02:00
Paul Cercueil
c94968f533
Memorize the selector's directory as the default one for later use
...
When a app is launched with a file selected with the built-in file
selector, we memorize the directory on which the file was found,
so that a future launch of that application will directly open
that directory.
2012-10-23 05:34:21 +02:00
Paul Cercueil
a04b9e3ab3
Save changes made on the link of an OPK on the user directory.
2012-10-23 05:32:48 +02:00
Paul Cercueil
5f1cff6d0f
Build file extensions filter from the MIME types present on the OPK
...
This feature is enabled only if libxdgmime is available.
2012-10-22 23:40:09 +02:00
Paul Cercueil
e7e21b424b
Use the '%f' token to insert the selected file on the params.
...
Other tokens available are '%F', '%u' and '%U'.
It replaces the previous token '[selFile]'.
2012-10-22 23:34:33 +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
d6cdb90c81
Before launching any app, update the standard I/O file descriptors
2012-10-20 17:32:17 +02:00
Paul Cercueil
6a9f429f32
Update "exec" to aim the binary if a change of directory if needed
2012-10-17 23:48:11 +02:00
Paul Cercueil
0ddc562bf1
Fix icon not appearing on loading menu of OPK packages based links
2012-10-17 23:43:44 +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
c1a95a2fa6
Removed unused class variable 'useRamTimings' from LinkApp
2012-10-17 23:43:27 +02:00
Paul Cercueil
4a60aa000d
Load the OPK in the section defined by their "Categories" parameter
2012-10-09 01:41:57 +02:00
Paul Cercueil
ef18841eb1
Fix build when libopk is not present.
2012-10-08 19:46:50 +02:00
Paul Cercueil
f6c19d0aa1
Mount the OPK packages in order to execute the binary included.
2012-10-08 08:22:48 +02:00
Paul Cercueil
909fef2f3a
Update to use the latest libopk API.
2012-10-08 08:19:59 +02:00
Paul Cercueil
876f2cff86
Fix a bug where only some parameters were read from the links files.
2012-10-08 06:09:37 +02:00
Paul Cercueil
cd4809343b
During init, load all packages in CARD_ROOT/*/apps
2012-10-07 21:51:25 +02:00
Paul Cercueil
61d22e26e6
LinkApp: Added support for reading OPK packages.
2012-10-07 21:50:07 +02:00
Paul Cercueil
e3837fce68
If a filename contains '#' don't check if the file exists.
2012-10-07 20:08:25 +02:00
Paul Cercueil
0cbb5ee09a
Make loadPNG() able to read files from OPK packages.
...
The filename passed to it should contain the filename of the squashfs
image, the character '#', and the filename of the .png file contained
inside the package.
E.g.:
/tmp/package.opk#icon.png
2012-10-07 20:04:30 +02:00
Paul Cercueil
3dc12d06ea
menu.cpp: Don't use stat() to know if a FS entry is a directory
...
The pointer returned by readdir() already informs us of the type
of the FS entry.
2012-10-06 17:38:58 +02:00
Paul Cercueil
16d66d0dbc
Remove unused (proprietary-licensed for some) XCF fonts.
2012-06-25 00:39:37 +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
cf20f3673e
Use function getSkinPath() instead of reading the dir of the binary
...
... which was certain to fail as the skins are not located on
/usr/bin.
2012-06-24 23:18:02 +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
1080527822
Don't log the console-based apps.
2012-06-14 17:39:59 +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
d1328d791c
Switch to tty1 for console apps (Dingux build only).
...
Console apps are always launched on tty1. However it can occur that
the console displayed on the framebuffer is another one, so we have
to explicitely activate tty1.
2012-04-18 01:35:46 +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
46f2edbc76
BrowseDialog: Code layout cleanup.
...
No functional changes, except for fetching "topBarHeight" only once.
2012-04-10 22:55:19 +02:00
Maarten ter Huurne
58d6077e5c
Touchscreen: Avoid constructing an SDL_Rect for is-inside tests.
...
Made the SDL_Rect versions of the methods call the plain-int versions
instead of vice versa.
2012-04-10 22:44:56 +02:00
Maarten ter Huurne
b248aaf808
Surface cleanup.
...
Use unsigned ints for width and height, like SDL does.
We're using the SDL typedefs there after all.
Include argument names in header when type name does tell everything.
Use whitespace in argument lists.
2012-04-10 22:33:43 +02:00