Commit Graph
100 Commits
Author SHA1 Message Date
Paul Cercueil c777de258c Greatly improve the French translation 2014-07-15 14:25:17 +02:00
Paul Cercueil 917cbf7208 Various changes related to translations 2014-07-15 14:25:17 +02:00
Paul Cercueil 5e22dd5941 Remove the 'Show root' option, which didn't do anything 2014-07-15 14:25:17 +02:00
Paul Cercueil c72266d771 Remove the 'Selector alias file' feature
Who seriously used that?
2014-07-15 14:25:17 +02:00
Paul Cercueil fe1a586fb3 Don't consider *.dge files as being executables 2014-05-17 13:56:16 +02:00
Paul Cercueil dac1e49238 Show the background while loading the menu
This is better than showing an empty black screen, I think.
2014-04-29 00:22:04 +02:00
Paul Cercueil 5fa8919f2b Allow to map actions to keyboard keys and joystick keys at the same time 2014-04-20 16:08:17 +02:00
Paul Cercueil 92a6453ff8 Re-insert proper detection of the %f tokens for OPK apps 2014-04-18 09:10:01 +02:00
Paul Cercueil 47b098cce6 Fix text in log viewer disappearing when pressing alt-right 2014-04-17 20:52:41 +02:00
Paul Cercueil b1eedf6992 Init SDL timers before creating the menu 2014-04-14 00:28:11 +02:00
Paul Cercueil 9fba35feed Init the Menu before initializing SDL
This avoids seeing a black screen for a few seconds while GMenu2X
is loading.
2014-03-23 12:48:30 +01:00
Paul Cercueil eae7156d4e Fix one icon of the GCW skin
One line had more alpha than the others.
2014-03-03 19:04:45 +01:00
Paul Cercueil 8a560e4845 Added GCW theme by Nebuleon 2014-03-02 17:53:54 +01:00
Paul Cercueil fd2c4fd9ff Added ScanlinesBlue and ScanlinesRed themes
Those themes were fully created by hi-ban, kudos to him.
2014-03-02 15:31:56 +01:00
Paul Cercueil b087e5c1f9 Fix key repeat of analog stick working only on some screens 2014-02-24 22:34:53 +01:00
Paul Cercueil 7777b9edde Added key repeat on analog sticks and hats 2014-02-23 17:00:12 +01:00
Paul Cercueil c19e78951d Fix launching non-OPK apps with files with special characters 2014-02-23 16:55:14 +01:00
Paul Cercueil b0846812b8 Show disk usage of the home partition, not the one mounted on /boot 2014-02-07 13:43:46 +01:00
Paul Cercueil 0fd8333257 Merge branch 'opkrun' 2014-02-05 16:29:07 +01:00
Paul Cercueil 55a6528cde Revert to launching in the shell for non-OPK apps 2014-02-05 16:26:00 +01:00
Paul Cercueil a7f0fef059 linkapp.cpp: remove dead/useless code 2014-02-05 14:53:46 +01:00
Paul Cercueil 1a1f891a4d Fix launching OPKs with a file containing spaces 2014-02-05 14:33:45 +01:00
Paul Cercueil 1792e6329b Change sort order so that OPKs are listed after normal links 2014-01-19 23:10:42 +01:00
Paul Cercueil 8bb58f6270 Sort links once they have all been added to the menu 2014-01-19 23:07:54 +01:00
Paul Cercueil 1d532c9b44 Delete obsolete 320x240 skin "OD" 2014-01-16 16:39:15 +01:00
Paul Cercueil 261002d184 Delete obsolete 320x240 skin "2010-12-14" 2014-01-16 16:26:55 +01:00
Paul Cercueil cb82d55350 Set default link size to 80x50 2014-01-16 16:23:26 +01:00
Paul Cercueil ad30fae321 Remove "scan for applications and games" feature
It's been broken for a long time now.
2014-01-16 16:07:06 +01:00
Paul Cercueil e63ad99ba9 Set row size to 20px minimum in file list if browsing directories 2014-01-16 16:02:29 +01:00
Paul Cercueil 408a991a9d Remove hardcoded sizes and positions in WallpaperDialog 2014-01-16 15:49:51 +01:00
Paul Cercueil ae6f52a0a3 Fix BrowseDialog and InputDialog rendering incorrectly
Parts of the background were still visible when the upper and
lower bars were transparent.
2014-01-16 01:19:34 +01:00
Paul Cercueil cfb96dd697 Pass a Surface to ButtonBox' and IconButton's paint function 2014-01-16 01:19:34 +01:00
Paul Cercueil ca3df65daa Remove hardcoded sizes and positions in Selector 2014-01-16 01:19:30 +01:00
Paul Cercueil 67ac54e970 Handle the skin: prefix on the font path 2014-01-15 22:02:30 +01:00
Paul Cercueil af258530db Allow the skin to change the font and font size 2014-01-15 20:32:17 +01:00
Paul Cercueil c8cf37787b InputManager: Handle joystick hat events 2013-12-30 15:41:52 +01:00
Paul Cercueil 2ab44489a1 Execute the links directly, don't use the shell
This breaks one thing: the "params" option of the links must be
only one parameter (without spaces). The only way to actually
set this option being to edit the config files manually, it is
pretty safe to assume it will never contain two parameters.
2013-12-11 12:34:01 +01:00
Paul Cercueil 6ef3f3b190 Redirect to log by redefining stdout and stderr 2013-12-11 12:34:01 +01:00
Paul Cercueil 7c1af3a03b Use 'opkrun' to execute OPK files 2013-12-11 12:34:01 +01:00
Paul Cercueil 53ba01c40a Don't set called programs as group leaders
The comment of this code indicates that it is needed for
SDL apps to work correctly.

However, I don't see any valid reason for the apps we
launch to be running in a different group.

Removing it didn't make any apparent difference, so unless
I'm proven wrong, it'll stay gone from now on.
2013-12-11 12:31:47 +01:00
Paul Cercueil 31ad27f2bd Do not try to change the permissions of the executables 2013-12-11 12:31:29 +01:00
Paul Cercueil 61a79cd3d9 InputDialog: Make SETTINGS button confirm and MENU button cancel 2013-11-30 02:27:45 +01:00
Paul Cercueil 246fd8630c Output log to /var/log/gmenu2x.log 2013-11-08 11:27:34 +01:00
Paul Cercueil 217a9b5cd6 Remove calls to setInputSpeed(), as it only needs to be called once 2013-09-26 18:59:22 -03:00
Paul Cercueil 8452c037ac Remove calls to sync()
This is not a low-level tool to deal with the filesystem, using
sync() here is nonsense and just bogs down the system for nuts.
2013-09-26 18:58:12 -03:00
Paul Cercueil f99c5ee1a7 Merge branch 'packages' 2013-09-19 17:36:40 +02:00
Paul Cercueil 6947997d44 Fix build for platforms without libopk 2013-09-19 17:26:32 +02:00
Paul Cercueil 0ee45d5054 Disable inotify support if libopk is not found
Currently, inotify is used only to detect that OPKs have been
added / removed / modified, so it is not needed to enable inotify
support when support for OPKs is not compiled in.
2013-09-19 17:25:54 +02:00
Paul Cercueil 0e4180460b Recover last session from main() instead of constructor
This fixes a bug where the apps using the file selector wouldn't be
launched at all when selecting a new file after a session recover.
2013-09-07 17:02:38 -04:00
Paul Cercueil e86a96c73f Fixes the Selector returning empty file/directory names
This fixes commit ba5ef51269
2013-09-07 16:47:18 -04:00
Paul Cercueil 3ce314c65d Make the InputManager handle analog sticks as input 2013-09-07 11:09:56 -04:00
Paul Cercueil dba6c32109 Change API of InputManager: we don't care about key release events 2013-09-07 11:00:57 -04:00
Paul Cercueil ba5ef51269 Make the Selector return the canonicalised absolute pathname 2013-09-05 19:23:27 -04:00
Paul Cercueil b73391486f Simplify again the prototype of LinkApp as gmenu2x->input is public 2013-09-05 19:20:54 -04:00
Paul Cercueil 1ff17d83c9 Add function GMenu2X::getTouchscreen(), to simplify Link and LinkApp prototypes 2013-09-05 19:19:16 -04:00
Paul Cercueil 20339c8849 Allow exiting the selector with B when not in explorer mode 2013-08-30 07:02:56 -04:00
Paul Cercueil 5eb8fb7fd7 Revert "When started, load all OPKs in a thread to boost startup time"
Loading dynamically at startup is a very bad idea, as it
confuses the "load state before exiting" feature of GMenu2X:
the file selector will pass the file to a different program,
the cursor will move to select a different app, etc.

This reverts commit 5c631d610e.
2013-08-28 13:49:08 -04:00
Paul Cercueil 5c631d610e When started, load all OPKs in a thread to boost startup time 2013-08-28 13:25:10 -04:00
Paul Cercueil 5d8fb6520f Code factorisation (Add function inject_user_event() to utilities) 2013-08-28 13:14:08 -04:00
Paul Cercueil 3ff6dc93f2 Also search the Default skin in the user directory for skin files
This fixes a segmentation fault occuring on the wallpaper dialog
when trying to select a wallpaper located in the Default skin in
the user directory, when the current skin is not "Default".
2013-08-28 11:32:23 -04:00
Paul Cercueil de9b3cd27d Make sure the joystick subsystem is inited before InputManager starts 2013-07-29 16:54:12 -04:00
Paul Cercueil fcb2618286 Open all available joysticks 2013-07-29 13:21:36 -04:00
Paul Cercueil 50b3bb2b7f Revert the log level to INFO
It was modified by error to DEBUG by commit 88f54e1ccc
2013-07-29 13:02:06 -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 9951ab2ab5 Switched to C++11 2013-07-29 12:55:58 -04:00
Paul Cercueil 152ed5cb29 Drop enum constants of unsupported button actions 2013-07-29 12:51:42 -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 b0fa6db97d Use an enum instead of hardcoded values for the user-injected codes 2013-07-21 23:52:35 -04:00
Paul Cercueil a0515ad356 Make the file selector accept all files by default 2013-07-21 15:43:41 -04:00
Paul Cercueil a682d10657 Load the localized title and description of an OPK if available 2013-07-20 21:21:36 -04:00
Paul Cercueil 9f29618f2e Add an ISO 639-1 code at the top of each translation file 2013-07-20 21:20:24 -04:00
Paul Cercueil 35c487a871 Clean translation files (set to Unix, remove trailing spaces...) 2013-07-20 21:15:45 -04:00
Paul Cercueil bec8d8756f Don't prepend the mounpoint to the binary path if not inside the OPK 2013-07-19 15:25:54 -04:00
Paul Cercueil 5255bf6de3 Destroy all registered Monitor objects when the Menu is destroyed 2013-07-19 14:50:46 -04:00
Paul Cercueil 9dae4b76df Accept meta-data named *.all.desktop in OPK files
This could be used to create platform-independent packages. It can
be useful for instance in the case where the executable is a script,
or when the package points to an executable that is present on all
systems on which OPKs are supposed to run.
2013-07-19 14:41:17 -04:00
Paul Cercueil b6dfdc6ef5 Stop watching a directory when it has been reported as removed 2013-07-19 14:35:45 -04:00
Paul Cercueil ebce540dfc Exit the thread properly in the destructor of Monitor objects 2013-07-19 14:29:51 -04:00
Paul Cercueil d5280ebc7b Use sigaction() instead of deprecated function signal() 2013-07-19 13:58:12 -04:00
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